もう一つ質問です。EAからライブラリに関数を移しましたが、EAを実行するとすぐにクラッシュし、ターミナルがライブラリをロードできないというメッセージが表示されます。 Cannot call 'ATP_funkcii.mq4::DrawLABEL', 'ATP_funkcii.mq4' is not loaded.
double Mas[]; //массив для упорядочивания всех ордеровfor(int i=0; i<OrdersTotal(); i++) // Цикл перебора ордер
{
if(OrderSelect(i,SELECT_BY_POS)) // Если есть следующий
{
Price=OrderOpenPrice();
ArrayResize(Mas, i+1); //задан размер массива
Mas [i] = Price;
ArraySort (Mas,WHOLE_ARRAY,0,MODE_DESCEND); // Теперь цены открытия упорядочены по убыванию
}
}
if(ArraySize(Mas)>1) //Если массив не пустой
{
int Blizko2=ArrayBsearch(Mas,Ask,WHOLE_ARRAY,0,MODE_DESCEND); //Определен индекс ближайшего большего по значению елемента к текущей цене
PriceBlizko2 = Mas[Blizko2]; // Цена выбранного ордераint Blizko1;
Mas[Blizko1]= Blizko2+1; Это верно??
//Определен индекс ближайшего меньшего по значению елемента к текущей цене
PriceBlizko1=Mas[Blizko1];
double Mas[]; //массив для упорядочивания всех ордеровfor(int i=0; i<OrdersTotal(); i++) // Цикл перебора ордер
{
if(OrderSelect(i,SELECT_BY_POS)) // Если есть следующий
{
Price=OrderOpenPrice();
ArrayResize(Mas, i+1); //задан размер массива
Mas [i] = Price;
}
}
if(ArraySize(Mas)>1) //Если массив не пустой
{ ArraySort (Mas,WHOLE_ARRAY,0,MODE_DESCEND); // Теперь цены открытия упорядочены по убываниюint Blizko2=ArrayBsearch(Mas,Ask,WHOLE_ARRAY,0,MODE_DESCEND); //Определен индекс ближайшего большего по значению елемента к текущей цене
PriceBlizko2 = Mas[Blizko2]; // Цена выбранного ордераint Blizko1;
Mas[Blizko1]= Blizko2+1; Это верно??
//Определен индекс ближайшего меньшего по значению елемента к текущей цене
PriceBlizko1=Mas[Blizko1];
こんにちは、先物の 有効期限を取得したいのですが。
EXPIRATION=(datetime)SymbolInfoInteger(Symbol(,SYMBOL_EXPIRATION_TIME))とする。
1970 01 01 00 00を出します。
こんにちは、どなたかEAでチャートのあるポイントをクリック した時にそのポイントで注文を出す方法を教えてください。 スクリプトやEAをインストールすると、NormalizeDouble(WindowPriceOnDropped(),Digits);という関数でクリック時のポイントが定義されます。しかし、問題は、これが稼働中のEAからいつでも行えるということです。そんな可能性があるのでしょうか。
ChartGetInteger(0,CHART_EVENT_MOUSE_MOVE,0,1) という関数がありますね。まだ使い方がよくわからないのですが、マウスポインタがどこに(どのポイントに)向いていたかを判断することは可能でしょうか?
こんにちは、どなたかEAでチャートのあるポイントをクリック した時に、そのポイントで注文を出す方法を教えてください。 スクリプトやEAをインストールすると、NormalizeDouble(WindowPriceOnDropped(),Digits);という関数でマウスクリック時のポイントが定義されます。しかし、問題は、これが稼働中のEAからいつでも行えるということです。そんな可能性があるのでしょうか。
ChartGetInteger(0,CHART_EVENT_MOUSE_MOVE,0,1) という関数がありますね。しかし、まだ使い方がわかっていません。 マウスポインタがどこに(どのポイントに)向いたかを判断することは可能でしょうか。
CHARTEVENT_CLICK "イベントを使用します。
コードの一部はここから 取得できます
クリックイベント "CHARTEVENT_CLICK "を使用します。
コードスニペットはこちらから 入手できます。
ありがとうございました!!!
もう一つ質問です。EAからライブラリに関数を移しましたが、EAを実行するとすぐにクラッシュし、ターミナルがライブラリをロードできないというメッセージが表示されます。 Cannot call 'ATP_funkcii.mq4::DrawLABEL', 'ATP_funkcii.mq4' is not loaded.
この問題を解決するにはどうしたらよいですか?
一つ気づいたことがあります!EAのエディタやライブラリは確認できるのですが、パソコンではなぜかプログラムファイルの中に見当たりません。Expert Advisorのファイルのみです。
こんにちは、配列の要素の インデックスを知ることで、次の要素のインデックスを知る方法を教えてください。
配列のインデックスは常に0から始まります。すなわち、配列のサイズが1であれば、このセルのインデックスは0になる。
5という数字を知るには、6という数字を知るにはどうしたらいいのでしょうか?
6という数字を知っていて、8桁しかないことを知りながら、7という数字を知るにはどうしたらいいのでしょうか?
インデックス7がわかっているとき、配列サイズ=8で、次のインデックスをどうやって知るのでしょうか?
配列のインデックスは常に0から始まります。つまり、配列のサイズが1であれば、そのセルのインデックスは0になる。
5という数字を知るには、6という数字を知るにはどうしたらいいのでしょうか?
8桁しかないことを知りながら、6桁の数字を知って7桁の数字を知るにはどうしたらいいのでしょうか?
配列のサイズが8であることを前提に、7番目のインデックスを知るにはどうすればよいのでしょうか?
詳しい説明ありがとうございました))))ですから、次のように書くのが正しいでしょう。
教えてください。
詳しい説明ありがとうございました))))ですから、次のように書くのが正しいでしょう。
教えてください。
配列の 要素を追加するたびに、配列をソートする必要はありません。ソートを移動させた方が良いのでは
ヘルプより
戻り値
最初に見つかった要素のインデックスを返す。求められた値が見つからない場合、求められた値が位置する要素のうち、最も近い小さい方のインデックスを返す。
Mas[Blizko2]は、配列の中で最も近い小さい値です。