解決済み

VPS(仮想サーバー)で起動させた際、ロング、ショートの指値が切り替わりません。

2021/04/23 21:42
176

ゴーゴージャングル様いつもお世話になります。

トラリピハーフ&ハーフ型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ピピで利確、再度指値をセッティングとされるようにしておりますが、ストラテジーテスターの時の様にロングとショートの指値が切り替わらず、指値が残ったままロングに切り替わらず原因が分かりません・・・。

どうかお力添えをお願い致します。
原因が不明でどうがご対応の程よろしくお願い致すます。

(ZIP) フォルダー.zip

コメント

GogoJungle
2021/04/29 13:30

お待たせいたしました。
添付いただいたプログラムがエラーでコンパイルできないため、目視確認になりますことご了承くださいませ。

ロングがショートに切り替わらない状況ですので、変数 RangeMax RangeMin が気になりますが
検索しても定義されている箇所が存在しない状況でございました。定数の場合は影響はございません。

また、ロング・ショートの切り替えには OrderPrice も条件にしており
OrderPrice は下記のように AdjustValByPips(rangeArray[i]) の結果を代入しています。

search=AdjustValByPips(rangeArray[i]); 
OrderPrice=search; 

AdjustValByPips や rangeArray[i] の処理もあわせてご確認いただければと存じます。

処理の確認方法は、Print文にて変数の値を出力しての確認が、おすすめでございます。
該当変数の前後に、Print文にて意図した値が出力されているか、ご確認くださいませ。

簡単ではございますが参考になれば幸いでございます。

関連トピックス

検索結果がありません。

ノーコードで誰でも簡単EA開発!MQL言語学習にも使える! | GogoJungle

注目トピックス

検索結果がありません。