初心者の方からの質問 MQL5 MT5 MetaTrader 5 - ページ 439

 
Leanid Aladzyeu:
...
関数を呼び出さずに、配列の値を取得するにはどうしたらよいですか?あるいは、配列に最後に書き込まれた値を記憶させるにはどうしたらよいでしょうか。
...


配列から何かを取り出すには、まずこの「何か」を配列に書き込まなければならない。

Leanid Aladzyeu:
...
あるいは、配列に最後に書き込まれた値を記憶させるにはどうしたらよいでしょうか。
...
タイムフレームを 切り替えたときと端末をリロードしたとき、どちらの条件で配列を保存するのか。
 
Karputov Vladimir:


配列から何かを取り出したい場合、まず配列に書き込まなければならない。

チャートのタイムフレームを切り替えたとき、またはターミナルをリロードしたとき、どのような条件で配列を保存すべきでしょうか。

EA の作業中ではなく

関数内でreturneeを設定すると、マーケットに注文があるときに、null配列が得られます(配列をnullにする前にreturneeを設定しました)

 
Leanid Aladzyeu:

注文がマーケットにある場合、配列がゼロになります(配列がゼロになる前にリターナーを設定します)。

オーダーが「与える」アレイとは?どこで申告して、どこで記入するのか?また、コードを正しく挿入してください。
 
Karputov Vladimir:

関数のパラメータは元のバージョンに戻す必要があり、さもなければ単に呼び出されないだけです。

以下は、標準のSignalACファイルのコードです。

//+------------------------------------------------------------------+

//| 価格が上昇することに「投票」する。|

//+------------------------------------------------------------------+

intCSignalAC::LongCondition(void)

私はこのように理解しています:コードはシグナルを送信し、パラメータdouble& price,double& sl,double& tp,datetime& expirationは注文を出すのに必要 です。

これは、別のEAブロックが処理するのですか?

 

は、コードをバリアントに修正しました。

int CSampleSignal::ShortCondition(void)

専門家が何かを始めたのです!ありがとうございました。

 
pr0gre5:

は、コードをバリアントに修正しました。

int CSampleSignal::ShortCondition(void)

専門家が何かを始めたのです!ありがとうございました。

どういたしまして。必要なときに、必要な場所で、聞く、聞く :)
 

このような質問は、このコードは、計算を制限するために役立つ -新しいバーで 一度だけカウント?

static datetime TimeN=0;
   datetime TimeC=iTime(NULL,TF,0);
   if(TimeN==0)TimeN=TimeC;
   if(TimeN==TimeC) return(0);

 
-Aleks-:

このような質問は、このコードは、計算を制限するのに役立つのですか -新しいバーで 一度だけカウント?

static datetime TimeN=0;
   datetime TimeC=iTime(NULL,TF,0);
   if(TimeN==0)TimeN=TimeC;
   if(TimeN==TimeC) return(0);

新しいバーがM1タイムフレーム上にある場合、メッセージを表示します。

//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
//---
   static datetime TimeN;
   datetime TimeC=iTime(NULL,PERIOD_M1,0);
   if(TimeN==TimeC)
      return;
   TimeN=TimeC;
// новый бар, выполняем код
   Print("New bar");
   return;
  }
 
Karputov Vladimir:

新しいバーがM1タイムフレーム上にある場合、メッセージを表示します。

つまり、これは新しいバーの ためのチェックなんですね?
 
-Aleks-:
やはり、新バー チェックですか?
私のコードのことなら......そう、私のコードは新しいバーチェックです。
理由: