我整天坐在RSI计算器上编程,在前面的问题中,我还意识到,还有另一种更简单的方法来计算RSI。但是现在我只希望它成功,这也是一个学习过程;-) 但是现在,我必须根据数据框中的增益来计算移动平均值
def rsi_calculator(df):
last_adj_close = float(df. loc[0, 'Adj Close'])
gain = float(0)
loss = float(0)
for col, row in df.iterrows():
change = float((col, row["Adj Close"])[1])-last_adj_close
row['Change'] = change
last_adj_close = float((col, row["Adj Close"])[1])
if change > 0:
gain = abs(change)
loss = float(0)
elif change < 0:
loss = abs(change)
gain = float(0)
else:
loss = float(0)
gain = float(0)
row['Gain'] = gain
row['Loss'] = loss
avg_gain = row['Gain'].rolling(windows=14).mean
row['AVG Gain'] = avg_gain
我不断收到错误消息:
avg_gain = row['Gain'].rolling(windows=14).mean
AttributeError: 'float' object has no attribute 'rolling'
我也在这里尝试过此版本的不同版本
avg_gain = (col, row["Adj Close"])[1].rolling(window=14).mean
但是同样的错误消息,任何人都可以帮忙吗?