仮想通貨アービトラージをPythonでやってみたパート2「データベースの作成」

前回は価格取得とチャート表示までできました。

前回の振り返り

今回はデータベースを作っていきます。

使うライブラリ

  • dataset

データベースへ何を保存しておくのか?

データベースにはポジション情報を保存します。

なぜポジション情報を保存するのか?

ポジション情報を保存しないと、エントリー直前に取引所へポジション情報を取得するタイムコストが発生します。

そのタイムコストを抑えるためにローカルのデータベースにポジション情報を保存します。

保存するポジション情報は

  • 通貨名
  • 売買方向
  • ロットサイズ

です。

もしもポジション情報を保存しておかなければ、ポジションをエントリーしたあとに連続でエントリーされてしまうのです。

なので、エントリーは

  1. データベースにアクセス
  2. ポジション情報を取得
  3. 同じ売買方向へのポジションを持っているか?

を確認してからエントリーします。

エントリーしたら、ポジション情報をデータベースに保存します。

そして、決済処理をしたらデータベースにあるポジション情報を変更します。

データベース用のPythonファイルを作成する

名前は自分がわかれば問題ないので「db.py」にしました。

まずはインストールから

データベースソースコード

データベース使い方

dbtest.pyを作成しました。

まずはインポートします。

import db

データベースクラスのインスタンス化

名前をカッコにいれておく、これを実行すると

bybit用のデータベースの操作を行えるようになる。

データベースの初期化

  1. ファイル形式のデータベースの作成
  2. 「Bybit_positions」というテーブルの初期化
  3. {“symbol”:”BTCUSDT”,”side”: “Buy”,”qty”:”0.01″}がデータベースへ書き込まれる

がされる

てことで実行ボタンをポチる

実行ボタン

実行ボタンを押すと同じディレクトリに3つのファイルが追加される。これがデータベースだ。

ポジション情報をデータベースから読み込む

ポジション情報を取得するにはこれでOK。

実行ボタンをおすと

辞書型でデータベースからポジション情報を取得できる。

なので、

こうすると

ポジション情報の単体を取得ができるのだ。

データベースを削除

これで削除される。

実行ボタンをおすと、

データベースの3個のファイルのうち、2個が消える。

続きは以下ページです。

  • -
    コピー

この記事を書いた人

最近のコメント

  1. アバター
  2. アバター
  3. アバター
  4. アバター
  5. アバター

人気記事