> 백엔드 개발 > PHP 튜토리얼 > 金融 - PHP 计算用户的累计收益

金融 - PHP 计算用户的累计收益

WBOY
풀어 주다: 2016-06-06 20:31:45
원래의
1380명이 탐색했습니다.

求计算思路。
需求:

有一个投资产品(投资周期1年,到期赎回),收益率是这样的:
金融 - PHP 计算用户的累计收益
例如 我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次。

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

回复内容:

求计算思路。
需求:

有一个投资产品(投资周期1年,到期赎回),收益率是这样的:
金融 - PHP 计算用户的累计收益
例如 我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次。

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

考虑一种思路.大致的数据格式如下(不知道怎么搞表格,见谅)
金额 10W
年华率1 5day
年化率2 100day
年化率3 36day
每天计算一次,当天的总额是处于哪个年化率区间,就在对应的字段上面+1day.这样只要在结算周期结束的时候,根据不同的年化率所处的天数进行收益计算就可以了.

在客户投资、撤资之后,对数据库该客户对应的投资金额进行加减,再比对累计投资金额,调整相应收益率

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿