tz_zs的博客

不要忘记学习的态度与方法

Python 实现最大回撤

____tz_zs


最大回撤 是一个重要的风险指标。对于对冲基金和数量化策略交易,这个指标比波动率还重要。

定义:对于序列x1,x2,⋯,xn ,定义最大回撤d 为



·

# -*- coding: utf-8 -*-
"""
@author: tz_zs

最大回撤
"""
import numpy as np
import matplotlib.pyplot as plt

# data = [100, 200, 50, 300, 150, 100, 200]
# print(np.maximum.accumulate(data))  # [100 200 200 300 300 300 300]

data = np.random.randn(100).cumsum()

index_j = np.argmax(np.maximum.accumulate(data) - data)  # 结束位置
print(index_j)
index_i = np.argmax(data[:index_j])  # 开始位置
print(index_i)
d = data[index_j] - data[index_i]  # 最大回撤
print(d)

# 绘制图像
plt.plot(data)
plt.plot([index_i, index_j], [data[index_i], data[index_j]], 'o', color="r", markersize=10)
plt.show()

·


·



参考:

Start, End and Duration of Maximum Drawdown in Python

最大回撤和最大短期回撤的线性算法

阅读更多
版权声明:本文为博主原创文章,欢迎讨论共同进步。 https://blog.csdn.net/tz_zs/article/details/80335238
文章标签: 最大回撤
个人分类: 量化投资
想对作者说点什么? 我来说一句

maxretrace最大回撤计算

2015年10月28日 380B 下载

回撤换行

回撤换行

WOSHISUNXIANGFU WOSHISUNXIANGFU

2014-12-19 21:10:06

阅读数:799

实盘稳定盈利的股指策略源码

2018年04月04日 2KB 下载

没有更多推荐了,返回首页

不良信息举报

Python 实现最大回撤

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭