Announcement

Collapse
No announcement yet.

2007 July: Between Price And Volume, by Buff Dormeier

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

  • 2007 July: Between Price And Volume, by Buff Dormeier

    File Name: VPCI.efs, VPCI_Smoothed.efs, VPCI_Bollinger.efs

    Description:
    These studies are based on the July 2007 article, Between Price And Volume, by Buff Dormeier.

    Formula Parameters:
    VPCI.efs
    Long-term Period: 50
    Short-term Period: 10
    Color: blue
    Thickness: 2

    VPCI_Smoothed.efs
    Long-term Period: 50
    Short-term Period: 10
    VPCI Color: blue
    VPCI MA Color: grey
    Thickness: 2

    VPCI_Bollinger.efs
    Long-term Period: 50
    Short-term Period: 10
    Bollinger Period: 10
    Bollinger Stdev: 2
    VPCI Color: blue
    Bollinger Band Color: red
    Thickness: 2

    Notes:
    The related article is copyrighted material. If you are not a subscriber of Stocks & Commodities, please visit www.traders.com.


    Download File:
    VPCI.efs
    VPCI_Smoothed.efs
    VPCI_Bollinger.efs







    EFS Code:
    VPCI.efs
    PHP Code:
    /***************************************
    Provided By : 
        eSignal (Copyright © eSignal), a division of Interactive Data 
        Corporation. 2007. All rights reserved. This sample eSignal 
        Formula Script (EFS) is for educational purposes only and may be 
        modified and saved under a new filename.  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:  Between Price And Volume
                  by Buff Dormeier

    Version 1.0  5/08/2007

    Notes:
    * July 2007 Issue of Stocks and Commodities Magazine
    * Study requires version 8.0 or later.


    Formula Parameters:                     Default:
    Long-term Period                        50
    Short-term Period                       10
    Color                                   blue
    Thickness                               2
    ***************************************/

    function preMain() {
        
    setStudyTitle("VPCI ");
        
    setShowTitleParameters(false);
        
    setCursorLabelName("VPCI"0);
        
    addBand(0PS_SOLID2Color.grey"zero");

        var 
    fp1 = new FunctionParameter("nLongP"FunctionParameter.NUMBER);
            
    fp1.setName("Long-term Period");
            
    fp1.setLowerLimit(1);
            
    fp1.setDefault(50);
        var 
    fp2 = new FunctionParameter("nShortP"FunctionParameter.NUMBER);
            
    fp2.setName("Short-term Period");
            
    fp2.setLowerLimit(1);
            
    fp2.setDefault(10);
        var 
    fp3 = new FunctionParameter("cColor"FunctionParameter.COLOR);
            
    fp3.setName("Color");
            
    fp3.setDefault(Color.blue);
        var 
    fp4 = new FunctionParameter("nThick"FunctionParameter.NUMBER);
            
    fp4.setName("Thickness");
            
    fp4.setLowerLimit(1);
            
    fp4.setDefault(2);
    }

    // Global Variables
    var bVersion  null;    // Version flag
    var bInit     false;   // Initialization flag

    var xVPC null;
    var 
    xVPR null;
    var 
    xVM  null;
    var 
    nVPCI null;

    function 
    main(nLongPnShortPcColornThick) {
        if (
    bVersion == nullbVersion verify();
        if (
    bVersion == false) return;    

        
    //Initialization
        
    if (bInit == false) {
            
    setDefaultBarFgColor(cColor0);
            
    setDefaultBarThickness(nThick0);
            
    xVPC efsInternal("calcVPC"nLongP);
            
    xVPR efsInternal("calcVPR"nShortP);
            
    xVM  efsInternal("calcVM",  nLongPnShortP);
            
    bInit true;
        }

        var 
    nState getBarState();
        var 
    nIndex getCurrentBarIndex();
        var 
    nVPC xVPC.getValue(0);
        var 
    nVPR xVPR.getValue(0);
        var 
    nVM  xVM.getValue(0);
        if (
    nVPC == null || nVPR == null || nVM == null) return;
        
        
    nVPCI nVPC nVPR nVM;
        
        
    setBarBgColor(Color.cyan00Infinity*1);
        
        return 
    nVPCI;
    }


    function 
    calcVPC(n) {
        var 
    nVwma vwma(n0);
        var 
    nSma  sma(n0);
        if (
    nVwma == null || nSma == null) return;
        
        return (
    nVwma nSma);
    }



    function 
    calcVPR(n) {
        var 
    nVwma vwma(n0);
        var 
    nSma  sma(n0);
        if (
    nVwma == null || nSma == null) return;
        
        return (
    nVwma nSma);
    }


    function 
    calcVM(nLnS) {
        var 
    nVolSma1 sma(nLvolume(), 0);  // long term 
        
    var nVolSma2 sma(nSvolume(), 0);  // short term
        
    if (nVolSma1 == null || nVolSma2 == null) return;
        
        return (
    nVolSma2 nVolSma1);
    }


    function 
    verify() {
        var 
    false;
        if (
    getBuildNumber() < 779) {
            
    drawTextAbsolute(535"This study requires version 8.0 or later."
                
    Color.whiteColor.blueText.RELATIVETOBOTTOM|Text.RELATIVETOLEFT|Text.BOLD|Text.LEFT,
                
    null13"error");
            
    drawTextAbsolute(520"Click HERE to upgrade.@URL=http://www.esignal.com/download/default.asp"
                
    Color.whiteColor.blueText.RELATIVETOBOTTOM|Text.RELATIVETOLEFT|Text.BOLD|Text.LEFT,
                
    null13"upgrade");
            return 
    b;
        } else {
            
    true;
        }
        
        return 
    b;

    VPCI_Smoothed.efs
    PHP Code:
    /***************************************
    Provided By: 
        eSignal (Copyright © eSignal), a division of Interactive Data 
        Corporation. 2007. All rights reserved. This sample eSignal 
        Formula Script (EFS) is for educational purposes only and may be 
        modified and saved under a new filename.  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:  Between Price And Volume
                  by Buff Dormeier

    Version 1.0  5/08/2007

    Notes:
    * July 2007 Issue of Stocks and Commodities Magazine
    * Study requires version 8.0 or later.


    Formula Parameters:                     Default:
    Long-term Period                        50
    Short-term Period                       10
    VPCI Color                              blue
    VPCI MA Color                           grey
    Thickness                               2
    ***************************************/

    function preMain() {
        
    setStudyTitle("VWMA of VPCI ");
        
    setShowTitleParameters(false);
        
    setCursorLabelName("VPCI"0);
        
    setCursorLabelName("VPCI VWMA"1);

        var 
    fp1 = new FunctionParameter("nLongP"FunctionParameter.NUMBER);
            
    fp1.setName("Long-term Period");
            
    fp1.setLowerLimit(1);
            
    fp1.setDefault(50);
        var 
    fp2 = new FunctionParameter("nShortP"FunctionParameter.NUMBER);
            
    fp2.setName("Short-term Period");
            
    fp2.setLowerLimit(1);
            
    fp2.setDefault(10);
        var 
    fp3 = new FunctionParameter("cColor"FunctionParameter.COLOR);
            
    fp3.setName("VPCI Color");
            
    fp3.setDefault(Color.blue);
        var 
    fp3a = new FunctionParameter("cColor2"FunctionParameter.COLOR);
            
    fp3a.setName("VPCI MA Color");
            
    fp3a.setDefault(Color.grey);
        var 
    fp4 = new FunctionParameter("nThick"FunctionParameter.NUMBER);
            
    fp4.setName("Thickness");
            
    fp4.setLowerLimit(1);
            
    fp4.setDefault(2);
    }

    // Global Variables
    var bVersion  null;    // Version flag
    var bInit     false;   // Initialization flag

    var xVPC null;
    var 
    xVPR null;
    var 
    xVM  null;
    var 
    xVPCI null;
    var 
    xVPCI_MA null;

    function 
    main(nLongPnShortPcColorcColor2nThick) {
        if (
    bVersion == nullbVersion verify();
        if (
    bVersion == false) return;    

        
    //Initialization
        
    if (bInit == false) {
            
    setDefaultBarFgColor(cColor0);
            
    setDefaultBarThickness(nThick0);
            
    setDefaultBarFgColor(cColor21);
            
    setDefaultBarThickness(nThick1);
            
    xVPC efsInternal("calcVPC"nLongP);
            
    xVPR efsInternal("calcVPR"nShortP);
            
    xVM  efsInternal("calcVM",  nLongPnShortP);
            
    xVPCI  efsInternal("calcVPCI",  nLongPnShortPxVPCxVPRxVM);
            
    xVPCI_MA efsInternal("calcVWMA"nShortPxVPCI);
            
    bInit true;
        }

        var 
    nState getBarState();
        var 
    nVPCI xVPCI.getValue(0);
        var 
    nVPCI_MA xVPCI_MA.getValue(0);
        if (
    nVPCI == null || nVPCI_MA == null) return;
        
        
        return new Array(
    nVPCInVPCI_MA);
    }

    function 
    calcVWMA(nx) {
        var 
    nSum 0;
        var 
    nTotVol 0;
        
        if (
    x.getValue(-n) == null) return;
        
        for (var 
    0ni++) {
            
    nSum += x.getValue(-i) * volume(-i);
            
    nTotVol += volume(-i);
        }
        
        return (
    nSum nTotVol);
    }


    function 
    calcVPCI(nLnSxVPCxVPRxVM) {
        var 
    nState getBarState();
        var 
    nVPC xVPC.getValue(0);
        var 
    nVPR xVPR.getValue(0);
        var 
    nVM  xVM.getValue(0);
        if (
    nVPC == null || nVPR == null || nVM == null) return;
        
        
        return (
    nVPC nVPR nVM);
    }


    function 
    calcVPC(n) {
        var 
    nVwma vwma(n0);
        var 
    nSma  sma(n0);
        if (
    nVwma == null || nSma == null) return;
        
        return (
    nVwma nSma);
    }



    function 
    calcVPR(n) {
        var 
    nVwma vwma(n0);
        var 
    nSma  sma(n0);
        if (
    nVwma == null || nSma == null) return;
        
        return (
    nVwma nSma);
    }


    function 
    calcVM(nLnS) {
        var 
    nVolSma1 sma(nLvolume(), 0);  // long term 
        
    var nVolSma2 sma(nSvolume(), 0);  // short term
        
    if (nVolSma1 == null || nVolSma2 == null) return;
        
        return (
    nVolSma2 nVolSma1);
    }


    function 
    verify() {
        var 
    false;
        if (
    getBuildNumber() < 779) {
            
    drawTextAbsolute(535"This study requires version 8.0 or later."
                
    Color.whiteColor.blueText.RELATIVETOBOTTOM|Text.RELATIVETOLEFT|Text.BOLD|Text.LEFT,
                
    null13"error");
            
    drawTextAbsolute(520"Click HERE to upgrade.@URL=http://www.esignal.com/download/default.asp"
                
    Color.whiteColor.blueText.RELATIVETOBOTTOM|Text.RELATIVETOLEFT|Text.BOLD|Text.LEFT,
                
    null13"upgrade");
            return 
    b;
        } else {
            
    true;
        }
        
        return 
    b;


    VPCI_Bollinger.efs
    PHP Code:
    // Code not included due to posting message length limits.
    // Please open the formula from the link provided to view the code. 
    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