AIでFX分析!!教師データの作り方2~画像編~

こんにちは。管理人のピヨ猫でーす。

前回記事でFXの機械学習の教師データを作成する方法を紹介しました。

syuuai.hatenablog.com

前回はCSVデータでしたが、機械学習と言えば画像解析に強みがありますし、人もチャートを見て判断しているので、画像データの方が精度が良いかもしれないな~と思い、FXの教師データの画像版を作成してみたので、作成方法を記事に致します。

1.Excel でろうそく足チャートを作る方法

画像データを作るにはFXの為替データCSVをグラフに変換してあげる必要がありますが、Excelはとても便利で簡単にろうそく足チャートが作れます。

メニューバー → 挿入 → グラフから株価チャートを選択すれば自動でろうそく足チャートを作成してくれます。

詳しくは掲載されたサイトがあるのでリンクしておきます。

www.tipsfound.com

注意点はデータの並び順を始値、高値、安値、終値にすることです。
順番を間違えると正しいろうそく足チャートになりません。

こんな感じです。

Excelのろうそく足チャート

 

2.Excel VBAでチャートを画像保存する方法

Excel VBAでチャートを保存するにはChart.Export関数を使います。
こんな感じです。

datFile = ファイルパス(拡張子.jpeg)
Call SheetGrahoTmp.ChartObjects("ろうそく足チャート").Chart.Export(datFile)

詳しくはこちらの記事が参考になります。

jizilog.com

 

3.Excel VBAでグラフ作成を行う際の注意点

Excelでろうそく足チャートを作るシートを作れて、Excel VBAからチャートを保存することができれば教師データを作るのは簡単です。
Excel VBAでチャートの元データを更新し、Chart.Export関数を実行してグラフを保存するのを繰り返せばよいです。

ただ1点注意点があります。
ExcelのグラフはVBAから単純に更新した場合、VBAの処理が終わるまで再描画が行われません。なので、せっかくデータを更新しても同じグラフが作られ続けてしまいます。ちょっとしたおまじないが必要です。

具体的にはグラフデータを更新したら以下の3つを実施してください。

  • 計算モードを自動計算に切り替える
    Application.Calculation = xlCalculationAutomatic
  • チャートをリフレッシュする
    Chart.Refresh
  • OSに描画を促す
    DoEventsを2回実行する。

こんな感じです。

Application.Calculation = xlCalculationAutomatic
Call SheetGrahoTmp.ChartObjects("ろうそく足チャート").Chart.Refresh
DoEvents
DoEvents
Application.Calculation = xlCalculationManual

Call SheetGrahoTmp.ChartObjects("ろうそく足チャート").Chart.Export(datFile)

DoEventsを2回実行する理由はこちらの記事に詳しく記載されていました。

tonari-it.com

4.とりあえずやってみた

↓↓↓ VBAツール

教師データ作成ツール

↓↓↓ 実行ボタンを押すと7,000ファイルの画像教師データが作られます。

FX教師データ

 

5.学習データ作成ツールとデータをGITに上げました

次回こそは準備した教師データを使って実際に機械学習をしてみたいと思います。
作成したツールはGITHUBに登録してあるので良ければ参考にしてみて下さい。
データは大きすぎてGITHUBには登録していないので、ツールから生成して下さい。

◆ GITUB

https://github.com/shibayu2002/fx_ml_basedata.git

github.com

◆ 推薦図書

詳解 ディープラーニング TensorFlow・Kerasによる時系列データ処理 [ 巣籠 悠輔 ]

価格:3,672円
(2018/11/25 22:43時点)
感想(0件)

【送料無料】 機械学習 データを読み解くアルゴリズムの技法 / 竹村彰通 【本】

価格:6,696円
(2019/3/23 23:16時点)
感想(0件)

広告




スポンサーリンク
広告




広告




シェアする

  • このエントリーをはてなブックマークに追加

フォローする

スポンサーリンク
広告