1. 课程导入

在正式进入策略编写与实战之前,我们需要先回答三个问题:海龟交易法则从哪里来?Donchian突破系统到底在赚什么钱?这门课学完之后,你应该具备哪些可验证的能力?本章不涉及复杂代码,但会为你建立一张贯穿全课程的“认知地图”。

一、海龟交易法则的起源:一场可复制的交易实验

1983年,美国期货交易员理查德·丹尼斯与合伙人威廉·埃克哈特进行了一场著名的争论:交易能力是天生的,还是可以后天训练的?为了验证这个问题,他们招募了一批几乎没有交易经验的普通人,称为“海龟”,并在两周内教授一套完整的机械交易系统。随后,这些海龟在真实账户中执行该规则,部分人取得了显著收益。

这场实验的真正价值不在于“造富神话”,而在于它证明了一件事:当入场、加仓、止损、离场和资金管理都被写成明确规则时,交易可以被训练、被复制、被复盘。海龟交易法则因此成为趋势跟踪领域最具代表性的公开规则集之一。

海龟法则并非单一指标,而是一套完整系统,通常包含:

  • 市场选择:选择流动性好、趋势性强的期货或衍生品市场。
  • 头寸规模:用ATR(平均真实波幅)衡量波动,动态决定下单手数。
  • 入场信号:以Donchian通道突破作为主要触发条件。
  • 加仓规则:盈利后按0.5N(N为ATR)间隔分批加仓。
  • 止损规则:通常以2N作为单笔风险上限。
  • 离场规则:跌破较短周期Donchian通道或触发止损时退出。

核心结论:海龟法则的收益来源不是预测,而是“截断亏损、让利润奔跑”的正期望值结构。Donchian突破系统是这套结构中最关键的入场引擎。

二、Donchian突破系统的核心思想:用价格通道定义趋势

Donchian通道由理查德·唐奇安提出,最初用于商品期货趋势跟踪。它的计算非常朴素:

上轨 = 过去N根K线的最高价
下轨 = 过去N根K线的最低价
中轨 = (上轨 + 下轨) / 2

当价格突破上轨时,系统认为市场可能进入上升趋势;当价格跌破下轨时,认为可能进入下降趋势。其核心思想可以概括为三点:

  1. 趋势由新高或新低确认:不猜测顶部和底部,只跟随已经发生的突破。
  2. 通道长度决定灵敏度:N越小,信号越多但噪音越大;N越大,信号越少但更稳定。
  3. 突破必须配合风险管理:突破本身胜率不高,必须用止损和仓位控制保证单次亏损可控。

下面这张图展示了Donchian突破系统的核心数据链路:从K线数据到通道计算,再到突破信号、风险过滤和最终订单。

Donchian突破系统核心数据链路 市场K线数据 开高低收/成交量 计算Donchian通道 N日最高/最低 突破信号判断 上破/下破 风险过滤 ATR/仓位/止损 订单执行:入场 / 加仓 / 止损 / 离场 按规则机械执行,不预测方向 反馈闭环:成交结果 → 盈亏统计 → 参数评估 → 规则迭代 趋势跟踪的正期望值来自“多次小亏 + 少数大赚”

三、方法流程:一个最小可用的Donchian突破系统

为了让后续章节有统一的讨论框架,我们先给出一个最小可用流程。它不追求最优参数,而是帮助你理解系统各模块之间的依赖关系。

模块 规则示例 作用
入场 收盘价突破20日Donchian上轨做多,跌破20日下轨做空 捕捉趋势启动
止损 入场价反向2N(N=ATR20) 控制单笔亏损
加仓 每盈利0.5N加仓一次,最多4次 放大盈利趋势
离场 跌破10日Donchian下轨(多头) 锁定利润、退出趋势
仓位 账户风险1% / (2N × 合约乘数) 统一风险口径

对应的伪代码结构如下:

for each bar:
    upper = highest(high, 20)
    lower = lowest(low, 20)
    atr   = ATR(20)

    if close > upper and no_position:
        entry_long()
        stop_loss = entry_price - 2 * atr

    if close < lower and no_position:
        entry_short()
        stop_loss = entry_price + 2 * atr

    if position_long and close < lowest(low, 10):
        exit_long()

    if position_short and close > highest(high, 10):
        exit_short()

学习提示:先不要纠结“20日还是55日更好”。参数优化是后续章节的内容。本章只需要理解:Donchian通道负责定义“何时可能出趋势”,ATR负责定义“每次愿意亏多少”。

四、案例与场景:突破系统在什么市场里更有效

Donchian突破系统属于趋势跟踪策略,它的典型盈利场景是:市场经历一段盘整后,出现持续数周甚至数月的单边行情。例如某商品期货在区间内震荡两个月,随后因供需变化突破区间上沿,系统顺势入场,并在后续趋势中通过加仓放大利润。

但它也有明显的失效场景:

  • 震荡市:价格反复突破上轨又跌回,导致连续小亏。
  • 跳空缺口:开盘直接跳过止损位,实际亏损可能大于2N。
  • 流动性不足:滑点扩大,突破信号无法按预期价格成交。
  • 参数过拟合:在历史数据上表现很好,实盘却迅速失效。

常见误区:把Donchian突破当成“预测顶底”的工具。它不预测,只确认。突破上轨不代表一定上涨,只代表“如果上涨,我已在场”。理解这一点,才能接受低胜率和高盈亏比并存的现实。

五、课程学习目标与整体框架

本课程共30章,围绕“理解规则—编写代码—回测验证—实盘风控”四条主线展开。学完之后,你应该能够:

  1. 独立解释Donchian通道、ATR、加仓和止损之间的数学关系。
  2. 用Python或交易平台语言实现一个完整的Donchian突破系统。
  3. 对策略进行回测,并正确解读收益、回撤、胜率和盈亏比。
  4. 识别过拟合、幸存者偏差和滑点假设等常见回测陷阱。
  5. 根据账户规模和市场波动,动态调整仓位与风险上限。

整体框架可以概括为:原理篇 → 代码篇 → 回测篇 → 优化篇 → 实战篇。本章是原理篇的起点,后续会逐步把上面那张数据链路图中的每个节点展开成可运行的代码和可复盘的交易记录。

本章要点回顾:海龟实验证明了机械交易的可训练性;Donchian突破系统用最高价和最低价通道定义趋势;完整系统必须包含入场、止损、加仓、离场和仓位管理;趋势跟踪的盈利结构是“多次小亏 + 少数大赚”。