首页新闻找找看学习计划

求一个计算的思路(PHP 计算用户的累计收益)

0
悬赏园豆:20 [已解决问题] 解决于 2015-07-15 22:42

求计算思路。
需求:

有一个投资产品(投资周期1年,到期赎回),收益率是这样的:
图片描述
例如 我2015年5月10号投资10万,2016年5月9号满一年,我能够获得10万+10万*0.13 = 113000

现在有这么个需求:累计收益率。


就是比如我第一笔投资10万,收益率是13%


然后在第一笔赎回之前的时间内比如2015年8月15号,我又投资了一笔45万。如果按照原来的规定,这笔45万的投资收益率还是13%。


现在要求看这个用户的累计在投的投资,也就是在第二笔投资时,第二笔的年化收益率要按照投资金额10万+45万= 55万,也就是13.5%来算,同时第一笔投资在第二笔投资的第二天,年化收益率也要变成13.5%。


同样,在第一笔投资赎回之后(2016.5.9之后),第二笔投资的收益率要变回13%。


现在要计算用户的累计收益。

投资记录全部存储在投资记录表中(字段包括投资编号、投资金额、投资时间、结束时间、年化收益率)

我想了很久,好像很复杂(每新投资一笔都有可能影响到之前所有投资的收益率区间,同样每赎回一笔都有可能影响之后所有投资的收益率区间)。一笔投资好算,两笔投资可能要算3次,三笔投资可能要算5次。

不论用什么语言描述都可以,主要是求解决思路。

deee的主页 deee | 初学一级 | 园豆:120
提问于:2015-07-14 09:21
< >
分享
最佳答案
0

你让需求方直接给你公式就行了。

收获园豆:6
Launcher | 高人七级 |园豆:45040 | 2015-07-14 09:24
其他回答(3)
0

不是说数学不好不要学金融吗?

要不然你安装一个支付宝钱包吧,看看人家怎么做得。

收获园豆:7
爱编程的大叔 | 园豆:30271 (高人七级) | 2015-07-14 09:35
0

你要自己写算法?这种项目是客户给算法吧,  当时搞的时候,感觉很复杂的东西!

收获园豆:7
名词 | 园豆:182 (初学一级) | 2015-07-14 17:59
0

谢谢以上各位的回答。豆豆分掉,3个人分20颗豆豆,只能有一个人委屈一点少一颗啦(让排名靠后的盆友多得一颗)。

已经有了好的解决思路,感谢五颗橡树@segmentfault。

建一张表记录每笔投资在不同收益率区间的天数,字段包括投资编号,起始时间,收益率,天数,每天计算一次当天的总额,判断总额处于哪个年化率区间,就在对应的天数字段+1。这样只要在结算周期结束的时候,根据不同的年化率所处的天数进行收益计算就可以了。

deee | 园豆:120 (初学一级) | 2015-07-15 13:16
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册