# NEOTICKER DATA BEGIN
ScriptType=Indicator
Description=TASC Nonlinear Ehler Filter VBScript
Name=tasc_nef_vb
Language=VBScript
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
FloatMarker=1
DepthData=0
TradingSystemUI=0
PrimaryLinkOnly=0
NotifyOnRemoval=0
Param_count=2
Param_name_0=Coef formula
Param_inuse_0=1
Param_type_0=formula
Param_default_0=absvalue(c-c(5))
Param_name_1=Coef period
Param_inuse_1=1
Param_type_1=integer.gte.0
Param_default_1=15
Explanation_Lines=0
# NEOTICKER DATA END
'NeoTicker Additional Indicator
'written by Kenneth Yuen, April 2001
'Copyright by TickQuest Inc.
'All right reserved

'Nonlinear Ehler Filter
'Stock & Commodities Magazine. April, 2001

'Modified by Kenneth Yuen, August 2008

function tasc_nef_vb()
dim Num, SumCoef

   if not data1.valid(0) then
      itself.success = false
      exit function
   end if

   Coef = itself.makeindicator ("Coef", "fml", Array("1"), _
                        Array(Params.items("Coef formula").str))

   itself.setseries "NumVal", data1.value(0)*Coef.value(0), true

   Num = itself.makeindicator ("SNum", "Summation", Array("$NumVal"), _
                        Array(Params.items("Coef period").str))
   SumCoef = itself.makeindicator ("SCoef", "Summation", Array("Coef"), _
                        Array(Params.items("Coef period").str))

   if (data1.barsnum(0) > Params.items("Coef period").int) and _
      (SumCoef.value(0) > 0)  then
      itself.plot(1) = Num.value(0)/SumCoef.value(0)
   else
      itself.success = false
   end if

end function
