移动平均线交叉策略,带止损和仓位管理。同一逻辑实现了四次,从 1990 年代的脚本信号工具到 AI 生成的 StratCraft 策略。逻辑从未改变,但实现成本天差地别。
用户输入给 StratCraft 的提示: "为 SPY 日线创建一个移动平均线交叉策略。 当 20 周期 SMA 上穿 50 周期 SMA 时买入。 反之卖出。每笔交易使用 1% 止损。 每个仓位承担组合 2% 的风险。从 2020 年开始完整回测。"
# Generated by StratCraft AI. Do not edit manually # Strategy: MA Crossover SPY Daily | Generated: [timestamp] from stratcraft.core import Strategy, Signal, RiskModel class MACrossover(Strategy): fast_period: int = 20 slow_period: int = 50 stop_loss_pct: float = 0.01 risk_per_trade: float = 0.02 def on_bar(self, ctx): fast = ctx.sma(self.fast_period) slow = ctx.sma(self.slow_period) if ctx.cross_above(fast, slow): size = ctx.risk_size(self.risk_per_trade, self.stop_loss_pct) ctx.buy(size, stop=ctx.price * (1 - self.stop_loss_pct)) elif ctx.cross_below(fast, slow): ctx.close_all()
你描述了逻辑。StratCraft 写了代码、验证了它,并完成了回测。策略从未离开过你的机器。
| Gen 1 | Gen 2 | Gen 3 | Gen 3.5 | |
|---|---|---|---|---|
| 人工编写行数 | ~30 | ~55 | ~50 | 6(自然语言) |
| 设置时间 | 1–2 小时 | 4–8 小时 | 1–3 周 | < 5 分钟 |
| 动态仓位管理 | 无 | 手动 | 平台 API | 自动生成 |
| 本地运行 | 是 | 是 | 否(云端) | 是 |
| 知识产权留在你的机器 | 是 | 是 | 否 | 是 |
| 需要专家级编码 | 是 | 是 | 是 | 否 |
逻辑从未改变。 带止损和仓位管理的移动平均线交叉策略,在四个代际里都是同一个策略。改变的是表达它所需的工程量。
第 3 代解决了错误的问题。 它消除了运营复杂度(多资产、风险框架、云基础设施)。它没有消除手写每个策略的要求。那个瓶颈依然存在。
第 3.5 代消除了这个瓶颈。 当 AI 写代码时,约束从工程小时数转移到你的想法的质量。这就是拐点。