AICryptoBot:用LLM与K线智能预测加密货币价格

·

风险提示:本文仅供技术交流与学习演示,所有模型输出不构成投资建议。加密货币属高风险资产,入市需谨慎,潜在盈亏需自行承担。

项目速览

AICryptoBot 是一款开源工具,通过调用主流交易所 K线数据,让 大语言模型(LLM) 读取技术指标并给出交易方向判断。它以 Telegram机器人独立脚本 两种形态运行,支持 Docker 快速部署,也可手动配置本地环境。

核心关键词:AICryptoBot、加密货币、K线数据、LLM、技术指标、交易建议、Docker部署

核心功能

1. 多维数据抓取

2. LLM 智能解读

快速上手

方案 A:Docker 一键启动

docker pull ghcr.io/bennythink/aicryptobot:latest
docker run --env-file .env ghcr.io/bennythink/aicryptobot --symbols=BTCUSDT,ETHUSDT

配置键值请见项目根目录 aicryptobot/.env 示例文件,主要包含:

方案 B:本地手动部署

系统依赖

安装示例(macOS)

brew install ta-lib
git clone https://github.com/BennyThink/AICryptoBot
cd AICryptoBot
pdm install        # 或用 pip install -r requirements.txt
cp .env.example aicryptobot/.env

环境变量速查

LLM_PROVIDER=openai
OPENAI_API_KEY=sk-********
TIME_FRAME=15m               # 可选:1h、4h、1d 等
MAX_TOKENS=90000             # 建议 ≤ 90k,避免高额账单
DEFAULT_SYMBOLS=BTCUSDT,ETHUSDT

运行脚本 vs 机器人

# 1. 单机分析模式
python main.py --symbols=SOLUSDT,DOGEUSDT
# 2. Telegram 机器人模式
python main.py --mode=bot

深度原理

AICryptoBot 把交易行为拆成三步:

阶段LLM 角色关键输入输出样例
走势复盘复盘小秘书最近300根K线+常用技术指标综合判断:震荡偏弱
信号生成交易分析师追加宏观新闻缓存+订单簿快照多头条件:突破72000且量能放大
整体风控风险主管交易信号+个人风险偏好止损价69800、止盈76000

本模块允许二次注入自定义提示词,满足多元策略(网格、剥头皮、趋势波段)。

使用场景与案例

  1. 日内高频族
    选定 5m K线+ MACD、momentum 组合,机器人在每根K线收盘后2秒内吐出简评。
  2. 周线趋势党
    抓取 1w K线+ ADX、OBV,LLM 提前标记潜在突破区间,减少盯盘压力。
  3. 多元化资产配置
    通过脚本模式批量跑 30 个交易对,集中展示结果,快速筛选当晚交易池。

常见问题(FAQ)

Q1:一次调用大约耗费多少算力成本?
A:默认 15 分钟级别,300 根K线 ≈ 60k–90k Tokens;按 $0.002/Tokens 估算,单次 0.12–0.18 美元。可通过缩小 LOOKBACK_BARS 或延长 TIME_FRAME 压缩成本。

Q2:是否可以接入除币安以外的交易所?
A:理论上支持,只需重写 data_fetcher.py 中的 ExchangeClient 接口即可;已有社区开发者测试 OKX、Bybit 适配成功。

Q3:TA-Lib 在 Windows 安装失败怎么办?
A:可使用 预编译轮子pip install TA_Lib-0.4.24-cp39-cp39-win_amd64.whl,具体文件名按 Python 版本匹配即可。

Q4:如何持续监控运行状态?
A:脚本本身提供 --log-level=DEBUG 可选参数;在 Docker 场景下建议对接 Prometheus+Grafana,通过容器日志端口 1313/metrics 暴露。

Q5:是否能与 DCA(定投)策略结合?
A:可以。提示词中加入「仅当当前价格低于90日均线且AI信号为多头时才分批买入」即可实现智能定投。

Q6:如何修改默认模型或添加 Grok-2?
A:在 .env 新增 CUSTOM_MODEL=grok-beta,并指向对应 API Endpoint;若返回 JSON 结构与 OpenAI 不兼容,可自行 fork llm_client.py 做适配。

进阶拓展

  1. 指标自定义
    indicators.py 增加任何 TA-Lib 已实现的指标即可,LLM 会自动识别列名并读取。
  2. 定时任务
    借助 cron + 脚本模式,每天 9:00/21:00 各跑一次日报,推送至 Telegram 频道。
  3. 回测框架
    项目预留了 backtest/runner.py,未来可与 backtrader 集成,实现 LLM 信号—策略回测—收益曲线 的闭环验证。

开发与贡献

我们欢迎 Pull RequestIssue Discussion,项目采用 MIT 许可,可自由商用及二次开发。


祝你探索愉快,愿代码与行情同在!