很复杂的业务逻辑

最近测试的内容,是我工作以来测试的最复杂的业务,计算了小半年了,居然还有bug。

1、净值型理财其实和基金业务差不多,以下计算忽略各种管理费、手续费、托管费等;

2、首先介绍下业务术语:买入净值、卖出净值、回归净值、净值归一(一是概数,可能1.007、也可能1.0008)、份额强减、红利再投、现金分红;

3、分红、赎回、归一、购买;

4、需要计算的数据:计算当前持有的份额、成本、当前份额对应的现金分红、浮动收益;

首先来个最简单的场景:产品1.1成立,1.2日起开放,现金分红;

1.1日买10万、募集期净值1,

1.2日买10万、回归净值1,

1.3日赎回5万,单位分红0.01元,回归净值1,

计算数据:份额:20万-5万=15万;

成本:20万-5万=15万;

当前份额对应的现金分红:20万*0.01-5万*0.01=1500;

来个最简单的场景:产品1.1成立,1.2日起开放,红利再投

1.1日买10万、募集期净值1,

1.2日买10万、回归净值1,

1.3日赎回5万,单位分红0.01元,回归净值1,

分红金额20万*0.01=2000,对应份额2000

计算数据:份额:20万-5万+2000=22000

因为有了红利再投,所以20万成本对应的份额22000,

成本:20万-20万/22000份*5万=150495;

来个最简单的场景:产品1.1成立,1.2日起开放,份额强减;

1.1日买10万、募集期净值1,

1.2日买10万、回归净值1,

1.3日赎回5万,原始净值0.9,回归净值1,

1.4日赎回5万

对应份额强减:20万-5万=15万*0.1=15000

剩余份额;15万-15000=135000-5万=85000

因为有了份额强减,所以15万成本对应的份额13500,

赎回5万,从1.1买的份额里赎回45000,,从1.2买份额赎回5000,

45000对应的成本是5万,5000对应的成本15万/135000*5000=5555.56

成本:15万-5万-5555.56=9444.44

计算有木有很崩溃,这只是单独算的,各种场景混合在一起会不会疯,还有净值1.4567这种,嗯,学到好多知识

列举个稍微复杂的;

产品1.1成立,1.2日起开放,现金分红;

1.1日买10万、募集期净值1,

1.2日买10万、赎回1万,净值1.001,

1.3日买10万、赎回1万,净值1.005,

1.4日买10万、赎回1万,单位分红0.0128,红利再投

1.5日买10万、赎回1万,单位分红0.0901,红利再投

1.6日买10万,赎回1万,单位份额强减0.0234

1.7日,现金分红,单位分红0.01,

1.8日购买10万,赎回58万,计算成本等字段;

疯了疯了,测试基金业务的朋友们是不是也是这么崩溃呢?

嗯嗯,学到好多知识


年底了开始加班啦……

推荐阅读更多精彩内容

  • 希望来生能在一个地方长大并老死,说着流利的方言,有几个青梅竹马的好友可以约出来喝酒,有从小就熟悉的店铺,年轻的时候...
    Dedivin阅读 57评论 0 0
  • 钻戒选购要点 标签(空格分隔): 日常生活 戒托 铂金:(Pt,即白金)天然纯白,坚固而又性质稳定,是婚戒材质的上...
    asce1885阅读 336评论 1 2
  • 上星期碰到一个bug,每次都直接crack到main函数里,因为代码涉及到 imageV.image = ...
    啦啦啦又重名了阅读 306评论 0 0
  • 秋风凉,雨飞扬, 萧萧红叶闭疏窗,来去意彷徨。 恋一场,梦一场, 有缘无份思断肠,爱恨两茫茫。 忆初恋,小令诉相思...
    青清风阅读 265评论 13 11