記事"MQL5 クックブック:ОСО オーダー"についてのディスカッション

 

新しい記事 MQL5 クックブック:ОСО オーダー はパブリッシュされました:

トレーダーのトレーディング活動にはさまざまなメカニズムや注文同士の関係を含む相互関係がつきものです。本稿は OCO 注文処理のソリューションを提案します。新規データタイプがそこで作成されるのみならず、標準クラスは広くかかわっています。

本稿は OCO のような注文ペアタイプの処理に焦点を当てています。このメカニズムは MetaTrader 5 と競合するトレーディングターミナルいくつかに実装されているものです。OCO 注文を処理するためのパネルを持つ EA の作成例から2つの目的を達成します。一方で、標準ライブラリの特徴を説明したいと思います。その一方で、トレーダーのツールセットを拡張したいと思います。


1. OCO 注文の基礎

OCO 注文(one-cancels-the-other order:1件が別の注文を取り消す)は2件の未決注文のペアです。

それらはお互いのキャンセル関数で連結しています。第1の注文が実行されると、第2の注文は処理されないまま、またはその逆です。

図1 OCO 注文ペア

図1 OCO 注文ペア

図1 はシンプルな注文相互依存スキームです。基本的な定義を反映しています。両方の注文が存在する限りペアは存在する、というものです。論理面では、ペアのどちらか(ひとつ)の注文が基本ですが、ペアの存在には十分な条件ではありません。

ペアの1つは未決注文でもう1つは逆指し値注文、さらに注文の方くは1方向(売りか買いのどちらか)でなければならない、とするソースもあります。 私の意見では、その制限は柔軟なトレーディング戦略作成には役立たないと思います。多様な注文がペアで分析することを提案します。またもっとも重要なこと はこのペアのプログラムを試みることです。

作者: Dennis Kirichenko

 

同僚の皆さん、MQL5Includeにあるライブラリの使用例を見たことある人いますか?)

 
thejobber:

同僚、誰かMQL5Includeにあるライブラリの使用例を見たことある?)

SectionScripts Replica.
 
tol64:
SectionScriptsExamplesCanvas.
Anatolyさん、ありがとうございます。)
 

興味深い記事をありがとう。

  • ポイント1に翻訳の問題があります。

They are connected by mutual cancellation function: if the first one triggers, the second one stays untouched, and vice versa.

2つ目の注文は、1つ目の注文がトリガーされた場合に削除されるべきであり、「そのまま」削除されるべきではありません。

さらに、サーバーから端末への配信中にトランザクションが失われることもあります。

そして

トランザクションキューの長さは 1024 要素です。OnTradeTransaction が新しいトランザクションを処理する時間が長すぎると、キュー内の古いトランザクショ ンが新しいトランザクションに取って代わられる可能性があります。

そのため 、2つ目の保留中の注文が削除されなかった場合に大きな驚きを避けるために、保護手続きを追加した方がよいでしょう。

 

angevoyageurさん 、コメントありがとうございます!いつものようにビジネストークですね :-)。

翻訳に関しては、はい、失策がありました。

Tradeイベントハンドラのボディにおける未トリガー注文の削除については、 NewTick イベントハンドラのボディなどで 追加チェックを利用すべきです。


 
残念ながら、コンパイルにエラーが多いので、初心者には使えない。
 

これは古いスレッドですが、どうしてもこれを使いたいのです。zipファイルをダウンロードしたのですが、これをどのように動作させればいいのかわかりません。


ありがとうございました。

 

あなたのような人のおかげで、初心者は進歩し、いつか取引を始めることができる。ありがとう。

 

すべてのzipファイルをダウンロードしたのだが、どのように動作させるか、インストールするか、インストーラの助けが必要だ。

 
vijanda:

すべてのzipファイルをダウンロードしたのですが、どのように動作させるか、インストールするか、インストーラの助けが必要です。

すべての関連ファイルを保存するフォルダを作成する必要があります。作成後、ファイルをフォルダにコピーしてください。 例えば、以下のようになります:


oco_files


コンパイル後、MT5 ナビゲーターにエキスパートファイルが表示されます。


oco_files_mt5


記事公開からかなり時間が経過しています。しかし、コードは問題なく実行されています。ビルド 1981.