Announcement

Collapse
No announcement yet.

Increasing/Decreasing Momentum

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

  • Increasing/Decreasing Momentum

    File Name: MomIncDec.efs

    Description:
    Increasing/Decreasing Momentum

    Formula Parameters:
    Source: Close
    Momentum Length: 14
    Momentum SMA Length: 14
    View: All
    Line Thickness: 2
    Increasing Color: Green
    Decreasing Color: Blue

    Notes:


    Download File:
    MomIncDec.efs



    EFS Code:
    PHP 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:        
        Increasing/Decreasing Momentum

    Version:            1.0  10/29/2008

    Formula Parameters:                     Default:
        Source                               Close
        Momentum Length                      14
        Momentum SMA Length                  14
        View                                 All
        Line Thickness                       2
        Increasing Color                     Green
        Decreasing Color                     Blue
        
    Notes:
        

    **********************************/


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

    function 
    preMain() {

        
    setPriceStudy(true);
        
    setShowCursorLabel(false);
        
    setShowTitleParametersfalse );
        
        
    setStudyTitle("Increasing/Decreasing Momentum");
        
    setColorPriceBars(true);    
       
        
    askForInput();
        var 
    x=0;
        
    fpArray[x] = new FunctionParameter("Color1"FunctionParameter.COLOR);
        
    with(fpArray[x++]){
            
    setName("Increasing Color");
            
    setDefault(Color.green);
        }    
        
    fpArray[x] = new FunctionParameter("Color2"FunctionParameter.COLOR);
        
    with(fpArray[x++]){
            
    setName("Decreasing Color");
            
    setDefault(Color.blue);
        }    
        
    fpArray[x] = new FunctionParameter("MomLength"FunctionParameter.NUMBER);
        
    with(fpArray[x++]){
            
    setName("Momentum Length");
            
    setLowerLimit(1);        
            
    setDefault(14);
        }
        
    fpArray[x] = new FunctionParameter("MomAvgLength"FunctionParameter.NUMBER);
        
    with(fpArray[x++]){
            
    setName("Momentum SMA Length");
            
    setLowerLimit(1);        
            
    setDefault(14);
        }
        
    fpArray[x] = new FunctionParameter("Thickness"FunctionParameter.NUMBER);
        
    with(fpArray[x++]){
            
    setName("Line Thickness");
            
    setLowerLimit(1);        
            
    setDefault(2);
        }
        
    fpArray[x] = new FunctionParameter("Source"FunctionParameter.STRING);
        
    with(fpArray[x++]){
            
    setName("Source");
            
    addOption("open"); 
            
    addOption("high");
            
    addOption("low");
            
    addOption("close");
            
    addOption("hl2");
            
    addOption("hlc3");
            
    addOption("ohlc4"); 
            
    setDefault("close"); 
        }
        
    fpArray[x] = new FunctionParameter("View"FunctionParameter.STRING);
        
    with(fpArray[x++]){
            
    setName("View");
            
    addOption("Increasing"); 
            
    addOption("Decreasing");
            
    addOption("All"); 
            
    setDefault("All"); 
        }    
    }

    var 
    xMomAvg null;

    function 
    main(SourceMomLengthMomAvgLengthViewThicknessColor1Color2) {
    var 
    nMomAvg 0;
    var 
    nMomAvg1 0;
        
        if ( 
    bInit == false ) { 
            
    setDefaultBarThickness(Thickness0);
            
    xMomAvg sma(MomAvgLengthmom(MomLength, eval(Source)()));
            
    bInit true
        } 

        if (
    getCurrentBarCount() < Math.max(MomLengthMomAvgLength)) return;
        
        
    nMomAvg xMomAvg.getValue(0);
        
    nMomAvg1 xMomAvg.getValue(-1);

        if (
    nMomAvg nMomAvg1 && (View == "Increasing" || View == "All")) { //inc
            
    setPriceBarColor(Color1);    
        }

        if (
    nMomAvg nMomAvg1 && (View == "Decreasing" || View == "All")) { //dec
            
    setPriceBarColor(Color2);    
        }

        return; 

Working...
X