Commit c078f40a authored by wenwen.tang's avatar wenwen.tang 😕

配息都加回到fund_nav

parent 46088c76
......@@ -107,7 +107,6 @@ class Cleanable(ABC):
pass
# TODO: 动态更新资料,控制更新基金池
class Datum(ABC):
'''
基础资料服务,基金资料数据,各种指数,指标资料数据
......
......@@ -316,15 +316,18 @@ class InvTrustPortfoliosHolder(DividendPortfoliosHolder):
self.exec_redeem(funds, navs, need_div, share)
self.exec_redeem(funds, navs, need_div, share_nav)
port_div = last_nav['div_forecast']
fund_dividend = sum(
map(lambda k: share[k] * fund_dividend[k], filter(lambda k: k in fund_dividend, share.keys())))
dividend_acc = dividend_acc + port_div + fund_dividend
fund_av = round(sum([navs[x] * y for x, y in share.items()]), 4)
fund_nav = round(sum([navs[x] * y for x, y in share_nav.items()]), 4)
if fund_dividend > 0:
fund_nav = fund_av + dividend_acc
else:
fund_nav = round(sum([navs[x] * y for x, y in share_nav.items()]), 4)
weight = {x: round(y * navs[x] / fund_av, 2) for x, y in share.items()}
weight_nav = {x: round(y * navs[x] / fund_av, 2) for x, y in share_nav.items()}
weight = format_weight(weight)
weight_nav = format_weight(weight_nav)
fund_dividend = sum(
map(lambda k: share[k] * fund_dividend[k], filter(lambda k: k in fund_dividend, share.keys())))
dividend_acc = dividend_acc + port_div + fund_dividend
asset_nav = fund_av
div_forecast = last_nav['div_forecast']
if self.is_first_workday(day):
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment