スポンサーサイト





上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

タグ :

Return to page top

  • Comments (Close): -
  • TrackBack (Close): -

注文を取消・訂正・決済





発注したオーダーを自由に訂正・取消・決済できるようにしましょう。

デモ口座で何度も繰り返すことが、プログラミング上達の近道です。


注文を取り消す


注文を取り消すには、OrderDelete()関数を使います。
bool OrderDelete(int ticket)


引数はシンプルに一つだけです。
int ticket : 注文番号。


ticketが、初めて出てきました。コンサートの予約をしたら座席番号がチケットで割り当てられるように、トレードをしたらその注文固有の(一意の)番号がサーバーから割り当てられます。

注文番号は、ターミナルの取引タブで確認することができます。下の画像では「2481116」です。

20110221_2


この注文をSampleScriptファイルのstart()関数に以下のコードを記述し、コンパイルして実行することで取り消します。

int start()
{
OrderDelete(2481116);
}



取り消しに成功すると、取引タブの注文が消え、口座履歴タブに反映されます。

20110221_3



注文を訂正する


注文の訂正には、OrderModify()関数を使います。
bool OrderModify(int ticket
, double price
, double stoploss
, double takeprofit
, datetime datetime expiration
, color arrow_color=CLR_NONE
)

引数は、OrderSend()関数とticketを理解していれば問題ないと思います。

訂正といっても、すべての項目についてできるわけではありません。たとえば、指値を逆指値にすることはできません。訂正できるのは、引数の項目(指値・逆指値の価格、ストップロス・テイクプロフィットの価格、注文期限、矢印の色)になります。

ではやってみましょう。

当初は、USDJPYを80円で指値買い注文を出しています。

20110221_4


この指値を81円に変更します。

int start()
{
OrderModify(
2481149
,81.00
,NULL
,NULL
,NULL);
}


実行結果 :

20110221_5


細かい点としては、矢印の色は初期値が設定されているので引数の省略ができますが、有効期限についてはOrderSend()関数のときと異なり初期値が設定されていないので引数の省略はできず、変更なしのときは「NULL」と指定する必要があります。



注文を決済する


注文の決済は、OrderClose()関数を使います。

bool OrderClose(int ticket, double lots, double price, int slippage, int color color=CLR_NONE)



引数は既出のものばかりですが、double price の指定にちょっと注意が必要であるように思います。

ここには具体的な値段を書くのではなく、買いポジションを決済するときはBid、売りポジションを決済するときはAskを指定します。

現在、83.09で USDJPY の買いポジションがあります。

20110222_1


これをSampleScriptファイルを書き換えて決済します。

int start()
{
OrderClose(
2482506
,0.1
,Bid
,NULL
);
}


USDJPY のチャートを表示してファイルを実行すると決済されます。
スポンサーサイト

タグ :

Return to page top

Comments:

Comment Form
Only inform the site author.

Trackback+Pingback:

TrackBack URL for this entry
http://metatradermania.blog24.fc2.com/tb.php/50-249324e9
Listed below are links to weblogs that reference
from ど素人のMetaTrader入門
Bookmark
検索フォーム
RSSリンクの表示
QRコード
QR
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。