MT4のEAで質問です。あるEA(IFDONEを繰り返す)を日足のチャートで動作させていま…

した。昼はちゃんと動作していました。夜寝る前に、チェックのためチャートを30分足にした後、そのまま日足に戻さず

就寝して、今朝見てみると、オーダーが入るべきところに入っていません。いろいろいじっていたら、チャートを日足にしたとたん、オーダーの実行を始めました。
EAはチャートの足の期間で、動作が左右されるのでしょうか。
これを解決するにはどうすればよろしいでしょうか。何かヒント、この関数を使うとか、参考になるサイトとか、教えていただければと思います。
よろしくお願いします。

..[補足]..
creeping_coinさん、ありがとうございます。1440,とPERIOD_D1でライブラリも含めチェックしましたがありませんでした。それから、30分足でも、条件は満たしています。
MetaEditorのリファレンスのProgram Runに
Detaching of the program…, c hange of …chart period, …will interrupt execution of the program.と言う記述があります。この割り込みが停止に当たるのかよくわかりませんが、これは避けられないのでしょうか。

回答1

例えば、平均移動線をみているEAだとすると、
iMAを利用しているはずです。
そのパラメータで、

double iMA(string symbol, int timeframe, int period, int ma_shift, int ma_method, int applied_price, int shift)

2番目のtimeframeの値が0だと、現在表示中の足を利用するので、売買結果が変わります。

回答2

ソースを見ないことには分かりませんが、
OSが関係ないことだけは確かです(笑)

if(Period() == 1440){
/*注文する*/
}
とか
if(Period() != 1440) return;
という感じの記述があるなら、日足チャートを表示していないときは、
売買しないようになっている可能性が高いです。
(とりあえず「1440」で検索してみるといいかも)

ちなみに、「オーダーが入るべきところ」というのは、
30分足チャ 璽箸砲いて成立していたということでしょうか?

【追記】

ヘルプの記述に関してですが、期間変更の場合はすぐに再開されます。ご自身が「チャートを日足にしたとたん、オーダーの実行を始めました」と書かれているように、期間を変更したからといって停止してしまうわけではありません。
実はEAにバグがあって、おかしな状態になっていたEAが、期間変更によるリセットで正常な状態に戻ったとか(笑)


回答3

EAはソースかパラメータかで稼働足を指定している場合がほとんどなので、お使いのEAが日足以外で動かない設定なのだと思います。そういうEAは多いです。


回答4

直ぐに、思い当たるのがパソコンのOSです。
MT4は、Windows7には対応していません。
しかし、まったく取引が出来ないというわけではありません。
時々、EAに対応しないのです。


コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA