如何使用python计算最大回撤,下面给大家举个小例子:

1. 单期简单收益率

import datetime

import pandas as pd

pd.core.common.is_list_like = pd.api.types.is_list_likeprice = pd.Series([3.42,3.51,3.68,3.43,3.56,3.67], index=[datetime.date(2015,7,x) for x in range(3,9)])

price2015-07-03 3.42

2015-07-04 3.51

2015-07-05 3.68

2015-07-06 3.43

2015-07-07 3.56

2015-07-08 3.67

dtype: float64

利用ffn库计算单期简单收益import ffnr = ffn.to_returns(price)

r2015-07-03 NaN

2015-07-04 0.026316

2015-07-05 0.048433

2015-07-06 -0.067935

2015-07-07 0.037901

2015-07-08 0.030899

dtype: float64

2. 最大回撤

最大回撤(Maximum Drawdown, MDD) 用来衡量投资(特别是基金)的表现。

2.1 回撤:某资产在时刻T的回撤是指资产在(0,T)的最高峰值与现在价值

之间的回落值,用数学公式表达为:

2.2 对应的回撤率为:

2.3 利用收益率计算最大回撤

value = (1 + r).cumprod()

value2015-07-03 NaN

2015-07-04 1.026316

2015-07-05 1.076023

2015-07-06 1.002924

2015-07-07 1.040936

2015-07-08 1.073099

dtype: float64D = value.cummax() - value

D2015-07-03 NaN

2015-07-04 0.000000

2015-07-05 0.000000

2015-07-06 0.073099

2015-07-07 0.035088

2015-07-08 0.002924

dtype: float64d = D / (D + value)

d2015-07-03 NaN

2015-07-04 0.000000

2015-07-05 0.000000

2015-07-06 0.067935

2015-07-07 0.032609

2015-07-08 0.002717

dtype: float64MDD = D.max()

MDD0.07309941520467844mdd =d.max()

mdd

# 对应的最大回撤率值为0.06793478260869572# 采用ffn库计算收益率累积最大回撤

ffn.calc_max_drawdown(value)-0.06793478260869568from empyrical import max_drawdown# 使用 empyrical 计算收益率序列最大回撤

max_drawdown(r)-0.06793478260869572

python学习网,大量的免费python视频教程,欢迎在线学习!

回撤率 python_最大回撤用python怎么计算相关推荐

  1. 回撤率 python_最大回撤和最大回撤率的区别?

    两者无本质区别,最大回撤率是一个相对的概念,在选定周期内任一历史时点往后推,产品净值走到最低点时的收益率回撤幅度的最大值. 举个例子:在基金净值2元时买入,在这一周期内,净值下跌到最低点1.6元,最大 ...

  2. 回撤率 python_求问怎么用python求夏普比率和最大回撤率呢

    作者:知乎用户 链接:https://www.zhihu.com/question/27264526/answer/147672695 来源:知乎 著作权归作者所有.商业转载请联系作者获得授权,非商业 ...

  3. 回撤率 python_回的解释|回的意思|汉典“回”字的基本解释

    详细字义 ◎ 回 迴.囬 huí 〈动〉 (1) (囘为回的古字; 廻为迴的俗字.囬.迴同回.象形.甲骨文象渊水回旋之形.本义:回旋;旋转) (2) 同本义 [whirl;circle] 回,转也.- ...

  4. 合理期货回撤率(期货回撤得分)

    期货回撤是什么意思 你好,回撤,是投资或资金交易中常见的一个名字,用来描述一段时间内账户资产减少的情况.具体来说,是在某一特定的时期内,账户净值由最高值一直向后推移,直到净值回落到最低值,这期间净值减 ...

  5. 回撤率 python_【Python量化】O(n)复杂度实现最大回撤的计算

    看到大多数计算最大回撤的代码都是 的算法复杂度,其实最大回撤的计算用 的算法复杂度就能实现,只需对 复杂度的代码稍作修改即可. 我们先来回顾下最大回撤的定义: 我们来生成一个数组,包含连续1000个时 ...

  6. 回撤率 python 平台_详解如何使用python计算一只股票的最大回撤率?

    详解如何使用python计算一只股票的最大回撤率? 一.什么是最大回撤率? 最大回撤率:在选定周期内任一历史时点往后推,产品净值走到最低点时的收益率回撤幅度的最大值.最大回撤用来描述买入产品后可能出现 ...

  7. 详解如何使用python计算一只股票的最大回撤率?

    详解如何使用python计算一只股票的最大回撤率? 一.什么是最大回撤率? 最大回撤率:在选定周期内任一历史时点往后推,产品净值走到最低点时的收益率回撤幅度的最大值.最大回撤用来描述买入产品后可能出现 ...

  8. 学习记录657@python计算股价的回撤与收盘价回撤率组合图实现

    以比亚迪为例,对其收盘价计算回撤,计算逻辑的核心是求的当前日期及其之前日期的价格的最大值,然后计算回撤率,然后就可以求最大值了. 本文不仅给出回撤的计算,还画出了价格与回撤率的组合图,便于观察. 看完 ...

  9. matlab最大回撤值,用matlab计算区间最大回撤值和最大回撤率

    用matlab 计算区间最大回撤值和最大回撤率 在股票投资的时候有一个很重要的概念-最大回撤.最大回撤被定义为: min()min(max )j i j i i j j i j d x x x x & ...

最新文章

  1. html对象属性大全
  2. 使用Java和Google GSON解析ESPN API
  3. 计算机架构专业排名,全国大学计算机专业排名(转贴)
  4. 数据源管理 | Kafka集群环境搭建,消息存储机制详解
  5. 【Kafka】KafkaConnection to 1002 was disconnected before the response was read
  6. dmol3给定关键字不在字典中_Materials Studio自学系列——软件安装常见问题及解决方法...
  7. 天龙源码框架分析_天龙源码分析 - 客户端登录流程
  8. 发现这里才是我的地方
  9. python科学计算库
  10. python划分训练集、验证集和测试集
  11. Verilog基础知识4(常用集成门电路的逻辑符号对照表)
  12. hget如何获取多个value_Redis(五):hash/hset/hget 命令源码解析
  13. 数据挖掘:数据清洗——缺失值处理
  14. linux安装英伟达显卡驱动
  15. 含泪整理最优质马壁纸素材,你想要的这里都有
  16. [Unity][NGUI]Sprite精灵的Type九宫格切割Sliced没效果
  17. python selenium 等待元素出现_Selenium(Python)等待元素出现
  18. 职场管理(3)——提取公积金需要满足哪些条件?你还不知道吧
  19. 电脑显示未连接一个服务器怎么处理,win7系统提示未能连接一个windows服务如何解决【详解】...
  20. 合肥辰工科技有限公司

热门文章

  1. java unrar 乱码_JAVA使用 java-unrar-0.3.jar 解压rar,并且解决中文乱码
  2. 轮式移动机器人轨迹跟踪的MATHLAB程序,运用运动学和动力学模型的双闭环控制
  3. k43.第十七章 K8s运维篇-DevOps 持续集成 持续部署 (三)
  4. Latex beamer 主题和颜色大全
  5. Trie树【p2264】情书
  6. Flowable 服务任务执行的三种方式
  7. 公考二十四节气考点汇总
  8. Revo Uninstaller Pro(软件卸载工具)官方中文版V4.4.2.0 | 万能卸载软件下载 | 软件卸载工具哪个好?
  9. 区块链中的“双花”问题
  10. flask导出Excel报表详解