# NEOTICKER DATA BEGIN ScriptType=Indicator Description=TASC The Quest For Reliable Crossover Name=tasc_xoversignal Language=Formula Links=1 MinBars=0 TimerInterval=100 EarlyBinding=0 MetaStyle=Normal ValueRange=Same as Source Placement=New Pane Multiplot_num_plots=3 Multiplot_color_0=255 Multiplot_style_0=Line Multiplot_width_0=1 Multiplot_enabled_0=1 Multiplot_name_0=system equity Multiplot_breakstyle_0=0 Multiplot_color_1=255 Multiplot_style_1=Line Multiplot_width_1=1 Multiplot_enabled_1=1 Multiplot_name_1=ZlHa Multiplot_breakstyle_1=0 Multiplot_color_2=255 Multiplot_style_2=Line Multiplot_width_2=1 Multiplot_enabled_2=1 Multiplot_name_2=ZlCl Multiplot_breakstyle_2=0 UpdateByTick=0 FloatMarker=1 DepthData=0 TradingSystemUI=1 PrimaryLinkOnly=0 NotifyOnRemoval=0 Param_count=2 Param_name_0=Avg Period Param_inuse_0=1 Param_type_0=integer.gte.1 Param_default_0=55 Param_name_1=Disable short Param_inuse_1=1 Param_type_1=string Param_default_1=Yes|No Explanation_Lines=0 # NEOTICKER DATA END $avg := param1; 'moving average period 'optional parameter to switch short signals for this system $NoShortSide := paramis(2, "Yes"); 'Moving average generation code haOpen := ((O(1)+h(1)+l(1)+c(1))/4 + haOpen(1))/2; haC := ((o(1)+h(1)+l(1)+c(1))/4 + haOpen + maxlist(h, haOpen) + minlist(l, haOpen))/4; TMA1 := tema(haC, $avg); TMA2 := tema(TMA1, $avg); ZlHa := TMA1+(TMA1-TMA2); tyTMA1 := tema(typicalprice(data1), $avg); tyTMA2 := tema(tyTMA1, $avg); ZlCl := tyTMA1+(tyTMA1-tyTMA2); 'Corss over signals $tradesignal := xcross(ZlCl, ZlHa); 'Rest of these code are NeoTicker trading system code longatmarket ((openpositionflat > 0) and ($tradesignal > 0), DefaultOrderSize, "Entry long at long signal"); 'stop lost longexitstop (openpositionpl <= 0, '10% bar range at entry bar is used as stop openpositionentryprice - (0.1*range((barsnum(0)-openpositionentrybar), data1)), openpositionabssize, "long stop lost"); 'trial stop longexitstop (openpositionpl > 0, c-(0.1*range(data1)), openpositionabssize, "long trial stop"); 'Check to see if short side has been disable before entering a short shortatmarket ((openpositionflat > 0) and ($tradesignal < 0) and ($DisableShort = 1), DefaultOrderSize, "Entry short at short sgianl"); shortexitstop (openpositionpl <= 0, openpositionentryprice + (0.1*range((barsnum(0)-openpositionentrybar), data1)), openpositionabssize, "short stop lost"); shortexitstop (openpositionpl > 0, c+(0.1*range(data1)), openpositionabssize, "short trial stop"); plot1 := currentequity; plot2 := ZlHa; plot3 := ZlCl;