First Tick in bar

Posted By: Grat

First Tick in bar - 06/17/20 04:36

Hi,

do you know how detect the incoming tick is the first tick of a new bar?

something like:

if (is(firstTickofBar))....


Thanks
Posted By: Grat

Re: First Tick in bar - 06/17/20 04:51

safe variant:
Code
bool lFirstTick=false;
int nOldBar=-1;
function tick(){
    if (lFirstTick)
        printf("\nBar %i of %i last is %i",Bar,NumBars,EndBar);
    lFirstTick=false;
}

function run()
{
    BarPeriod = 1;
    LookBack = 1;
    if (is(INITRUN))
    {
        set(TICKS);
        lFirstTick=false;
        nOldBar=Bar;
    }

    if (Bar > nOldBar){
        nOldBar=Bar;
        lFirstTick=true;
    }
}

Posted By: Grat

Re: First Tick in bar - 06/17/20 04:53

better - zorro call fce run once bar
Code

bool lFirstTick=false;
function tick(){
    if (lFirstTick)
        printf("\nBar %i of %i last is %i",Bar,NumBars,EndBar);
    lFirstTick=false;
}

function run()
{
    BarPeriod = 1;
    LookBack = 1;
    if (is(INITRUN))
    {
        set(TICKS);
        lFirstTick=false;
    }

    lFirstTick=true;
}
Posted By: Grat

Re: First Tick in bar - 06/17/20 04:57

this excecute first 3 ticks

Code
bool lFirstTick=false;
int nTry=0;
function tick(){
    if (lFirstTick && nTry > 0){
        printf("\nBar %i of %i last is %i/%i",Bar,NumBars,EndBar,nTry);
        nTry--;
    }
    if (nTry <=0)
        lFirstTick=false;
}

function run()
{
    BarPeriod = 1;
    LookBack = 1;
    if (is(INITRUN))
    {
        set(TICKS);
        lFirstTick=false;
    }

    lFirstTick=true;
    nTry=3;
}
© 2024 lite-C Forums