好,这一步我们直接进入**“能写代码、能跑回测、能上QMT实盘"的第一版策略设计**。
目标不是赚钱最大化,而是:
做出一个:简单、可解释、能稳定运行3个月的趋势策略 v1.0
一、策略核心思路(先定死)
我们用最经典、最抗噪音的一种:
多周期趋势 + 突破入场 + 风控出场
二、策略结构(完整框架)
我帮你拆成5个模块,你照这个写就能跑:
🧭 1️⃣ 标的选择(先简单)
建议:
- 沪深300成分股
- 或
- 中证500成分股
👉 原因:
- 流动性好
- 不容易踩雷
- 回测更真实
📊 2️⃣ 入场逻辑(核心)
我们用:
均线趋势 + 突破确认
条件(全部满足才买):
- ✔ 条件1:趋势方向
- MA20 > MA60
- 👉 表示中期向上
- ✔ 条件2:价格突破
- 当前价格 > 过去20日最高价
- 👉 表示新趋势启动
- ✔ 条件3:成交量确认(可选但建议)
- 当日成交量 > 过去5日平均成交量
- 👉 避免假突破
📉 3️⃣ 出场逻辑(非常关键)
你赚钱靠入场,但活下来靠出场。
两个规则:
- ✔ 止损
- 跌破 MA20 → 卖出
- ✔ 止盈 / 趋势结束
- 跌破 MA60 → 全部卖出
👉 简单但非常有效:
趋势在就拿着,趋势没了就走
💰 4️⃣ 仓位管理(很多人忽略)
建议初版:
- 每只股票:10%仓位
- 最多持仓:5–10只
👉 原则:
不要all in,不要重仓单一标的
🛡 5️⃣ 风控(必须有)
- ✔ 总仓位控制:
- 总仓位 ≤ 70%
- ✔ 单日最多开仓:
- 不超过2只股票
👉 避免:
- 一天全买在高点
三、策略逻辑总结(给你一段"人话版本”)
找已经上涨的股票 → 等它突破 → 跟进去 →
趋势继续就拿着 → 趋势结束就走
四、QMT实现思路(工程角度)
你大概这样写:
每日执行流程:
- 获取股票池
- 计算指标(MA20、MA60、最高价)
- 判断买入条件
- 判断卖出条件
- 下单执行
👉 核心函数:
- get_kline
- calculate_ma
- check_signal
- order_target_percent
五、参数(直接给你一版可用)
你可以直接用这套:
- MA短期:20
- MA长期:60
- 突破周期:20
- 成交量周期:5
👉 不要优化,先用
六、回测标准(你必须看这几个指标)
不要只看收益,看这几个:
- ✔ 1. 最大回撤
- 👉 控制在 15–25%以内
- ✔ 2. 胜率
- 👉 不重要(趋势策略本来就不高)
- ✔ 3. 盈亏比
- 👉 要 > 1.5
- ✔ 4. 是否稳定(最重要)
- 👉 曲线是否:
- 平滑
- 可解释
- 没有随机爆发
- 👉 曲线是否:
七、你第一阶段的目标(非常重要)
不是赚钱,是:
- ✔ 目标: 让这个策略稳定跑满3个月(模拟或小资金)
八、你必须遵守的3条铁律(否则一定失败)
- ❌ 1. 不要频繁改参数
- 👉 回测好 ≠ 实盘好
- ❌ 2. 不要因为连续亏损停策略
- 👉 趋势策略一定有回撤期
- ❌ 3. 不要加入太多复杂条件
- 👉 简单 = 可活
- 复杂 = 易死
九、你下一步具体要做什么(一步步来)
我帮你拆好:
第一步(这周)
- 写策略框架
- 跑历史回测
第二步(下周)
- 调整bug
- 看回测曲线
第三步
- 上模拟盘
第四步
- 小资金实盘
十、最后一句话(非常关键)
你现在不是在做"最优策略",而是在做"第一个能活下来的策略"。
如果你下一步继续,我可以帮你把这一套再升级:
👉 给你一份"QMT伪代码结构 + Python实现骨架"
你可以直接改成你的data-agent接进去跑。