nice indicator, shift is not needed, it do not repaint :
bb_high[i] = iBands(NULL,0,BBPer,BBDev,0,PRICE_HIGH,MODE_UPPER,i); ma_high_short[i] = iMA(NULL,0,4,0,MODE_LWMA,PRICE_HIGH,i); bb_low[i] = iBands(NULL,0,BBPer,BBDev,0,PRICE_LOW ,MODE_LOWER,i); ma_low_short[i] = iMA(NULL,0,4,0,MODE_LWMA,PRICE_LOW,i); double OsMA_0 = iOsMA(NULL,0,8,10,OsMA,PRICE_CLOSE,i) ; double OsMA_1 = iOsMA(NULL,0,8,10,OsMA,PRICE_CLOSE,i+1) ; if( ma_high_short[i] > bb_high[i] && OsMA_1 >0 && OsMA_0 <0 ) arrow_down[i] = High[i] + iATR(NULL,0,200,i); if( ma_low_short[i] < bb_low[i] && OsMA_1 <0 && OsMA_0 >0 ) arrow_up[i] = Low[i] - iATR(NULL,0,200,i);
MA_BBands_YXF:
The indicator is a combination of MA channels and Bollinger Bands.
Author: johnsun888