2014年02月27日

MQL4 OnTimerはバックテストで動くのか?

MT4のビルド600(?)からMQL4にMQL5の機能が追加されてますね。

クラスが使えたり、イベントハンドラが増えたりで、今までで出来なかったことや、煩雑になった処理がシンプルに出来たりするのではないかと興味がそそるわけです。

で、今回はOnTimerについて私の失敗談です。

OnTimerは指定時間の間隔で呼ばれる関数です。

1秒毎といえば1秒毎、
60分毎といえば60分毎にOnTimer関数が呼ばれます。

この関数を使って、一定時間ごとにポジションを積み増す(ピラミッディング)処理がつくれないかな?と思ったわけです。今までのTick駆動でも時間をチェックすればよいだけですが、時間をチェックしなくて良くなるなーと思ったわけです。

結果は、フォワードなら問題なし(当たり前か・・・)。
バックテストはOnTimer関数は呼ばれませんでした。
完全無視のようです。

私のバックテストの挙動予想は、
1.バックテストの時間でシミュレートされる(すばらしい!!)
2.リアルタイムの時間で呼ばれる(1秒と指定したら実際の1秒で処理される)

だったのですが、どちらも外れ。

結論、今後はわかりませんが、現時点でバックテストでOnTimerは使えないです。



----

タグ:MT4 MQL4 OnTimer
【ビルド600以降の話の最新記事】
posted by K at 13:12 | Comment(0) | ビルド600以降の話 | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント: