Stock Portfolio Organizer
The ultimate porfolio management solution.
WiseTrader Toolbox
#1 Selling Amibroker Plugin featuring:
Adaptive CCI Oscillator for Amibroker (AFL)
Adaptive CCI Oscillator can be used to determine the direction of the trend…And also it is of importance to find out divergences on the stocks…Good trades for all…
Screenshots
Similar Indicators / Formulas
Indicator / Formula
_SECTION_BEGIN("Dominant Period"); ///SetBarsRequired( 1000, 1000); prc = ( High + Low ) / 2; Cyclepart = 0.7 ; Smooth[0] = Detrender[0] = I1[0] = Q1[0] = jI[0] = jQ[0] = I2[0] = Q2[0] = Re[0] = Im[0] = Period[0] = SmoothPeriod[0] = 0; for ( i = 6; i < BarCount; i++ ) { Smooth[i] = ( 4 * prc[i] + 3 * prc[i-1] + 2 * prc[i-2] + prc[i-3] ) / 10; AmpCorr[i] = 0.075 * Period[i-1] + 0.54; Detrender[i] = ( 0.0962 * Smooth[i] + 0.5769 * Smooth[i-2] - 0.5769 * Smooth[i-4] - 0.0962 * Smooth[i-6] ) * AmpCorr[i]; Q1[i] = ( 0.0962 * Detrender[i] + 0.5769 * Detrender[i-2] - 0.5769 * Detrender[i-4] - 0.0962 * Detrender[i-6] ) * AmpCorr[i]; I1[i] = Detrender[i-3]; jI[i] = ( 0.0962 * I1[i] + 0.5769 * I1[i-2] - 0.5769 * I1[i-4] - 0.0962 * I1[i-6] ) * AmpCorr[i]; jQ[i] = ( 0.0962 * Q1[i] + 0.5769 * Q1[i-2] - 0.5769 * Q1[i-4] - 0.0962 * Q1[i-6] ) * AmpCorr[i]; I2[i] = I1[i] - jQ[i]; Q2[i] = Q1[i] + jI[i]; I2[i] = 0.2 * I2[i] + 0.8 * I2[i-1]; Q2[i] = 0.2 * Q2[i] + 0.8 * Q2[i-1]; Re[i] = I2[i] * I2[i-1] + Q2[i] * Q2[i-1]; Im[i] = I2[i] * Q2[i-1] - Q2[i] * I2[i-1]; Re[i] = 0.2 * Re[i] + 0.8 * Re[i-1]; Im[i] = 0.2 * Im[i] + 0.8 * Im[i-1]; if ( Im[i] != 0 AND Re[i] != 0 ) Period[i] = 360 / atan( Im[i] / Re[i] ); if ( Period[i] > 1.5 * Period[i-1] ) Period[i] = 1.5 * Period[i-1]; if ( Period[i] < 0.67 * Period[i-1] ) Period[i] = 0.67 * Period[i-1]; if ( Period[i] < 6 ) Period[i] = 6; if ( Period[i] > 50 ) Period[i] = 50; Period[i] = 0.2 * Period[i] + 0.8 * Period[i-1]; SmoothPeriod[i] = 0.33 * Period[i] + 0.67 * SmoothPeriod[i-1]; } _SECTION_END(); _SECTION_BEGIN("Variable period CCI"); function MeanDev( array, mean, range ) { result = 0; for( i = LastValue( range ) ; i < BarCount; i++ ) { result[ i ] = 0; // the mean is not 'moving' over the range (outside the loop) tm = mean[ i ]; for( j = 0; j < range[ i ] AND ( i - j ) >= 0 AND ( i - j ) < BarCount; j++ ) { result[ i ] = result[ i ] + abs( array[ i - j ] - tm ); } result[ i ] = result[ i ]/range[ i ]; } return result; } function VarCCI( array, period ) { SMATP = MA(array,period );//1,2 MD = MeanDev( array, SMATP, period ); KCCI = (Avg - SMATP) / (0.015 * MD); return KCCI; } sp=int(SmoothPeriod*Cyclepart); //lcol = IIf( VarCCI(Avg, Sp) > Ref( VarCCI(Avg, Sp), -1 ), IIf( VarCCI(Avg, Sp) > 0, 27, 27 ), IIf( VarCCI(Avg, Sp) > 0, 32,32 ) );// 27 43 11 32 //mcol =IIf(VarCCI(Avg, Sp)>0,colorGreen,colorRed); ///Plot(VarCCI(Avg, Sp),"KCCI",lcol,2|styleThick); ////Plot(VarCCI(Avg, Sp),"",lcol,1|styleThick); //////////////////////////////////////////////////////////////////////////////////////////// _SECTION_BEGIN("OSCILLATOR"); SetChartBkColor(colorBlack); //AA=EMA(a,14)-EMA(a,42); ///BB=AA/EMA(a,42); ifish=WMA(VarCCI(Avg,Sp),Sp); upbar = ifish> Ref(ifish,-1); downbar = ifish < Ref(ifish,-1); barcolor2=IIf(ifish>0,IIf(ifish>Ref(ifish,-1),colorDarkGreen,colorYellow),IIf(ifish>Ref(ifish,-1),colorBlue,colorRed)); O = IIf(downbar, ifish, 0); C = IIf(downbar, 0,ifish); L=0; H = ifish; ColorHighliter = IIf(ifish>0,IIf(ifish>Ref(ifish,-1),colorDarkGreen,colorYellow),IIf(ifish>Ref(ifish,-1),colorBlue,colorRed)); SetBarFillColor( ColorHighliter ); barcolor = IIf(ifish<Ref(ifish,-1),colorRed,colorWhite); PlotOHLC( O,H,L,C, "Adaptive CCI OSCILLATOR", barcolor2, styleCandle,maskAll); _SECTION_END();
2 comments
Leave Comment
Please login here to leave a comment.
Back
Thanks; check also KCCI – Adaptive CCI v2.0 by Karthimarar, which is maybe better.
Regards,
I simply love this one man. Thanks a lot for sharing. This is better than KCCI-Adaptive CCI v2.0