Announcement

Collapse
No announcement yet.

Can't find error

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Can't find error

    can anybody review this script and tell me why it is not working?

    Thanks



    var grID = 0;
    var nBarCounter = 0;
    var aOpen = null;
    var aClose = null;
    var aColor = null;
    var nColor = null;
    var nColor_1 = null;
    var nPeriod = null;
    var aFPArray = new Array();
    var bInitialized = false;

    function preMain() {
    var x;

    setPriceStudy(true);
    setStudyTitle("TTM-Trend");
    setShowTitleParameters( false );
    setColorPriceBars( true );
    setDefaultPriceBarColor( Color.black );
    setShowCursorLabel(false) ;

    grID = 0;

    x=0;
    aFPArray[x] = new FunctionParameter( "fPeriod", FunctionParameter.NUMBER);
    with( aFPArray[x] ) {
    setName( "Comp Bars" );
    setLowerLimit( 1 );
    setUpperLimit( 125 );
    setDefault( 6 );
    }
    x++;
    aFPArray[x] = new FunctionParameter( "fUpColor", FunctionParameter.COLOR);
    with( aFPArray[x] ) {
    setName( "Up Color" );
    setDefault( Color.blue );
    }
    x++;
    aFPArray[x] = new FunctionParameter( "fDnColor", FunctionParameter.COLOR);
    with( aFPArray[x] ) {
    setName( "Dn Color" );
    setDefault( Color.red );
    }

    }

    function main( fPeriod, fUpColor, fDnColor ) {
    var x;
    var nOpen, nClose, nHigh, nLow;

    if ( getBarState() == BARSTATE_ALLBARS ) {
    return null;
    }

    if ( bInitialized == false ) {

    nPeriod = Math.round( fPeriod );

    aColor = new Array( nPeriod+1 );
    aClose = new Array( nPeriod+1 );
    aOpen = new Array( nPeriod+1 );
    aClose[0] = ( open(0)+high(0)+close(0)+ low(0) ) / 4;
    aOpen[0] = open(0);

    nBarCounter = 0;

    bInitialized = true;
    }

    if ( getBarState() == BARSTATE_NEWBAR ) {

    aOpen.pop();
    aOpen.unshift(0);
    aClose.pop();
    aClose.unshift(0);
    aColor.pop();
    aColor.unshift(0);

    nColor_1 = nColor;

    nBarCounter++;

    }

    nOpen = (aOpen[1]+aClose[1])/2;
    aOpen[0] = nOpen;
    nClose = ( open(0)+high(0)+low(0)+cl ose(0) ) / 4;
    aClose[0] = nClose;
    nHigh = Math.max( high(0), nOpen, nClose );
    nLow = Math.min( low(0), nOpen, nClose );

    if ( nClose > nOpen ) {
    nColor = fUpColor;
    }
    else {
    nColor = fDnColor;
    }



    if ( nBarCounter<=nPeriod+2 ) return;

    x=1;

    while ( x<=nPeriod ) {
    if ( nOpen <= Math.max( aOpen[x], aClose[x] ) && nOpen >= Math.min( aOpen[x], aClose[x] ) &&
    nClose <= Math.max( aOpen[x], aClose[x] ) && nClose >= Math.min( aOpen[x], aClose[x] ) ) {
    nColor = aColor[x];
    }
    x++;
    }

    aColor[0] = nColor;

    setPriceBarColor( nColor );

    return( null );


    }

  • #2
    Re: Can't find error

    muecke
    In the following line of code (line 87)
    nClose = ( open(0)+high(0)+low(0)+cl ose(0) ) / 4;
    close is written as cl ose
    Alex


    Originally posted by muecke
    can anybody review this script and tell me why it is not working?

    Thanks



    var grID = 0;
    var nBarCounter = 0;
    var aOpen = null;
    var aClose = null;
    var aColor = null;
    var nColor = null;
    var nColor_1 = null;
    var nPeriod = null;
    var aFPArray = new Array();
    var bInitialized = false;

    function preMain() {
    var x;

    setPriceStudy(true);
    setStudyTitle("TTM-Trend");
    setShowTitleParameters( false );
    setColorPriceBars( true );
    setDefaultPriceBarColor( Color.black );
    setShowCursorLabel(false) ;

    grID = 0;

    x=0;
    aFPArray[x] = new FunctionParameter( "fPeriod", FunctionParameter.NUMBER);
    with( aFPArray[x] ) {
    setName( "Comp Bars" );
    setLowerLimit( 1 );
    setUpperLimit( 125 );
    setDefault( 6 );
    }
    x++;
    aFPArray[x] = new FunctionParameter( "fUpColor", FunctionParameter.COLOR);
    with( aFPArray[x] ) {
    setName( "Up Color" );
    setDefault( Color.blue );
    }
    x++;
    aFPArray[x] = new FunctionParameter( "fDnColor", FunctionParameter.COLOR);
    with( aFPArray[x] ) {
    setName( "Dn Color" );
    setDefault( Color.red );
    }

    }

    function main( fPeriod, fUpColor, fDnColor ) {
    var x;
    var nOpen, nClose, nHigh, nLow;

    if ( getBarState() == BARSTATE_ALLBARS ) {
    return null;
    }

    if ( bInitialized == false ) {

    nPeriod = Math.round( fPeriod );

    aColor = new Array( nPeriod+1 );
    aClose = new Array( nPeriod+1 );
    aOpen = new Array( nPeriod+1 );
    aClose[0] = ( open(0)+high(0)+close(0)+ low(0) ) / 4;
    aOpen[0] = open(0);

    nBarCounter = 0;

    bInitialized = true;
    }

    if ( getBarState() == BARSTATE_NEWBAR ) {

    aOpen.pop();
    aOpen.unshift(0);
    aClose.pop();
    aClose.unshift(0);
    aColor.pop();
    aColor.unshift(0);

    nColor_1 = nColor;

    nBarCounter++;

    }

    nOpen = (aOpen[1]+aClose[1])/2;
    aOpen[0] = nOpen;
    nClose = ( open(0)+high(0)+low(0)+cl ose(0) ) / 4;
    aClose[0] = nClose;
    nHigh = Math.max( high(0), nOpen, nClose );
    nLow = Math.min( low(0), nOpen, nClose );

    if ( nClose > nOpen ) {
    nColor = fUpColor;
    }
    else {
    nColor = fDnColor;
    }



    if ( nBarCounter<=nPeriod+2 ) return;

    x=1;

    while ( x<=nPeriod ) {
    if ( nOpen <= Math.max( aOpen[x], aClose[x] ) && nOpen >= Math.min( aOpen[x], aClose[x] ) &&
    nClose <= Math.max( aOpen[x], aClose[x] ) && nClose >= Math.min( aOpen[x], aClose[x] ) ) {
    nColor = aColor[x];
    }
    x++;
    }

    aColor[0] = nColor;

    setPriceBarColor( nColor );

    return( null );


    }

    Comment


    • #3
      WOW!

      as always.........di grande Aiuto!!!

      thanks

      Comment


      • #4
        muecke
        Il piacere e' mio come sempre
        Alex


        Originally posted by muecke
        WOW!

        as always.........di grande Aiuto!!!

        thanks

        Comment

        Working...
        X