我正在尝试使用下面的代码来获取一组投资组合(都包含在sheetnames中)的绩效:每个单一资产策略的绩效和总回报。为此,我尝试将每个I投资组合(数据[I])的每日权重乘以相关指数的每日资产表现——两个矩阵都是250行x 47列
我无法绕过错误“不能将序列乘以‘float’类型的非int”。我知道我正在尝试将字典乘以浮点数,但我尝试为每次迭代更改数组中的字典,但没有成功。你知道吗
Perf={}
Total_Perf={}
for i in sheetnames:
Perf[i]=Data[i]*TAA_Indices_Returns
Perf[i]=((1+Perf[i]).cumprod()-1)*100
Total_Perf[i]=DataFrame(((1+Perf[i].sum(axis=1)).cumprod()-1)*100,columns={'TAA Total Perf'})
我有大约40个不同的投资组合,我想找到一个更优雅的方式来做这件事,而不是写40行代码。你知道吗
任何形式的帮助都将不胜感激!你知道吗
非常感谢
亚瑟
目前没有回答
相关问题 更多 >
编程相关推荐