MT4のEAについて質問です。
EAに注文させたポジションの"買い"と"売り"を識別したいです。
OrderSelect関数で選択し、その後
何らかの処理で識別したいのですが、
いい方法はないでしょうか。
EAにint型の
変数$magic_L,$magic_Sを用意し、
[76(買い]・[83(売り)]を格納して、
買いの注文をOrderSend(…magic_L…)
売りの注文をOrderSend(…magic_S…)
で振り分け、OrderSelect関数で選択して
OrderMagicNumber()で識別すると
マジックナンバーが複数あり
よろしくないですよね。
EAにstring型の
変数$comment_l,$comment_Sを用意し、
["Long"]・["Short"]を格 納して、
買いの注文をOrderSend(….."comment_L"..)
売りの注文をOrderSend(….."comment_S"..)
で振り分け、OrderSelect関数で選択して
OrderComment( )で識別する
というのはアリでしょうか?
コメントはコメントで使いたいですが、
他の方法が思いつかなくて困っています。
今まではマジックナンバーのみが
異なる同じEAを二つ用意して、
[Only Long]・[Only Short]
でそれぞれ適用して、
識別していたのですが、
同じタイミングで両建てをしたいので、
[Long & Short]で適用して、
EA内で識別したいと考えています。
もっとスマートな識別方法はないでしょうか。
回答1
orderType()== OP_BUY
とかではダメですかね?
http://mt4-traders.com/reference/ordertype/
もしくは、1つのエントリー条件につき1ポジションでよいのであれば
グローバルエリアにて
TicketNum_BUY;
TicketNum_SELL;
エントリー時
TicketNum_BUY = OrderSend(…);
決済時オーダーセレクト
OrderSelect(TicketNum_BUY…);
これならオーダーセレクトで必ず買いポジションだけをオーダーセレクトできます。
オーダーセレクトのモードはインデックスではなくチケット番号にします。
http://mt4-traders.com/reference/orderselect/
回答2
知恵コイン500枚じゃないと誰も答えないよ
Originally posted 2019-09-09 18:43:40.