MT4で OCOオーダー機能を実現する?半裁量指標トレードキット

MetaTrader では、買い指値注文と売り指値注文の2つをペアとするような指値同士の OCO オーダーが出来ません。
具体的に言うと、レンジブレイクアウト待ちの状態で、上に買い指値、下に売り指値を出しておいて、片方の注文が成立したら、もう片方の注文をキャンセルする...ということが自動ではできないということです。


そんな時に役に立つのがEAで、EAは完全な自動売買システムだけでなく、裁量での売買を補助するツールとしても役に立ちます。OCOオーダー機能をEAで実現するには、

指値注文が2つ存在するか確認する。
指値注文が1つになっていたら、それを取り消す。

という処理を行えば良いので、早速作ってみました。DLはこちらからどうぞ。
(ググッたら簡単に見つかりそうな気がするのですが、それはそれで面倒なので適当に作ってます..。



OCO_Trade.mq4 の使い方は簡単で、
(1) 2つの逆指値注文を手作業で出す。
(2) EAを有効にする。
だけです。注意すべきは、手順を間違えてEAを先に有効にしてしまうと、2つの指値を入れられない点です。
EA内部では指値が奇数個ある通貨ペアの指値注文を取り消すようになっているので、EA有効状態で1つの指値を置いても、直ちにキャンセルされてしまうからです..。


デモ口座でよく確認した上でお使いください。




両指しが面倒なあなたへ。


現在の価格より 25pips 上に買い逆指値、下に売り逆指値、それぞれの注文に 10pips のtp 15pips のsl を…
のような両指しを手作業で出すのが面倒な人向けに 先のEAの中に 2Orders_sc.mq4 というスクリプトを同梱しています。
値幅は各自のお好みで、事前に MetaEditor で書き換えておくと便利です。
指値注文の有効期限は、無期限(=0) もしくは、10分以上で設定可能です。



指標発表前に両指ししてみたけど、直前に怖くなった…という人は、2OrdersDEL_sc.mq4 で指値のキャンセルができます。
『今日の雇用統計では負けそうな気がする』なんてゴーストの囁きを感じたときは是非ご活用ください。