asavinov/intelligent-trading-bot

Intelligent Trading Bot: Automatically generating signals and trading based on machine learning and feature engineering

解决的问题

该项目提供了一个构建使用机器学习预测价格变动的自动化交易机器人框架。它解决了在离线训练阶段(使用历史数据训练模型)和在线预测阶段(机器人进行实时决策)之间保持一致性的挑战。

工作原理

系统分为两个主要模式:

  1. 离线(批处理)模式:一系列脚本负责从 Binance 和 Yahoo 等来源下载历史数据,合并数据流,使用 TA-Lib 和 tsfresh 等库生成衍生特征,并创建用于训练的标签(未来价格目标)。然后训练分类或回归机器学习模型以预测这些标签。
  2. 在线(流式)模式:基于云的服务定期获取最新市场数据,计算与训练期间相同的衍生特征,应用训练好的机器学习模型生成预测,并将这些预测汇总为最终的「智能指标」得分。

系统包含一个回测套件,使用滚动向前分割来模拟现实的交易表现,通过定期在未见数据上重新训练模型实现。

适用人群

对算法交易感兴趣,并希望将机器学习模型集成到生产就绪的加密货币或其他资产交易管道中的交易员和开发者。

主要亮点

  • 一致的特征工程:确保训练和实时交易中使用完全相同的衍生特征。
  • 可扩展的特征集:通过 TA-Lib 支持标准技术指标,通过 tsfresh 支持复杂的时序特征。
  • 灵活的输出:可配置为通过 Telegram、API 端点或执行真实交易发送信号。
  • 真实的回测:包含模拟脚本和滚动预测脚本,以避免数据泄露,并更准确地估计现实世界表现。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目