関数OrderExpiration()の使い方【MQL4】

関数OrderExpiration()

書式

datetime  OrderExpiration();  //引数なし

戻り値(返り値)

選択した待機注文の有効期限を返します。

サンプルコード

int BuyTicket = 0;

//現在のPC時間
int  timeLocal_int = TimeLocal();
Print("timeLocal",timeLocal); //1580847103

//サーバー時間とローカル時間との差(秒)
int h7 = 25200;

//サーバー時刻で注文時間より前を指定
BuyTicket = OrderSend(Symbol(),OP_BUYSTOP,MarketInfo(Symbol(),MODE_MINLOT),
		getAsk(Symbol())+1000*_Point,30,
		0,0,
		"sample",12345,"2020.02.04 12:00",Green);
OrderSelect(BuyTicket,SELECT_BY_TICKET);
Print("サーバー時刻で注文時間より前を指定【2020.02.04 12:00】:",OrderExpiration());
//有効期限の指定が無効になる:1970.01.01 00:00:00


//待機注文送信後から1時間後に待機注文を期限切れにする(datetime型)
BuyTicket = OrderSend(Symbol(),OP_BUYSTOP,MarketInfo(Symbol(),MODE_MINLOT),
			getAsk(Symbol())+1000*_Point,30,
			0,0,
			"sample",12345,(datetime)TimeToStr(timeLocal_int-h7+3600),Green);
OrderSelect(BuyTicket,SELECT_BY_TICKET);
Print("(datetime)TimeToStr(timeLocal_int-h7+3600):",OrderExpiration());
//現在から1時間後に有効期限を設ける:2020.02.04.14:11:00 =>サーバー時刻の有効期限
//サーバーの現在時刻は:2020.02.04.13:11:00

//int型のままで送信すると有効期限の指定ができない
BuyTicket = OrderSend(Symbol(),OP_BUYSTOP,MarketInfo(Symbol(),MODE_MINLOT),
			getAsk(Symbol())+1000*_Point,30,
			0,0,
			"sample",12345,(int)TimeToStr(timeLocal_int-h7+3600),Green);
OrderSelect(BuyTicket,SELECT_BY_TICKET);
Print("(int)TimeToStr(timeLocal_int-h7+3600):",OrderExpiration());
//有効期限の指定が無効になる:1970.01.01 00:00:00

シェアする

  • このエントリーをはてなブックマークに追加

フォローする