跳轉到

快速上手

安裝

支援 Windows、macOS、Linux 與 Colab;也可用 Docker。

線上 AI 平台

前往 studio.finlab.tw 直接與 AI 對話撰寫策略,無需安裝任何套件。

本機 AI 編程助手(推薦)

在 Claude Code、Cursor、Windsurf 等 AI 編程工具中安裝 FinLab Skill,讓 AI 熟悉整套 FinLab API,幫你撰寫策略、查找資料欄位、除錯回測問題。

  1. 前往 finlab.finance 取得 Skill 安裝連結
  2. 依照頁面指示將 Skill 加入你的 AI 編程工具
  3. 開始對話,例如:「幫我寫一個營收成長創新高的策略並回測」

Skill 涵蓋內容

資料存取(data.get)、回測(backtest.sim)、因子分析、機器學習(finlab.ml)、實盤下單等完整 API 知識。AI 助手可直接幫你撰寫、執行、除錯程式碼。

# Colab 新增 Notebook 後執行
!pip install finlab
pip install finlab

相容性提示

若遇到套件相依問題,建議改用 Docker 版本。

docker pull finlab/jupyter-finlab
docker run -p 8888:8888 finlab/jupyter-finlab
# 依終端顯示的 URL 開啟 JupyterLab

下載資料

輸入以下程式碼,即可下載資料。可以查詢有哪些歷史資料可以下載。

from finlab import data
data.get('price:收盤價')
date 0015 0050 0051 0052 0053
2007-04-23 9.54 57.85 32.83 38.4 nan
2007-04-24 9.54 58.1 32.99 38.65 nan
2007-04-25 9.52 57.6 32.8 38.59 nan
2007-04-26 9.59 57.7 32.8 38.6 nan
2007-04-27 9.55 57.5 32.72 38.4 nan

撰寫策略

可以用非常簡單的 Pandas 語法來撰寫策略邏輯,以創新高的策略來說,可以用以下的寫法:

from finlab import data

close = data.get('price:收盤價')

# 創三百個交易日新高
position = close >= close.rolling(300).max()
position
date 0015 0050 0051 0052 0053
2007-04-23 00:00:00 False False False False False
2007-04-24 00:00:00 False False False False False
2007-04-25 00:00:00 False False False False False
2007-04-26 00:00:00 False False False True False
2007-04-27 00:00:00 False False False False False

假設我們希望每個月底,搜尋上表中數值為 True 的股票並且買入持有一個月,可以用以下的語法:

回測績效

from finlab import backtest

report = backtest.sim(position, resample='M')
report.display()

image