為替ロボット 研究所

« SetOrder(売買オーダーを出す) | メイン | OrderValue(オーダーの様々な値を得る) »

CloseOrder(ポジションを閉じる)

ポジションを閉じる。

書式:
CloseOrder(チケット番号,ロット数,閉じ値,スリッページ,マークの色)

 チケット番号=全てのオーダーに与えられている通し番号。
  ポジション番号と違い、一度付いたら変化しない。
  *ポジション番号pからチケット番号を得る OrderValue(p,VAL_TICKET);
 ロット数=閉じたいポジションのロット数を入力。
  ロットの一部のみ閉じることはできない。??
  *ポジション番号pからロット数を得る OrderValue(p,VAL_LOTS);
 閉じ値=クローズ価格。
  現在値と閉じ値が一致する場合にしかクローズが実行されないので、
  指値的な使い方はできない。閉じたいポジションが買いポジションな
  ら売値Bidを、売りポジならBidを指定。
 スリッページ=3で固定しておけば問題なし。
 マークの色=クローズオーダーをチャート上で表示する時の色。

例:

//保有中のポジション、未約定オーダーを全てクローズする
var: closeprice(0);
While TotalTrades>0 //Forはポジション番号の関係でややこしくなる
{
while TotalTrades>0 {
Print("tes");
if OrderValue(1,VAL_TYPE)==OP_BUY
| OrderValue(1,VAL_TYPE)==OP_BUYSTOP
| OrderValue(1,VAL_TYPE)==OP_BUYLIMIT
then closeprice=Bid else closeprice=Ask;
 //閉じ値=買いポジションならBid、売りならAsk
CloseOrder(OrderValue(1,VAL_TICKET),OrderValue(1,VAL_LOTS),closeprice,3,blue);
DeleteOrder(OrderValue(1,VAL_TICKET),Blue);//未約定オーダーならこれで削除
};



« SetOrder(売買オーダーを出す) | メイン | OrderValue(オーダーの様々な値を得る) »

トラックバック

このエントリーのトラックバックURL:
http://kawarobo.com/motp/mt-tb.cgi/212

コメント

コメントしてください




保存しますか?


おすすめFX