用Python投資加密貨幣(2):爬蟲下載歷史數據

這個單元,
分享如何獲取比特幣歷史價格

可以打開colab線上編輯python跟我們一起做實驗吧!
colab 是 google 提供,線上運行 python 的平台
打開後,新增一個notebook
直接一步步貼上下面的代碼
程式就會順利運行了

獲取 python 函式庫

首先,我們要先獲取幫大家寫好的 package 可以到github上下載

1
2
!git clone https://github.com/koreal6803/crypto_backtrader.git
%cd crypto_backtrader

上面的指令,會先將預先寫好的程式從 github 上下載下來
並且將目錄切換到 crypto_backtrader
也就是下載下來的資料夾中

安裝一些必要的packages

接下來我們來安裝一些必要的 dependencies
這樣等會才能順利執行程式

1
2
3
4
!pip install python-binance
!pip install bitmex
!pip install Backtesting
!pip install backtrader

加密貨幣命名方法

這篇文章中,我們爬取 BTCUSDT 的價格
BTCUSDT 這個 symbol 可以拆逞兩個部分
一個是 BTC、另一個是 USDT
BTCUSDT 代表,BTC 的價格,以 USDT 為單位,
這邊為什麼我們要用 USDT 呢?因為他是跟 USD 是美元是表兄弟,
USDT 是一種跟 USD 約略 1:1 兌換的穩定虛擬貨幣
USDT 的好處是

在交易時,假如用 加密貨幣 和 法定貨幣(美元)來回交易
這種方式交易,手續費會非常高昂
例如我們以 Maicoin 買入跟賣出手續費約高達 1%,

今天我們假如使用 BTCUSDT pair 來交易
由於同樣是加密貨幣,所以手續費算是大幅的降低,
目前手續費在各平台,一般的標準是0.1%,根據平台的優惠、交易量可以打折,
成本算是低很多,

交易對(trading pair)的相關介紹

那廢話不多說,趕快來下載歷史資料吧!

使用幫大家寫好的函式庫

我們可以使用
from finlab import crypto
將一些好用的 function 給叫進來

然後用
crypto.get_all_binance 這個 function
來獲取交易對(trading pair)

1
2
3
from finlab import crypto
df = crypto.get_all_binance('BTCUSDT', '4h')
df.head()

上述這個 get_all_binance
除了幫你整理好下載資料外,
還會將這些資料資料,存在 crypto_backtrader/history/crypto/ 當中
csv 的方式存起來
方便你用 excelmulticharts 等程式來打開

你也可以輸入不同的 trading pair 名稱,可以binance官網查找

下一步,我們會分享
怎麼用 Python 回測一個簡單的 BTCUSDT 交易策略!
敬請期待!

文章不錯,影音課程更讚:


或我們按個 鼓勵一下吧!