目次
「ヒストリカルデータ」を使ったFXにおける相場分析方法や攻略法についてお話します。
FX相場を予想するには、通常であればチャートを駆使しツール類のサインを見極めるテクニカル分析や、経済ニュース・国際情勢等を精査し今後の相場の行方を占うファンダメンタル分析が主流です。
実はFXの相場分析方法にはこの2つ以外にも今回紹介します「ヒストリカルデータ」を使った方法があります。
このヒストリカルデータとは過去の為替レートのことで、実際に成立した過去のレートをエクセルなどの客観的な体裁(数値データ)に直したものです。
ヒストリカルデータによる相場予測の方法は、テクニカル分析のようなビジュアル的なものではなく、またファンダメンタル分析のような経済分析でもない全く別のアプローチの仕方となっています。
そこで本ページでは、このヒストリカルデータについての基本事項やこれを使ったおすすめのFX攻略方法などについて説明していきます。
FXのヒストリカルデータとは?
ヒストリカルデータとは、確定済みの過去の為替レートをデータ数字でまとめ上げたものです。
現在いくつかの国内FX業者で提供されており、主にCSV形式のファイルにデータが収録されています。
出典:JFX
データから入手できる内容については、取引業者が提供している通貨ペアごとに次のようなものがあります。
- 日付
- 始値
- 高値
- 安値
- 終値
また取引業者によって提供しているローソク足の種類や収録期間、足の本数などに違いがあります。
CSV形式のデータについてですが、上記画像のようにPCにエクセルがインストールされていれば特に問題なく閲覧することができ、その後のデータの取り込みや様々な集計・分析作業もエクセルで行うことが可能です。
ヒストリカルデータを利用した相場分析方法のメリット
- 相場を客観的に把握することができる
- システムトレードにおけるバックテストに最適
- 思いも寄らなかった攻略法が見つかることがある
- メンタルに自信の無いトレーダーでも数値を根拠とした機械的なトレードを試みることが期待される
やはり数値を使った相場分析法ですのでその客観性が高いことや、シストレ・機械的な取引といった自動売買への転用、また相場への個人的な思い込みを排除しやすくなるといった点がヒストリカルデータによる攻略法のメリットです。
デメリット
- ヒストリカルデータを取り扱っているFX業者が少ない
- 集計作業が面倒
- エクセルやPC操作に詳しくなければならない
- 分析方針に決定的な決まりが無くギャンブル的要素が含まれる
デメリットとしては、数値データを扱う性質上感覚的な取扱いが難しいことがまず上げられます。
またメリットの方では客観的な分析ができると言いましたが、ヒストリカルデータを根拠とした全体的な投資方針や最終的な結論を下すにあたっては、これといったルールがある訳ではないという面があります。
これについては、規制速度が115キロの高速道路を使った例を用いて説明してみます。
例えば、ある人からすればこの高速道路は115キロものスピードが出せると好意的に思える事でも、別の人から見れば、たとえ高速道路であっても115キロものスピードで運転するのは交通事故の可能性が高まり危険だと否定的に思えてしまう場合があるというものです。
つまり115キロという数値は客観的なデータとして誰がどう見ても115キロに違いありません。
以上のようにヒストリカルデータといっても一長一短が存在しますで、このことを忘れることなくデータに備わる客観性を正しく上手に利用していくことが大切です。
ヒストリカルデータの取得方法
ヒストリカルデータを実際に入手するやり方をGMOクリック証券を例に説明します。
まずは取引サイトへログインします(ここでログインするとはつまり、事前にGMOクリック証券で口座開設を済ませておかなければなりません)。
そしてマイページにて「ツール」をクリックします。
出典:GMOクリック証券
次の画像にある「ヒストリカルデータ」をクリックします。
出典:GMOクリック証券
すると次の画像のようなページが現れますので、西暦を選んでからダウンロードしたい通貨ペアと月を決め「↓DL」をクリックします。
出典:GMOクリック証券
圧縮フォルダがダウンロードされます。中身は1つのファイルに1営業日分の1分足データが保存されています。
出典:GMOクリック証券
次はフォルダを展開しファイルを開いた所です。
出典:GMOクリック証券
上記画像が今回紹介するヒストリカルデータです。
ファイル全体は1分足が1,380本分存在し、1行につき1分足1本でBid/Ask別で4本値(始値・高値・安値・終値)が収録されています。
GMOクリック証券は為替レートをBid/Ask分けて公開している珍しい業者で、他の取引業者ではこういった体裁とはなっていない場合が多くもっとシンプルです。
攻略手法のおすすめ発見方法
エクセルVBA
大量データを捌くのに必須だが
ヒストリカルデータはCSV形式で収められたデータですので、そのままエクセルへデータを移し各種処理を施すのが簡単です。
そして実際にヒストリカルデータの加工を行うのに必須で便利なのがVBA(マクロ)と呼ばれるプログラムです。
GMOクリック証券のデータの場合、1ファイルだけで1,380本ものローソク足データがありますので、相場分析を実行するのにVBAはなくてはならない存在です。
しかし、やはりコード作成等は気軽にできるものではありません。
VBAに触れた事が無い人の場合は、使いこなせるようになるまでに大変時間がかかることが予想されます。
一度慣れてしまえば非常に心強い
VBAの取扱いは、初めこそ非常にややこしい(あらゆるプログラミング経験が無い方の場合)のですが、データ分析だけに特化したプログラミングであれば覚えなければならないVBAの知識も非常に限られたものとなります。
またVBAなどのプログラミングは、非常に簡単なプログラム処理を幾重にも組み合わせただけのものであり、2020年からは小学生の必修科目とされますが、それはつまりどんな人でも身に付けることができることを意味しているものなのです。
VBAのプログラムコード作成環境
下にあるものが実際のVBAのコード作成画面です。エクセルを起動し「Alt + F11」のショートカットから編集画面を開くことができます。
この画面を見ただけで拒絶反応を起こす人がいるかもしれませんね~。
プログラミングは明確なコードルールの中で、実行したい処理に合わせ理路整然とコードを作成していきます。
ただ、それはまるでパズルを解くことや脳トレゲームのようなものでしかなく、東京大学に入れるほどの頭脳が必要とされるものでは全くありません。
例えば次のような2行の連続したコードがあったとします。
a = 58
Range(“A1”) = a
上にある「a = 58」は、aに58を代入するということを意味し(aは58と等しいの意味の場合もある)、その後下の行の処理により、aに入っている58をワークシート上のA1セルに記載する動きが実行されます。
これは非常に単純な例ですが、地図を見ながら目的の場所へ向かうかのように、プログラムコードとはしっかり読めば誰が見ても同じ結果(目的地)にたどり着けるように作られたものです。
あとはこういった単純なコードを繰り返し記述して本格的な実行結果を狙っていくだけなのです。
ヒストリカルデータとVBAを使った相場分析の例
先ほどのGMOクリック証券のヒストリカルデータを利用したVBA作成の流れを説明します。
まずは最小単位の処理
ここでは例として「16~18時における米ドル/円の騰落状況」を最終的に出力させることをプログラミングの目的とします。
まずはCSV形式となているGMOクリック証券のデータを通常のエクセルにコピー&ペーストします。
次に一番左の列(A列)で「16:00」及び「17:59」という文字列があるセルや行が処理対象となることを確認します。
そして16:00の始値と17:59の終値を抽出するようなVBAを作成していきます(具体的なコード作成方法は省略します)。
例えば1つのやり方としては、A列から「16:00」及び「17:59」が含まれているセルを検索し、ヒットしたら次の処理を行うという感じのコードを作ります。
セルがヒットしたら今度はそのセルの右側に並ぶセルから始値と終値を抽出してきます。
GMOクリック証券はBid/Askの2種類の4本値がありますが、ここではBidのレートを利用することとします。
まずBidの始値はB列にありますので「16:00」がヒットしたセルの1つ右のセルの値を「START」という架空の箱(変数)に一時的に保管させる処理を行います。
同じように「17:59」は、ヒットしたセルから右に4つ離れたE列のセルの値を今度は「END」という変数に格納しておきます。
あとはSTARTとENDのレートを引き算すればこの日のレート変動が導きだせるようになります。
長期間に渡る結果の出力
上記では1日分の結果を出すVBAの説明をしてみましたが、実際には半年~1年程度の結果が欲しいところです。
ただ長期間を対象とする処理となりますと本ページでは解説しきれないので、ひとまず大まかな様子を説明します。
まずは次の画像をご覧ください。
これは、通貨ペアや抽出データの対象期間を指定して処理ができるようにしたもので、ワークシート上に処理したい月や日、時間帯などの入力ができるようになっています。
実際にはここで入力した数値を反映させた動作ができるようなVBAコードを作成します。
そして「実行」ボタンをクリックしますと実行されます。
(実行結果)
上記画像のD列にある「pips」が今回の目的である騰落状況です。
「VBAが抽出したデータの内容」
- 対象通貨ペア・・・米ドル/円
- 使用したローソク足の期間・・・2019/1~2019/6
- ローソク足の時間帯・・・毎日16~18時(データ上は17:59まで)
- 抽出したデータ本数・・・128日分 × 2(始値・終値)
実行時間約10秒でこれだけの処理を行うことができるのです。VBAにより精通すれば1秒~数秒で処理を完了さることも可能です。
好みに合わせ出力設定をチェンジ
今回は米ドル/円における16~18時のレート変動結果を出力させるように設定しましたが、この設定を次のように色々変えることで様々な結果を出すことが可能です。
- 月ごとの相場状況を出力させる
- 日付けごとに出力させ日にちによる違いを検証する
- 時間帯を22:00~2:00にしてニューヨーク時間の状況を調べる
- 西暦・日付・時間帯を指定し気になる事件やニュース発生時の状況を個別に調べる
- 長い時間帯と短い時間帯を出力しスイングかスキャルピングいずれが有利なのか検証する など
ちなみに上記で説明しましたVBAの出力結果(騰落状況)に5万通貨のロングポジションをかけ合わせた収益シミュレーションを筆者がかつて作成したことがありましたので、参考までに下に挙げておきます。
右側のグラフは2016~2017年の約10カ月間のヒストリカルデータを使った米ドル/円のレート変動を元にした日々の損益結果を表していますが、見事なまでのプラス収益となっています!
難しい設定を一切せず時間帯や期間を指定しただけのシストレチックなシミュレーションですが、テクニカル分析やファンダメンタル分析をせずとも流動性が高い時間帯や攻略法等を発見することができるということです。
ヒストリカルデータを提供しているFX会社
GMOクリック証券
ログイン後、トップページから「ツール」⇒「ヒストリカルデータ」をたどります。
20種類の通貨ペアの2007年から現在までのローソク足データが手に入ります。
ローソク足の種類は1分足のみでVBAプログラムの作成が難しいイメージですが、最小単位のデータであることから、1時間・4時間・〇時間・〇日・〇週といったオリジナルな集計方法を試みることができます。
マネーパートナーズ
ログイン後、ダウンロードツール「HyperSpeed NEXT」等にあるチャート上を右クリックし「データ出力」からCSVファイルが手に入ります。
データの種類は全種類のローソク足から500本~の過去データの取得が可能です。
またチャートに表示していたテクニカルツールが指し示すレートデータも収録されています。
JFX
ダウンロードツール「.NET版」等でログイン後、チャート上を右クリックし「CSVに出力」からデータが入手できます。
入手できるローソク足は全種類。手に入るローソク足の量は1分足なら1,000本、月足で250本などの具合にローソク足により入手できる本数が異なります。
ヒロセ通商(LION FX)
ダウンロードツール「.NET4」よりチャート上を右クリックし「CSVに出力」でデータが入手できます。
入手できるデータはJFXと同様な感じで1分足が1,000本の他、ローソクの種類により異なります。
マネースクエア
ログイン後にダウンロードページより入手可能です。
ヒストリカルデータは2007年4月のものから用意されていますが、ローソク足の種類は「日足・週足・月足」のみとなっています。
まとめ
FXにおけるヒストリカルデータは、エクセルのVBAであったり又はマイクロソフトのACCESSを用いたり、他には海外取引ツール「MT4」などを利用してデータ分析に使うことができます。
特にエクセルを使ったメリットしては、エクセルが手軽に利用できるアプリケーションであることや、VBAの構築方法がネット検索で豊富に入手できること、またアイディア次第では既存分析ツールでカバーしていない様々な分析ができるといった点にあります。
プログラムコード作成の手間がちょっと無視できない所ですが、VBAは仕事や他の趣味などにも活用ができますので、一度気持ちを引き締め覚悟の上でヒストリカルデータとエクセルVBAに臨んでもらえれば幸いです。
*FXに関する他の記事はこちら: