TFS: MBO

ICE Data Services -


TFS_MBO.efs  EFSLibrary - Discussion Board
  

File Name: TFS_MBO.efs


Description:
TFS: MBO indicator


Formula Parameters:
Fastavg: 25
Slowavg: 200

Notes:
MBO indicator is the third component of TFS trading system. This indicator
was developed by Bryan Strain and Mark Whitley.
The idea of MBO is similar to moving average convergence/divergence (MACD)
indicator. It is calculated by subtracting the 200-day moving average from
the 25-day moving average.

Download File:
TFS_MBO.efs




EFS Code:






/*********************************Provided By:      eSignal (Copyright c eSignal), a division of Interactive Data     Corporation. 2008. All rights reserved. This sample eSignal     Formula Script (EFS) is for educational purposes only and may be     modified and saved under a new file name.  eSignal is not responsible    for the functionality once modified.  eSignal reserves the right     to modify and overwrite this EFS file with each new release.Description:            TFS: MBO indicatorVersion:            1.0  09/26/2008Notes:    MBO indicator is the third component of TFS trading system. This indicator    was developed by Bryan Strain and Mark Whitley.    The idea of MBO is similar to moving average convergence/divergence (MACD)    indicator. It is calculated by subtracting the 200-day moving average from    the 25-day moving average.Formula Parameters:                     Default:    Fastavg                               25    Slowavg                              200 **********************************/var fpArray = new Array();var bInit = false;function preMain() {    setStudyTitle("TFS: MBO Indicator");    setCursorLabelName("MBO",0);    setPlotType(PLOTTYPE_HISTOGRAM,0);    setCursorLabelName("ZeroLine",1);    addBand(0, PS_SOLID, 1, Color.blue);    setDefaultBarFgColor(Color.red, 0);        var x=0;        fpArray[x] = new FunctionParameter("FastAvg", FunctionParameter.NUMBER);	with(fpArray[x++]){        setLowerLimit(1);		        setDefault(25);    }        fpArray[x] = new FunctionParameter("SlowAvg", FunctionParameter.NUMBER);	with(fpArray[x++]){        setLowerLimit(1);		        setDefault(200);    }  }var xFastAvg = null;var xSlowAvg = null;function main(FastAvg, SlowAvg) {var nState = getBarState();    if (nState == BARSTATE_ALLBARS) {        if (FastAvg == null) FastAvg = 25;        if (SlowAvg == null) SlowAvg = 200;    }            if ( bInit == false ) {         xFastAvg = sma(FastAvg);        xSlowAvg = sma(SlowAvg);                bInit = true;     }     if (getCurrentBarCount() <= SlowAvg) return;    var nMBO = xFastAvg.getValue(0) - xSlowAvg.getValue(0);    return nMBO;}