最齊全的 Python 技術指標工具箱 talib (一)套件安裝與基本操作說明

立即訂閱電子報,掌握最新資訊!

    電子郵件

    有興趣的主題
    量化交易金融知識台灣股市國內期貨海外期貨虛擬貨幣

    有興趣的量化交易軟體/平台
    不清楚MultiChartsTradingViewPythonXQMT4MT5

    還有什麼詢問的?

    好富投 1920x400
    好富投 978x258

    點我了解更多資訊


    安裝 talib 套件

    通常我們以一般的安裝套件方法,嘗試直接 pip install talib 去安裝,但這樣 talib 往往會安裝失敗。

    關於 talib 的安裝,如同我們 google 搜尋得到的答案,我們也確實嘗試過透過以下方式安裝最為穩妥。

    步驟 1:點擊連結前往一位加州大學老師提供的 Python Packages:
    https://www.lfd.uci.edu/~gohlke/pythonlibs/#ta-lib

    步驟 2:搜尋 TA-Lib,找到對應的 Windows 系統和 Python 版本的 whl 檔,下載放到任何一個目錄下。如下方截圖:

    步驟 3:打開 Windows 的 cmd,如果是使用 Anaconda的讀者可以直接打開 Anaconda Prompt 進入環境。

    步驟 4:在終端機中,輸入指令 cd /d,在 /d 後,加上一個的空格,後面放上剛才下載存放 .whl 檔案的路徑。這時候終端機上,你的工作目錄應該已經移動到存放 .whl 的路徑了。假設我們剛才把 .whl 檔放在 D 槽的 Download 目錄下,如下方所示,這表示我們成功把工作目錄移動過去了!

    步驟 5:輸入 pip install,後面加上你的 .whl 檔案全名,例如: pip install TA_Lib‑0.4.24‑cp37‑cp37m‑win_amd64.whl,即可成功安裝 talib!雖然終端機會跳出很多 warning 訊息,但有出現 Successfully installed TA-Lib-0.4.24 就表示安裝成功囉!

    Py 101209161710
    Py 101209161711

    匯入 talib 套件

    與 pandas、numpy 等 Python 強大套件相同,使用前記得先 import。

    import talib

    實作常用均線指標

    假設我們有一個比特幣價量資料 csv,檔名叫做 BTCUSDT.csv,我們把它讀取進來,並且指定 timestamp 欄位為 DataFrame 的 index,程式碼和印出結果如下:

    import pandas as pd 
    data = pd.read_csv(“BTCUSDT.csv”, index_col=”timestamp”, 
    parse_dates=True)

    可以明顯看得出來,這是比特幣的一分線歷史價量資料。

    幾種常見的均線如下:

    sma = talib.SMA(data["close"], 60)      # 簡單移動平均線 
    ema = talib.EMA(data["close"], 60)      # 指數移動平均線 
    wma = talib.WMA(data["close"], 60)      # 加權移動平均線 
    trima = talib.TRIMA(data["close"], 60)  # 三角移動平均線

    這幾種均線對價格波動的敏感度都有所不同,我們有空再來詳述。總之,我們計算完後,若想確認結果是否正確,可以運行下方程式碼,初步以繪圖來進行檢查:

    import matplotlib.pyplot as plt
    plt.figure(figsize=(12,6)) 
    plt.plot(data["close"],label="close") 
    plt.plot(sma,label="sma") 
    plt.plot(ema,label="ema") 
    plt.plot(wma,label="wma") 
    plt.plot(trima,label="trima") 
    plt.legend() 
    plt.show()

    假設這裡我們只取最後 500 分鐘的資料來繪製,結果如下:

    藍線是每分鐘的收盤價,我們從圖中可以觀察到,隨著收盤價的波動,最敏感的是EMA,其次是 WMA,而後依序是 SMA、TRIMA。這跟它們的計算方式有關。

    至於很多讀者會問:哪一個均線比較好用?坦白說,我們沒辦法說用EMA比較好,還是用SMA比較好,因為他們本來就沒有好不好之分,而是要回歸均線的邏輯:均線是過去一段時間所有買方的平均成本價於是我們接著就能思考,我們想要用均線來衡量什麼市場狀態?怎麼樣計算才比較符合我們想像中的樣態?

    均線這個話題再聊下去就跑題了。總之,Talib 能做的不僅如此,下一篇我們再來繼續介紹 talib 能實作的更多指標吧!

      電子郵件

      有興趣的主題
      量化交易金融知識台灣股市國內期貨海外期貨虛擬貨幣

      有興趣的量化交易軟體/平台
      不清楚MultiChartsTradingViewPythonXQMT4MT5

      還有什麼詢問的?


      量化通粉絲社群,一起討論程式交易!

      加入LINE社群量化交易討論群」無壓力討論與分享!

      加入臉書社團「程式交易 Taiwan」即時獲取實用的資源!

      QP66
      QP66

      具備逾十年交易經驗,研究交易資產橫跨股票、債券、外匯、原物料,以及加密貨幣。現為量化避險基金交易員,亦曾任職於資金規模逾百億的避險基金,以及在區塊鏈企業擔任顧問一職。

      擅長從宏觀至微觀,由淺入深挖掘交易機會,並運用Python實現全自動化的投資組合管理。

      文章: 24

      發佈留言

      發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *