zhangkun9038@dingtalk.com 62b9fed359 not work NostalgiaV8
2025-05-07 16:56:25 +08:00

2.7 KiB
Raw Blame History

请把当前策略的运行逻辑进行梳理和讲解

我来为您梳理和讲解这个策略的运行逻辑。这是一个基于 FreqAI 的机器学习交易策略,主要使用 RSI 指标和机器学习模型进行交易决策。以下是策略的主要逻辑:

1. 策略配置

minimal_roi = {
    "0": 0.02,
    "7": 0.01,
    "13": 0.005,
    "60": 0
}
stoploss = 0.0
trailing_stop = True
  • 设置了静态的 ROI 目标
  • 启用了追踪止损

2. 特征工程

策略通过多个方法构建特征:

  • feature_engineering_expand_all: 计算 RSI 和布林带宽度
  • feature_engineering_expand_basic: 计算价格变化百分比
  • feature_engineering_standard: 计算波动率和时间特征

3. 目标变量设置

set_freqai_targets 方法中:

  • 使用未来 label_period_candles 周期的 RSI 值作为目标变量
  • 计算并标准化波动率特征

4. 指标计算

populate_indicators 方法中计算了多个技术指标:

  • RSI
  • 波动率
  • TEMA三重指数移动平均线
  • 布林带下轨
  • 未来价格方向up_or_down

5. 机器学习模型

使用 LightGBM 回归模型:

freqai_info = {
    "model": "LightGBMRegressor",
    "feature_parameters": {...},
    "data_split_parameters": {...},
    "model_training_parameters": {...}
}
  • 模型预测买入和卖出的 RSI 值
  • 使用 SOL/USDT 作为相关交易对

6. 入场逻辑

populate_entry_trend 方法中:

  • 当实际 RSI 上穿预测的买入 RSI 时
  • TEMA 指标向上
  • 交易量大于 0
  • 模型预测结果为 1
  • 未来价格方向为上涨

7. 出场逻辑

populate_exit_trend 方法中:

  • 当实际 RSI 上穿预测的卖出 RSI 时
  • 或价格下跌超过 2%
  • 或价格跌破布林带下轨
  • 或持有时间超过 1 天

8. 交易确认

confirm_trade_entry 方法:

  • 检查当前价格是否在可接受范围内
  • 记录交易确认信息

策略特点

  1. 机器学习驱动:使用 LightGBM 模型预测 RSI 值
  2. 多特征融合:结合技术指标、波动率和时间特征
  3. 风险控制:设置了 ROI 目标和追踪止损
  4. 动态调整:通过机器学习模型动态调整交易信号

运行流程

  1. 数据准备:获取历史数据,计算技术指标
  2. 特征工程:构建机器学习特征
  3. 模型训练:使用历史数据训练 LightGBM 模型
  4. 信号生成:根据模型预测结果生成交易信号
  5. 交易执行:根据入场和出场逻辑执行交易
  6. 风险控制:根据 ROI 和止损规则管理仓位

这个策略结合了传统技术分析和机器学习方法,通过模型预测来增强交易信号的准确性,同时保持了严格的风险控制机制。