2019独角兽企业重金招聘Python工程师标准>>>

赚钱是个俗气的话题,但又是人人都绕不开的事情。我今天来“科学”地触碰下这个话题。

谈赚钱,就会谈到理财、投资,谈到炒股。有这样一个笑话:

问:如何成为百万富翁?
答:带一千万进入股市。

那么你有没有炒过股?有没有亏过钱?

股市虽然是个充满造富神话的地方,但对于大部分参与者来说,风险都是极高的,所谓七亏二平一赚。而一般的银行理财、货币基金,则是相对稳定的低收益率。今天要聊的是一个介于二者之间的投资策略,既能提升你的收益率,又能维持一个相对可控的风险。(真有这种好事?)

策略很简单,一共分两步:

  1. 把你手头准备用于投资的闲钱(注意是闲钱),50%投资于股票指数基金,比如指数基金300ETF,50%投资于低风险固定收益产品,比如大家都知道的余额宝、其他货币基金、银行固定收益理财等。
  2. 每隔固定的一段时间进行一次资产再平衡(假设一年),使股票资产和固定收益资产的比例恢复到50%对50%,比如每年12月31日,如果这一年股票大涨,则需要卖出股票,买入货币基金,使调整后两中资产的市值恢复50%对50%。

然后,就没有然后了……就这么简单。

这个策略并不是我拍脑袋想出来的,它的正式名称叫做动态再平衡策略,最早由“华尔街教父”格雷厄姆提出,之后也被很多证券分析师所引用。上述是一个极简的初级版本。

关于策略的实际效果,很多人在书籍或文章中有过论述。但我想你恐怕还是对此持谨慎怀疑的态度。那么接下来,我就用代码,在历史数据上做一些模拟统计实验,看看效果究竟如何。

这里的数据来源是 tushare,一个开源财经数据接口包,我之前在文章中也有介绍过,详见:想用 Python 做数据分析?先玩玩这个再说

数据处理用到了 numpy,绘图使用了 matplotlib

详细代码获取见文末。

我们模拟场景设定为:

  1. 初始资金为 10000 元
  2. 沪深300[399300]指数作为指数基金的参考
  3. 为了简化模型,我们不考虑休息日,假设每个交易日的固定收益为万分之一(年化3%左右)。
  4. 每隔一段固定时间,就进行一次“再平衡”操作,将指数基金与固定收益的比例恢复50:50。
  5. 将结果与全部购买指数基金全部购买固定收益的效果进行对比。

根据之前的策略和设定,选取不同周期和时间段进行数次实验,结果为:

在几次实验中,再平衡策略的收益均处在另外两种策略中间:当股市好时,可以获取远超固定收益的回报;而当你的买卖点选择不好,股票赔钱的时候,也不会亏太多。尤其像最后一组,从07年3000点左右买入,经历10年2轮大牛市,股票回到原点后,再平衡策略依然有相当于固定收益的效果。

可视化展示:

蓝线为指数,红线为全指数基金策略(二者曲线一致,只是坐标轴不一样),绿色是固定收益的曲线堆叠折线图则是再平衡策略的曲线(下半部固定收益,上半部指数基金)。再平衡策略基本就是以固定收益为标准,围绕其做波动,而波动的影响就是股市的涨跌。因此既保证了收益稳定性,又增加了有超额收益的机会。

在最简版的基础上,还可以有个变化:不按固定周期再平衡,而是按比例,比如当其中一部分超过另一部20%时,则触发再平衡

放在上述实验数据中,总体来说收益率有所提升:

还可以将再平衡策略与定投策略结合起来,比如初始 10000 元,之后每个月(以30个交易日简化)投入 1000 元,按照我们第二种再平衡策略,从 07 年 5 月一直坚持到现在,结果是:

共投入成本 101000
再平衡策略最终资金 131010
对比只买固定收益是 118317
只买指数基金是 108857

当然,仅从选取这几次来下结论,依然不是很有说服力,所以我让程序随机选取开始和结束的时间点(至少1000个交易日),进行了1000次实验,最终的收益率统计如下图:

红点是再平衡策略收益率,黄点是固定收益率,绿点是指数基金收益率

我们的策略收益率大部分保持在 0~7 之间,标准差为 5.88,相对稳定。这一收益率也有赖于固定收益的基础收益率,如果固定收益能提高到 5% 以上,此策略的收益率平均将接近 10%。

而纯股票的收益率,虽然有可能达到惊人的数值(比如顶上那个点 150+%),但标准差有 14.1,也有很大的概率亏损。

因此,这个策略不太能让你暴富,但对于寻求资产稳定增值的朋友,是非常值得参考的资产配置策略。

有人嘀咕了,说的这么神,你自己买了没?

emmmm……这个,我就低调地晒个图吧:

当然,这点盈利纯属狗屎运。(35倍的收益率其实是股票转件计算收益的一个“bug”:是以剩余资金来计算百分比)

策略重要,找到一个好的入场时机更重要。不跟风,保持独立思考,正所谓“别人贪婪时我恐惧,别人恐惧时我贪婪”。现在是不是合适的入场时机,这就不是我这个代码能帮你算出来了的。

获取文中相关代码,请在公众号(Crossin的编程教室)里回复关键字 策略

════

其他文章及回答:

如何自学Python | 新手引导 | 精选Python问答 | Python单词表 | 人工智能 | 嘻哈 | 爬虫 | 我用Python | 高考 | requests | AI平台 | 计算机视觉

欢迎搜索及关注:Crossin的编程教室

转载于:https://my.oschina.net/crossin/blog/2878342

我用代码来给你们分析一个赚钱的技巧相关推荐

  1. 分析一个简单的汇编代码

    分析一个简单的汇编代码 部分常见的寄存器 寄存器 16位 32位 64位 累加寄存器 AX EAX RAX 基址寄存器 BX EBX RBX 计数寄存器 CX ECX RCX 数据寄存器 DX EDX ...

  2. 如何分析一个开源工程的代码

    开放源代码的项目,通常都是不完整的,就是说:只有源代码,没有完整的产品使用说明书,没有软件开发过程中的完整文档,源码中的注释也很少.之所以会这 样,可能是因为作者们有所保留,只开放源码,不开放关键的文 ...

  3. 硬核!Python 四种变量的代码对象和反汇编分析

    作者 | 大奎 整理 | 阳哥 来源丨Python数据之道 在Python基础的学习过程中,对变量和参数的理解有助于我们从更基础层面了解Python语言的运行.在这个过程中,还是有不少冷门和细节的地方 ...

  4. 分析一个文本(英文文章)(300k—500k)中的词出现的频率,并且把频率最高的10个词打印出来。...

    最近老师出一个题目:分析一个文本(英文文章)(300k-500k)中的词出现的频率,并且把频率最高的10个词打印出来. 要分析每个词的频率,肯定要先把每个单词读出来并存储起来,用数据库存肯定是没那个必 ...

  5. 基于Linux C的socketEthereal程序和Package分析 (一个)

     执行测试平台:CentOS 6.5发行版,内核版本号3.11 1. Linux抓包源程序 在OSI七层模型中.网卡工作在物理层和数据链路层的MAC子层. 进行网络通信时.源主机通过socket( ...

  6. 开源项目Hopsan代码梳理、流程分析

    Hosan开源项目是液压.电力等行业的仿真开源软件,由瑞典林平大学开发,可以仿真电力.液压等.更具体的了解,请参考:<Hopsan -- 液压.电力等行业的仿真开源软件>. Hosan开源 ...

  7. ThreadLocal内存溢出代码演示和原因分析!

    作者 | 王磊 来源 | Java中文社群(ID:javacn666) 转载请联系授权(微信ID:GG_Stone) 前言 ThreadLocal 翻译成中文是线程本地变量的意思,也就是说它是线程中的 ...

  8. 汇编语言:实验8分析一个奇怪的程序

    实验介绍 实验8 分析一个奇怪的程序 分析下面的程序,在运行前思考:这个程序可以正确返回吗? 运行后再思考:为什么是这种结果? 实验代码 ;实验8 分析一个奇怪的程序 ;分析下面的程序,在运行前思考: ...

  9. 结合源代码分析一个完整的中断过程【转】

    转自:http://blog.csdn.net/rosetta/article/details/49454021 转载请注明出处:http://blog.csdn.net/rosetta 结合源代码分 ...

最新文章

  1. java string 属性_String类型的属性和方法
  2. vs2013突然没有代码提示功能了。
  3. fatal error: nsync_cv.h: No such file or directory
  4. [剑指offer] 34. 第一个只出现一次的字符
  5. python中object转str_Python-TypeError:无法将“ int”对象隐式转换为str
  6. 前端学习笔记之-VUE框架学习-Vue核心
  7. 霍夫曼编码 c语言程序,哈夫曼编码编码解码C语言程序.doc
  8. 冰点还原8.53破解版
  9. 释放数字生产力 引领数字化转型新纪元——弘玑Cyclone 2022产品发布会圆满落幕
  10. 基于kettle8的web端调度监控平台
  11. python使用OpenCV批量裁剪图片
  12. 多个中通快运的物流情况是怎么批量查询并保存到电脑的
  13. Tomcat可以正常启动,却打不开webapps目录下的html文件
  14. 评论中发emoji表情 iOS
  15. c语言cast的用法,static_cast 用法
  16. Qt报错:calling ‘split‘ with incomplete return type ‘QStringList‘
  17. markdown快速插入图片技巧
  18. 嵌入式LINUX搭建arm环境,手把手教你嵌入式ARM开发环境搭建
  19. 安卓保存数据之onsaveInstanceStace(Bundle outState)的使用
  20. 优信电子所有博客汇总(导航搜索)

热门文章

  1. gettype拿不到值_王者荣耀:被低估的强势打野,就是这位拿大锤子的阿姨!
  2. Linux运行级详解
  3. 修复 XE7 , XE8 Frame 内 PopupMenu 快捷键失效问题
  4. IronPython和C#执行速度对比
  5. Brad Wilson写的 ASP.NET MVC 3 Service Location 系列文章索引
  6. 查询用户分配角色TCODE
  7. 安卓APP_ 布局(7) —— ViewPager翻页
  8. 匿名函数python_基于python内置函数与匿名函数详解
  9. Spring事务CallbackPreferringPlatformTransactionManager
  10. Spring事务管理嵌套事务详解 : 同一个类中,一个方法调用另外一个有事务的方法