文件
開啟 Studio

API 參考

API 參考總覽

本頁內容4

這一頁列出 FinLab 套件的每個模組,以及各自負責的事。寫一個策略通常會依序用到四個:

from finlab import data, backtest

close = data.get('price:收盤價')               # finlab.data:下載資料
position = close >= close.rolling(300).max()   # FinlabDataFrame:寫選股條件
report = backtest.sim(position, resample='M')  # finlab.backtest:回測
report.display()                               # finlab.report:看回測結果

其他模組在需要時再查。每一頁開頭都有「選哪個函式」對照表,接著說明每個函式的呼叫方式、參數與預設值、回傳值和範例。

從資料到回測

模組用途
finlab登入 FinLab、取得與管理憑證。
finlab.data下載台股、美股等市場資料,搜尋資料表、設定股票範圍與快取,計算技術指標。
FinlabDataFrame對齊不同頻率的資料,寫選股條件、排名取前幾名、設定進出場訊號。
finlab.backtest把持股訊號變成歷史回測,設定換股頻率、停損停利與交易成本。
finlab.report看回測報告:績效指標、報酬曲線、交易紀錄,以及上傳與分享。

分析與改進策略

模組用途
finlab.analysis檢查策略的流動性、MAE/MFE、各時期穩定度、回撤與超額報酬。
finlab.optimize把多個選股條件排出所有組合一次回測,比較哪個組合最好。
finlab.tools事件研究與因子分析。
finlab.ml建立機器學習的特徵與標籤,訓練預測模型。
finlab.plot畫行情 K 線、財務資料的板塊圖、雷達圖與河流圖,以及策略績效圖表。

組合策略與實盤

模組用途
finlab.portfolio組合多個策略、配置權重,並和雲端同步部位。
finlab.online串接券商帳戶,比對持倉並下單。
finlab.market定義市場的價格資料、對照指數與交易規則,也能自訂新的市場。

下一步

↑↓ 選擇 Enter 開啟 Esc 關閉