【Python】ビットコイン取引履歴(注文・約定)を取得|仮想通貨自動売買実践#6

こんにちは、DXCEL WAVEの運営者(@dxcelwave)です!

こんな方におすすめ!
  • ビットコイン自動売買に興味がある!
  • ビットコイン取引履歴(注文状況・約定結果)をPythonで取得する方法が知りたい!
目次

【仮想通貨】ビットコイン自動売買とは

ビットコイン自動取引とは、通貨情報参照・決済・送金等の取引関連操作をプログラムで代替することを指します。ビットコイン自動売買ツールは、暗号資産取引所が提供するAPIサービスの活用を通じて実装することができます。

【参考】ビットコイン自動売買のメリットを学ぶ

ビットコイン自動取引ツールの活用により、手動操作による手間削減はもちろんのこと、仮想通貨収益化プロセスの効率化も大幅に期待できます。当サイトでは上記のように、ビットコイン自動売買に関する特集記事を多数配信しております。

【仮想通貨】ビットコイン取引履歴(注文・約定)の取得準備

本記事では、暗号資産取引所が提供するAPIサービスを活用し、Pythonをもとにビットコイン取引履歴(注文状況・約定結果)を取得する方法について解説します。

【参考】ビットコイン取引履歴とは

ビットコイン取引履歴機能には「注文状況の照会機能」と「約定結果の照会機能」の2つがあります。

【事前準備】APIキー・シークレットキーを取得

Pythonをもとにビットコイン取引履歴を取得する場合、暗号資産取引所からAPI情報を入手しておく必要があります。

API情報(APIキー・シークレットキー)の取得が未済の方は、以下リンクに示す手順に従い、API情報取得から始めましょう!

【事前準備】Pythonライブラリをインストール

Python環境で暗号資産取引所が提供するAPIサービスをもとにビットコイン取引機能を活用する場合、次のようなPythonライブラリを利用できることが好ましいです。そのため、後述で示すライブラリは事前にインストールしておきましょう。

ccxt|暗号資産取引所のAPI連携・機能活用を容易化

pip install ccxt

【参考】Pythonセットアップ方法・ライブラリインストール方法

【Python】ビットコインの取引履歴を取得する方法

実際に暗号資産取引所(Coincheck)でビットコイン取引履歴を取得する方法について解説していきます。

  • ビットコインの注文状況を照会する
  • ビットコインの約定結果を照会する

【共通コード】APIキー・シークレットキーを定義

Pythonで取引履歴取得に際して、APIキーおよびシークレットキーの定義が必要となります。

以下コードのAPI情報部分を実際に入手したAPIキーシークレットキー情報に書き換え、Pythonコードの前段に配置しましょう。

import ccxt

# API情報
API_KEY     = "APIキーをここに入力"
SECRET_KEY  = "シークレットキーをここに入力"

# Coincheck取引所のインスタンス作成
coincheck = ccxt.coincheck({'apiKey':API_KEY,'secret':SECRET_KEY})

注文情報を照会

ビットコイン取引の注文情報を照会するコードは、ccxtライブラリのfetchOpenOrders()メソッドを活用し、次のように記載します。コード実行後の出力イメージも併せて掲載します。

コード

# 注文情報照会
trade_info = coincheck.fetchOpenOrders(symbol='BTC/JPY')

# 出力
print(trade_info)

出力イメージ

# 出力イメージ
# [{'amount': -0.0015,
#   'cost': 5839.7265,
#   'datetime': '2022-06-00T00:00:00.000Z',
#   'fee': {'cost': 0.0, 'currency': None},
#   'fees': [{'cost': 0.0, 'currency': None}],
#   'id': '1000000001',
#   'order': '1000000001',
#   'price': 3893151.0,
#   'side': 'sell',
#   'symbol': 'BTC/JPY',
#   'takerOrMaker': 'taker',
#   'timestamp': 111111111111,
#   'type': None},
# ]

約定結果を照会

ビットコイン取引の約定結果を照会するコードは、ccxtライブラリのfetchMyTrades()メソッドを活用し、次のように記載します。コード実行後の出力イメージも併せて掲載します。

コード

# 約定結果
trade_result = coincheck.fetchMyTrades(symbol='BTC/JPY')

# 出力
print(trade_result)

出力イメージ

# 出力イメージ
# [{'amount': -0.01,
#   'cost': 45513.87,
#   'datetime': '2021-08-01T00:00:13.000Z',
#   'fee': {'cost': 0.0, 'currency': None},
#   'fees': [{'cost': 0.0, 'currency': None}],
#   'id': '100000',
#   'order': '3672407781',
#   'price': 4551387.0,
#   'side': 'sell',
#   'symbol': 'BTC/JPY',
#   'takerOrMaker': 'maker',
#   'timestamp': 1627776013000,
#   'type': None},
#  {'amount': 0.00197005,
#   'cost': -8986.66873225,
#   'datetime': '2021-08-01T00:20:22.000Z',
#   'fee': {'cost': 0.0, 'currency': None},
#   'fees': [{'cost': 0.0, 'currency': None}],
#   'id': '2000000',
#   'order': '3672463966',
#   'price': 4561645.0,
#   'side': 'buy',
#   'symbol': 'BTC/JPY',
#   'takerOrMaker': 'taker',
#   'timestamp': 1627777222000,
#   'type': None},]

【Python×ビットコイン】自動売買ツール作成に挑戦ロードマップ

Pythonによるビットコイン自動売買をこれから始めたい方向けに、体系化した自動売買実践記事を配信しております。以下No順に記事をご覧いただくことでビットコイン自動売買ツールが自作できるようになるでしょう!

Noビットコイン自動売買を実践!自作を目指したロードマップ
参考ビットコインとは?ビットコイン投資のメリット
参考仮想通貨の自動売買とは?・仕組み・自作方法
#1初めてのビットコイン自動売買・環境構築チュートリアル
#2初めてのビットコイン自動売買・Python開発環境の構築方法
#3【Python】ビットコイン価格の取得方法
#4【Python】ビットコイン残高情報の取得方法
#5【Python】ビットコインの成行・指値注文
#6【Python】ビットコインの取引履歴を取得
#7ビットコイン自動売買のプログラム設計方法
#8【Python】ビットコイン自動取引ツールの作成方法

当サイトでは上記以外にも仮想通貨・ビットコイン自動売買に関する記事を多数配信しております。

この記事が気に入ったら
フォローしてね!

本記事をシェア!
目次