Python 通过投资策略循环

Python 通过投资策略循环,python,python-3.x,pandas,finance,Python,Python 3.x,Pandas,Finance,我已经创建了一个投资策略,我想在数据集中的每个开始日期循环使用它。例如,如果战略于2015年12月31日启动,则第一个单元格将是未来收益,如果战略于2016年1月1日启动,则第二个单元格将是未来收益。只要我能得到一个结束值,我就不应该有问题获得%的回报率。到目前为止,我的代码还没有成功。下面是我的代码中试图实现这一点的部分。我目前得到的未来回报值不正确 value = [] for i in range(1,len(l)): df.loc[l[i], 'S&P Future Re

我已经创建了一个投资策略,我想在数据集中的每个开始日期循环使用它。例如,如果战略于2015年12月31日启动,则第一个单元格将是未来收益,如果战略于2016年1月1日启动,则第二个单元格将是未来收益。只要我能得到一个结束值,我就不应该有问题获得%的回报率。到目前为止,我的代码还没有成功。下面是我的代码中试图实现这一点的部分。我目前得到的未来回报值不正确

value = []
for i in range(1,len(l)):
    df.loc[l[i], 'S&P Future Return'] = sum(value) 
    for i in range(1,len(l)):
        value.append(df.loc[l[i], 'Returns']) 

这是在黑暗中拍摄的,因为你有一个逻辑错误,并且不完全清楚逻辑应该是什么。在Python中使用一组绝对简单的输入,我得到:

f = [0, 0, 0, 0, 0]
g = [1, 2, 1, 2, 1]

value = []
for i in range(1,len(f)):
    f[i] = sum(value) 
    for i in range(1,len(g)):
        value.append(g[i])

print(f)

通过“一次又一次地添加相同的值”,您是否在谈论每个循环的总和(值)以相同的数量增加?每次,第二个for循环都会将相同单元格的内容附加到代码中的值:[(l[1],l[2],l[3],…l[len(l)],'Returns'],或我的示例中的[2,1,2,1]


如果这是我想要的,或者我误解了你的代码,试着给我们举一些例子。不需要泄露你的投资策略(尽管一定程度的上下文总是有帮助的),将一些随机输入放入代码段,并将输出与您期望的结果一起提供给我们。

我建议您查看。从您发布的代码中,不清楚问题是什么,也不清楚您试图实现什么。您是否收到了错误或与您期望的不同的输出?我得到了错误的值。我的目标是让输出像这样。如果你在2015年12月31日投资,你的未来回报率将是XX%。但我的代码只是反复添加相同的值。@Evy555在我们帮助你之前,我们需要一个带有示例输入和预期值的MCVE。
[0, 0, 6, 12, 18]