技術指標計算
支援 Talib 和 pandas_ta 上百種技術指標!只需要一行,幫你算出2000檔股票、10年的所有資訊!
使用設定
在使用這個函式前,必需要先安裝 talib 套件,可以參考 官方安裝教學 來安裝,支援 Windows、MacOS、Linux。
建議使用者可以先參考以下範例,並且搭配 talib官方文件,就可以掌握製作技術指標的方法了。
範例一
計算所有股票的 RSI 數值

上圖中,可以看到資料包含 NaN
,代表資料筆數不足,無法計算出數值,每一檔股票除了剛開始的 14 天外,幾乎都會有數值。
範例二
計算所有股票的 KD 值,由於 KD 數值是由 K 和 D 所組成,每一檔股票每天會有兩個數值,所以 data.indicator
會自動回傳兩個 pd.DataFrame
,可以用 k, d = data.indicator('STOCH')
將 K 與 D 數值紀錄,之後用於比大小,例如 k > d
。
範例三 (續) 選股
延續上述的範例二,假如我們希望將最近一天 K > D 值的股票清單列出來,可以用以下語法
0015 False
0050 True
0051 False
0052 True
0053 True
...
9951 True
9955 False
9958 False
9960 True
9962 True
Name: 2021-07-13 00:00:00, Length: 2269, dtype: bool
範例四 - Pandas_ta 技術指標
finlab 0.3.2 dev1 版本開始支援 Pandas_ta 計算技術指標。 套件安裝方法及指標選項請見 Pandas_ta官方文件
我們將 Pandas_ta 與 Finlab 整合,使用方式非常的簡單,就跟以前一模一樣,用一行簡短的程式,就可以計算兩千檔股票的數值:
此時,程式會優先搜尋 TaLib 中是否有對應的函式,假如沒有的話,就會搜尋 Pandas_ta。可以讓你一次把所有股票的技術指標一次計算出來。缺點是 Pandas_ta 計算的速度比較慢,所以運算時要稍微等待一下。