Announcement

Collapse
No announcement yet.

Indicator of Trend Alteration

Collapse
This topic is closed.
X
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Indicator of Trend Alteration

    File Name: TrendAlteration.efs

    Description:
    Indicator of Trend Alteration

    Formula Parameters:
    Trigger : 16

    Notes:


    Download File:
    TrendAlteration.efs



    EFS Code:
    PHP Code:
    /*********************************
    Provided By:  
        eSignal (Copyright c eSignal), a division of Interactive Data 
        Corporation. 2009. 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:        
        Indicator of Trend Alteration
        
    Version:            1.0  06/16/2009
     
    Formula Parameters:                     Default:
        Trigger                             16
        
    Notes:

    **********************************/
    var fpArray = new Array();
    var 
    bInit false;

    function 
    preMain(){
        
    setPriceStudy(false);
        
    setShowCursorLabel(true);
        
    setShowTitleParameters(false);
        
    setStudyTitle("Trend Alteration");
        
    setCursorLabelName("TAUp"0);
        
    setDefaultBarFgColor(Color.red0);
        
    setPlotType(PLOTTYPE_HISTOGRAM0);
        
    setDefaultBarThickness(20);
        
    setCursorLabelName("TADn"1);
        
    setDefaultBarFgColor(Color.blue1);
        
    setPlotType(PLOTTYPE_HISTOGRAM1);
        
    setDefaultBarThickness(21);
        var 
    0;
        
    fpArray[x] = new FunctionParameter("Trigger"FunctionParameter.NUMBER);
        
    with(fpArray[x++]) {
            
    setLowerLimit(1);
            
    setDefault(16);
        }    
    }

    var 
    xTAUp null;
    var 
    xTADn null;

    function 
    main(Trigger) {
    var 
    nBarState getBarState();
    var 
    nTAUp 0;
    var 
    nTADn 0;
        if (
    nBarState == BARSTATE_ALLBARS) {
            if(
    Trigger == nullTrigger 16;
        }
        if (
    bInit == false) {
            
    addBand(0PS_SOLID1Color.black"Zero");    
            
    xTAUp efsInternal("Calc_TrendAlteration"Trigger);
            
    xTADn getSeries(xTAUp1);
            
    bInit true;
        }
        
    nTAUp xTAUp.getValue(0);
        
    nTADn xTADn.getValue(0);    
        if (
    nTAUp == null) return;
        return new Array(
    nTAUpnTADn);
    }

    var 
    bSecondInit false;
    var 
    xHigh null;
    var 
    xLow null;

    function 
    Calc_TrendAlteration(Trigger) {
    var 
    nRes1 0;
    var 
    nRes2 0;
    var 
    nPrice 0;
        if (
    bSecondInit == false) {
            
    xHigh high();
            
    xLow low();
            
    bSecondInit true;
        }
        if (
    xHigh.getValue(-Trigger) == null) return;
        
    nPrice xHigh.getValue(0);
        if (
    nPrice xHigh.getValue(-1)) {
            
    nRes1 1;
            while (
    nPrice xHigh.getValue(-nRes1) && nRes1 Trigger) {
                
    nRes1++; 
            }
        }
        
    nPrice xLow.getValue(0);
        if (
    nPrice xLow.getValue(-1)) {
            
    nRes2 1;
            while (
    nPrice xLow.getValue(-nRes2) && nRes2 Trigger) {
                
    nRes2++; 
            }
            
    nRes2 = -nRes2;
        }
        return new Array(
    nRes1nRes2);

Working...
X