場所は?
アドバイザーはどこにも行っていない。アドバイザーはその場所にいる:

Expert Advisorを自分用に改良したいが、そのためには多くのことを理解する必要がある!(私は多くのことを理解していません)。部分的に質問させていただきます。
コードがあります:
if(m_need_delete_buy_stop || m_need_delete_sell_stop) { int count_buy_stops=0,count_sell_stops=0; CalculateAllPendingOrders(count_buy_stops,count_sell_stops); if(m_need_delete_buy_stop) { if(count_buy_stops>0) { DeleteOrders(ORDER_TYPE_BUY_STOP); return; } else { m_need_delete_buy_stop=false; return; } } if(m_need_delete_sell_stop) { if(count_sell_stops>0) { DeleteOrders(ORDER_TYPE_SELL_STOP); return; } else { m_need_delete_sell_stop=false; return; } } }
それは何をするのですか?
Expert Advisorを自分用に改良したいが、そのためには多くのことを理解する必要がある!(私は多くのことを理解していません)。部分的に質問させていただきます。
コードがあります:
それは何をするのですか?
フラグ'm_need_delete_buy_stop' ('保留中の 買い逆指値注文を削除する必要がある') またはm_need_delete_sell_stop' ('保留中の売り逆指値注文を削除する必要がある') が発生した場合。
if(m_need_delete_buy_stop || m_need_delete_sell_stop)
{ 削除に進みます。
エキスパートアドバイザーが現在発注している未決注文の数を計算します:
int count_buy_stops=0,count_sell_stops=0; CalculateAllPendingOrders(count_buy_stops,count_sell_stops);
保留中の買い逆指値注文を削除する必要がある」場合:
if(m_need_delete_buy_stop) { if(count_buy_stops>0) { DeleteOrders(ORDER_TYPE_BUY_STOP); return; } else { m_need_delete_buy_stop=false; return; } }
発注済みの買い逆指値注文の数がゼロより大きい場合 ('count_buy_stops') - それらを削除します。その数がゼロに等しい場合、'm_need_delete_buy_stop' フラグをリセットします。
未決済の売り逆指値注文を削除する必要がある」場合も、同じようにする。
- www.metatrader5.com
ありがとう!
また分からないコードが増えた:
//--- 新しいバーが誕生した時だけ働く。 static datetime PrevBars=0; datetime time_0=iTime(m_symbol.Name(),InpWorkTimeFrame,0); if(time_0==PrevBars) return; PrevBars=time_0; if(!RefreshRates()) { PrevBars=0; return; }
ありがとうございます。最終的にはそう理解しました:
//--- 新しいバーが誕生した時だけ働く。 // 静的変数に最後の小節の開始時刻を記憶する static datetime PrevBars=0; // 現在時刻 (iTime - バーの開店時刻の値を返す) datetime time_0=iTime(m_symbol.Name(),InpWorkTimeFrame,0); if(time_0==PrevBars) return; // 条件が通過したため、時間が異なる場合 if(time_0==PrevBars) // 時間を覚えておく PrevBars=time_0; // 相場が更新されていない場合、最後のバーが開いた時刻をリセットする。 if(!RefreshRates()) { PrevBars=0; return; } // この場所に辿り着いたとしても、それは新しいバーではない。
あなたのリンクがなければ、私はそれを理解しなかったでしょう)
ありがとう。最終的に気づいたことはこうだ:
あなたのリンクがなかったら、私はそれに気づかなかっただろう)
少し訂正します。これは
// この場所に辿り着いたとしても、そこは新しいバーではない。 は正しくない。正しい:
// あなたはこの場所に到達した。
ちなみに、下記はそのコードである:
if(!RefreshRates() || !m_symbol.Refresh()) { PrevBars=0; return; }
上で説明したコードと一部重複していると思います:
if(!RefreshRates()) { PrevBars=0; return; }
削除してもいいと思います。
ちょっと訂正。これは
は正しくない。正しい:
- 無料取引アプリ
- 8千を超えるシグナルをコピー
- 金融ニュースで金融マーケットを探索
Cidomo:
エキスパートアドバイザーは逆指値買い(BuyStop)注文と逆指値売り(SellStop)注文を出します。
作者: Vladimir Karputov