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

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

Python システムトレード ビットコイン

ビットコインTicker情報を取得するプログラムをPythonで作ったよ

ビットコインTicker情報を取得するプログラムを作ったよ

各ビットコイン取引所のAPIを呼び出し
Ticker情報を取得、データベースに
保存するプログラムを作成しました。

今回使用するAPIは下記です。

bitFlyer

BtcBox

Zaif

QUOINE

coincheck

bitFlyerだけは前々回と同様にPubNubから
現物とFX両方のTickerを取得しています。

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

bitFlyerの現物、FXのみPubNubで
bitFlyer以外の取引所のTickerは
それぞれのAPIを呼び出します。

やっているのはAPIから値を取得して
その値でもってINSERT文を作り、
DBに登録するというものです。

bidとaskの最小値と最大値、およびその差分も
同時に計算して登録するようにしています。

ビットコインTicker取得プログラムを定期的に実行する

プログラムを定期的に実行して
データを登録するのは
できればLinuxとかのサーバーでやりたいのですが、
今個人的に使用できるサーバーがないので
Windows10 PCで設定します。

定期的に実行するためには、
Windowsの機能の「タスクスケジューラ」を使用します。

その前に、Pythonを実行するバッチファイルを作っておきます。

Pythonを実行するバッチを作成する

作成したプログラムが、「getBitcoinTicker.py」で
保管場所が「C:/python/bitcoin/」の場合、
以下の内容のテキストファイルを作成します。

このファイルを例えば「getBitcoinTicker.bat」
というような名前にします。
(拡張子を「bat」にします)

これをPythonファイルと同じ「C:/python/bitcoin/」
に保存します(場所はお好きなところでかまいません)。

このバッチファイルのパスは以下のようになります。
「C:/python/bitcoin/getBitcoinTicker.bat」

タスクスケジューラを設定する

次に、先ほど作成したgetBitcoinTicker.batを
定期的に実行するように設定します。

Windows10だと、左下のウィンドウボタンをクリックします。
アプリの一覧で「Windows 管理ツール」をクリックします。
ここに表示される「タスクスケジューラ」をクリックします。

タスクスケジューラが立ち上がります。

タスクスケジューラ画面の右側にある
「タスクの作成」をクリックします。

タスクの作成ボックスが立ち上がるので、
「全般」タブでは「名前」を入力して
「ユーザーがログオンしているかどうかに関わらず実行する」
を選択します。

次に「トリガー」タブを選択します。

「新規」ボタンをクリックします。
「新しいトリガー」ボックスが立ち上がります。

「設定」では、「毎日」を指定して「間隔」を「1」日にします。
「開始」では、時刻を「 0:00:00」に変更しておきます。
「詳細設定」では、「繰り返し間隔」を指定して
最小の「5 分間」を選び、継続時間を「無期限」にします。

その他、「遅延時間を指定する」、「停止するまでの時間」、
「有効期限」は設定しません。
(期限を設定したい方は自由に設定ください)

「OK」ボタンを押して閉じます。
トリガーに先ほど登録した条件が表示されます。

次に「操作」タブを開きます。

「新規」ボタンをクリックします。
「新しい操作」ボックスが立ち上がります。

「プログラム/スクリプト」に先ほど作成したバッチファイル
「C:/python/bitcoin/getBitcoinTicker.bat」を入力します。
(参照ボタンからの指定も可能です)

「OK」ボタンを押して閉じます。
操作に先ほど登録した条件が表示されます。

「条件」タブを開いて設定内容を確認します。
ここは初期値のままでよいでしょう。

「設定」タブを開きます。

以下の項目にチェックを入れます。
「スケジュールされた時刻にタスクを開始できなかった場合、すぐにタスクを実行する」
「タスクが失敗した場合の再起動の間隔」

そして以下の項目からはチェックを外します。
「タスクを停止するまでの時間」

「OK」ボタンを押すとボックスが閉じ
アクティブなタスクに表示されます。

以上で、各ビットコイン取引所の
価格情報を取得するプログラムを
定期的に実行する環境構築が完成です。

スポンサードリンク

-Python, システムトレード, ビットコイン
-, , ,