Lumiwealth/lumibot
Backtestable AI trading agents and Python algorithmic trading strategies for stocks, options, crypto, futures, forex, SEC filings, FRED macro data, and real brokers.
Lumibot – AI 增強的演算法交易框架
它是什麼 – Lumibot 是一個開源的 Python 函式庫,讓你能撰寫、回測、紙上交易與實際交易演算法策略。它為 LLM 驅動的 交易代理人 提供一流的執行環境,這些代理人可以研究市場資料、辯論交易想法,並下單,所有這些都在與確定性 Python 策略相同的策略迴圈內完成。
主要功能
| 功能 | 你會得到什麼 |
|---|---|
| 確定性策略 | 使用純 Python 撰寫包含指標、部位大小、風險檢查與排程規則的邏輯。 |
| AI 代理策略 | 定義多個代理人(研究員、看多、看空、交易員等),呼叫 LLM、查詢市場工具,並可選擇執行交易。 |
| 回測 | 重新播放歷史資料(Yahoo、FRED、SEC 文件等),並捕捉產出——訂單日誌、圖表、報表——供檢查。 |
| 紙上與實時交易 | 只需一次設定變更,即可將相同的策略程式碼切換至券商(Alpaca、IBKR、Tradier、Schwab 等)。 |
| 內建代理工具集 | 市場狀態、訂單檢查、DuckDB 查詢、技術指標、新聞來源、宏觀資料、本地記憶、Telegram 警報等。 |
| 受管理的雲端(BotSpot) | 可選的託管服務,執行 Lumibot 機器人,提供資料、排程、監控、緊急停止與策略共享市集。 |
| 可擴充的券商支援 | 支援 Alpaca、Interactive Brokers、Tradier、Schwab、Tradovate、ProjectX、Bitunix、Polymarket 以及部分 CCXT 交易所。 |
典型工作流程
- 撰寫策略類別,繼承自
lumibot.strategies.Strategy。在on_trading_iteration中,你可以呼叫確定性程式碼,或使用self.agents["name"].run(...)讓 LLM 推理並回傳摘要。 - 回測:使用
MyStrategy.backtest(YahooDataBacktesting, start, end)觀察代理人在歷史資料上的表現。 - 紙上交易:建立券商實例(例如
Alpaca),並以Trader().add_strategy(...).run_all()執行策略。 - 正式上線:將券商設定切換為實際帳戶——不需要更改程式碼。
範例 – 一個四代理人的「AI 交易團隊」,負責研究 ETF,讓看多與看空代理人爭論,最後由交易代理人執行選定的部位。README 中展示了完整腳本以及如何在回測與實時紙上交易之間切換。
安裝
pip install lumibot
此套件已上架 PyPI,支援 Python 3.9+,並包含測試覆蓋率的 CI 徽章。
文件與社群
- 完整文件: https://lumibot.lumiwealth.com/
- 受管理的雲端(BotSpot): https://botspot.trade/
- 社群: GitHub repo、Reddit /r/BotSpotTrade 與 Discord 伺服器。
授權 – MIT。
為何重要 – Lumibot 彌合了實驗性的 LLM 驅動交易概念與生產等級量化系統之間的鴻溝。透過將代理人嵌入已處理回測、券商整合與風險控制的框架,使用者能快速迭代、在歷史資料上驗證 AI 產生的決策,然後以最小的摩擦將相同程式碼部署至紙上或實際市場。