我是如何使用python來確定理財策略的
老婆在朋友圈裡看到了一條理財廣告,一條很讓人心動的廣告,長下面這個樣子。
這是香港某保險公司的理財方案,大意是每年定投6.65萬,投資5年,總共投資33萬的樣子,那麼第10年,你將可以拿到38.6萬,第20年可以拿到78.5萬,這都不算什麼,如果你命夠硬,那麼第60年,你將拿到1110萬的巨款。第一反應是不是非常的划算?投資33萬就能拿1110萬,不僅穩健保本,而且收益喜人?
真的是這樣么?我不禁默默的打開了電腦,敲了幾行python代碼,用來計算如果不投該理財方案,只是通過普通渠道穩健理財,那麼我的收益是多少?
打開微信的理財通,現在活期理財產品的年化收益大概在4.5%左右,那麼我一次性投資332500元,按照複利(每年的收益也拿到投資,加入來年的本金里)計算,5年後能拿多少錢呢?
結果是414355元,也就是說,一次性投33萬,年利率4.5%,5年以後能增值到41萬。
那麼一次性投33萬,10年以後又是多少呢?改一下simple_benefit的最後一個參數,把5改成10就可以了。算一下,結果是516362元。
對比理財計劃,哪個更划算基本一目了然了。
不過新的問題來了,保險理財計劃里並不是一次性投入33萬的!其投資方式是每年定投66500,連續投資5年。我們的計算模型是有問題的,因為我在投資的第一年,我不一定有33萬,我很可能是第一年賺66500投保險,然後第二年再賺66500投資,依次類推,連續5年。那麼這種投資方式的收益怎麼計算呢?
其實可以這樣算,按年利率4.5%,第一年投資66500,那麼收益是66500 x 0.045,第二年再投66500,加上第一年的本金與收益的和,作為第二年的本金,再乘以年利率4.5%,依次類推,直到第五年。
上面的情景非常適合使用遞歸來實現,代碼大概是這個樣子
簡單來說,第一年的總資產等於定投本金與收益的和,而其後任意一年的總資產等於當年定投本金與前一年總資產的和所產生的收益。是不是覺得描述得又不精確又拗口?其實看一下year_benefit這個方法就很容易理解了。
好了,定投5年,一共投資33萬之後,第五年我的總資產是多少呢?
38萬,也就是我不用等到第10年,我在第5年就能夠拿到38萬!如果我選擇了保險理財方案,那麼我等於是把38萬白白放到保險公司5年!
細思極恐有沒有?
再稍微算一下,如果我有38萬的本金,按照年利率4.5%,那麼5年後,15年後,25年後我的總資產將會是多少?
我稍微比較了一下自行理財和保險理財的收益情況。
也就是說,前10年自行理財是最划算的,不過20年以後,自行理財的收益將少於保險理財計劃,年限越長,差距越大。
然而,該理財計劃是為0歲的小寶寶買的,一般來說,大部分人在孩子上大學,大概是不到20歲的時候就會把錢拿出來,作為大學學費基金,這樣的話自行理財和保險的收益其實差不多少。再說了,我們算的年化利率才4.5%,很多定期理財產品的收益能到6%-8%,我們按8%算一下,20年時自行理財可以拿到120萬至少,30年可以拿到260萬,遠遠高於保險收益。所以到底該怎麼選擇,大家心裡應該是有一些端倪了吧。
最後投資需謹慎,當你拿不準的時候,其實可以靜下心來,寫幾行python代碼算一下,結果其實簡單而清晰。
很多同學都經常抱怨自己想學習python,但是平時工作生活中用不到python,學了忘,忘了又學,看了上面的例子,你是不是有所觸動?生活中其實不缺乏應用python的地方,缺乏的只是你靜下心來思考到打開電腦敲出第一行代碼的時間。
import mathdef simple_benefit(total, rate, year): return total * math.pow(1 + rate, year)print(simple_benefit(332500, 0.045, 10))per_year = 66500print()def year_benefit(per_year, n, rate): if n == 1: return per_year * (1 + rate) else: return (year_benefit(per_year, n - 1, rate) + per_year) * (1 + rate)for i in range(1, 6): print(i, year_benefit(66500, i,0.045))print()print()print()for j in range(1, 26): print(j + 5, simple_benefit(380173, 0.08, j))
推薦閱讀:
※互聯網金融圈裡不讓鬚眉的巾幗
※一名27歲女生的心聲:我喜歡能夠自由地說出自己的想法。
※【金谷財行】假如你不工作了 還有源源不斷的收入嗎
※關於個人消費和理財的一點小心得
※P2P,妖艷賤貨太多,該怎麼選?