Harness Engineer均线筛选量化策略
策略简介
本策略是一套运行在 FMZ 发明者量化平台上的单品种 AI 自进化交易系统。核心思路不是固定用某一个指标开平仓,而是围绕「Decide → Execute → Reflect → Evolve」构建闭环:系统持续读取目标合约的 K 线技术指标与相关新闻,由大模型输出结构化交易决策;交易结束后再由大模型复盘亏盈原因,将经验沉淀为 Playbook,并在人工设定的安全边界内微调仓位、置信度、止损和移动止盈参数。
策略适用于 BTC、黄金、原油等单一 TradFi 或加密货币永续合约,默认以 notify 通知模式运行,确认稳定后可切换到 trade 实盘模式。
核心模块
① 单品种合约识别
通过 INSTRUMENT_KEYWORD 自动匹配交易所市场中的目标合约,优先识别永续合约,例如 BTC_USDT.swap。策略适合专注交易一个标的,而不是多币种轮动。
② 多指标技术面快照
每轮决策前拉取指定周期 K 线,纯 Python 计算多维指标,不依赖平台 TA 库版本,包括 EMA20/EMA60、MACD、RSI14、BOLL、ATR、KDJ、成交量比率和多周期涨跌幅。AI 决策时必须综合趋势、动量、波动率、量能和价格行为,避免只看单一指标。
③ 新闻层与消息面校验
可接入 BraveSearch,按品种名称和自定义关键词抓取近期新闻,并缓存到数据库。AI 在决策时会同时读取技术面与消息面,只有两者不冲突时才允许开仓或加仓;若消息面与技术面方向相反,策略要求保持观望或平仓。
④ AI 结构化决策引擎
大模型根据「指标快照 + 新闻 + 当前持仓 + Playbook经验库」输出标准 JSON 决策,动作包括开多、开空、加多、加空、减仓、平仓、观望。每次决策都包含置信度、技术面判断、消息面判断、交易理由和风险提示,开仓必须达到当前 Playbook 中的最小置信度阈值。
⑤ 执行与仓位控制
实盘模式下,策略按账户权益、基础仓位比例、杠杆和 AI 置信度计算下单数量。支持同向加仓、反向信号先平仓再反手、AI 主动减仓或平仓。单标的最大仓位比例、最大加仓次数、杠杆上限属于代码层硬约束,AI 无法突破。
⑥ 硬止损 + 移动止盈
每次开仓后自动生成硬止损价。持仓浮盈达到移动止盈启动阈值后,策略记录峰值收益,当利润回吐超过允许比例时自动平仓。止损比例、移动止盈启动阈值和回撤比例可以由 Playbook 在安全范围内微调。
⑦ 交易复盘与经验沉淀
每笔交易平仓后,AI 会读取交易记录和入场决策,判断结果是盈利、亏损还是接近打平,并总结具体可执行的交易经验,例如追涨、忽略消息冲突、止损过紧、持仓过久等问题。这些复盘写入数据库中的 reflections 表。
⑧ Playbook 自进化机制
当复盘交易数量达到设定阈值,或到达固定时间间隔后,AI 会读取近期复盘、整体胜率和当前 Playbook,生成新版本经验库。新 Playbook 包含 do_rules、avoid_rules 和参数建议,但参数会被裁剪到人工设定的上下限内,确保 AI 只能在安全区间中微调,不能随意放大风险。
⑨ 可视化仪表板与手动控制
策略状态栏展示系统概览、多指标快照、最近 AI 决策、最近交易、最近复盘、当前 Playbook 和运行步骤。支持手动强制决策、手动触发进化、暂停/恢复进化、重置运行态、清空数据库等操作。
可配置参数
| 参数 | 说明 | 默认值 |
|---|---|---|
| LLM_API_KEY | 大模型接口密钥,留空则跳过 AI 决策/复盘/进化 | 空 |
| LLM_BASE_URL | OpenAI 兼容 chat/completions 接口地址 | 空 |
| LLM_MODEL | 使用的大模型名称 | deepseek-chat |
| BRAVE_KEY | BraveSearch 新闻检索密钥,留空则跳过新闻层 | 空 |
| TRADE_MODE | 交易模式:notify 仅通知 / trade 实盘 | notify |
| INSTRUMENT_KEYWORD | 合约匹配关键字 | BTC_USDT |
| INSTRUMENT_DISPLAY_NAME | 品种显示名称 | 比特币 |
| NEWS_QUERY_TERMS | 新闻检索关键词 | BTC,币圈,美联储,ETF,减半 |
| KLINE_PERIOD_LABEL | 决策 K 线周期 | H1 |
| CHECK_INTERVAL_S | 主循环间隔秒 | 15 |
| NEWS_REFRESH_S | 新闻刷新间隔秒 | 1800 |
| DECISION_COOLDOWN_S | 两次 AI 决策最小间隔秒 | 300 |
| KLINE_LIMIT | 指标计算使用的 K 线数量 | 200 |
| MIN_CONFIDENCE | 开仓所需初始最小置信度 | 65 |
| MIN_CONFIDENCE_FLOOR | 置信度进化下限 | 55 |
| MIN_CONFIDENCE_CEIL | 置信度进化上限 | 85 |
| BASE_POS_PCT | 初始基础仓位比例 | 0.10 |
| BASE_POS_PCT_FLOOR | 基础仓位进化下限 | 0.05 |
| BASE_POS_PCT_CEIL | 基础仓位进化上限 | 0.30 |
| MAX_SINGLE_POS_PCT | 单标的最大仓位比例,硬约束 | 0.50 |
| MAX_TOTAL_ADD_COUNT | 最大加仓次数,硬约束 | 3 |
| LEVERAGE | 杠杆倍数,硬约束 | 3 |
| HARD_STOP_PCT | 初始硬止损比例 | 3 |
| HARD_STOP_PCT_MIN | 硬止损进化下限 | 1.5 |
| HARD_STOP_PCT_MAX | 硬止损进化上限 | 6 |
| TRAIL_ACTIVATE_PCT | 移动止盈启动浮盈阈值 | 3 |
| TRAIL_ACTIVATE_PCT_MIN | 移动止盈启动阈值进化下限 | 1.5 |
| TRAIL_ACTIVATE_PCT_MAX | 移动止盈启动阈值进化上限 | 8 |
| TRAIL_GIVEBACK_PCT | 移动止盈允许利润回吐比例 | 30 |
| TRAIL_GIVEBACK_PCT_MIN | 移动止盈回撤比例进化下限 | 20 |
| TRAIL_GIVEBACK_PCT_MAX | 移动止盈回撤比例进化上限 | 50 |
| EVOLUTION_TRADE_INTERVAL | 每积累多少笔复盘交易触发进化 | 5 |
| EVOLUTION_TIME_INTERVAL_S | 进化兜底检查间隔秒 | 86400 |
| EVOLUTION_MIN_TRADES | 首次进化所需最少复盘数 | 5 |
| REFLECTION_LOOKBACK | 每次进化回顾的最近复盘数量 | 20 |
风险提示
- 本策略依赖大模型输出交易判断,AI 决策可能出现误判、过度自信或对新闻理解偏差
- 新闻接口存在延迟、缺失或抓取质量不稳定的问题,消息面判断不能视为确定性事实
- Playbook 自进化基于历史交易复盘,样本数量不足时容易过拟合近期行情
- 单品种策略会集中暴露在该标的风险上,遇到极端波动、插针、流动性不足时可能快速亏损
- AI 只能在参数边界内微调,不代表系统能够自动适应所有市场环境
- 强烈建议先使用
notify模式观察多个交易周期,确认决策质量、复盘质量和参数进化方向后,再谨慎切换实盘 - 实盘前应根据交易品种重新设置杠杆、仓位上限、止损范围和新闻关键词,避免直接套用默认参数
- 1