MQLの勉強メモ (11) トレード関数後編(注文関連)

注文に関する25個の関数に、注文の情報を照会する関数を前記事「MQLの勉強メモ (10) トレード関数前編(注文情報照会)」に勉強しました。
今回は実際に注文を出したり決済したりできる関数を勉強します。全部5個あります。

発注 OrderSend()

int OrderSend(通貨ペア, 処理種類, ロット数, 価格, スリッページ, 損切り価格, 利食い価格,コメント, マジックナンバー, 有効期限, 矢印カラー);

    戻り値

  • 注文成功:成功した注文のTicket番号
  • 注文失敗:-1
    必須引数

  • 通貨ペア:”USDJPY”のようなstring型。
  • 処理種類:OrderType()と同じで、OP_BUY・OP_SELLLIMITのようなint定数。
  • ロット数:double型、業者の最小最大ロット数はMarketInfo()で取得できる。
    MarketInfo(“USDJPY”, MODE_MINLOT); MarketInfo(“USDJPY”, MODE_MAXLOT);
  • 価格:成り行き注文の場合、AskあるいはBidで指定。
  • スリッページ:int型、滑りポイント。
  • 損切り・利食い:double型、
    省略可

  • コメント:string型、備考。
  • マジックナンバー:どのEAが建てたポジションを特定するために設定するものです。同じシステムに複数のEAが稼働している可能性があるからです。
  • 有効期限:datetime型、成り行き注文以外に効く引数。
  • 矢印カラー:color型、デフォルトはCLR_NONE「なし」。

決済 OrderClose()

bool OrderClose(Ticket, ロット数, 決済価格, スリッページ, 矢印カラー);
決済するとき、引数はシステムから取得するのが普通でしょう。
情報に対応する関数はOrderSelect()後呼び出せます。

    引数

  • Ticket番号:OrderTicket()
  • ロット数:OrderLots()
  • 決済価格:AskあるいはBid。
  • スリッページ:滑りポイント。

両建解除決済 OrderCloseBy()

bool OrderCloseBy(Ticket, 逆方向Ticket, 矢印カラー)
両建しているポジションを同時に決済する関数。

    テストしたところ、両建解除決済のこんなところに注意しないといけないです。(参考程度)

  • 両方の枚数が違うとき、同じの枚数だけ決済される。
  • 上記の決済で、両方の注文チケットが履歴になり、あまった分は新しいチケット番号で残される。
  • 前注文の一部が残された場合は、「partial close」に変えられる。
  • 後注文の一部が残された場合は、「from #(全部のチケット番号)」に変えられる。
  • 決済された注文のコメントは「close hedge by #(前方のチケット番号)」

修正 OrderModify()

bool OrderModify(Ticket, 注文価格, 損切り, 利食い, 有効期限, 矢印カラー);
決済するための損切りと利食いを修正するか、待機注文を修正できる関数。

    引数

  • Ticket:ticket番号、OrderTicket()で取得できる。
  • 注文価格:待機する指値・逆指値注文のエントリ価格を修正する。
  • 損切り・利食い:新しい決済価格。
  • 有効期限:待機注文の有効期限。

未実行注文の削除 OrderDelete()

bool OrderDelete(int Ticket, color arrow_color);
未実行の指値・逆指値注文に限って、ticket番号で注文を取り消しできる。
色は省略可能です。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です


*

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>