MQL4、MQL5に関する初心者からの質問、アルゴリズムやコードに関するヘルプ、ディスカッションなど。 - ページ 1353

 
Vladimir Karputov:

参考:CopyRates

インジケータにデータを要求する際、要求された時系列がまだ構築されていないか、サーバからアップロードする必要がある場合、関数は一度に-1を返しますが、ロード/構築処理は開始されます。

ありがとうございます。本当に必要なデータだけを取って、エラーカスケードが一度に消えて、メモリリークとクラッシュが発生していました )) 。

 
BillionerClub:

ありがとうございます!問題解決しました!本当に必要なデータだけ取って、エラーカスケードが一気になくなりました!メモリリークやクラッシュもありました))

しかし、「すでにOnCalculateで OHLCの配列を提供しているインジケータで、なぜ現在のシンボルと時間枠のCopyRatesを使うのか」という疑問が残ります。

 
Vladimir Karputov:

しかし、疑問が残ります。「インジケータがすでにOnCalculateでOHLCの配列を提供しているのに、なぜインジケータで現在のシンボルと時間枠のCopyRatesを使用するのですか?

OnCalculateにはOHLCがありますが、バーがない場合、配列の終了につながる可能性があるので、いずれにせよ、Ibarshiftを パラメータtrueで使用すべきです。

 
BillionerClub:

OnCalculate "はOHLCを含んでいますが、配列の終了を引き起こすかもしれないので、任意のバーがないかもしれません、いずれにせよ、パラメータtrueでIbarshiftを使用 する必要があります。

OnCalculateは、現在のシンボルと現在の時間枠のすべてのOHLCを含んでいます。しかし、もしあなたが馬の両足を全力で撃つのが好きなら、ANDICATORのCopyXXXX機能を現在のシンボルとタイムフレームで使用することができます。

 
Vladimir Karputov:

...全速力で馬の両脚を撃つ...

二足歩行する馬って、どんな馬なんだろう?

それとも両右足、両後ろ足ということでしょうか?

 
Vladimir Karputov:

いいえ。OnCalculateは、現在のシンボルと現在の時間枠によるすべてのOHLCを含んでいます。しかし、あなたがフルギャロップで馬の両足を撃つのが好きなら - そう、あなたは現在のシンボルと時間枠のINDICATORでCopyXXXX機能を使用することができます。

うまく説明できなかった、申し訳ない。返信ありがとうございました。確認したところ、確かにバーが迷子になったのか、予想外の場所に突然飛び出してきました。しかし、私は別の端末からデータをロードするような問題があり、それは両方の端末で一致しない可能性があり、不足または存在のために。バーシフト以上の解決策は見つかりませんでした。


 

こんにちは! ...it's a long time since I've been here)

なぜ、この関数は

PlotIndexSetInteger(0,PLOT_DRAW_BEGIN,begin);

を得ることには何の影響もない。

handle = iCustom(_Symbol,PERIOD_CURRENT,"Market indices");
if(handle != INVALID_HANDLE)
   {
    Alert("RT - ",rates_total);
    Alert("BC - ",BarsCalculated(handle));
   };


問題は、RTとBCが同じであることです。


つまり、ハンドルからインジケータがどのPLOT_DRAW_BEGINを持って いるかを知る方法はないのでしょうか?

...iCustomで異なる期間の変数を要求する予定ですが、要求されたすべての変数がどのバーで計算されるかを知ることが重要です。

 
なぜこんなに速いのか、配列の検索には コストがかかるのでは?
iBarShift
 
BillionerClub:
なぜこんなに速いのか、配列の検索には コストがかかるのでは?
ほとんどの場合、検索はループではなく、単純な数学で行われます。
 

こんにちは、問題があります。

ロシア語の文字の代わりに象形文字があるんです。地域設定を変えてみましたが、解決しませんでした。作業方法をご存知ですか?