Announcement

Collapse
No announcement yet.

PivotPointAllDaily.efs

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

  • PivotPointAllDaily.efs

    File Name: PivotPointAllDaily.efs

    Description:
    Plots Daily Pivot Points and may be used with intra-day or Daily intervals.

    Formula Parameters:


    Notes:


    Download File:
    PivotPointAllDaily.efs




    EFS Code:
    PHP Code:
    /*********************************
    Provided By : eSignal. (c) Copyright 2003
    *********************************/
    function preMain() {
        
    setPriceStudy(true);
        
    setStudyTitle("Pivot Points Daily");
        
    setCursorLabelName("PP-R2"0);
        
    setCursorLabelName("PP-R1"1);
        
    setCursorLabelName("PP"2);
        
    setCursorLabelName("PP-S1"3);
        
    setCursorLabelName("PP-S2"4);

        
        
    // R2
        
    setDefaultBarStyle(PS_DASH0);
        
    setDefaultBarFgColor(Color.RGB(255,0,0), 0);
        
    setDefaultBarThickness(20);

        
    // R1
        
    setDefaultBarStyle(PS_DOT1);
        
    setDefaultBarFgColor(Color.RGB(0,0,255), 1);
        
    setDefaultBarThickness(11);   

        
    // Pivot  Point
        
    setDefaultBarStyle(PS_SOLID2);
        
    setDefaultBarFgColor(Color.RGB(0,0,0), 2);
        
    setDefaultBarThickness(12);

        
    // S1
        
    setDefaultBarStyle(PS_DOT3);
        
    setDefaultBarFgColor(Color.RGB(0,0,255), 3);
        
    setDefaultBarThickness(13);

        
    // S2
        
    setDefaultBarStyle(PS_DASH4);
        
    setDefaultBarFgColor(Color.RGB(255,0,0), 4);
        
    setDefaultBarThickness(24);
    }

    // Start of Performance addition
    var vLastRawTime null;
    var 
    vLastPP null;
    var 
    vLastPPR1 null;
    var 
    vLastPPR2 null;
    var 
    vLastPPS1 null;
    var 
    vLastPPS2 null;
    var 
    vLastArray null;
    var 
    vSymbol null;
    var 
    vInterval null;
    var 
    vReset true;


    function 
    main() {
        var 
    vH;
        var 
    vL;
        var 
    vC;
        var 
    vRawTime;
        var 
    vBarTime;
        var 
    vIndex;

        var 
    nState getBarState();
        if(
    vReset == true) {
            
    vLastRawTime null;
            
    vLastArray null;
            
    vLastPP null;
            
    vLastPPR1 null;
            
    vLastPPR2 null;
            
    vLastPPS1 null;
            
    vLastPPS2 null;
            
    vInterval getInterval();
            
    vSymbol getSymbol();
            
    vSymbol += ",D";
            
    vReset false;
        }

        
    //vRawTime = getValue("rawtime");  // does not work properly with 1 min interval
        
    vRawTime getDay();
        if(
    vRawTime == null)
            return;

        
    //vRawTime = Math.floor(vRawTime / RawTime.DAY);

        // Start of Performance addition
        
    if(vRawTime != null && vLastRawTime != null) {
            if(
    vRawTime == vLastRawTime) {
                return 
    vLastArray;
                
    // return new Array(vLastPP, vLastPPR1, vLastPPR2, vLastPPS1, vLastPPS2);
            
    }
        }
        
        if(
    vInterval == null)
            return 
    null;

        
    //if(vInterval == "D")
        //    return null;
            
        
    if(vInterval == "W")
            return 
    null;
            
        if(
    vInterval == "M")
            return 
    null;
            
        if(
    vInterval == "T")
            return 
    null;

        
    vBarTime getValue("time");
        if(
    vBarTime != null) {
            var 
    vDay vBarTime.getDay();
            if (
    vDay == 0) {
                var 
    vDate vBarTime.getDate();
                
    vDate -= 2;
                
    vBarTime.setDate(vDate);
            }
              
    vAbsTime getPreviousTradingDay(vBarTimevSymbol);
            if(
    vAbsTime == null) {
                return;
            }
            
    vIndex getFirstBarIndexOfDay(vAbsTimevSymbol);
            if(
    vIndex != null) {
                
    vH getValueAbsolute("High"vIndexvSymbol);
                
    vL getValueAbsolute("Low",  vIndexvSymbol);
                
    vC getValueAbsolute("Close"vIndexvSymbol);
                if(
    vH != null && vL != null && vC != null) {
                    
    vLastPP = (vH vL vC) / 3;
                    
    vLastPPR1 vLastPP vL;
                    
    vLastPPS1 vLastPP vH;
                    
    vLastPPR2 = (vLastPP vLastPPS1) + vLastPPR1;
                    
    vLastPPS2 vLastPP - (vLastPPR1 vLastPPS1);
                    
    vLastRawTime vRawTime;
                    
    vLastArray = new Array(vLastPPR2vLastPPR1vLastPPvLastPPS1vLastPPS2);

                    return 
    vLastArray;
                }
            } 
        }
        return 
    null;

    Jason K.
    Project Manager
    eSignal - an Interactive Data company

    EFS KnowledgeBase
    JavaScript for EFS Video Series
    EFS Beginner Tutorial Series
    EFS Glossary
    Custom EFS Development Policy

    New User Orientation
Working...
X