这是RSI的写法:
INPUT : N1(4,1,20),X(35,0,40),Y(73,60,100);
LC := REF(CLOSE,1);
RSI1:SMA(MAX(CLOSE-LC,0),N1,1)/SMA(ABS(CLOSE-LC),N1,1)*100,COLORYELLOW;
因为close在当根k线未走完(例如15分钟k线的时候,在当前15分钟周期内都是变动的),如果我想记录RSI在当根k线里面,出现的高值与低值,应该如何编写,就是如何在上面RSI函数里面,把close置换成high或者low?
如果需要记录15分钟之内的RSI变化值,这个得要VBA了吧
INPUT : N1(4,1,20),X(35,0,40),Y(73,60,100);
LC := REF(high,1);
RSI1:SMA(MAX(high-LC,0),N1,1)/SMA(ABS(high-LC),N1,1)*100,COLORYELLOW;
如果需要记录15分钟之内的RSI变化值,这个得要VBA了吧
我就是不想用vba,能否把sma函数改变一下,例如现在是4天周期的rsi,就先引用前三天周期的rsi,然后结合当天high或者low,来算出当天rsi的高低点呢?
INPUT : N1(4,1,20),X(35,0,40),Y(73,60,100);
LC := REF(CLOSE,1);
RSI1:SMA(MAX(CLOSE-LC,0),N1,1)/SMA(ABS(CLOSE-LC),N1,1)*100,COLORYELLOW;
RSI_H_01 := ((MAX(HIGH - LC,0) + (N1 - 1) * REF(SMA(MAX(CLOSE - LC,0),N1,1),1))) / N1;
RSI_H_02 := ((ABS(HIGH - LC) + (N1 - 1) * REF(SMA(ABS(CLOSE - LC),N1,1),1))) / N1;
RSI_L_01 := ((MAX(LOW - LC,0) + (N1 - 1) * REF(SMA(MAX(CLOSE - LC,0),N1,1),1))) / N1;
RSI_L_02 := ((ABS(LOW - LC) + (N1 - 1) * REF(SMA(ABS(CLOSE - LC),N1,1),1))) / N1;
RSI_HIGH : RSI_H_01 / RSI_H_02 * 100,COLORRED;
RSI_LOW : RSI_L_01 / RSI_L_02 * 100,COLORWHITE;