MQL関数リファレンス

MQL4 MQL4 の注文関数

OrderClose()

できること
保有中の注文(ポジション)を決済する
対応
MQL4

OrderClose() とは

MQL4 で、保有中の成行注文(ポジション)を決済する関数です。ロット数を保有量より小さくすると一部だけ決済できます。待機注文(指値・逆指値)の取り消しには OrderDelete() を使います。

OrderClose() の書式と引数

bool OrderClose(
   int ticket,
   double lots,
   double price,
   int slippage,
   color arrow_color=clrNONE
)
引数型省略時説明
ticketint必須決済する注文のチケット番号。
lotsdouble必須決済するロット数。全部決済するなら OrderLots() の値。
pricedouble必須決済価格。買いポジションは Bid、売りポジションは Ask。OrderClosePrice() を使うとどちらでも正しい価格になります。
slippageint必須許容するスリッページ(ポイント単位)。
arrow_colorcolorclrNONEチャートに表示する矢印の色。

戻り値

成功すると true、失敗すると false を返します。理由は GetLastError() で確認します。

OrderClose() の使い方(コード例)

// この EA(マジックナンバー 12345)のポジションをすべて決済する
for(int i = OrdersTotal() - 1; i >= 0; i--)
{
   if(!OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) continue;
   if(OrderSymbol() != _Symbol || OrderMagicNumber() != 12345) continue;
   if(OrderType() != OP_BUY && OrderType() != OP_SELL) continue;   // 待機注文は除く

   if(!OrderClose(OrderTicket(), OrderLots(), OrderClosePrice(), 30, clrRed))
      Print("OrderClose 失敗 ticket=", OrderTicket(), " error=", GetLastError());
}

OnTick()・OnStart() などの関数の中に書いて使う例です。MetaEditor でコンパイルできることを確認済みです。

OrderClose() の注意点

  • 決済価格の Bid と Ask を逆にするとエラー129(価格が不正)やエラー138(リクオート)になります。OrderSelect() で選んだあと OrderClosePrice() を渡すと間違えません。
  • 全決済をループで行うときは、決済すると番号がずれるので、インデックスを大きいほうから小さいほうへ回します。
  • 一部決済すると、残りは新しいチケット番号のポジションになります。
  • MQL5 にはこの関数はありません。CTrade の PositionClose() を使います。

MQL4 と MQL5 の違い

MQL5 では CTrade クラスの PositionClose(チケット) で決済します。一部決済は PositionClosePartial() です。

OrderClose() でよく出るエラー

関連する関数

MQL4 の注文関数の関数一覧

← MQL関数リファレンスで、ほかの関数を探す

サイバーシグナルインジケーターと8大特典プレゼント

MT4/MT5自動売買EAサイバーラッシュ無料プレゼント

MT4/MT5自動売買EAサイバードラゴン無料プレゼント

グルグルトレイン(グルトレ)EAを無料プレゼント

ライントレードEAサイバートレナビを無料プレゼント

ゴトー日の東京仲値が狙える自動売買EA

LINE友だち追加

注目記事ランキング

  1. 1

    【サクソバンクチャート】月曜日の早朝から動く為替レート

  2. 2

    【MT4/MT5対応】チャート上に手書きできる描画インジケーターの無料配布

  3. 3

    【サンデーダウ・サンデードル円】土日に動く中東レートの表示方法と見方を解説

  4. 4

    【先着50名】グルトレEAを無料プレゼントしています!

  5. 5

    保護中: 【勝率UP!】曜日や日・月別為替相場の動きでFXを見極める

  6. 6

    【MT4/MT5対応】「sign_alert」シグナルアラートやメール送信するインジケーターの無料配布

  7. 7

    無料メールマガジン「マナブ式FX」|毎朝6時、今日の為替相場予想が届く

  8. 8

    【原油・金】WTIとゴールドの商品レート一覧と見やすいチャート

  9. 9

    VQインジケーターとは?MT4/MT5版を無料配布【設定例つき】

  10. 10

    【バイナリーオプション攻略法】全勝!+497,363円の利益が出た手法とは?

TOP
CLOSE