/getbtcdatafrombitflyer

bitflyerからデータ取得開始日と終了日を指定してBTC約定データを保存するスクリプトです。

Primary LanguagePython

getbtcdatafrombitflyer

bitflyerからデータ取得開始日と終了日を指定してBTCデータを保存したりHLOCデータへ変換したり描画したりするスクリプトです。

2018/05/19 generatehloc.pyに5分足追加

Requirements

pip install pandas
pip install progressbar2

Usage

getbtc.py

bitflyerからデータ取得開始日と終了日を指定してBTCデータを保存するスクリプトです。
デフォルトではFXの価格を取得します。
現物の価格が欲しい場合は、initself.execution_history_paramsself.health_check_params'product_code': 'FX_BTC_JPY''product_code': 'BTC_JPY'に変更してください。


プロジェクト直下にdataディレクトリとlogディレクトリを作成してください。
それぞれ取得したデータとログが出力されます。

例えば、下記コマンドで実行します。

python src/getbtc.py -s 2018-01-01-00:00:00 -f 2018-04-11-23:14:00

-sでデータ取得開始日を指定します。
-fはデータ取得終了日を指定できます。

上記のコマンドを実行することで2018年に入った瞬間から2018年4月11日23時14分までのデータを取得することができます。
終了日の方は「~分」の部分は含みません。
-f 2018-04-11-23:14:00という引数は23時13分台のデータが最後になります.

また、終了日の引数-fは省略することが可能です。
省略した場合は開始日から実行時の日付(時間)までのデータを取得します。
例えば、


python src/getbtc.py -s 2018-01-01-00:00:00


とすることで2018年に入ってから現在までのデータを取得することができます。


YYYY-MM-DD-HH-MM-SSの形式ですが秒はどんな数字を入れても00として変換されます。


一番古い日付で2015-06-24 05:58:00なので、これ以前を渡すとエラーが出ます。


出力結果のファイルは一つのファイルで50万行に設定してあります。
それなりに大容量になるのでお気をつけください。

一つのファイルの行数はinitfile_lines=500000の数字で調整できます。
必要に応じて変更してください。

generatehloc.py

getbtc.pyで取得したデータを指定した時間軸のHLOC(高値、安値、始値、終値)へ変換し保存するスクリプトです。出来高も保存されます。


プロジェクト直下にlogディレクトリ、hlocディレクトリを作成してください。
/hloc/に変換後のデータが保存されます。
(注)dataディレクトリ直下にhlocディレクトリを作成するとエラーが出るので気をつけてください。

下記コマンドで実行します。

python src/generatehloc.py -d ./data -t one_minute

-dで変換させるファイルを含むディレクトリを指定します。
このディレクトリに含まれているファイルを一つずつ全てを読み込みHLOCへ変換します。
変換結果は読み込んだファイルが複数だとしても、50万行までは一つのファイルにまとめて出力されます。

-tはHLOCへ変換する時間軸を指定できます。

上記コマンドでは、dataディレクトリに含まれているファイルを読み込み1分足に変換後、'/hloc/'へファイルが出力されます。


現バージョンでは、1分足、5分足、1時間足、日足が指定できます。
それぞれ、下記のようにしてください。

時間軸        指定方法        
1分足 one_minute
5分足 5_minute
1時間足 one_hour
日足 one_day

plotchart.py

引数で指定されたHLOCファイルを読み込み、描画するモジュールです。
あまり使い所はありませんが、HLOCに変換したデータの確認等にお使いください。

下記コマンドで実行します。

python ./src/plotchart.py -f ./hloc/hloc_one_day_2018-01-01-00:00:00_2018-04-09-00:00:00.csv

-fでファイルのパスを指定します。
上記のようにすることで、generatehloc.pyで日足に変換しhlocディレクトリに保存されているファイルを描画することができます。

こんな感じで描画されます。

figure_1

参考

http://www.madopro.net/entry/bitcoin_chart