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 仓库、Reddit /r/BotSpotTrade 与 Discord 服务器。
许可证 – MIT。
为何重要 – Lumibot 弥合了实验性的 LLM 驱动交易想法与生产级量化系统之间的鸿沟。通过将代理人嵌入已经处理回测、券商集成和风险控制的框架,用户可以快速迭代、在历史数据上验证 AI 生成的决策,然后以最小的摩擦将相同代码部署到纸上或实盘市场。