記事"MQL5 クックブック:トレードトランザクションイベントの処理"についてのディスカッション

 

新しい記事 MQL5 クックブック:トレードトランザクションイベントの処理 はパブリッシュされました:

本稿では MQL5 の手段を利用してトレードイベントを管理する方法の一つを提案したいと思います。すでにこのテーマについて述べた記事が数点あることを述べておく必要があると思います。"Processing of trade events in Expert Advisor using the OnTrade() function" はそのうちの一つです。私は他の著者の言うことを繰り返す気はありません。また私は別のハンドラ-OnTradeTransaction()を利用するつもりです。

読者のみなさんには以下のポイントに関心を示していただきたいと思います。現在の MQL5 言語は正式にクライアントターミナルの 14 のイベントハンドラを対象とします。また、プログラマーはEventChartCustom() を用いてカスタムイベントを作成し、OnChartEvent() でそれらを処理することができます。ただし「イベント駆動型プログラミング」(EDP)という言葉はドキュメンテーションでは全く使用されていません。 MQL5 のプログラムがどれも EDP 原則にのっとって作成されている事実を踏まえると、それはおかしなことです。たとえば、ユーザーはどんな Expert Advisor でもテンプレートにある「エキスパート用イベントハンドラ」のステップで選択をすることになります。

イベント駆動型プログラミングのメカニズムがいずれにせよ MQL5 で使用されているのは明らかです。この言語には2部で構成されるプログラムブロックがあります。:イベントの選択と処理です。その上、クライアントターミ ナルのイベントについて語るなら、プログラマーは後者のみ制御します。すなわちイベントハンドラです。公正を期すために申し上げると、イベントによっては 例外もあります。タイマーとカスタムイベントはその例外に入ります。こういったイベントの制御は完全にプログラマーに委ねられています。

図6 トランザクションプロセスの第1スキーム

作者: Dennis Kirichenko

理由: