iT邦幫忙

2022 iThome 鐵人賽

DAY 10
0

我們已經討論了如何將 DataFrame 輸出為 CSV 檔。你可以用 Python Pandas 做更多的事情,計算移動平均線就是其中之一。

import btalib
import pandas as pd

# load DataFrame
btc_df = pd.read_csv('binance_demo.csv', index_col=0)
btc_df.set_index(['date'], inplace=True)
btc_df.index = pd.to_datetime(btc_df.index, unit='ms')

# calculate 20 moving average using Pandas
btc_df['20sma'] = btc_df.close.rolling(20).mean()
print(btc_df.tail(5))

在上面的代碼中,我們從之前創建的CSV檔載入了數據。然後,我們使用mean() 函數來計算收盤列上的平均值。

滾動函數允許我們為移動平均線設置一個週期。所有這些內容都將附加到現有的數據幀中。這就是結果的樣子。

如您所見,已使用 20 移動平均線創建了一個新列。

假設您只需要知道移動平均線現在的位置。或者從數據幀中的最後一個價位開始。

我們可以使用相同的 mean() 函數,只需在 DataFrame 的最後 20 行上運行它,如下所示:

# calculate just the last value for the 20 moving average
mean = btc_df.close.tail(20).mean()

但Pandas無法計算其他技術指標,如RSI或MACD。幣安 API 也不提供此資訊。

TA-LIB一直是一個流行的庫一段時間了。最近有機會測試了一下 bta-lib。

我們下一章就帶大家來了解一下吧~~~


上一篇
Day9 開始實作-CSV格式儲存虛擬貨幣資料
下一篇
Day11 開始實作-技術指標2
系列文
Python之虛擬貨幣API實作30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言