不同的平台,不同的交易策略,计算收益率的方法很可能不同。

方法一:简单收益率

用最终资金减去初始资金就是所获得的盈利,然后用盈利除以初始资金就是收益率。这种方式比较简单直接,非常符合个人投资者的模式,最开始用了多少资金,最后变成了多少资金,比较清晰,也比较经典。缺点在于没有考虑资金成本和时间成本。

方法二:净值收益法

在A时期用money_A获得了盈利profit_A,在B时期用money_B获得了盈利profit_B,在C时期用money_C获得了盈利profit_C,则可以计算出来在A、B、C三个时期的收益率:

rate_A=profit_A/money_A

rate_B=profit_B/money_B

rate_C=profit_A/money_C

实际的收益率并非是简单地三个收益率的平均值。

可以想象自己经营的是一个资金,最初始的净值是1,那么,最初投入money_A,获得的份额是money_A/1,在A时期结束的时候,总的资金是money_A+profit_A,总的份额是money_A,那么,基金的净值为(money_A+profit_A)/money_A;关键时刻到了,A时期结束,投资者赎回全部的资金(假设基金不会被解散),这个时候基金的净值不变,但是份额变为0;到了B时期,投资者投入money_B,那么,获得的份额为money_B/((money_A+profit_A)/money_A),资金总额变为money_B,到了B时期结束,基金份额保持不变,但是资金总额变为money_B+profit_B,基金的净值变为(money_B+profit_B)/(money_B/((money_A+profit_A)/money_A)),基金的收益率就是基金的净值减去1;那么,到了C时刻呢,同样的推理方法,得到基金的净值为:(money_A+profit_A)*(money_B+profit_B)*(money_C+profit_C)/(money_A*money_B*money_C).

更一般的推广,N个时期的基金净值,在N个时期,投入的资金分别是money_N,获得的盈利或者亏损是profit_N,每个时期结束都会把资金全部赎回来,那么,N时期结束后的基金净值是:

(money_A+profit_A)*(money_B+profit_B)*…………(money_N+pforit_N)

fund_nv=-----------------------------------------------------------------------------

money_A*money_B*…………………………money_N

把这个公式进行简化,那么,就变成这样的一个公式:

fund_nv=(1+rate_A)*(1+rate_B)*(1+rate_C)

这就是简单地复利收益率。

**********************************************************************************

在分析这个净值收益率的时候,默认每笔交易是不存在加减仓的,如果存在加减仓的情况下,这个收益率的普遍公式会变成什么样呢?

方法三:内部报酬率法

内部报酬率法根据每个交易周期的投入金额和收益状况来计算,借用上一个的三个时期,额外增加假设:

三个时期每个的长度为10,中间间隔为20,那么,就存在这样一个收益率:

0=-money_A+pnl_1/(1+r)^1+pnl_2/(1+r)^2+pnl_3/(1+r)^3+……+pnl_10/(1+r)^10+

money_A/(1+r)^11+pnl_12/(1+r)^12+…………………………+pnl_30/(1+r)^30+

-money_B/(1+r)^31+pnl_32/(1+r)^32+pnl_33/(1+r)^33+pnl_34/(1+r)^34+……+pnl_40/(1+r)^40+

money_B/(1+r)^41+pnl_42/(1+r)^42+…………………………+pnl_50/(1+r)^50+

-money_C+pnl_51/(1+r)^51+pnl_52/(1+r)^52+pnl_53/(1+r)^53+……+pnl_60/(1+r)^60+

money_A/(1+r)^61

根据这个公式计算出来的r就是内部报酬率.

这个内部报酬率的计算既考虑了时间价值,考虑了资金价值,同时也可以对比必要的收益率,是一个比较合理的指标。

但是计算会比较复杂。

纯粹个人见解,欢迎指点。

量化投资中收益率的计算方法相关推荐

  1. igraph 算网络指标_量化投资中,计算技术指标时常见的8个坑

    这是邢不行第 49 期量化小讲堂的分享 作者 | 助教-夏普.邢不行 "我自己计算的指标,跟同花顺给出的指标值差别很大,这是什么情况?" "talib计算的指标和很多主流 ...

  2. 【邢不行|量化小讲堂系列10-Python量化入门】量化投资中如何处理复权、除权问题

    引言: 邢不行的系列帖子"量化小讲堂",通过实际案例教初学者使用python进行量化投资,了解行业研究方向,希望能对大家有帮助. [历史文章汇总]请点击此处 [必读文章]EOS期现 ...

  3. 【邢不行|量化小讲堂系列49-实战篇】量化投资中,计算技术指标时常见的8个坑

    引言: 邢不行的系列帖子"量化小讲堂",通过实际案例教初学者使用python进行量化投资,了解行业研究方向,希望能对大家有帮助. [历史文章汇总]请点击此处 [必读文章]EOS期现 ...

  4. 量化投资中的因子逻辑与多因子选股的概念

    如何理解多因子选股 量化交易:多因子选股之有效因子 这篇文章对我来说,还是不够透彻.我需要理解什么是因子. 量化投资中的因子逻辑是什么?该如何实现? 这篇文章将因子分为了估值因子,成长因子,财务质量因 ...

  5. 量化投资中的特征工程

    导语:近年来,国内量化投资迎来了发展的黄金期,但涉及机器学习的量化投资还比较少.机器学习领域的大神Andrew Ng(吴恩达)老师曾经说过机器学习很大程度上就是特征工程,因此本文主要介绍下特征工程在量 ...

  6. 量化投资中常用python代码分析(一)

    pandas的IO 量化投资逃不过数据处理,数据处理逃不过数据的读取和存储.一般,最常用的交易数据存储格式是csv,但是csv有一个很大的缺点,就是无论如何,存储起来都是一个文本的格式,例如日期'20 ...

  7. 证券投资深度学习_深度学习在量化投资中的应用

    深度学习在量化投资中的应用 李文鹏 高宇菲 钱佳佳 陈 曦 [摘 要] 本文研究股票价格趋势的预测问题,并给出基于深度学习的股票价格 趋势预测方法.构建深度学习网络模型,对沪深 300 股票指数高频数 ...

  8. 【邢不行|量化小讲堂系列43-实战篇】:在量化投资中,原来K线还能这么画(附画K线代码)

    引言: 邢不行的系列帖子"量化小讲堂",通过实际案例教初学者使用python进行量化投资,了解行业研究方向,希望能对大家有帮助. [历史文章汇总]请点击此处 [必读文章]EOS期现 ...

  9. 【邢不行|量化小讲堂系列54-实战篇】量化投资中经常使用Excel,可能会被同事打

    引言: 邢不行的系列帖子"量化小讲堂",通过实际案例教初学者使用python进行量化投资,了解行业研究方向,希望能对大家有帮助. [历史文章汇总]请点击此处 [必读文章]EOS期现 ...

  10. 量化投资中的因子逻辑是什么?该如何实现?

    本文主要是参考华泰多因子系列研报,整理了十一个大类因子的因子逻辑,以及大类因子里一些小因子的描述和平台实现方法. 对于使用量化方法的朋友来说,如何选择和使用因子是十分重要的一环.而因子的种类很多,对于 ...

最新文章

  1. SAP Retail 事务代码WSOA1创建Assortment不能选Assortment Category !
  2. 网络通信模型(IO模型)
  3. ZOJ 3822 Known Notation(2014牡丹江Regional K题)
  4. [总结]vue开发常见知识点及问题资料整理(持续更新)
  5. redis缓存穿透-解决方案
  6. PIC单片机精通_ADC左对齐与右对齐的数据读取问题
  7. VTK:Medical之GenerateModelsFromLabels
  8. [Visual Studio] VS2012调试时很慢的解决方案
  9. 在下层捕获上层抛出的异常
  10. java 上传文件编码_java文件传输之文件编码和File类的使用
  11. clickhouse创建外部字典表
  12. 一级计算机考试试题评分标准,2014计算机一级上机试题(1—5套)评分标准
  13. Ant Design Of react modal框动态控制footer展示或者隐藏
  14. 使用 macOS 为安卓刷机
  15. Vue动态渲染本地图片
  16. 直接在html打开ppt,无需频繁跳转 教你在PPT内直接看网页
  17. eclipse中在包内建包
  18. java读取tiff图像的像素值
  19. “我36岁了,还得对28岁的领导赔笑脸”:中年人的职场,心酸自知
  20. matlab纵波动画

热门文章

  1. 【统计学】原假设 备择假设 对立假设 p值与检验统计量
  2. 555定时器原理及应用(报告)
  3. PHP将一个pdf 拆分按需要页码组装新的pdf
  4. EAS BOS:序时簿中获取选中行中某单元格的值方法
  5. ORA-22285: 对不存在的目录或文件进行 FILEOPEN 操作 ORA-06512: 在 SYS.DBMS_LOB, line 523 ORA-06512: 在 line 6 查看错误堆
  6. js设计模式的讲解与应用 - 【单例模式】
  7. 433MHz资讯一点通
  8. 计算机软件自启动设置,设置开机启动项,详细教您电脑如何设置开机启动项
  9. Linux发行版之CentOS,Mandriva,Redhat,Fedora,SuSE,Debian,Ubuntu比较
  10. C++:重载、重写、重定义