所以我有一个投资组合(投资组合中包括一些股票),在特定的日期我需要重新平衡-这意味着投资组合的组成发生了变化。 Dataframe包含列['Names';'Date_rebalance';'Weights']
然后我有另一个大的数据框,上面有所有可能股票的每日回报。 我需要每天提取投资组合回报。你知道吗
因此,当再平衡日期发生时,下一天的投资组合回报率是sumproduct(权重;回报率仅适用于那些公司)。计算每日收益。你知道吗
stock_return=prices.apply(lambda x: x/x.shift(1)-1)
我希望有一份每日投资组合收益表
在你的大数据框上,你需要过滤,使之与你的投资组合相匹配。所以使用.isin()
dfèu select现在是一个数据帧,只包含您的股票日值。为了获得每日收益,有一个内置函数pct_return()。(#默认为一个期间)
假设你的收盘价列叫做“收盘价”。然后根据每日回报创建一个新的列。你知道吗
这将给你的股票和百分之日回报值的数据框。你知道吗
df_unique_dates
是再平衡应该发生的日期。我已经为stock_return
中的每只股票做了回报,但在每个再平衡日,我只能选择那些出现在投资组合list_stocks
中的股票相关问题 更多 >
编程相关推荐