Announcement

Collapse
No announcement yet.

yodaPivotPointAll.efs

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

  • yodaPivotPointAll.efs

    File Name: yodaPivotPointAll.efs

    Description:
    Modification to PivotPointAll.efs. Includes four midpoints between R2, R1, PP, S1 and S2.

    Formula Parameters:


    Notes:


    Download File:
    yodaPivotPointAll.efs
    yodaPivotPointAll_EFS2.efs
    Image:


    EFS2 Code:
    PHP Code:
    /***************************************
    Provided By : eSignal (c) Copyright 2005
    ***************************************/


    function preMain() {
        
    setPriceStudy(true);
        
    setStudyTitle("Yoda Pivot Points EFS2");
        
    setCursorLabelName("PP-R2"0);
        
    setCursorLabelName("PP-R1.5"1);
        
    setCursorLabelName("PP-R1"2);
        
    setCursorLabelName("PP-R0.5"3);
        
    setCursorLabelName("PP"4);
        
    setCursorLabelName("PP-S0.5"5);
        
    setCursorLabelName("PP-S1"6);
        
    setCursorLabelName("PP-S1.5"7);
        
    setCursorLabelName("PP-S2"8);
        
        
    // R2
        
    setDefaultBarStyle(PS_DASH0);
        
    setDefaultBarFgColor(Color.RGB(255,0,0), 0);
        
    setDefaultBarThickness(20);

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

        
    // R1
        
    setDefaultBarStyle(PS_DOT2);
        
    setDefaultBarFgColor(Color.RGB(0,0,255), 2);
        
    setDefaultBarThickness(22);   

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

        
    // Pivot  Point
        
    setDefaultBarStyle(PS_SOLID4);
        
    setDefaultBarFgColor(Color.RGB(0,0,0), 4);
        
    setDefaultBarThickness(24);

        
    // S0.5
        
    setDefaultBarStyle(PS_DOT5);
        
    setDefaultBarFgColor(Color.RGB(0,0,255), 5);
        
    setDefaultBarThickness(15);

        
    // S1
        
    setDefaultBarStyle(PS_DOT6);
        
    setDefaultBarFgColor(Color.RGB(0,0,255), 6);
        
    setDefaultBarThickness(26);

        
    // S1.5
        
    setDefaultBarStyle(PS_DASH7);
        
    setDefaultBarFgColor(Color.RGB(255,0,0), 7);
        
    setDefaultBarThickness(17);

        
    // S2
        
    setDefaultBarStyle(PS_DASH8);
        
    setDefaultBarFgColor(Color.RGB(255,0,0), 8);
        
    setDefaultBarThickness(28);
    }

    var 
    xPP null;
    var 
    xPPR0_5 null;
    var 
    xPPR1 null;
    var 
    xPPR1_5 null;
    var 
    xPPR2 null;
    var 
    xPPS0_5 null;
    var 
    xPPS1 null;
    var 
    xPPS1_5 null;
    var 
    xPPS2 null;

    var 
    bInit false;
    var 
    xHigh  null;
    var 
    xLow   null;
    var 
    xClose null

    function 
    main() {
        if (
    isDWM() || isRawTick()) return;
        
        if(
    bInit == false) {
            
    xHigh  high(inv("D"));
            
    xLow   low(inv("D"));
            
    xClose close(inv("D"));
            
    xPP     efsInternal("calcPP""PP",     
                        
    getSeries(xHigh), getSeries(xLow), getSeries(xClose),  null,  null,  null );
            
    xPPR1   efsInternal("calcPP""PPR1",   
                        
    getSeries(xHigh), getSeries(xLow), getSeries(xClose),   xPP,  null,  null );
            
    xPPS1   efsInternal("calcPP""PPS1",   
                        
    getSeries(xHigh), getSeries(xLow), getSeries(xClose),   xPP,  null,  null );
            
    xPPR2   efsInternal("calcPP""PPR2",   
                        
    getSeries(xHigh), getSeries(xLow), getSeries(xClose),   xPPxPPS1xPPR1 );
            
    xPPS2   efsInternal("calcPP""PPS2",   
                        
    getSeries(xHigh), getSeries(xLow), getSeries(xClose),   xPPxPPR1xPPS1 );
            
    xPPR0_5 efsInternal("calcPP""PPR0_5"
                        
    getSeries(xHigh), getSeries(xLow), getSeries(xClose),   xPPxPPR1,  null );
            
    xPPR1_5 efsInternal("calcPP""PPR1_5"
                        
    getSeries(xHigh), getSeries(xLow), getSeries(xClose), xPPR1xPPR2,  null );
            
    xPPS0_5 efsInternal("calcPP""PPS0_5"
                        
    getSeries(xHigh), getSeries(xLow), getSeries(xClose),   xPPxPPS1,  null );
            
    xPPS1_5 efsInternal("calcPP""PPS1_5"
                        
    getSeries(xHigh), getSeries(xLow), getSeries(xClose), xPPS1xPPS2,  null );
            
    bInit  true;
        }
        
        return new Array(
    getSeries(xPPR2), getSeries(xPPR1_5), getSeries(xPPR1), getSeries(xPPR0_5), getSeries(xPP), 
                         
    getSeries(xPPS0_5), getSeries(xPPS1), getSeries(xPPS1_5), getSeries(xPPS2));
    }

    function 
    calcPP(typehlcx1x2x3) {
        var 
    vH h.getValue(-1);
        var 
    vL l.getValue(-1);
        var 
    vC c.getValue(-1);

        if(
    vH != null && vL != null && vC != null) {
            switch (
    type) {
                case 
    "PP" :
                    return (
    vH vL vC) / 3;
                    break;
                case 
    "PPR1" :
                    return 
    x1.getValue(0) - vL;
                    break;
                case 
    "PPS1" :
                    return 
    x1.getValue(0) - vH;
                    break;
                case 
    "PPR2" :
                    return (
    x1.getValue(0) - x2.getValue(0)) + x3.getValue(0);
                    break;
                case 
    "PPS2" :
                    return 
    x1.getValue(0) - (x2.getValue(0) - x3.getValue(0));
                    break;
                case 
    "PPR0_5" :
                    return (
    x1.getValue(0) + x2.getValue(0))/2;
                    break;
                case 
    "PPR1_5" :
                    return (
    x1.getValue(0) + x2.getValue(0))/2;
                    break;
                case 
    "PPS0_5" :
                    return (
    x1.getValue(0) + x2.getValue(0))/2;
                    break;
                case 
    "PP1_5" :
                    return (
    x1.getValue(0) + x2.getValue(0))/2;
                    break;
                default :
                    return 
    null;
            }
        }


    EFS1 Code:
    PHP Code:
    /*********************************
    Provided By : eSignal. (c) Copyright 2003
    *********************************/

    function preMain() {
        
    setPriceStudy(true);
        
    setStudyTitle("Pivot Points");
        
    setCursorLabelName("PP-R2"0);
        
    setCursorLabelName("PP-R1.5"1);
        
    setCursorLabelName("PP-R1"2);
        
    setCursorLabelName("PP-R0.5"3);
        
    setCursorLabelName("PP"4);
        
    setCursorLabelName("PP-S0.5"5);
        
    setCursorLabelName("PP-S1"6);
        
    setCursorLabelName("PP-S1.5"7);
        
    setCursorLabelName("PP-S2"8);
        
        
    // R2
        
    setDefaultBarStyle(PS_DASH0);
        
    setDefaultBarFgColor(Color.RGB(255,0,0), 0);
        
    setDefaultBarThickness(20);

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

        
    // R1
        
    setDefaultBarStyle(PS_DOT2);
        
    setDefaultBarFgColor(Color.RGB(0,0,255), 2);
        
    setDefaultBarThickness(22);   

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

        
    // Pivot  Point
        
    setDefaultBarStyle(PS_SOLID4);
        
    setDefaultBarFgColor(Color.RGB(0,0,0), 4);
        
    setDefaultBarThickness(24);

        
    // S0.5
        
    setDefaultBarStyle(PS_DOT5);
        
    setDefaultBarFgColor(Color.RGB(0,0,255), 5);
        
    setDefaultBarThickness(15);

        
    // S1
        
    setDefaultBarStyle(PS_DOT6);
        
    setDefaultBarFgColor(Color.RGB(0,0,255), 6);
        
    setDefaultBarThickness(26);

        
    // S1.5
        
    setDefaultBarStyle(PS_DASH7);
        
    setDefaultBarFgColor(Color.RGB(255,0,0), 7);
        
    setDefaultBarThickness(17);

        
    // S2
        
    setDefaultBarStyle(PS_DASH8);
        
    setDefaultBarFgColor(Color.RGB(255,0,0), 8);
        
    setDefaultBarThickness(28);
    }

    // Start of Performance addition
    var vLastRawTime null;
    var 
    vLastPP null;
    var 
    vLastPPR0_5 null;
    var 
    vLastPPR1 null;
    var 
    vLastPPR1_5 null;
    var 
    vLastPPR2 null;
    var 
    vLastPPS0_5 null;
    var 
    vLastPPS1 null;
    var 
    vLastPPS1_5 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;
            
    vLastPPR0_5 null;
            
    vLastPPR1 null;
            
    vLastPPR1_5 null;
            
    vLastPPR2 null;
            
    vLastPPS0_5 null;
            
    vLastPPS1 null;
            
    vLastPPS1_5 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;
                    
    vLastPPR0_5 = (vLastPP vLastPPR1)/2;
                    
    vLastPPR1_5 = (vLastPPR1 vLastPPR2)/2;
                    
    vLastPPS0_5 = (vLastPP vLastPPS1)/2;
                    
    vLastPPS1_5 = (vLastPPS1 vLastPPS2)/2;
                    
    vLastArray = new Array(vLastPPR2vLastPPR1_5vLastPPR1vLastPPR0_5vLastPPvLastPPS0_5vLastPPS1vLastPPS1_5vLastPPS2);

                    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