ヒストリカルデータとは何か
FXDD社のヒストリカルデータの特徴
FXDD社のヒストリカルデータの導入方法
FXでシステムトレードを活用している人にとって、ヒストリカルデータは欠かせません。しかしFX初心者にとっては、 ヒストリカルデータという言葉自体あまり馴染みのない単語かもしれません。
初心者でもこれからシステムトレードを活用しようと検討している人は、ぜひヒストリカルデータについて理解しておきましょう。
ヒストリカルデータについてよくわからない人のために、ヒストリカルデータの特徴と、 FX業界では知名度が高いブローカーの1つであるFXDD社が提供するヒストリカルデータの特徴や、ダウンロード方法についてわかりやすく解説します。
「ヒストリカルデータ」とは、過去のデータをもとに 為替レートの過去の値動きを示したもののことです。
ヒストリカルデータはMT4が利用できるFX会社において、独自のヒストリカルデータをダウンロード形式で提供しています。
ヒストリカルデータはMT4へのインポートが手軽にでき、 インポート後はシステムトレードでのバックテストに役立ちます。
ヒストリカルデータは古いデータのものではあまり意味がなく、常にアップデートされているヒストリカルデータのほうが信頼性は高いです。
ヒストリカルデータは、システムトレードで役立ちます。システムトレードとはあらかじめルールを設定し、そのルールに従ってシステムが自動的に売買発注をくり返す自動売買システムのことです。
自分が設定した条件の有効性を確認するためにバックテストを行う際に、ヒストリカルデータが必要となります。
システムトレードのバックテストでは、信頼度を高めるためには1年ほどのヒストリカルデータでは不十分です。
どれくらいのヒストリカルデータが必要なのかは、トレードスパンによっても違います。たとえば 日足チャートでのトレード手法では過去5年分のヒストリカルデータが理想です。しかし5年分のデーターをダウンロードするのが大変な人は、 最低でも2年分のデータを用意しましょう。
ヒストリカルデータでは、トレンド分析もできます。トレンド形成は、以下の3種類です。
短期
中期
長期
上記のトレンド形成3種類のなかで、 もっとも重要なトレンド形成が長期です。長期間のヒストリカルデータは、バックテストはもちろんのこと長期でのトレンドの流れもつかめます。
またトレンド分析ではトレーダーの感情などが入りがちですが、ヒストリカルデータによるトレンド分析では、 トレーダーの感情が一切入ることなく冷静なトレンド分析が可能です。
ヒストリカルデータは自分の取引手法を確立するためにも役立ちます。
ヒストリカルデータを使わない感情や欲の入った注文は、 冷静な判断ができていないため、負け注文となる可能性が高いです。
ヒストリカルデータを活用してバックテストをした際に、数字上で利益が出せることを理解すればトレーダーの自身がつき、感情や欲によって左右されることが少なくなるため、 結果的に損失を低減させられるでしょう。
FXDD社は2003年から日本でのサービスを開始し、バミューダ金融当局のライセンスを持つ高い知名度を誇るブローカーです。
ヒストリカルデータはさまざまなFX会社から提供されていますが、なかでも FXDD社のヒストリカルデータは、世界中のシステムトレードを活用するトレーダーから定評があります。
FXDD社のヒストリカルデータの特徴を3つ紹介します。
FXDD社は会員登録等不要でデータをダウンロードすることが可能です。一般的なFX会社からもヒストリカルデータはダウンロードできますが、口座開設をしなくてはなりません。
しかしFXDDでは口座開設をせずにだれもが無料でヒストリカルデータをダウンロードできる点が特徴です。
氏名や住所、メールアドレスなどを入力してダウンロードすると、ダイレクトメールや不要な情報が送られてきて困る人も多いですが、 FXDDならば個人情報を入力しないため安心してダウンロードできます。
FXDD社は手軽にヒストリカルデータをダウンロードできますが、データの精度はあまり高くありません。
たとえば上記のチャートのように過去のデータ内において不自然な値動きがあったり、市場がクローズしている日曜日などの日付に値が入っていたりします。
また一定期間のデータが抜けてしまっていることや、ローソクが抜けていることもあるので注意が必要です。全面的にデータを信用するのではなく、あくまでも参考程度として活用するといいでしょう。
一部のデータが抜けているデータや、間違ったデータが入力されているデータを使ってバックテストを行った場合、間違ったデータによってせっかく有効性のあるシステムを作っても、正しく評価されません。
バックテスト後、損益曲線を確認して不自然な部分を検証すれば、間違ったデータであることが確認できます。しかし最適化などをかけてしまった場合には、損益値やドローダウンなどの数字しか表示されないため、システムの有効性が正しく判断できません。
また毎回損益曲線をすべて確認することも現実的に無理なので、 間違ったデータが入っている場合にはバックテストの評価はできないと思っておきましょう。
MetaQuotes社のヒストリカルデータはMT4へインポートできますが、データの精度は高くないので 信頼性のあるバックテストはできません。
精度が高いヒストリカルデータを提供している、他のFX会社からデータを入手することをおすすめします。
投資家向けのツール・マーケット情報を提供する国内サービス会社FXTFでは、 精度の高いヒストリカルデータ入手が可能です。
ただし 口座開設したユーザーのみ提供されるので、まずは口座開設してからデータを入手しましょう。
ログイン後にCSV形式でダウンロードできます。
FXDD社のデータ精度には多少の不安もありますが、 過去10年分ものヒストリカルデータを口座登録も必要なく簡単にダウンロードできます。
これからシステムトレードを活用しようと検討中の人は、まずFXDD社のヒストリカルデータを導入してみましょう。FXDD社のヒストリカルデータの導入手順は、以下のとおりです。
既存のヒストリカルデータの削除
最大バーの増加
ヒストリカルデータのインポート
別の時間足のデータを作成する
ここではFXDD社のヒストリカルデータを導入する方法についてくわしく紹介します。
まずMT4にすでに保存されているヒストリカルデータを削除しましょう。
ヒストリカルデータを削除するためにはMT4を停止させた状態で、MT4がインストールされているフォルダの下にある「history」から、該当通貨ペアの「HSTファイル」を削除する必要があります。
メニューのファイルを開く
データフォルダを選択
historyを選択
history内で使用している口座のフォルダをクリック
フォルダを開いて既存のヒストリカルデータを削除
MT4を開いたまま削除すると、削除したデータが再び作成されてしまうので注意しましょう。また削除完了したら、ヒストリカルデータが保存されていたフォルダを閉じ、MT4を再起動させます。
Metatrader4を開いて上部のツールバーからオプションを選択しましょう。オプション画面のチャート項目内には ヒストリー内の最大バー数とチャートの最大バー数の設定部分があります。
ヒストリー内の最大バー数とは、MT4に保存できるヒストリカルデータの本数のことです。またチャートの最大バー数とはチャートに表示できるヒストリカルデータの本数のことです。
初期設定ではダウンロードしたすべてのヒストリカルデータがインストールできないため、それぞれの 最大バー数を最大値に設定する必要があります。
設定手順は「ヒストリー内の最大バー数」と、「チャートの最大バー数」それぞれを最大値である2147483647に設定しOKボタンを押せば完了です。
FXDDの公式サイトのヒストリカルデータダウンロードページを開くと上記のような画面が表示されます。 自分がダウンロードしたい通貨ペアを選択すればダウンロードが開始です。
ダウンロードしたデータはZipファイルで圧縮されています。事前にデスクトップなどの場所に解凍しておきましょう。
MT4を表示させたら「ツール」からヒストリーセンターを選択します。ヒストリーセンターのウィンドウが開いたら、 右側にある通貨ペアウィンドウからインポートをクリック。
参照ボタンを押してFXDDでダウンロードしたhstファイルを選択します。
選択したらOKをクリック。
インポートが完了するとヒストリカルデータが表示されます。 「閉じる」をクリックしてからMT4を再起動させましょう。
ヒストリカルデータでは、さまざまな時間足のデータ作成が可能です。 EUR / USDのヒストリカルデータをダウンロードした場合を例に、時間足のデータ作成の手順を紹介します。
まずツールバーからファイルを開き、オフラインチャートを選択しましょう。EURUSD,M1を選び、「開く」ボタンをクリックするとMT4の画面上に 「EURUSD,M1 (offline) のチャートが表示されます。
つぎにMT4画面の左側にあるナビゲーターから「スクリプト」を開き、「PeriodConverter」をクリック。パラメーターの入力タブをクリックし、パラメーターの値を「5」に設定してからOKボタンをクリックしましょう。
これで5分足のデータの作成が完了です。
15分足のデータの場合には、5分足のデータ作成と同じく再度ナビゲーターより「スクリプト」を開き、「PeriodConverter」をクリックします。
15分足なのでパラメーターの値に「15」を設定し、 OKボタンをクリックしてOKボタンをクリックすれば完了です。
パラメーターの値を自分が作成したい時間足の数値に設定すれば、別の時間足のデータが作れます。 いろいろな時間軸のデータを作って、システムトレードのバックテストに活用してみましょう。
ただし 口座開設したユーザーのみ提供されるので、まずは口座開設してからデータを入手しましょう。
ログイン後にCSV形式でダウンロードできます。
MT4を使っての正しいバックテストのやり方を説明します。Mismached Charts error (不整合チャートエラー) 値が0になる様に、正しくバックテストを行いましょう。
MT4を立ち上げたらメニューから、[View] >> [Strategy Tester] を選択します。
その後上記の様にテスター設定が開くので、赤枠のダウンリストからテストするEAを選択します。
次に[Symbol]をクリックして、テスト対象の通貨ペアを決定しましょう。
[Preod]をクリックして、テストEAが使用するタイムフレームを決定します。
[Spread]をクリックして、テスト時の想定スプレッド値をポイントで設定します。
[Model]は原則[Every Tick]を選択して、[From][To]に計測期間を入力します。 (当日まで設定するとエラーがでるので、数日ほど前の日付にしましょう。)
[Expert properties]ではEAのパラメータや、スタート時の証拠金などが設定できます。
バックテストが完了するとテスターウィンドウの下部に、結果のタブが並びます。
各タブを選択すると、それぞれ下記のデータが確認できます。
テスト期間の全取引を表形式で表示されるので、全トレードデータが確認できます。
収益の推移がグラフ化して表示されます。
一番重要なレポートです。レポート上で右リックすると、ダウンロードできます。
ファイル形式はHTMLでダウンロードされるので、ブラウザで開くとバックテストの最終結果がまとめて表示されます。
バックテスト以外にフォーワードテストと呼ばれる、EAのテスト方法があります。
バックテストは過去のデータをもとにEAのトレード成績をチェックしますが、あくまで過去データなので現在の相場とは値動きが大きく違う場合があります。
そこでデモ口座を開設し、実際にデモ口座内で 現在の相場に対してEAをテスト稼働させるのがフォーワードテストと呼ばれるテスト方法です。
通常1カ月程度のフォーワードテストが推奨されており、 バックテストとフォーワードテストの結果が良いEAのみが、実際に配布・販売されます。
フォーワードテストで注意する点は、[取引頻度][発注ロット数][勝率][ドローダウン率][利益率]などがありますが、 フォーワードテスト結果とバックテスト結果の乖離が低いEAが、より現在の相場で有利なEAといえます。
EAを選ぶときはバックテストの好成績だけではなく、 フォーワードテストが適切に行われているかも確認するようにしましょう。
MT4のEAは有償・無償ものを含めて非常に多くの種類がダウンロード可能です。
多くのEAでは開示しているバックテストの結果が、 EA製作時のバックテスト結果であり、非常に高い成績を残しています。
しかしどのようなEAやトレード手法でも、 右肩上がり一直線の結果は存在しないので、極端に好成績なバックテスト結果には注意が必要です。
バックテストが行われた期間を確認して、直近のデータがない場合には抜けている期間のバックテスト結果を開示してもらうのもおすすめです。
とくに制作したばかりのEAでは「パラメータの最適化」という作業を行い、右肩一直線の非常に高いバックテスト結果を出すことができます。
あくまで過去のデータを参照しての成績なので、バックテスト結果を過信せずフォーワードテストの結果や、使用されているスキームなど複合的に判断するようにしましょう。
ヒストリカルデータにGAP (データの欠損や異常値) があると、バックテストの精度が落ちます。
そこでヒストリカルデータの抜けをテストするソフトを使用して、チェックしましょう。
AnalyzeHistory.mq4を以下のリンクからダウンロードします。
https://www.mql5.com/en/code/11643
ダウンロードしたファイルをEAを同じフォルダ内に置きましょう。
MT4のストラテジーテストを以下の様に設定したら、右下のSrartをクリックします。
Expert Adviser = AnalyzeHistory.ex4
Symbol = テストする通貨ペア
Preiod = テストするタイムフレーム
Use date = チェックを外して指定しない
MT4上に表示されたデータを確認すると、余計なデータが入っていたり欠損している箇所があります。
たとえば上図の例では2020/07/01火曜日の値動きが横線になっていたり、ところどころデータの抜けがあります。
以下のサイトでは土日に発生するゴミデータを自動除去してくれるスクリプトが公開されています。
使用方法は下記の手順で、CSVファイルが生成されます。
FXDDのexsample.htsヒストリカルデータを..\MQL4\Filesへ入れる
スクリプトファイルを..\MQL4\Scriptsに置く
MT4を再起動する
スクリプトからhst2.CSVをダブルクリックしパラメータにexsample.hst名を入力
数分後にexsample.CSVが生成
ヒストリカルデータを再度インポートして確認
MT4でEAを運用するときには、かならずバックテストとフォーワードテストの結果を確認しましょう。
そして 精度が高いデータ検証するためには、実際に本番運用するFX業者のデータを使うのがおすすめです。
各FX業者ごとに値動きやスプレッドに差が発生するので、信頼のあるテスト結果を検証するためには、実際にトレードする口座でのテスト結果を検証しましょう。
自分が取引する口座の選択もEAが使えるか、ヒストリカルデータが提供されているか、などをチェックする必要があります。
ヒストリカルデータは提供している会社によって精度が異なります。ヒストリカルデータは短期間のデータ量では少なすぎるため、長期間のデータを入手して活用することがポイントです。
日本でも有名なFXDD社のヒストリカルデータは、データが抜けているなど精度に不安を感じることもありますが、約10年もの長期間の過去データ量や口座登録不要で手軽にダウンロードできる点が魅力です。
ヒストリカルデータを十分に活用して、自分で作ったシステムトレードのルールがどれくらい有効かを確認してみましょう。
※掲載情報には本サイトのFX会社・口座比較情報に掲載・参画する事業者が提供するPR情報が含まれています。 ※本サービスはFX取引及びFX取扱事業者等に関する情報の提供を目的としています。FXに関する取引口座開設、取引の実行並びに取引条件の詳細についてのお問合せ及びご確認は、利用者ご自身が各FX取扱事業者に対し直接行っていただくものとします。 ※キャンペーン・特典は各広告主において実施されるものであり、広告主による募集要綱等を十分にご確認ください。 ※本サービスに掲載されている情報は、投資判断の参考としての情報提供を目的としたものであり、投資勧誘を目的とするものではありません。 ※本サービスでは十分な注意を払ってFX取引及びFX取扱事業者等に関する情報提供を行っておりますが、本サービスに掲載されている情報は、情報の真偽、FXの評価に関する正確性・信頼性等については一切保証されておりません。利用者がこれらの情報に関連し損害を被った場合にも、当社は一切の責任を負わないものとします。投資に関するすべての意思決定は、利用者個人の判断で行っていただきますようお願いいたします。 ※本サービスにおいて公開されている情報につきましては、営業に利用することはもちろん、第三者へ提供する目的で情報を転用、複製、販売、加工、再利用及び再配信することを固く禁じます。 ※本ページには、各FX取扱事業者を始めとする他社・他の機関のサイトへのリンクが設置されておりますが、当社はこれらリンク先サイトの内容について一切関知せず、何らの責任を負わないものとします。 ※本サービスのご利用に当たっては上記注意事項をご了承いただくほか、利用規約にご同意いただいたものとします。 ※手数料は全て「税込み」にて表示しております。 ※スワップポイントは1万通貨/1日あたりの値を掲載しています。 ※最新情報は各FX取扱事業者の公式サイトにてご確認ください。