3
是否有其他人在熊猫新的rolling.std()
有问题?不赞成使用的方法是rolling_std()
。新方法运行良好,但生成一个不随时间序列滚动的常数。熊猫轧制标准差
示例代码如下。如果您交易股票,您可能会认识到布林通道波段的公式。我从rolling.std()
得到的输出一天一天地跟踪股票,显然不是滚动的。
这在熊猫0.19.1。任何帮助,将不胜感激。
import datetime
import pandas as pd
import pandas_datareader.data as web
start = datetime.datetime(2012,1,1)
end = datetime.datetime(2012,12,31)
g = web.DataReader(['AAPL'], 'yahoo', start, end)
stocks = g['Close']
stocks['Date'] = pd.to_datetime(stocks.index)
stocks['AAPL_LO'] = stocks['AAPL'] - stocks['AAPL'].rolling(20).std() * 2
stocks['AAPL_HI'] = stocks['AAPL'] + stocks['AAPL'].rolling(20).std() * 2
stocks.dropna(axis=0, how='any', inplace=True)
你可以添加你实际上是期望的输出? –
'stocks ['AAPL']。rolling(20).std()'给出与'pd.rolling_std(stocks ['AAPL'],window = 20)完全相同的输出'... –
我无法复制在这里:听起来好像你在说股票['AAPL']。rolling(20).std()'是常数,但我看到一个非常数的时变结果。例如,绘图时,2012年7月左右的标记与2012年4月左右的标记相比,我看到了更薄的乐队。 –