我用金字塔PYTHON 的均线系统 取MA20 的值。 发现 MA20[-1], MA20[-2] 的值可以取到。 但MA20[-3] 以上的值没有。 5日均线没有这个问题。 请问这是何原因?
以下是金字塔自带均线系统代码。 我加了一个均线输出语句。
close = history_bars(context.s1, context.long_period+1, 'self','close',True)
if len(close) < context.long_period+1 :
return
ma5 = ta.SMA(close,context.short_period)
ma20 = ta.SMA(close,context.long_period)
logger.info('ma5均线'+str(ma5[-1])+'ma20均线'+str(ma20[-3]))
if ma5[-1]>ma20[-1] and ma5[-2]<ma20[-2]:
buy_open(context.s1, "market", volume=100)
if ma5[-1]<ma20[-1] and ma5[-2]>ma20[-2]:
portfolio = get_portfolio(context.s1,0)
sell_close(context.s1,"market", volume=portfolio.buy_quantity)
===========================================================
logger.info 就是我加的。 但输出是:
08:56:34 > ma5均线782.6ma20均线nan
08:56:34 > ma5均线783.8ma20均线nan
08:56:34 > ma5均线784.5ma20均线nan
08:56:34 > ma5均线786.4ma20均线nan
08:56:34 > ma5均线786.7ma20均线nan
08:56:34 > ma5均线786.1ma20均线nan
=======
MA20[-3】 没有值。 请看看那里有问题。
拿数据是拿了21跟,那么20跟才能计算一个均线所以只有两个均线能计算出来
1,2,3,。。。。。。。。。。。。。21
-3的位置在19,19跟k无法计算20日均线
把取过来的数据都print输出一下,你就知道为什么-3不行了
[此贴子已经被作者于2019/10/28 9:23:06编辑过]