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 端點或執行真實交易傳送訊號。
  • 真實的回測:包含模擬腳本與滾動預測腳本,以避免資料外洩,並更準確地估計現實世界表現。

相關

  • 專案
  • 專案
  • 專案
  • 專案
  • 專案