# NEOTICKER DATA BEGIN ScriptType=Indicator Description=Simple Range Exhaustion System Name=SimpleRangeExhaustionSys Language=Formula Links=1 MinBars=0 TimerInterval=100 EarlyBinding=0 MetaStyle=Normal ValueRange=Same as Source Placement=Smart Multiplot_num_plots=1 Multiplot_color_0=255 Multiplot_style_0=Line Multiplot_width_0=1 Multiplot_enabled_0=1 Multiplot_breakstyle_0=0 UpdateByTick=0 TradingSystemUI=1 PrimaryLinkOnly=0 NotifyOnRemoval=0 Param_count=4 Param_name_0=Avg Range Period Param_inuse_0=1 Param_type_0=integer.gt.0 Param_default_0=20 Param_name_1=1D Range Param_inuse_1=1 Param_type_1=real Param_default_1=1 Param_name_2=2D Range Min Param_inuse_2=1 Param_type_2=real Param_default_2=2.2 Param_name_3=Range Stop Param_inuse_3=1 Param_type_3=real Param_default_3=0.35 Explanation_Lines=0 # NEOTICKER DATA END ' Simple Range Exhaustion System ' written by Lawrence Chan ' Copyright (c) 2006 TickQuest Inc. ' All Rights Reserved ' Links ' 1 - Data Series (Emini S&P) ' Original Setup ' 1. 10 minute bars ' 2. 9:30 - 16:00 EasternTime compressseries (mydaily, data1, ppDaily, 1); makeindicator (dailyRangeAvg, avgrange, mydaily, param1); $d1range := mydaily.h - mydaily.l; ' current day range $d2high := maxlist (mydaily.h, mydaily.h (1)); ' 2 day highest hi $d2low := minList (mydaily.l, mydaily.l (1)); ' 2 day lowest lo $d2range := $d2high - $d2low; ' 2 day range $prevavg := dailyRangeAvg (1); ' shorthand for the average range $longrange := $prevavg * param2; ' current day threshold $d2refrange := $prevavg * param3; ' 2 day threshold $stop := $prevavg * param4; ' stop based on average range plot1 := currentequity; $long_trigger := choose ( date <> date (1), 0, ' reset trigger on a new trading day $long_trigger <> 0, $long_trigger, ' once triggered, stay triggered $d1range <= 0 or $d2refrange <= 0, 0, ' no range information, no trade $d1range < $longrange, 0, ' current day range must exceed our spec $d2range < $d2refrange, 0, ' 2 day range must exceed our spec ' add your filters here to improve the signal ' the following line is a good example ' mydaily.o >= (mydaily.h (1) + mydaily.l (1)) / 2, 0, 1); $time_off := time >= maketime (15, 0, 0); ' no trading at the last trading hour $traded := choose ( date <> date (1), 0, openpositionflat = 0, 1, $traded); longatmarket ( $time_off = 0 and $traded = 0 and $long_trigger > 0 and $d2high - c > c - $d2low, defaultordersize); longexitstop ( openpositionlong, openpositionaverageentryprice - $stop, openpositionabssize);