【Python】ビットコインの成行・指値注文|仮想通貨自動売買実践#5

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

こんな方におすすめ!
  • ビットコイン自動売買に興味がある!
  • Pythonをもとにビットコインを購入・売却する方法が知りたい!
目次

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

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

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

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

【仮想通貨】ビットコイン注文機能実装に必要な準備事項

本記事では、暗号資産取引所が提供するAPIサービスを活用し、Pythonをもとにビットコインを実際に売買する機能の構築方法について解説します。

【参考】ビットコイン売買時の注文手段

ビットコイン売買時の注文手段として「指値注文」「成行注文」「逆指値注文」の3つがあります。

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

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

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

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

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

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

pip install ccxt

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

Python環境構築手順・ライブラリのインストール方法については以下の記事で詳しく解説しています。

【Python実践】ビットコインの売買(指値・成行注文)

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

ビットコインの売買手段として「成行注文」「指値注文」についてそれぞれ言及します。

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

Pythonでビットコイン注文に際して、APIキーおよびシークレットキーの定義が必要となります。

Pythonコードの前段に以下を配置しましょう!その際、取得したAPIキーシークレットキーも入力します。

import ccxt

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

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

【購入】指値注文

指値注文でビットコインを購入したい場合、次のコードを実行します。ビットコイン指値価格price_valueとビットコイン取引数量amount_valueを指定しコード実行するようにしましょう。

コード実行で実際に注文が走ります。取り扱いには十分注意です。

コード

# ===============================================
# 購入情報を設定
# ===============================================
price_value  = 2000000     # 指値価格[円/BTC]
amount_value = 0.005       # 取引数量[BTC]


# ===============================================
# ビットコインの指値注文(購入)
# ===============================================
order = coincheck.create_order(
                symbol = "BTC/JPY",     # 取引通貨
                type   = "limit",       # 指値注文
                side   = "buy",         # 購入
                amount = amount_value,  # 取引数量
                price  = price_value,   # 指値価格
                )

# 注文結果を確認
pprint(order)

出力イメージ

# 出力イメージ
# {'id': '100000001',
#  'info': {'amount':           '0.005',
#           'created_at':       '2022-09-18T09:55:39.000Z',
#           'id':               '4995377842',
#           'market_buy_amount': None,
#           'order_type':       'buy',
#           'pair':             'btc_jpy',
#           'rate':             '2000000.0',
#           'stop_loss_rate':   None,
#           'success':          True
# }}

【購入】成行注文

成行注文でビットコインを購入したい場合、次のコードを実行します。ビットコイン取引数量amount_valueを指定しコード実行するようにしましょう。

# ===============================================
# 購入情報を設定
# ===============================================
amount_value = 0.005       # 取引数量[BTC]


# ===============================================
# ビットコインの成行注文(購入)
# ===============================================
order = coincheck.create_order(
                symbol = "BTC/JPY",     # 取引通貨
                type   = "market",      # 成行注文
                side   = "buy",         # 購入
                amount = amount_value,  # 取引数量
                )

# 注文結果を確認
pprint(order)

【売却】指値注文

指値注文でビットコインを売却したい場合、以下のコードを実行します。

# ===============================================
# 購入情報を設定
# ===============================================
price_value  = 2000000     # 指値価格[円/BTC]
amount_value = 0.005       # 取引数量[BTC]


# ===============================================
# ビットコインの指値注文(売却)
# ===============================================
order = coincheck.create_order(
                symbol = "BTC/JPY",     # 取引通貨
                type   = "limit",       # 指値注文
                side   = "sell",        # 売却
                amount = amount_value,  # 取引数量
                price  = price_value,   # 指値価格
                )

# 注文結果を確認
pprint(order)

【売却】成行注文

成行注文でビットコインを売却したい場合、以下のコードを実行します。

# ===============================================
# 購入情報を設定
# ===============================================
amount_value = 0.005       # 取引数量[BTC]


# ===============================================
# ビットコインの成行注文(売却)
# ===============================================
order = coincheck.create_order(
                symbol = "BTC/JPY",     # 取引通貨
                type   = "market",      # 成行注文
                side   = "sell",        # 売却
                amount = amount_value,  # 取引数量
                )

# 注文結果を確認
pprint(order)

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

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

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

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

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

本記事をシェア!
目次