知り合いから仲値トレードのことを教えてもらい、自分でもどこでエントリーすれば一番いいのかを秒単位で過去検証してみたいと思いました。
そのためにはティックデータが必要になります。この記事ではどのようにして過去検証で使用するティックデータを取得したかについて記載したいと思います。
仲値とは、金融機関が外国為替取引をする際の基準となるレートのことです。 TTM(Telegraphic Transfer Middle Rate)ともいい、金融機関が毎朝9時55分の為替レートを参考に決定します。
Tick(ティック)は、株式や債券、為替などの価格(レート)の時々刻々と変わる細かい値動きのことをいいます。
検証するにあたり過去のUSDJPYのデータが必要なります。あと以下も確認が必要になります。
- それはティックデータなのか
- そのデータは日本時間なのか
- 冬時間や夏時間の対応は
- 実際EAで使用できるデータなのか
それはティックデータなのか?
まずはUSDJPYの過去データが必要になります。
MetaQuotes Software 社からUSDJPYの過去データをダウンロードします。
MT4画面 -> ツール -> ヒストリーセンターからダウンロードします。
ストラテジーテスター画面で全ティックを選択すればいいはず。
ストラテジーテスター画面でみるとすべてのティックごとに動作しているように見えます。が
これはあくまで4つの値段(始値、終値、高値、安値)をもとに疑似的に生成したティックデータだとのこと。
Every tick (Every Tick) - generation of ticks within the candle, allows for a maximum close modeling of Expert Advisor's work to real trading, within the testing environment;
確かに過去データをエクスポートしてみると1分ごとのデータしかありません。
日付 | 時間 | 始値 | 高値 | 安値 | 終値 | 出来高 |
2019.11.13 | 06:41 | 109.036 | 109.038 | 109.035 | 109.036 | 11 |
2019.11.13 | 06:42 | 109.036 | 109.051 | 109.036 | 109.051 | 23 |
2019.11.13 | 06:43 | 109.051 | 109.051 | 109.044 | 109.044 | 20 |
2019.11.13 | 06:44 | 109.044 | 109.054 | 109.044 | 109.054 | 41 |
2019.11.13 | 06:45 | 109.053 | 109.061 | 109.053 | 109.056 | 41 |
内に生成されているのが模擬のティックデータのようです。
例:USDJPY1_0.fxt
ほかのFX業者ではどうなのかと私が使用しているAxioryからデータをダウンロードしてみました。
AXIORYでは、EA開発者の方やFIX APIにて独自のトレーディングシステムを開発されている方が、正確なバックテストを実施できるよう、「MT4 スタンダード口座」「MT4 ナノスプレッド口座」の過去のヒストリカルデータ(ティックデータ)を提供しております。
MT4 ヒストリカルデータ
https://www.axiory.com/jp/platform/mt4/historical/
ダウンロードしたCSVファイルを開いてみるとこちらも1分ごとのデータでした。
日付 | 時間 | 始値 | 高値 | 安値 | 終値 | 出来高 |
2019.11.01 | 00:00 | 108.029 | 108.029 | 108.016 | 108.029 | 9 |
2019.11.01 | 00:01 | 108.027 | 108.029 | 108.025 | 108.028 | 9 |
2019.11.01 | 00:02 | 108.027 | 108.029 | 108.027 | 108.029 | 9 |
ティックデータはどこに?につづく