MT4 script|便利なMT4のCloseスクリプト!

MT4 Closeスクリプト

 便利に使ってるMT4のスクリプト、第3弾!『Closeスクリプト』の作成方法の紹介。すでに紹介済みのBUY・SELLスクリプトと同様、数行で完成します。

紹介済みのスクリプト(過去記事)はこちら

スポンサーリンク
スポンサーリンク

スクリプトの動作検証しているFX会社

 MT4が利用できるFX会社には、二通りの発注方式があります。

成行注文(InstantExcution)方式とカウントダウン(MarketExcution)方式です。両者でStopLossとTakeProfitの発注方法が異なります。

動作検証しているFX会社は次の二社。両社、成行注文方式で、売買と同時にStopLossとTakeProfitを発注できる方式です。

 他のFX会社では、発注方式の差が要因でうまく動作しない場合がありますので、ご注意ください。

今回紹介するCloseスクリプトには影響ないと思いますが、動作検証していません。ご了承ください。

Closeスクリプトの作成

メタエディターの起動

MetaEditor

メタエディターの新規作成を選択

MT4 Closeスクリプト

MQL4ウィザードが表示されます。

MetaEditor

ここでスクリプトを選択し、次へをクリック

MT4 Closeスクリプト

お好きな名前を入力します。今回は『3_Close100』としました。

次に著作権とリンクを確認して、OKなら完了をクリックすると、準備されている初期テンプレートが開きます。

MT4 Closeスクリプト

次のように入力します。入力行は、11~13行、20~32行です。

MT4 Closeスクリプト

(パラメータ宣言部)11行

  • extern int Slippage = 3;
    • スリップページの許容pips

(変数宣言部)13行

  • int closeOk = 0;
    • Close(OrderClose)できたかどうかを受け取る変数

(処理内容)20~32行

  • 20行目 if 文
    • 通貨ペアの価格単位にSlippageの単位を合わせる
    • 小数点以下の桁数が3または5の場合、10倍
  • 23行目 for 文
    • 存在するポジション数だけfor文内の処理を繰り返す
  • 25行目 if 文
    • ポジション選択失敗→サーバーとの何らかの通信エラー→for文処理中止
  • 26行目 if 文
    • 選択したポジションとチャートの通貨ぺアが異なる場合、残りの処理を飛ばします。
  • 27行目 if 文
    • BUYポジション、または、SELLポジション、すべて、その時点の該当価格でClose
  • 30行目 if 文
    • Closeできなかった場合、エラー番号をターミナルのエキスパート欄に出力します。

入力終了したら、コンパイルします。次のようにエラーなければ、Closeスクリプト作成終了。

MT4 Closeスクリプト

活用例

 BUY・SELLスクリプトと同様、ショートカットキーに登録し、活用しています。

増し玉(ピラミッティング)を活用しますので、複数ポジションのCloseはとても楽です。

 ショートカットキーの登録は、、、

ナビゲーターのスクリプト、『3_Close100』を右クリック。

MT4 Closeスクリプト

ショートカットキーを設定をクリック。

MT4 Closeスクリプト

3_Close100の行、右側のコントロールキーとキーを設定。両者ダブルクリックすると編集可能になります。

MT4 Closeスクリプト

閉じる、で、ショートカットキーへの登録終了です。

 ショートカットキー『Alt+C』は、その時点で選択状態のチャート(通貨ペア:Symbol)のポジションをすべて、Closeします。

USDJPYのポジションをCloseしたかったのに、その時選択されていたチャートがEURJPYだった、なんてことにならないように気をつけないといけません。

チャートを見ながらCloseすると思うので、多分、このようなミスは起こらないかな、とは思いますが・・・

イラスト、PC

 なお、すべてのポジションをCloseする場合は、26行目を省略すればOK。その際にはスクリプトの名前を『3_Close All』とすれば区別できて便利かも ^_^

 繰り返しますが、デモで正常動作を確認後、リアル口座で利用しましょう。FX会社によって結果が異なる場合も考えられますので、検証は大事です。

うまくいかなかったら、ご連絡ください。できるだけ期待にそえるよう努力します。

また、必要とご連絡いただければ、BUY、SELL、Closeともファイルを送ります。

次は、StopLossとTakeProfitの変更スクリプトを紹介します。

スポンサーリンク
スポンサーリンク
スポンサーリンク