ref()

eSignal EFS 2

ref()

Top  Previous  Next

 

ref( barIndex )

 

The ref() function allows you to retrieve prior values for a built-in study (or studies). If multiple return values are being used then the ref() function will return its results in an array.

 

Parameters

 

barIndex

offset indicating which historical indicator data points to retrieve

 

Usage

 

var study1        = null;

var study2        = null;

var bInit                = false;

var BarCntr        = 0;

 

 

function preMain() {

       setPriceStudy(true);

}

 

 

function main() {

var nMA1;

var nMA2;

var myRef;

var myValue1, myValue2;

 

       if ( bInit==false ) {

 

               study1 = sma( 10 );

               study2 = sma( 20 );

 

               bInit=true;

       }

 

       nMA1 = study1.getValue(0);

       nMA2 = study2.getValue(0);

 

       if (getBarState() == BARSTATE_NEWBAR) {

               BarCntr += 1;

       }

 

       /*** BarCntr logic ***/

 

       // We're using 20 because our longest sma() requires a minimum of 20 bars.

       if (BarCntr > 20) {

       

               //myRef will now contain the two MA values from the prior bar.

               //they will be in an array so we need to treat them as such

               myRef = ref(-1);

               if ( myRef != null ) {

                       myValue1 = myRef[0];

                       myValue2 = myRef[1];

               }

 

       }

 

       // Open the Formula Output Window from the tools menu to view the values of myRef.

       if (BarCntr > 20) {

               debugPrintln("Bar Index: " + getCurrentBarIndex() + " myValue1= " + myValue1 + " myValue2= " + myValue2);

       }

 

       return new Array( nMA1, nMA2 );

}