Featured image of post 监控加密货币技术指标的 Telegram 机器人:全网开源方案深度调研

监控加密货币技术指标的 Telegram 机器人:全网开源方案深度调研

4 路并行 agent、GitHub API 一手核实 20+ 候选:Freqtrade 54k★ 唯一同时满足 OKX 永续+指标驱动+TG 双向+按钮确认下单+dry-run;TradingView webhook 竟是付费功能;Hummingbot 没有 TG、Jesse 不支持 OKX。

这是 LynxCrypto 的选型篇。我本来想自己写一个监控机器人,但在动手前先做了全网调研——结果发现有现成的成熟方案,而且比我打算写的更好。这篇文章把 20+ 个候选全部摆出来,说清哪个适合我、为什么。


〇、先说结论(给不想看长文的人)

对一个**会 Python、玩 OKX 永续、要"指标触发 TG 告警 + 在 TG 里确认下单"**的人:

  • 首选:Freqtrade(54k★)——唯一同时满足「OKX 永续 + Python 指标驱动 + TG 双向命令 + 带按钮二次确认下单(/forcelong /forceshort /forceexit)+ dry-run 只告警不交易 + Docker」的项目。
  • 纯告警、不下单:Telegram-Crypto-Alerts(105★)——配置驱动、TG 里打命令就建指标告警,但绑 Binance + 依赖 Taapi.io,OKX 需改造。
  • 少写代码、要 TG 交互:OctoBot(6.5k★)——配置驱动、支持 OKX、TG 双向控制强,但缺逐笔 force-enter 确认。
  • 会写代码、想完全贴合 OKX:ccxt + pandas-ta + python-telegram-bot 自写约百行——这是唯一能完全贴合 OKX 永续、且不被任何平台交易所限制绑死的方案。

我的判断:不是"自己写 vs 用现成"二选一,而是先用 Freqtrade 的 dry-run + Telegram 跑起来,把"指标 → 告警 → 确认 → 下单"这条链路打通;等摸清自己的真实需求,再决定要不要为 OKX 定制。


一、我要的到底是什么

在选型前先把需求钉死,否则会被 20 个候选绕晕:

  1. 监控技术指标:MACD/RSI/均线交叉等,在 OKX 永续的 K 线上计算。
  2. 触发推 Telegram:条件满足时给我发告警(方向/价格/参考止损)。
  3. TG 里确认下单:我回复一个命令(或点个按钮)才真的下单——不是全自动
  4. 自托管 + Docker:跑在我自己的 WSL2/VPS 上,走本地代理。
  5. 成熟:有 star 量、近期在维护、有文档,不是玩具项目。

按这 5 条筛,20 多个候选最后只剩下寥寥几个真正能打的。


二、第一梯队:真正能打的三个

Freqtrade ⭐ 54,048 — 综合首选

  • URL: https://github.com/freqtrade/freqtrade · GPL-3.0 · 2026-09-05 仍在活跃提交
  • Telegram 能力(核实源码 freqtrade/rpc/telegram.py):这是它最强的部分。
    • 推送:进场/出场/止损/ROI 触发全可推,逐类开关。
    • 双向命令:/status /profit /balance /trades /start /stop /pause
    • 人工确认下单(核心):/forcelong <pair>/forceshort/forceexit,且带 inline 按钮二次确认——正是我要的"TG 里确认再下单"。
    • 授权:authorized_users 白名单控制谁能下令。
  • OKX 永续:✅ 核实 freqtrade/exchange/okx.py,支持 futures。
  • 只告警不交易:✅ 配 dry_run: true,策略照常跑信号推 TG,只是不下真单。
  • 部署:官方 Docker + docker-compose,纯 Python,WSL2 友好。
  • 代价:策略要写 Python(指标逻辑)。但 TG 告警/命令/确认零代码开箱即用
  • 为什么首选:它是唯一把"指标驱动 + OKX 永续 + TG 双向 + 按钮确认 + dry-run"全做齐的成熟项目。我要写的只是策略那几十行指标,告警和下单交互全是现成的。

OctoBot ⭐ 6,522 — 少写代码的备选

  • URL: https://github.com/Drakkar-Software/OctoBot · GPL-3.0 · 2026-09-05 活跃
  • Telegram 能力:双向控制命令丰富(/portfolio /open_orders /sell_all /set_risk 等),但没有 Freqtrade 那种"按交易对 force-enter + 按钮确认"的精细下单交互——TG 侧偏"控制与查看",下单主要由策略/TradingView 信号驱动。
  • OKX 永续:✅ 核实 packages/tentacles/Trading/Exchange/myokx/
  • 特点:配置驱动,GUI 配置不写代码,可装现成指标评估器,也可接 TradingView 信号。
  • 适合:不想写策略代码、能接受"TG 控制 + 策略自动信号"而非"逐笔人工确认"的人。

Telegram-Crypto-Alerts ⭐ 105 — 纯告警最对口

  • URL: https://github.com/hschickdevs/Telegram-Crypto-Alerts · MIT · 2025-10 维护
  • 形态:几乎就是"自托管版 TradingView 指标告警 + TG 斜杠命令"。在 TG 里打 /new_alert BTC/USDT RSI 4h ... ABOVE 70 就建好一个指标告警,支持 RSI/MACD/BBANDS/MA/EMA,Docker 自托管。
  • 两个硬伤:① 只告警不能下单;② 价格走 Binance、指标走第三方 Taapi.io(要 key,有免费档但非自足),不支持 OKX 永续
  • 适合:只要告警、且标的在 Binance 的人。对 OKX 用户需要改造。

三、继续用 TradingView?先搞清楚 webhook 免不免费

不免费。 TradingView 官方定价页里 “Webhook notifications” 在免费(Basic)档是空白——webhook 告警是付费功能(Essential/Plus 起)。这决定了"继续用 TV 指标"的路线:

方案做法适合谁
fabston/TradingView-Webhook-Bot(1854★,MIT)接收 TV webhook → 转发 TG/Discord愿付 TV 订阅、只要转发,不管下单
soranoo/TradingView-Free-Webhook-Alerts(426★,GPL)监听 TV 告警邮件转 webhook/TG零成本保留 TV 指标,但接受邮件秒级延迟
shner-elmo/TradingView-Screener(1148★,MIT)Python 库直接查 TV 官方 screener API,3000+ 字段、多周期,免费蹭 TV 的指标计算会 Python 的人当扫描引擎,自写 TG 推送几十行搞定

关键洞察:TradingView-Screener 这个库能免费拿到 TradingView 官方算好的指标值(含 MACD/RSI/均线交叉的预计算),连行情 API 都不用接——但它只是个库,没有 TG、没有 Docker,要自己写约 30 行定时扫描+推送。


四、通用自托管平台(n8n/Grafana/Huginn)行不行

我专门查了一轮"用通用告警平台代替专用加密工具"的可行性:

  • n8n(203k★):唯一接近"开箱即用"——有社区 Binance/futures 节点拉 K 线、内置 Telegram 节点,但没有内置 MACD/RSI 计算节点,要在 Code 节点写一小段 JS 算指标。20 万 star 维护极活跃,Docker/WSL2/代理都顺。
  • Grafana(76k★):监控强,但没有 crypto 数据源插件(核实官方 catalog 356 个里没有),要用 Infinity 数据源轮询 OKX API,而且 Grafana alerting 对"两线交叉"支持弱(它擅长阈值不擅长交叉)。
  • Huginn(49k★):事件驱动贴合,但精确 MACD/RSI 要写 Ruby agent。
  • Node-RED(23k★):灵活但等于自己拼,指标必须 function 节点写 JS。

结论:通用平台里 n8n 最强,但没有任何通用平台能零代码算 MACD/RSI 交叉——反正都要写一小段代码,那为什么不直接写在更贴合加密的东西里(Freqtrade 策略,或自己的脚本)?


五、被排除的(也值钱了)

  • Hummingbot(19.8k★):交易能力强(做市/套利),OKX 永续也支持,但完全没有 Telegram 集成(核实代码树 0 处 telegram),要告警得自写桥接。
  • Jesse(8.4k★):Telegram 只单向发消息无命令交互,且不支持 OKX(核实代码无 okx 引用,只有 Binance/Bybit/Bitget/Gate)。
  • 一大堆 *-signal-botRSI/MACD telegram bot:几乎全是 0-3 star、无 License、多年没更新的玩具项目,宁缺毋滥不列。

六、最终对比表

方案OKX永续指标驱动TG确认下单只告警写代码量DockerLicense
Freqtrade✅ Python✅ 按钮确认✅ dry_run中(策略)GPL-3.0
OctoBot配置⚠️ 无逐笔确认✅ 纸交易GPL-3.0
Telegram-Crypto-Alerts❌ Binance✅ Taapi❌ 无MIT
TradingView-Screener✅ 库✅ TV算❌ 无低(30行)❌ 库MIT
n8n社区节点写JS低-中fair-code
自写 ccxt+pandas-ta+TG✅ 最贴✅ 自己定中(百行)自己写自定

七、我的决定

回到 LynxCrypto 的现实:MacdCross-4h 刚过 WFO 终审,下一步是蚂蚁仓 dry-run 验证——我要的正是"指标触发 → TG 告警 → 我确认 → demo 下单"这条链路。

决策:先用 Freqtrade。

  1. 它是唯一把 OKX 永续 + TG 双向 + 按钮确认 + dry-run 全做齐的,我不需要重造轮子
  2. 我把 MacdCross 写成一个 Freqtrade 策略(几十行 Python),配 dry_run: true,就能立刻在 demo 上跑"信号 → TG 告警 → /forcelong 确认"——这正是我 Phase 5 要的验证。
  3. Telegram-Crypto-Alerts 当不了主力(绑 Binance、不能下单),TradingView-Screener 可以作为以后"多币种扫描"的补充数据源。
  4. 我已写的那个自写机器人(run_tg_bot.py)不扔——它验证了"ccxt + 自算指标 + TG"这条路通,如果以后 Freqtrade 的某些限制绑手绑脚,我有干净的自写退路。

一句话:站在 54k star 的成熟项目肩膀上,比从零写一个只为我一个人用的机器人聪明得多。 省下的时间,拿去做真正难的事——验证策略的 edge 在实盘上还存不存在。


本系列:

所有 GitHub star 数、维护时间、License 均经 GitHub API 实时核实(2026-09-06);OKX 永续支持、Telegram 命令能力均核实自项目源码或官方文档。代码在本地 /home/li/lynxcrypto。非投资建议。