今天同学聚会,轮到我做东,在学校附近找了一个馆子。哥几个好久没见了,聚餐吃牛蛙火锅,还喝了几瓶啤酒,吃完饭小编去买单一共花了386元。哎。。这个月的生活费又要省点了,有的时候我在想如果你有1000万,躺着花,该多好呀。
我上铺学金融的胖子跟我说,要不我们打个赌,你1000万躺着花,不出25年就坐吃山空啦!我一跺脚,怎么可能呢~~1000万啊,对我来说是天文数字,二十几年就光了不相信!!!怎么说菜鸟哥玩Python也很溜了,不如用Python计算一下,说干就干打开电脑撸代码。
01.问题提炼
假如你现在有1000万,每年的银行保本理财5%,每年的通货膨胀持平(都按 5% 计算,菜场的二师兄都46一斤啦,够贵的)!日常消费额按照北上广的消费水平每月 2 万元计算(结婚后一家子的吃喝,车贷,房贷等等)。以后每年保持生活质量不变,也就是保持历年购买力不变(月消费额随与通胀等比增加)。若当年收益高于消费,则余额打入本金继续理财;
若当年收益不够支付当年消费,则从本金中支付不足部分以保证消费水平不变;
由此,我们可以得到如下的计算模式图:
可以看出:
1).资产-消费=净资产
2).第二年的资产=净资产*(1+年利率)
3).第二年消费=上一年消费*(1+年通货膨胀率)
上面的三个公式便是我们程序的书写基础,而这三个公式也是很好理解的,接下来第三年的计算就是将上图中的“资产”和“消费”分别替换为“第二年资产”和“第二年消费”的数值即可。
02.把现实问题转为代码按照如此原则理财、消费,那么1000 万够支撑多少年呢?我们来看一下Python程序是如何实现的吧,其实很简单的。
上图中我们可以看到,程序首先初始化了资产和年消费,然后开始循环计算净资产,当净资产数小于0,则程序退出,我们利用年利率和年通货膨胀率来计算当年的资产和年消费,而update_principal函数用来更新我们的净资产。
03.数据可视化有了程序的模拟,我们便可以运行一下程序,来保存并查看数据,我们先模拟一下,我们有1000万,年收益率和年通货膨胀率都是5%的情形。此时我们的年消费初始化是24万。资产和年消费水平的变化结果如下图所示:
我们把数据保存为csv文件,直接从数据上看并不直观,接下来我们就利用可视化来看一下,我们的资产和年消费水平的变化情况吧。
可视化的我们这里用Pyecharts库,这个库前面有很多文章介绍过怎么使用了,这里就不赘述啦,直接列出核心的代码:
上面是从csv数据文件中读取,然后进行清洗,为下面的数据可视化做准备。
直接用Pyecharts里面的bar进行展示,比较直观好看。把上面的cur_years,cur_propertys和cur_costyearly进行填入bar的函数模版中然后加一下坐标图列即可。
看一下柱状图的效果:
可以看到,上图中年消费水平日渐上涨,而年净资产呈现出了开始增长的趋势,然而到了20年到25年之间,出现了下降的趋势;直到42年时,出现了净资产小于年消费的情况。此时,便出现了钱花光的情况。
同样,我们再来看一下,保持其他变量不变,只把年收益率改成7%的情况。
可以看到,当我们把年收益率从5%改到7%时,年收益率随着时间的增加远远的超过了年消费的增加,而且在第50年时,净资产更是超过了7000万,有种越花越多,赶超王多鱼的感觉。
通过以上的程序和可视化的分析,我们可以发现,对于资产,是一种收益率和通货膨胀率的博弈,只要我们能跑得赢通货膨胀,那我们的实际可支配的资产就是在增加的。相反,如果我们无法跑赢通货膨胀,那么我们的钱将会很快的花完,即便我们是千万富翁。当然,这只是一个简单的小例子,用Python进行快速分析展示,其实学点Python挺好的!如果你有1000万,你能花多久,欢迎留言区点评,三连!