OrderDelete 関数
注文番号で選択したオーダーを削除します。つまり、注文中のものをキャンセルすることになります。既にポジション化されているものは削除(キャンセル)ができません。
データ型と構成・戻り値
bool OrderDelete(①,②)
戻り値は、選択したオーダーの削除ができた時は true、できなかった時は falseが取得されます。
発生するエラーについては、GetLastError関数で取得することができます。
引数 [2]
OrderDelete関数は 2個の引数で構成されます。
番 号 | 引数名 | データ型 | 単位 | 初期値 | 説明 |
---|---|---|---|---|---|
① | ticket | int | - | - | 削除する注文番号。 |
② | arrow_color | color | - | clrNONE | 削除したオーダーの位置の矢印の色。設定しない場合は「clrNONE」を入力すると矢印が表示されません。 Webカラーの種類はこちら。 |
使用例
OrderDelete関数によるオーダーの削除
最初に OrderSend関数を使って USDJPYを 10円で 0.01ロット買い指値注文します。そしてそれを OrderDelete関数を使ってオーダーを削除(キャンセル)します。
コード
// OrderDelete 関数による決済
#property strict
void OnInit() {
int ticket; // 注文番号
bool tf; // true or false の判定
ticket = OrderSend(Symbol(), OP_BUYLIMIT, 0.01, 10, 30, 0, 0); // ①0.01ロット買い指値注文
tf = OrderDelete(ticket); // ①を削除(キャンセル)
if (tf == true) {
Print("注文番号",ticket," : オーダーのキャンセル完了");
} else {
Print("注文番号",ticket,"オーダーのキャンセルが出来ません");
}
}
このコードをコンパイルして実行するのに、自動売買を許可しておく必要があります。
自動売買を許可する方法はこちら、コードをコンパイルして実行する方法はこちらを参考にしてください。(デモ口座でお試しください)