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

 

ごあいさつヒントを教えてください。

私の理解が正しければ、OnTick()の実行は、新しいティックが到着したときに、(前のティックの後の)実行がすでに終了していることを条件として発生します。

したがって、質問:OnTick() の実行のどの時間が正常とみなされ、何がすでに大きな時間なのでしょうか?

 
また、もう一つの質問ですが、Expert Advisorには取引アルゴリズムとグラフィックデザインがあります。ビジュアルデザインよりもアルゴリズムトレードを 優先するという整理は可能でしょうか。また、そうであれば、どのように?
 
Andrey Sokolov:

ごあいさつヒントを教えてください。

私の理解が正しければ、OnTick()の実行は、新しいティックが到着したときに、(前のティックの後の)実行がすでに終了していることを条件として発生します。

したがって、OnTick() の実行は何時までが正常で、何時までが既に長いと考えられる か?

ツールによって異なります。ティック間が3~5ミリ秒しかない場合、OnTick()の実行は長くならないはずです。そして、そのようなツールには、ティックを最大1秒、あるいはそれ以上遅らせるものがあります。

 
Andrey Sokolov:
また、別の質問ですが、私のExpert Advisorはアルゴリズム取引とグラフィカルな視覚化を行っています。ビジュアルデザインよりも取引アルゴリズムを優先してアレンジすることは可能ですか?また、そうであれば、どのように?

このビジュアルデザインは、ティック ごとに変わるのでしょうか?OnInit()に挿入すればよいのでしょうか?

 
Alexey Viktorov:

このビジュアルデザインは、ティック ごとに変わるのでしょうか?OnInit()に挿入すればいいのでは?

パネル内のカウントやチャート上のオブジェクトが変化するのです。


OnTimer()の実行時に新しいティックが発生した場合、何がどのような順序で実行されますか?

 
Andrey Sokolov:

パネル内のカウントや、グラフ上のオブジェクトが変化するのです。


OnTimer()の実行中に新しいティックが発生した場合、何がどのような順序で行われるのでしょうか?

先着順となります。
 
MakarFX:
優先順位が高い順

秘密でないのなら、情報源へのリンクを張ってもらえないか。

この場合、OnTick()が実行 されるかどうか、若干の疑問があります。

 
Andrey Sokolov:

OnTimer()の実行中に新しいティックが発生した場合、何をどのような順序で実行するのでしょうか?

順不同

OnTimer() や OnTick()関数 内の複雑な計算中に新しいイベントが発生した場合、そのイベントはスキップされます。

フォーラムで "tick skipping "と検索すると、議論が見つかり、管理者もそれについて繰り返し書いているはずです。

ところで、MT4では、新しいティックデータとの同期のために、RefreshRates()がありましたが、この関数についてのヘルプにも、ティックスキップについての言及があるのかもしれません。

 
Andrey Sokolov:

秘密でないのなら、情報源へのリンクを張ってもらえないか。

この場合、OnTick()が実行 されるかどうか、若干の疑問があります。

アンドレイ・ソコロフ

パネル内のカウントやチャート上のオブジェクトが変化するのです。

OnTimer()中に新しいtickが 実行 された場合、何がどのような順序で実行されますか?

OnTimer() があれば、新しい OnTimer() 以外はすべてキューに入れられ、それはスキップされます。

同じような状況で、OnTick()の 前に OnTimer() を置き、EventSetMillisecondTimer(100)を実行しました。

やっと悩みが解決しました。

 

イゴール・マカヌ、マカーFX、どっちが正しいんだ?説明を読んで確かめてみよう。一度は見たことがあるのですが、一日中見つかりません。


ターミナルに複数のEAがある場合、ティック間のポーズよりも処理に時間がかかるとしたら、どのような順番でティックを処理するのでしょうか?