最大回撤是一个重要的风险指标。对于对冲基金和数量化策略交易,这个指标比波动率还重要。
1、最大回撤
定义:对于序列$ x_1,x_2,\cdots,x_n$ ,定义最大回撤$ d$ 为
$$d = \min_{i\leq j} (x_j - x_i) = \min_j (x_j - \max_{i\leq j} x_i)$$
根据上述等式,很容易得到一个最大回撤的 O(n)的算法。
2、最大短期回撤
最大回撤发生的时间跨度可以非常长。现在我们定义局部最大回撤,区别在于限制回撤发生的时间跨度,对给定的跨度$ k$ ,定义最大短期回撤$ d_k$ 为:
$$d_k = \min_{0\leq j-i\leq k} (x_j - x_i)= \min_j (x_j - \max_{j-k\leq i\leq j} x_i)$$
这个问题在网上贴出来一个小时, Yangzhe1990 和 uni (其中 uni 是我 7 年前参加 ACM 的队友,这么多年过去他还宝刀未老)就给出了算法。具体方法这两位在留言处写得比较清楚了,这里不再阐述。
最大短期回撤在风险度量上是有意义的。对于一个指数(或者产品),如果我们会长时间持有,那么直接考虑最大回撤。但若策略中限定了持有时间,最大短期回撤的指标会更合适一些。
Q. E. D.