Shopping Cart

購物車內沒有任何商品。

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

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

    稱呼

    電子郵件

    以下非必填,但若您願意分享,我們將能推送更精準的內容給您

    投資經驗

    是否為理工科背景、工程師或有寫程式的經驗?

    有興趣的主題
    量化交易台股期貨海外期貨虛擬貨幣美股

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

    想透過量化交易達成甚麼目的?
    不確定自動交易選股回測投資績效量化自己的投資方法想找現成的策略套用

    還有什麼想詢問的?

    20241111 1920 400
    20241111 978 258


    安裝 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 能實作的更多指標吧!


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

    加入Discord 「量化交易討論群」即時獲取實用的資源!

    Write Together 101306261122
    Write Together 101306261121
    QP66
    QP66

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

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

    文章: 24

    發佈留言

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