エラーコード - ページ 5

 

StopLossとTakeProfitの数値の精度に関係があるのは確かです。両者の値がゼロの場合、Ordersendは注文を送ることができますが、StopLossとTakeProfitの値がゼロの場合、#130のエラーが発生します。私のブローカーFXCMは端数pipsを使用しており、例としてGU値は1.54535、GY値は132.155となることがあります。

Normalizedoubleを適用すると、例えば上記のGUの値に適用すると、次のように表示されるので、問題があるのではないかと思っています。1.54535ではなく1.54535000と表示され、明らかに正確な精度に設定されていないことがわかります。これからもよろしくお願いします。乾杯

 

さて、残り少ない髪をかきむしった後、私は再びブローカーのストップロス・レベルを 確認することにしました。その関数が

StopLoss=MarketInfo(Symbol(),MODE_STOPLEVEL);

はStopLossにZEROという値を返しました。 これは、OrderSendのStopLossとTakeProfitの値が0以外の場合、#130のエラーを返すようです。 私は、StopLoss と TakeProfit をゼロに設定した最初の OrderSend を発行し、その後 OrderModify で StopLoss と TakeProfit 値をゼロから必要な値に「変更」することで回避策を見つけました。特にエレガントではありませんが、仕事はできるようです。

これが同じような問題に直面している人の助けになることを願っています。乾杯