// Downloaded From https://www.WiseStockTrader.com _SECTION_BEGIN( "KC Bands" ); SetChartOptions( 0, chartShowArrows | chartShowDates ); ShowCandles = ParamToggle( "Show Candles", "No|Yes", 0 ); if( ShowCandles ) { Plot( C, "", ParamColor( "Color", colorDefault ), GetPriceStyle() ); } //Peaking Volumes showVC = ParamToggle( "Show Volume on Candle", "No|Yes", 0 ) ; HiVolume = IIf( V > ( 1.2 * MA( V, 10 ) ), True, False ); if( showVC ) { PlotShapes( shapeSmallCircle * HiVolume, IIf( C > O, colorBlack, colorWhite ), 0, ( O + C ) / 2, 0 ); ToolTip = "Open = " + O + "\nHigh = " + H + "\nLow = " + L + "\nClose = " + C ; } // KC Parameters ShowKC1 = ParamToggle( "Show KC1", "No|Yes", 1 ); ShowKC1Mid = ParamToggle( "Show KC1Mid", "No|Yes", 0 ); ShowKC2 = ParamToggle( "Show KC2", "No|Yes", 0 ); ShowKC2Mid = ParamToggle( "Show KC2Mid", "No|Yes", 0 ); ShowKC3 = ParamToggle( "Show KC3", "No|Yes", 1 ); ShowKC3Mid = ParamToggle( "Show KC3Mid", "No|Yes", 0 ); ShowKC4 = ParamToggle( "Show KC4", "No|Yes", 1 ); ShowKC4Mid = ParamToggle( "Show KC4Mid", "No|Yes", 0 ); ShowKCARR = ParamToggle( "Show KC ARR", "No|Yes", 0 ); ShowKC5 = ParamToggle( "Show KC5", "No|Yes", 1 ); // KC1 P = ParamField( "Price field", -1 ); Period1 = Param( "Period1", 9, 2, 200, 1 ); Width1 = Param( "Width1", 1.4, 0, 10, 0.05 ); k1Color = ParamColor( "k1Color", colorBlack ); k1Style = ParamStyle( "k1Style", styleDashed | styleNoRescale | styleNoLabel ); MAType1 = Param( "MAType1", 2, 1, 2, 1 ); if( MAType1 == 1 ) { CenterLine1 = MA( P, Period1 ); } if( MAType1 == 2 ) { CenterLine1 = EMA( P, Period1 ); } if( ShowKC1Mid ) { Plot( CenterLine1, "", ParamColor( "kc1Mid Color", colorRed ), ParamStyle( "kc1Mid Style", styleLine ) ); } KTop1 = CenterLine1 + Width1 * ATR( Period1 ); KBot1 = CenterLine1 - Width1 * ATR( Period1 ); if( ShowKC1 ) { Plot( KTop1, "", k1Color, k1Style ); Plot( KBot1, "", k1Color, k1Style ); } // KC2 Period2 = Param( "Period2", 45, 2, 300, 1 ); Width2 = Param( "Width2", 3, 0, 10, 0.05 ); k2Color = ParamColor( "k2Color", colorCustom14 ); k2Style = ParamStyle( "k2Style", styleThick | styleNoRescale ); MAType2 = Param( "MAType2", 2, 1, 2, 1 ); if( MAType2 == 1 ) { CenterLine2 = MA( P, Period2 ); } if( MAType2 == 2 ) { CenterLine2 = EMA( P, Period2 ); } if( ShowKC2Mid ) { Plot( CenterLine2, "", ParamColor( "kc2Mid Color", colorRed ), ParamStyle( "kc2Mid Style", styleLine ) ); } KTop2 = CenterLine2 + Width2 * ATR( Period2 ); KBot2 = CenterLine2 - Width2 * ATR( Period2 ); if( ShowKC2 ) { Plot( KTop2, "", k2Color, k2Style ); Plot( KBot2, "", k2Color, k2Style ); } // KC3 Period3 = Param( "Period3", 120, 2, 300, 1 ); Width3 = Param( "Width3", 7.2, 0, 10, 0.05 ); k3Color = ParamColor( "k3Color", colorCustom14 ); k3Style = ParamStyle( "k3Style", styleThick | styleNoRescale ); MAType3 = Param( "MAType3", 2, 1, 2, 1 ); if( MAType3 == 1 ) { CenterLine3 = MA( P, Period3 ); } if( MAType3 == 2 ) { CenterLine3 = EMA( P, Period3 ); } if( ShowKC3Mid ) { Plot( CenterLine3, "", ParamColor( "kc3Mid Color", colorRed ), ParamStyle( "kc3Mid Style", styleLine ) ); } KTop3 = CenterLine3 + Width3 * ATR( Period3 ); KBot3 = CenterLine3 - Width3 * ATR( Period3 ); if( ShowKC3 ) { Plot( KTop3, "", k3Color, k3Style ); Plot( KBot3, "", k3Color, k3Style ); } // KC4 Period4 = Param( "Period4", 20, 2, 300, 1 ); Width4 = Param( "Width4", 2.5, 0, 10, 0.05 ); k4Color = ParamColor( "k4Color", colorDarkTeal ); k4Style = ParamStyle( "k4Style", styleLine | styleNoRescale | styleNoLabel ); MAType4 = Param( "MAType4", 2, 1, 2, 1 ); if( MAType4 == 1 ) { CenterLine4 = MA( P, Period4 ); } if( MAType4 == 2 ) { CenterLine4 = EMA( P, Period4 ); } if( ShowKC4Mid ) { Plot( CenterLine4, "", ParamColor( "kc4Mid Color", colorRed ), ParamStyle( "kc4Mid Style", styleLine ) ); } KTop4 = CenterLine4 + Width4 * ATR( Period4 ); KBot4 = CenterLine4 - Width4 * ATR( Period4 ); if( ShowKC4 ) { Plot( KTop4, "", k4Color, k4Style ); Plot( KBot4, "", k4Color, k4Style ); } // KC5 Period5 = Param( "Period5", 45, 2, 300, 1 ); Width5 = Param( "Width5", 3, 0, 10, 0.05 ); k5Color = ParamColor( "k5Color", colorCustom10 ); k5Style = ParamStyle( "k5Style", styleThick | styleNoRescale | styleNoLabel ); MAType5 = Param( "MAType5", 2, 1, 2, 1 ); if( MAType5 == 1 ) { CenterLine5 = MA( P, Period5 ); } if( MAType5 == 2 ) { CenterLine5 = EMA( P, Period5 ); } KTop5 = CenterLine5 + Width5 * ATR( Period5 ); KBot5 = CenterLine5 - Width5 * ATR( Period5 ); if( ShowKC5 ) { Plot( KTop5, "", k5Color, k5Style ); Plot( KBot5, "", k5Color, k5Style ); } // KC Trend Bands showkcbband = ParamToggle( "Show KCB Trend Bands", "No|Yes", 0 ) ; RefKTop4 = KTop4; RefKBot4 = KBot4 ; RefKTop5 = KTop5; RefKBot5 = KBot5; kcblayer = Param( "KCB Layer", -3, -5, 5, 1 ) ; if( showkcbband ) { PlotOHLC( RefKBot5, RefKBot5, RefKBot4, RefKBot4, "", ParamColor( "Down Trend", colorRose ), styleCloud | styleNoLabel | styleNoRescale, 0, 0, 0, kcblayer ) ; PlotOHLC( RefKTop5, RefKTop5, RefKTop4, RefKTop4, "", ParamColor( "Up Trend", colorSkyblue ), styleCloud | styleNoLabel | styleNoRescale, 0, 0, 0, kcblayer ) ; } // KCB Rider ShowKbcR = ParamToggle( "Show KbcR", "No|Yes", 1 ) ; ShowKbcS = ParamToggle( "Show KbcS", "No|Yes", 1 ) ; Color1 = ParamColor( "Color1", colorSkyBlue ); Color2 = ParamColor( "Color2", colorRose ); ColR = IIf( RefKTop4 > RefKTop5, color1, color2 ); ColS = IIf( RefKBot4 > RefKBot5, color1, color2 ); if( ShowKbcR ) { PlotOHLC( RefKTop4, RefKTop4, RefKTop5, RefKTop5, "", ColR, styleCloud | styleNoLabel | styleNoRescale, 0, 0, 0, kcblayer ); } if( ShowKbcS ) { PlotOHLC( RefKBot4, RefKBot4, RefKBot5, RefKBot5, "", ColS, styleCloud | styleNoLabel | styleNoRescale, 0, 0, 0, kcblayer ); } // KCARR x1 = x2 = y1 = y2 = 0 ; // Buycol = ParamColor("BuyColor", colorBlue); // Sellcol = ParamColor("SellColor", colorRed); x1 = KTop1 ; x2 = KTop4 ; y1 = KBot1 ; y2 = KBot4 ; a = Cross( y2, y1 ); b = Cross( x1, x2 ); Buy = a; Sell = b; if( ShowKCARR ) { // PlotShapes( shape, IIf( Buy, Buycol, Sellcol ), 0, IIf( Buy, Low, High ), -30 ); PlotShapes( IIf( Buy, shapeUpTriangle, shapeNone ), colorBlue, 0, L, Offset = -35 ); PlotShapes( IIf( Sell, shapeDownTriangle, shapeNone ), colorRed, 0, H, Offset = -35 ); } _SECTION_END();