MT4でEAのバックテストにTickstoryが用いられることがあります。
MT4のバックテストにおける”全tick”は擬似的に生成されたものであり、実態の値動きとは全くあっていない。
それに比べて、Tickstoryで生成された”全tick”はモデリング品質 99.99%以上であり、ほぼリアル値動きを実現できている!のだそうです。
(実際にMT4で普通に全tickバックテストした際のモデリング品質は 25% 弱となります)
しかし本当にそうなのでしょうか?
Tickstoryが生成するデータは、Dukascopyが提供しているデータです。それはSWFX(スイスFXマーケットプレイス)でのtick情報です。
複数の為替業者と契約している方は、2社のチャートを並べた際に細かな違いが出ていることに気づくことが多いと思います。
実際にticks数を測ってみたでも測定していますが、tickの総数は倍以上違っているケースもあります。
- tickに敏感なEAの場合は、Tickstoryでリアルtickのバックテストをする意味はあるが、しかしそれは実際にEAを稼働している業者のtickとは異なるものである。従って当然結果は異なる。
- tickに敏感でないEAの場合は、「多少のtickの違いは総合成績には影響ない」との考え方もあるが、それならば最初からリアルtickにこだわる意味がない
のではないでしょうか?
そこで、実際にtick-sensitiveなEAを作り比較してみました。(たった一週間ですが・・・)
# | 通貨 | Alpari | バックテスト |
1 | EUR/USD 設定 1 | 0勝1敗 -9.8pip | 取引なし |
2 | EUR/USD 設定 2 | 取引なし | 取引なし |
3 | USD/JPY 設定 1 | 0勝1敗 -19.9pip | 1勝1負 +6.65pip |
4 | USD/JPY 設定 2 | 取引なし | 4勝0敗 +34.92pip |
期間は2014/11/10~2014/11/14の1週間、Alpariは左記期間中に実際に稼働、バックテストはTickstoryで左記期間のデータを取得しバックテストしたもの
今回のEAは超tick-sensitiveだったこともありますが、全く異なる結果になりました。(スプレッドの違いもありますが)
結論:バックテストを行うなら、EAを稼働する業者のデータで実施すべき
ぇぇ、決して予想に反して負けたから、この記事を書いたわけではありません・・・(´・ω・`)
やはり、バックテストに使用するtickデータで実際に稼働できるJForexサイキョーってことでしょうか( ̄ー ̄)
Dukascopyに開設できるまでEA作ってましたが、やはりJForexで作り直そうと再決意した結果でした。
PS
JForexでのバックテストは、リアルtickのみならず、リアルスプレッドや、オーバーナイトスワップも反映されます。(たしか・・・)