常用量化回测数据/收益指标的一些说明
一、常用数据/收益指标
1. 无风险利率(Risk-Free Rate)
- 无风险利率表示投资者在一定时间内能够期望从无任何风险的投资中获得的利率。现实中,通常使用伦敦同业拆放利率(London Inter bank Offered Rate,LIBOR)或美国国债利率作为无风险利率。因为一般认为金融机构倒闭的机会很低,财政有问题的银行会被禁止参与同业拆放,因此LIBOR是没有风险的。政府可以发行主权货币应付到期的债务,因此国债不可能违约。不过,此说法并不适用于欧元。欧元区国家无权发行货币,因此发生了欧洲主权债务危机
2. Cumulative Return & 复合年均增长率(cagr:Compound Annual Growth Rate)
- Cumulative Return:累计收益= (Ending Value/Beginning Value)
- cagr计算方法为:总增长率百分比的n方根,n相等于有关时期内的年数。CAGR = (Ending Value/Beginning Value)^(1/# of years)-1
3. 总杠杆(gross leverage)
- 总杠杆率是敞口绝对值的总和除以净资产(Net asset value,简称NAV),不考虑多空抵消和对冲。1亿美元标普500股票的长仓和1亿美元的标普500期货空仓总杠杆率为200%。这一指标反映的是总体投资活动水平,是交易对手风险和流动性风险的关注对象之一
4. 最大回撤(Max Drawdown)
- 描述策略可能出现的最糟糕的情况,是指在某一段时期内产品净值从最高点开始回落到最低点的幅度。具体计算方法为:max(1 - 策略当日价值 / 当日之前产品最高净值)
- 举例说明:2010年7月20日初始净值1;恰逢2010年10月美国推出QE2全球股市大涨,该基金净值增长到1.8;其后国内股市剧烈震荡,截止2011年4月25,该基金净值为0.98.假设投资者在最高峰时期认购,半年后在最低潮时期赎回,亏损45.5%。这就是最大回撤率给高位追买的投资者的指示意义
5. 波动率(Volatility)
- 是金融资产价格的波动程度,是对资产收益率不确定性的衡量,用于反映金融资产的风险水平。波动率越高,金融资产价格的波动越剧烈,资产收益率的不确定性就越强;波动率越低,金融资产价格的波动越平缓,资产收益率的确定性就越强。具体计算方法为:策略每日收益的年化标准差
6. 胜率(win rate)
- 胜率的定义是赢钱次数除以总买入次数
- 举例说明:投入十次,七次盈利,三次亏损,胜率就是70%
7. 胜负比(win loss ratio)
- 胜负比也称为“成功率”。赢/亏比率是赢的交易总数与输的交易数之比。它不考虑赢或输了多少钱,只考虑输赢次数
8. 盈亏比(risk return ratio)
- 也叫赔率。指的是每次交易的盈利和亏损的比例,代表投资的风险收益比。投资系统的盈亏比=一段时间所有投资盈利单的盈利之和/相同时间段所有亏损单的亏损之和。投资的收益盈亏比是3是指平均来讲赚3块钱,要付出1块的止损。或者说冒一块钱的风险的一项投资获利了3块。长期来看,投资盈亏比,才是直接反映投资者综合水平的的一个量化指标
- 长期稳定赚大钱的成功者的系统,都是高盈亏比的系统。只有高盈亏比系统,才能成为成功者,才能算稳定盈利
- 举例说明:平均每次盈利30%,平均每次亏损10%,盈亏比就是3倍
9. 阿尔法(alpha、α值)
- 投资者获得与市场波动无关的回报,也叫超额收益。 比如投资者获得了15%的回报,其基准获得了10%的回报,那么Alpha或者价值增值的部分就是5%
10. 贝塔(beta、β值)
- 反映了策略对大盘变化的敏感性。例如一个策略的Beta为1.5,则大盘涨1%的时候,策略可能涨1.5%,反之亦然。具体计算方法为:策略每日收益与参考标准每日收益的协方差/参考标准每日收益的方差。
- Beta coefficient = Covariance(Re, Rm)/Variance(Rm)
其中:Re为单一股票的回报, Rm为整体市场的回报,Covariance为股票收益相对整体市场收益的变化情况, Variance为市场数据远离平均值的幅度
11. 夏普比率(sharpe ratio)
- 夏普比率描述了资产收益对投资者所承担风险的补偿程度。当以一个相同基准来比较两种资产之时,夏普比率较高的资产在相同风险下收益更好;或者说,如果收益相同的话,夏普比率较高的资产风险较低。但是,像其他任何数学模型一样,它依赖于数据的正确性
- sharpe ratio = (Rp - Rf)/σp
其中Rp为投资组合的收益,Rf为无风险资产的收益,σp为投资组合超额收益的标准方差
12. 信息比例(information Ratio)
- 信息比率与夏普比率相似,主要区别在于夏普比率使用无风险收益(比如美国国债)作为基准,而信息比率使用风险指数作为基准(如标准普尔500指数)
- 具体计算方法为:(策略累积收益 - 基准累积收益)/策略与基准每日收益差值的标准差。【意义】:信息比率数值越大,业绩表现越好。它以马克维茨的均异模型为基础,可以衡量基金的均异特性,表示单位主动风险所带来的超额收益
13. 索提比例(sortino ratio)
- 与夏普比率类似,所不同的是它区分了波动的好坏,因此在计算波动率时它所采用的不是标准差,而是下行标准差。这其中的隐含条件是投资组合的上涨(正回报率)符合投资人的需求,不应计入风险调整。具体计算方法为:(策略收益-无风险利率)/策略下行波动率。【适用范围】:因为索提诺比率使用的是下行偏差来考虑风险,那么所有的下行偏差局限性也会出现在索提诺比率中。也就是必须要有足够多的“不良”观测,才能计算一个有效的索提诺比率。sortino 比率数值越大,业绩表现越好。
14. 卡玛比率(calmar ratio)
- 卡玛比率=超额收益/最大回撤(风险)
- 卡玛比率和卡玛比率的唯一不同之处就是分母不同,夏普比率使用标准差作为风险,卡玛比率使用最大回撤作为风险,本质上都是衡量基金的风险-回报关系
15. Omega比率(omega ratio)
- omega比率实际上考虑了收益的整个分布信息,因此包括了所有高阶矩的信息。在临界收益率等于均值的时候,Omega比率等于1。在相同的临界收益率下,对于不同的投资选择,Omega比率越大越好。适用范围:在收益率不服从正态分布的时候,Omega是非常好的替代。【意义】:Omega比率值越高,投资绩效也就越好
16. Tail 比率(tail ratio)
- 日收益分布的95分位值/5分位值。【使用范围】:均值回归策略,这类型策略的最大风险在于左侧的尾部风险。单次的大额回撤需要很长的时间才能够恢复。因此 tail_ratio 很适合用来刻画这类策略面临的风险。【意义】:tail 比率越大越好,可以理解成衡量最好情况与最坏情况下的收益表现的指标。例如:tail_ratio = 0.25,5分位的亏损是95分位收益的四倍。 这样的策略在发生大额亏损的情况下很难在短时间内恢复
17. Common sense比率(common sense ratio)
- (日收益分布的95分位值/5分位值) *(总盈利/总亏损)。【使用范围】:均值回归策略,趋势追踪策略。【意义】:大于1时,策略盈利;小于1时,策略亏损
18. skew值(Skewness)
- 亦称歪度,在概率论和统计学中衡量实数随机变量概率分布的不对称性。偏度的值可以为正,可以为负或者甚至是无法定义。在数量上,偏度为负(负偏态;左偏)就意味着在概率密度函数左侧的尾部比右侧的长,绝大多数的值(不一定包括中位数在内)位于平均值的右侧。偏度为正(正偏态;右偏)就意味着在概率密度函数右侧的尾部比左侧的长,绝大多数的值(不一定包括中位数)位于平均值的左侧。偏度为零就表示数值相对均匀地分布在平均值的两侧,但不一定意味着其为对称分布
19. 峰度(kurtosis)
- 大于0表示收益的分布与正态分布相比较为陡峭
20. 决定系数(coefficient of determination, R2)
- 累计对数收益对时间t的回归的R^2。【意义】:R平方值是趋势线拟合程度的指标,它的数值大小可以反映趋势线的估计值与对应的实际数据之间的拟合程度,拟合程度越高,趋势线的可靠性就越高。R平方值是取值范围在0~1之间的数值,也称为决定系数,最常用于评价回归模型优劣程度的指标
二、交流
我发文章的几个地方,欢迎关注公众号,最新的文章会优先发布在微信公众号上。
- 公众号:诸葛说talk
- 量化小站: zhugetalk.cn
- csdn
三、参考
- 无风险利率: wikipedia
- cagr: https://www.investopedia.com/terms/c/cagr.asp
- 波动率: http://abcexchange.io/terms/v/volatilityquotetrading.asp
- 胜负比: https://www.investopedia.com/terms/w/win-loss-ratio.asp
- alpha: https://www.investopedia.com/terms/a/alpha.asp
- beta: https://www.investopedia.com/terms/b/beta.asp
- sharpe: https://www.investopedia.com/terms/s/sharperatio.asp
- 信息比例: https://www.investopedia.com/terms/i/informationratio.asp
- sortino: https://www.investopedia.com/terms/s/sortinoratio.asp
- calmar: https://www.investopedia.com/terms/c/calmarratio.asp
- skew: https://www.investopedia.com/terms/s/skewness.asp
常用量化回测数据/收益指标的一些说明相关推荐
- python均线斜率_一根20日均线闯天下?——量化回测“压箱底指标”
来源:雪球App,作者: 阿飞Deep,(https://xueqiu.com/7843605955/130162290) 前面回测基于券商涨停策略.为探索新策略,也为验证之前研发的指标.特开启新回测 ...
- python计算均线斜率_一根20日均线闯天下? ——量化回测“压箱底指标”
已回测基于券商涨停策略.为探索新策略,也为了验证之前研发的指标.特开始新的回测. 20日均线是常用指标.一般为突破基准,站上20日线开仓,符合逻辑.但会出现价格反复穿越均线情况,比较难处理.为了解决这 ...
- 如何将真格量化回测数据展示到客户端
简介 通过本功能,可以将量化交易系统上(用户)日志内记录的特殊信号数据展示在客户端的技术分析图表上.其实质是在客户端的指标模块上增加一个插件,提供解析特定格式的日志文件并得到序列数据的函数.用户可以在 ...
- 小散量化炒股记|说某个指标能赚钱?不盲从,先量化回测一番!
前言 相信大家都听说了量化交易这个东西了吧!量化交易是一种新兴的系统化金融投资方法. 那么,什么才是普通股民所适合的量化交易打开方式呢? 本文就用一个接地气的股票分析场景 -- 用量化回测来识别技术指 ...
- 【手把手教你】获取股票数据并进行量化回测——基于ADX和MACD趋势策略
01 引言 不少喜欢量化的读者向我反馈,虽然已经掌握了Python的编程基础,但仍不知道如何切入到股票量化分析上,一是对如何获取股票数据还不太熟悉:二是拿到股票数据后不知道怎么做量化回测.实际上公众号 ...
- 量化回测框架Backtrader【2】-数据导入(附:Tushare介绍)
目录 一,通用参数 二,通用CSV格式数据导入 三,panda数据导入 四,导入扩展数据类别 量化回测的第一步就是导入数据,Backtrader中称这个为data feeds,支持多种数据导入方式 通 ...
- 【手把手教你】趋势跟踪交易策略的量化回测
01 引言 趋势跟踪策略旨在根据市场趋势的方向来进行交易,即如果市场处于上升趋势,那么投资者应该买入,并且保持这种头寸直到趋势结束.同样地,如果市场处于下降趋势,投资者应该卖空,并且保持这种头寸直到趋 ...
- python量化策略源码_Python量化交易进阶讲堂-创建自定义量化回测框架
欢迎大家订阅<Python实战-构建基于股票的量化交易系统>小册子,小册子会陆续推出与小册内容相关的专栏文章,对涉及到的知识点进行更全面的扩展介绍,并且会有选择地收录至小册中,更便于广大读 ...
- 【python量化】国内外基于python开发的量化回测框架
文章目录 写在前面 Zipline PyAlgoTrade BackTrader Catalyst Vn.py 总结 写在前面 在进行量化策略开发时,必不可少的就是策略回测,虽然有很多量化回测平台如三 ...
- backtrader股票技术指标自定义与量化回测
01 引言 股票市场自交易以来,人们就开始孜孜不倦地探索各种各样的投资理论,其中技术分析是重要的理论之一.实际上,技术分析是100多年前创建的股票投资理论,是投资者对股票量价变化长期观察归纳总结的若干 ...
最新文章
- 三星为何要在安卓之外开发 Tizen 系统?
- 84. Largest Rectangle in Histogram
- Windows下运行jekyll,编码已不再是问题
- android学习笔记---57_采用方向传感器实现指南针,android设备传感器介绍,以及使用方法
- 能搜python题的软件_中国大学MOOC的APP用Python玩转数据期末考试搜题公众号答案...
- Maven - settings.xml里的offline节点的作用
- java之StringBuffer
- Subversion for Windows 相关工具
- 更新cuda驱动10.0==>11.2
- linux node安装菜鸟教程,Node.js 安装配置
- centos 20T硬盘(超过16T)分区和格式化
- BasicVSR++: Improving Video Super-Resolution with Enhanced Propagation and Alignment阅读笔记
- QT 任务栏图标显示问题
- 2019软件工程第三次作业
- Bug随手记----关于java.lang.IllegalStateException: The following classes could not be excluded because the
- 百度搜素推出细雨算法
- 大前端面试题总结(html+css+js)
- 笔记本计算机作文,我的笔记本电脑作文600字
- 单片机+DHT11的温湿度采集监测系统,LCD1602显示,带报警功能,C代码、原理图和Proteus仿真
- vscode插件历史版本下载教程
热门文章
- HTML-简单表单制作
- MySQL获取汉字的拼音首字母
- php 获取一年中的节假日,PHP开发节假日时间表
- 美国计算机专业研究生学制几年,美国硕士学制:美国硕士读几年毕业
- 利用python构建马科维茨_Markowitz投资组合之Python模拟
- python多条件选股_通达信几种实用的条件选股公式,一旦掌握,至少翻翻!
- 比较两个文本差异,直接显示两个文本的相同点与不同点
- badboy的脚本录制教程
- 【高颜值的盲打练习网站】彻底摆脱二指禅,刻意练习一星期后打字速度可提升20wpm!!!
- lastinsertid mysql_mysql - Go语言中文网 - Golang中文社区