FX・ビットコイン・オプションのシステムトレード開発と取引録

FXとビットコインのシステムトレードの開発録、オプション取引の履歴を書き連ねています。MT4, Pythonで開発しています。

FX Python システムトレード

FXのヒストリカルデータを元にPythonのpandasとmatplotlibを使用してローソク足を描写する

スポンサードリンク

前回の記事、「FX自動取引プログラムを開発する~準備編~ヒストリカルデータを登録する
で登録したデータを元にローソク足を表示するプログラムを開発します。

データはFOREXITEからダウンロードした2001年以降の1分足のデータです。

では早速プログラムソースです。

まずは、Sqliteに保存したデータを取得し、pandasで読み込みます。
テーブル構成は、"datetime", "open", "high", "low", "close"という形になっています。

次に、取得したデータをconvert_datasメソッドに渡し、
プロット用に変換します。

データが1分足なので、そのまま出力する場合は単にfloatに変換するだけです。

5分足や10分足、1時間足等も表示できるようにプログラムしてみました。
全データでループを回して、5分足や10分足等、
表示する間隔ごとにリストに保存します。

high、lowはそのリスト中の最大値および最小値を使用します。

変換したデータでもって

で描画します。

1分足だとこんな感じです。

5分足だとこうなります。

ローソク足っぽい見た目ではありますが、
横軸の日時と縦軸の価格ラベルの表示がうまくいっていません。

もう少し改善する余地があります。

pandasを使っての描写は常に便利なのですが
pandasを始めて使うということで、若干試行錯誤しました。
最初、配列を生成してcandlestick_ohlcに渡すように実装していたのですが、
うまくいかずpandasを使用するようにするとうまくいきました。

ローソク足を描写できたので、移動平均線の表示等にチャレンジしてみます。

スポンサードリンク
スポンサードリンク

-FX, Python, システムトレード
-, , ,