Announcement

Collapse
No announcement yet.

Schaff Trend

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

  • Schaff Trend

    File Name: SchaffTrend.efs

    Description:
    Schaff Trend

    Formula Parameters:
    MA Short : 23
    MA Long : 50
    Cycle : 10



    Notes:


    Download File:
    SchaffTrend.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:        
        Schaff Trend    
        
    Version:            1.0  06/22/2009
     
    Formula Parameters:                     Default:
        MA Short                            23
        MA Long                             50
        Cycle                               10
        
    Notes:
        
    **********************************/
    var fpArray = new Array();
    var 
    bInit false;

    function 
    preMain(){
        
    setPriceStudy(false);
        
    setShowCursorLabel(true);
        
    setShowTitleParameters(false);
        
    setStudyTitle("Schaff Trend");
        
    setCursorLabelName("Schaff Trend"0);
        
    setDefaultBarFgColor(Color.green0);
        
    setPlotType(PLOTTYPE_LINE0);
        
    setDefaultBarThickness(20);
        
    setStudyMax(101);
        
    setStudyMin(-1);
        var 
    0;
        
    fpArray[x] = new FunctionParameter("MA_Short"FunctionParameter.NUMBER);
        
    with(fpArray[x++]) {
            
    setLowerLimit(1);
            
    setDefault(23);
        }    
        
    fpArray[x] = new FunctionParameter("MA_Long"FunctionParameter.NUMBER);
        
    with(fpArray[x++]) {
            
    setLowerLimit(1);
            
    setDefault(50);
        }        
        
    fpArray[x] = new FunctionParameter("Cycle"FunctionParameter.NUMBER);
        
    with(fpArray[x++]) {
            
    setLowerLimit(1);
            
    setDefault(10);
        }            
    }

    var 
    xMACD null;
    var 
    xMACDLLV null;
    var 
    xMACDHHV null;

    function 
    main(MA_ShortMA_LongCycle) {
    var 
    nBarState getBarState();
    var 
    nRef ref(-1);
    var 
    nMCD 0;
    var 
    smconst 0;
    var 
    nST 0;
    var 
    nLLV 0;
    var 
    nHHV 0;
        if (
    nBarState == BARSTATE_ALLBARS) {
            if(
    MA_Short == nullMA_Short 23;
            if(
    MA_Long == nullMA_Long 50;
            if(
    Cycle == nullCycle 10;
        }
        if (
    bInit == false) {
            
    xMACD macd(MA_ShortMA_Long1hlc3());
            
    xMACDLLV lowerDonchian(CyclexMACD);
            
    xMACDHHV upperDonchian(CyclexMACD);
            
    bInit true;
        }
        
    smconst Cycle 2;
        
    smconst smconst;
        
    nMCD xMACD.getValue(0);
        
    nLLV xMACDLLV.getValue(0);
        
    nHHV xMACDHHV.getValue(0);
        if (
    nMCD == null || nLLV == null) return;
        
    nST = ((nMCD nLLV) / (nHHV nLLV)) * 100 0.01;
        
    nST smconst * (nST nRef) + nRef;
        return 
    nST;

Working...
X