いよいよ始まりました 。Pythonによる仮想通貨自動トレードBOTの作成講座第1回!
第1回では、PythonBOT作成の下準備として、
Pythonの実行環境の構築方法と取引所環境の整備(APIキー取得)について説明します。
本企画は、全何回になるかはわかりませんが、PythonのBOT作成過程でプログラミングを習得しつつ、
PythonBOTを実際に作成、改善し、安定して利益を出すことをゴールに設定します。
次回以降に登場するプログラムについては、可能な限り丁寧な説明を心がけます。
それでは、早速やっていきましょう!
“System trade program of BitCoin creation by Python”
This article is Japanese only. Please use Google translation!! ☞☞☞
Pythonの概要とBOT
Pythonとは?
Pythonはプログラミング言語の1つです。コードの記述がシンプルで使いやすく、高速。
多岐に渡る最先端技術に使用されている大人気のプログラミング言語です。
ゲーム・アプリ開発から話題のDeep Q-learningまで、何でもできてしまいます。
さらに、無料でダウンロード可能です。少しでも興味があれば、やらない手はありませんね。
著者はC言語、Javaをやっていましたが、Pythonはとっつきやすさの次元が違います。
その昔、プログラミングに挫折した方にもおすすめできる言語です。
仮想通貨の自動トレードBOTとは?
そのままの意味ですが、仮想通貨(暗号資産)を設定値通りに売買するプログラムです。
例えば、現在の価格より+10$で買い注文を出し、-10$で売り注文を出すといったものです。
本企画では、このプログラムを以下の関連記事の流れに沿って解説していきます。
関連記事:Pythonによる仮想通貨自動トレードBOT作成の流れ
Pythonの環境構築
まずは、Pythonを実行する環境を整備する必要があります。
やり方は大きく分けて以下の2つ。
- WEB上に環境を構築する
- 自分のPCに環境を構築する
おすすめはWEB上に環境を構築することです。
理由としては、
- 何処からでもアクセス可能
- PCを買い替えても作業不要
- 24時間安定した運用が可能
といったことが挙げられます。
まずは、WEB上に環境を構築する方法として、AmazonWebService(以下、AWSという)を用いた方法を推奨します。
Amazon Web Service(Cloud9)の登録
AWSのCloud9は、1年間、月750時間まで無料で使えます。
月750時間ということは、24h×31day=744hですので、フルタイムでも無料ということです。
750時間を超える場合は、同時に2つ以上のプログラムを動かした場合ですね。
2つ以上のプログラムを動かすにしても、動作確認やバックテスト・最適化用のプログラムを回す程度であれば、残りの6時間で十分でしょう。
登録方法は公式の手順書を参照ください。ここで、クレジットカードの情報が求められますが、
上記の制限を超過しない限り課金されることはありません。
カード情報の入力に抵抗がある方は、自分のPCにPython環境を構築しましょう。
Anaconda3を推奨します。
Python3のセッティング
Cloud9でPythonを使えるようにしていきます。
公式の手順書を参照ください。
環境構築方法:https://docs.aws.amazon.com/ja_jp/cloud9/latest/user-guide/setup-express.html
Cloud9の環境については、EC2を選択しましょう。
環境の構築が終わったら、Pythonを使える状態にしましょう。
Python3をインストールします。
Pythonインストール方法:https://docs.aws.amazon.com/ja_jp/cloud9/latest/user-guide/sample-python.html
今回、公式の手順書をリンクしていますが、
わからなければ、グーグル検索すると解説しているサイトが多くありますので、そちらを参照ください。
PythonによるトレードBOT作成準備
さて、ここまでで調理場が完成した感じです。
ここからは料理(プログラム)を作る前に、調理器具や材料を揃えていきます。
CCXTのインストール
CCXT(クリックでGitHubに飛びます)は、仮想通貨の自動トレードを可能にするライブラリです。PythonをはじめJava等に適用可能。
多くの取引所に対応しており、板情報(現在の通貨価格や注文状況)の取得や、売買の発注等が簡単にできるようになります。
ライブラリとは、プログラミングにおける後付けの拡張機能と考えていただければ良いです。
【インストール手順】
AWS Cloud9のEnvironment画面の「bash」ではじまるタブに以下のコードを入力します。
$までは既に入力されているかと思いますので、pip以降を入力しましょう。
1 | ec2-user:~/environment $ pip install ccxt |
今後、追加ライブラリをインストールする際も、同様の手法でインストールすることになります。
ta-libのインストール
ta-libは、株や仮想通貨におけるテクニカル指標を計算してくれるライブラリです。
次回作成予定のトレードBOTで使用予定ですので、インストールしておきましょう。
CCXTと同様に、以下の通りインストールしてください。
1 | ec2-user:~/environment $ pip install ta-lib |
BitMEXへの登録とAPIキー発行
次に、仮想通貨FXの取引所BitMEXに登録し、APIキーを取得しましょう。
BOTトレードをするにあたっては、BitMEX他、Bitflyerが多く使われていますが、
BitMEXは登録が簡単(即時)であり、さらに軽く注文が通りやすいという特徴があります。
APIキーとは、プログラムから取引所に直接アクセス・発注するためのキーです。
これが第三者に流出・悪用されると多大な被害を被る可能性があるため、厳重に保管しましょう。
今回紹介するプログラムは実戦で勝てるものではないため、
実戦トレードの前には必ずテストを実施し、プログラムを精錬させてください。
① BitMEXにアクセスし、必要事項を入力して登録する。
② 登録後、ログインして画面上のタブ「API」をクリックします。
③ 左サイドバーの中段「APIキー」の「APIキーの管理」を選択します。
④ APIキーを作成という画面に遷移したら、以下の事項を入力します。
- 名前:任意の名前を入力(空白でもOK)
- CIDR:空白(IP制限をかける場合は入力する)
- キーアクセスの許可:注文
⑤ 入力が完了したら、「APIキーを作成」を押下します。
⑥ 「秘密鍵を書き留めてください」という画面が出たら作成完了です。
「ID」と「秘密」をコピーする等して忘れないようにしてください。
先程も述べましたが、APIキーは厳重に保管してください。絶対に第三者に教えてはいけません。
また、BitMEXはビットコインを用いてトレードします。日本円でトレードすることはできません。
種火になるビットコインは日本の取引所で入手しておきましょう。
BitMEX TESTNETへの登録とAPIキー発行
次は、模擬トレード用のTESTNETに登録します。
BitMEXTESTNETは、BitMEXが忠実に再現したサイトで、
実際の仮想通貨は使わず、無限に補充できるTEST用通貨を使用してトレードBOTの挙動テスト等を行うサイトです。
以上で下準備は完了です。
今回は、PythonBOTを作成するにあたっての下拵えまで説明しました。
次回からは、実際にPythonBOTを作りつつ、プログラミングについて詳しく説明していきます。
コメントを書く