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

 
Vladimir Karputov:

ファーストという数字にはどんな意味があるのでしょうか?各タイムフレームで、現在のローソクのインデックスは「0」です。

5の場合、ゼロから数えて、その週の最初のろうそくの番号が必要です、例えば月曜日の12時に1時間チャートで、最初のろうそくはインデックスrates_total-11を持って います もちろんあなたはそれを循環させ、2日以上のろうそく日付の違いを見ることができますが、私はよりエレガントなソリューションがあると思います。

 

こんばんは。
エキスパートアドバイザーが テスターモードかリアルトレーディングモードかをMQL5で調べられるかどうかご存知ですか?もしそうなら、どのように?

ありがとうございます。

 
DKarpoff:

5の場合、ゼロから始まる我々は、今週の最初のろうそくの番号が必要です。 例えば、月曜日の12で時間チャート上の最初のキャンドルはrates_total-11 インデックスを持って もちろん我々はそれをループして、2日以上のろうそく日付の違いを見ることができますが、私はよりエレガントなソリューションがあると思います。

現在のローソク足は(どの時間軸でも)インデックスが「0」で、前のローソク足はインデックスが「1」です。

インジケーターで作業する場合、現在のローソク足はインデックス 'rates_total-1' を持ちます(配列を反転させない場合)。

 
Vladimir Karputov:

コピーXXX操作による現在のローソク足(任意の時間枠)はインデックス '0' であり、それぞれ前のローソク足はインデックス '1' です。

インジケータで作業する場合、現在のローソクはインデックス「rates_total-1」を持ちます(配列を反転させない場合)。

問題はそのことではなく、現在の週の最初のローソク足の指数が必要なのです。

mql4では、DayOfWeek()関数で、必要なインデックスを簡単に計算することができるんだ。

 
DKarpoff:

質問はそれについてではなく、私は現在の週の最初のローソクのインデックスが必要です。

mql4ではDayOfWeek()という関数があり、そこで必要なインデックスを簡単に計算することができました。

もちろん、TFに応じて、先週の月曜日、最も近い月曜日の取引開始ローソクのインデックス。インジケーター用。
 
Vladimir Karputov:

コミッションは、TRADE ( Class CDealInfo.Commision) または POSITION ( Class CPositionInfo.Commission) で確認することができます。

ありがとうございます。識別子 POSITION_COMMISSION についてはどうでしょうか?

エディターでもハイライトされないし、ヘルプにもない。

 
mt5で、ポジションと注文が明示的に分離されている理由 -ORDER_TYPE_SELL について教えてください。
 
Andrey Sokolov:

ありがとうございます。POSITION_COMMISSION 識別子はどうなっていますか?

エディターでハイライトされないし、ヘルプにもない。

私はそれを理解した。歴史の中のトレードにある

 
DKarpoff:

質問はそれについてではなく、私は現在の週の最初のローソクのインデックスが必要です。

mql4では、DayOfWeek()関数があり、必要なインデックスを単純に計算することができたのです。

インデックスとは索引のことです。どの時間枠でも、現在のローソク足はインデックス「0」です。


たぶん、あなたは次のように質問を言い換える必要があります: "私は時間枠H1のINDICATORで動作し、私は週の 与えられた日に最初のろうそくのインデックスを知る必要があります。質問の仕方は正しかったでしょうか?

 
Vladimir Karputov:

インデックスとは索引のことです。どの時間枠でも、現在のローソク足はインデックス「0」です。


多分あなたは次のように質問を言い換える必要があります: "私はH1タイムフレームのINDICATORで動作し、私は週の 与えられた日に最初のろうそくのインデックスを知る必要があります"。ご質問の表現は適切でしたか?

インジケーターのローソク足をループさせたいのですが、0番目からではなく、前週の最初のローソク足からループさせたいのです。

for(int i=0; i<rate_total; i++) - これはすべてのバーです。

といったものが必要です。

X=(IndexFirstTradingWeek(EURUSD,H1))+120。

for(int i=(rates_total-X); i<rates_total; i++)

理由: