KeyKです。
先日、pythonサーバーとMT4の接続が出来ました。そこで改めてOrderSendとOrderCloseの動作確認を行いました。
OrderClose関数が動かない
とりあえず、1分間の自動売買EAで動かしてみました。OrderSendは無事動きましたが、OrderCloseができなかったです。プログラム的には、ポジションを保有していないときにポジションを建て、ポジションを保有している場合は決済するというフローになっています。さぁここでポジションの決済ができない。。
とりあえずマウスでポチポチしてました。
解決案
OrderCloseが動く様に書き換えるのが正しい解決策だとは思うのですが、とりあえず今回は利確とロスカットを設定します。OrderSendを使用した際、利確で5pips、ロスカットで10pipsを設定してオーダーします。
OrderSend(Symbol(),OP_SELL,Lots,Bid,10,Bid+10*pips,Bid-5*pips,NULL,1212,0,Magenta);
これで動くか試してみます。いつかはOrderCloseが動く様にしないと・・・
※ここにあるpipsは、別関数でpips数を計算したものです。