Indicator:Go 量化库把指标、策略和回测塞到一起了
这种量化项目,一般先翻命令。
结果 Indicator 这库有点意思:不是只给你一堆 EMA、RSI、MACD 函数,然后剩下的回测、数据同步、报告全让你自己拼。
它直接把技术指标、现成策略、回测框架和 Docker 跑法放在一个 Go 项目里,README 里写的是 80+ indicators、backtesting framework,还有 MCP 集成。
量化开发最烦的地方,往往不是“指标公式不会写”。公式网上一堆。烦的是你今天写个指标,明天接数据源,后天跑历史数据,再过两天开始怀疑自己回测框架是不是偷偷把未来数据喂进去了。
坑一般就在这里。
Indicator 的路子比较工程化。它把趋势、动量、波动率、成交量这些常见指标都拆成包,数据处理走 Go channel,v2 还强调了流式输入输出、泛型支持、指标和策略参数可配置。这个点对 Go 用户挺顺手,尤其是你本来就想拿 channel 串行情、信号、策略执行链路。
但先泼点冷水:别把它当“会赚钱的策略库”。README 自己也写了风险说明,技术指标基于历史数据,不保证未来结果;v2 以后还是 AGPLv3 / 商业双许可,真要塞进闭源商业产品,许可这块得先看清楚。
我比较喜欢的是它的回测入口没有搞得太玄学。仓库里有 indicator-backtest,可以对本地 repository 里的资产跑策略并输出报告;Docker 用法也很直接,挂一个 output 目录,填 Tiingo API key,再给 assets,就能生成 HTML 报告。
大概就是这种味道:
docker run -it --rm \
-v $(pwd)/output:/app/output \
ghcr.io/cinar/indicator:latest \
--api-key YOUR_TIINGO_API_KEY \
--days 365 \
--assets aapl msft googl
啧,这比自己从 CSV、图表、策略收益曲线一点点糊起来省事多了。
还有个小尾巴是 MCP Server。现在很多人想让 AI 工具帮忙看策略、解释信号、扫结果,但中间链路经常断:数据在哪、策略怎么跑、结果怎么喂给 Agent。Indicator 至少把这个接口方向摆出来了,能不能用顺,还得看你的数据源和工作流。
老鬼会把它归到“Go 量化开发省脏活”的工具里。适合先做指标验证、策略原型、回测报告,不适合上来就幻想自动印钞。
GitHub地址:cinar/indicator