Exploration plot william Alligator System
Amibroker enables traders to explore the plotting of the William Alligator System using its Data capabilities and Data Feed. By utilizing Amibroker AFL scripts, traders visualize this system composed of three moving averages, aiding in trend identification and entry/exit point determination. Reliable data from Amibroker Data and real-time updates via Data Feed ensure accurate plotting and timely adjustments to market conditions.
//* Bill William's Alligator System II Reference Website: ================== http://www.alpari-idc.com/en/market-analysis-guide/chaos-theory/alligator-and-gator.html Modified from http://www.amibroker.com/library/detail.php?id=100, by Steve Wiser - slwiserr@erols.com Modified by TohMz on June 9th, 2008 */ SetChartOptions( 0, chartShowArrows|chartShowDates ); _SECTION_BEGIN("Price Chart"); _N(Title = StrFormat("{{NAME}}- {{INTERVAL}} {{DATE}} O= %g, H= %g, L= %g, C= %g (%.1f%%) V= " +WriteVal( V, 1.0 ) +"\n{{VALUES}}", O, H, L, C, SelectedValue( ROC( C, 1 )) )); PriceStyle = GetPriceStyle(); PriceStyleOpt = ParamStyle("Price Style")|PriceStyle; if (PriceStyle==styleCandle) Plot( C, "", colorBlack, PriceStyleOpt); else Plot( C, "", IIf( Close >= Ref(C, -1), colorBlue, colorRed ), PriceStyleOpt); _SECTION_END(); _SECTION_BEGIN("BW Alligator"); /*** The trend indicators ***/ P= ParamList("Price", "Close|(H+L)/2|(H+C+L)/3",1); if (P=="Close") A = C; else if (P=="(H+C+L)/3") A = (H+C+L)/3; else A = (H+L)/2; AlligatorJaw = Ref(Wilders(A,13),-8); AlligatorTeeth = Ref(Wilders(A,8), -5); AlligatorLips = Ref(Wilders(A,5), -3); Plot(AlligatorJaw, "Jaw", ParamColor("Jaw's Color",colorBlue), ParamStyle("Jaw's Style", styleThick)); Plot(AlligatorTeeth,"Teeth", ParamColor("Teeth's Color",colorRed), ParamStyle("Teeth's Style", styleThick)); Plot(AlligatorLips, "Lips", ParamColor("Lips's Color",colorGreen), ParamStyle("Lips's Style", styleThick)); _SECTION_END(); _SECTION_BEGIN("BW Fractal"); UpFractal= ValueWhen( (Ref(H,-2) > Ref(H, -4)) AND (Ref(H,-2) > Ref(H, -3)) AND (Ref(H,-2) > Ref(H, -1)) AND (Ref(H,-2) > H), Ref(H,-2)); DownFractal= ValueWhen( (Ref(L,-2) <= Ref(L, -4)) AND (Ref(L,-2) <= Ref(L, -3)) AND (Ref(L,-2) <= Ref(L, -1)) AND (Ref(L,-2) <= L), Ref(L,-2)); //== Added Crash crashandburn59 [at] hotmail.com solution Plot(Ref(UpFractal,2), "Up Fractal", ParamColor("Up Fractal Color",colorRed), ParamStyle("Up Fractal Style", styleDashed)); Plot(Ref(DownFractal,2), "Down Fractal",ParamColor("Down Fractal Color",colorBlue), ParamStyle("Down Fractal Style", styleDashed)); //Plot(Max(HHV(H,3),Ref(UpFractal,2)), "Up Fractal", ParamColor("Up Fractal Color",colorRed), ParamStyle("Up Fractal Style", styleDashed)); //Plot(Max(HHV(H,3),Ref(UpFractal,2)), "Down Fractal",ParamColor("Down Fractal Color",colorBlue), ParamStyle("Down Fractal Style", styleDashed)); _SECTION_END(); _SECTION_BEGIN("Exploration"); /* Buy: Scan stocks only breakout..maxbreakout (1~30%, default) and Trend is bullish Sell: Scan stocks only breakout..maxbreakout (1~30%, default) and Trend is bearish */ //== Price Increment Value - depend on different country Inc = 0.1; //== Set the Price Range for stock to scan PriceFrom = Param("Price From:", 5, 0.1, 200, Inc); PriceTo = Param("Price To:", 100, 0.1, 200, Inc); MaxBreakOut = Param("Max Breakout (%)", 5, 1, 30); MaxBreakOut = MaxBreakOut/100; Buy = C>UpFractal AND C<=(1+MaxBreakOut)*UpFractal AND AlligatorTeeth>AlligatorJaw; Sell = C=(1-MaxBreakOut)*DownFractal AND AlligatorTeeth =PriceFrom AND C<=PriceTo) AND V>0; AddTextColumn(FullName(), "Security", 1.0, colorDefault, colorDefault, 200); AddTextColumn( WriteIf(Buy,"Buy", WriteIf(Sell, "Sell", "")), "Trade", 1.0); AddColumn( UpFractal, "Up Fratal"); AddColumn( DownFractal, "Down Fratal"); //AddColumn( MA(V,3)/EMA(V,17), "MAV(3/17)"); AddColumn( C, "Today's Close"); _SECTION_END();