ゴーゴージャングル様いつもお世話になります。
トラリピハーフ&ハーフ型EAですが、MT5のストラテジーテスターですと108.50を境に
例108.60ショート 50で利確 108.70ショート 60で利確
108.30ロング 40で利確 108.40ロング 50で利確など
108.50を境にロングとショートの指値が切り替わる様にストラテジーテスターでは動くのですが、MQL5のVPSで動かした際に
108.40からロングでポジション持つはずがショートのまま指値がロングに切り替わらず、指値は30本程一気にだしてたので、気が付いた時には、107.90でショート利確など、本来ならロングで入り利確されるはずが考えられないことになっております。
もしかすると指値の出しすぎで108.50を境に切り替わりますが
108.50より下の107.20ぐらいまでショート指値が出てたのでおかしくなったのでしょうか?
しかし、ストラテジーテスターでバックテストを行って再度確認致したところ108.40などショートの指値300ピピ分が、しっかりキャンセルされロングで300ピピ分切り替わります。
もともと10ピピ間隔で指値、10ピピで利確、再度指値をセッティングとされるようにしておりますが、ストラテジーテスターの時の様にロングとショートの指値が切り替わらず、指値が残ったままロングに切り替わらず原因が分かりません・・・。
どうかお力添えをお願い致します。
原因が不明でどうがご対応の程よろしくお願い致すます。
検索結果がありません。 |
検索結果がありません。 |
お待たせいたしました。
添付いただいたプログラムがエラーでコンパイルできないため、目視確認になりますことご了承くださいませ。
ロングがショートに切り替わらない状況ですので、変数
RangeMax
RangeMin
が気になりますが検索しても定義されている箇所が存在しない状況でございました。定数の場合は影響はございません。
また、ロング・ショートの切り替えには
OrderPrice
も条件にしておりOrderPrice
は下記のようにAdjustValByPips(rangeArray[i])
の結果を代入しています。AdjustValByPips
やrangeArray[i]
の処理もあわせてご確認いただければと存じます。処理の確認方法は、Print文にて変数の値を出力しての確認が、おすすめでございます。
該当変数の前後に、Print文にて意図した値が出力されているか、ご確認くださいませ。
簡単ではございますが参考になれば幸いでございます。