nR=2;
Cbl[nR]=Null;
bCBL=False;
for( i=nR; i < BarCount; i++)
{
if( (High[i-2]>High[i-1]) && (High[i-1]>High[i]) )
{
Cbl[i] = High[i-1];
bCBL = True;
}
else if (bCBL)
{
if (High[i] > Cbl[i-1])
{
Cbl[i] = Cbl[i-1];
bCBL = False;
}
else
{
n = nR;
maxval[i] = High[i];
breakloop= False;
for (j = 1; NOT(breakloop) && j <= i; j++)
{
if (High[i-j] > maxval[i])
{
if (n>1)
{
maxval[i] = High[i-j];
n--;
}
else
{
Cbl[i] = High[i-j];
breakloop=True;
}
}
}
if (Cbl[i] > Cbl[i+1])
Cbl[i] = Cbl[i+1];
}
}
else
{
Cbl[i] = Cbl[i-1];
}
if (Cbl[i]==0)
Cbl[i] = Cbl[i-1];
}
Plot(Cbl,"",colorRed,1);
Plot(C,"",-1,64);
_SECTION_BEGIN("Formula 1");
nR=2;
Cbl[nR]=Null;
bCBL=False;
for( i=nR; i < BarCount; i++)
{
if( (High[i-2]>High[i-1]) && (High[i-1]>High[i]) )
{
Cbl[i] = High[i-1];
bCBL = True;
}
else if (bCBL)
{
if (High[i] > Cbl[i-1])
{
Cbl[i] = Cbl[i-1];
bCBL = False;
}
else
{
n = nR;
maxval[i] = High[i];
breakloop= False;
for (j = 1; NOT(breakloop) && j <= i; j++)
{
if (High[i-j] > maxval[i])
{
if (n>1)
{
maxval[i] = High[i-j];
n--;
}
else
{
Cbl[i] = High[i-j];
breakloop=True;
}
}
}
if (Cbl[i] > Cbl[i-1])
Cbl[i] = Cbl[i-1];
}
}
else
{
Cbl[i] = Cbl[i-1];
}
if (Cbl[i]==0)
Cbl[i] = Cbl[i-1];
}
Plot(Cbl,"",colorRed,1);
Plot(C,"",-1,64);
_SECTION_END();
HighDays := Input("Enter # days to cover last HIGH for CBL calc'n:", 3, 55, 13);
If(HIGH < HHV(HIGH, HighDays), {then ...} PREV, {previous CBLhi, else...}
If(Ref(L,-2) < Ref(L,-1) AND Ref(L,-2) < L AND Ref(L,-1) < L, {then ...} Ref(L,-2), {2nd day back low, else...}
If((Ref(L,-3)< Ref(L,-2) AND Ref(L,-3) < Ref(L,-1) AND Ref(L,-3) < L) AND (Ref(L,-2)< L OR Ref(L,-1) < L), {then ... } Ref(L,-3), {3rd day back low, else...}
If((Ref(L,-4)< Ref(L,-3) AND Ref(L,-4) < Ref(L,-2) AND Ref(L,-4) < Ref(L,-1) AND Ref(L,-4) < L) AND (Ref(L,-3)< L OR Ref(L,-2) < L OR Ref(L,-1) < L), {then... } Ref(L,-4), {4th day back low, else...}
If((Ref(L,-5)< Ref(L,-4) AND Ref(L,-5) < Ref(L,-3) AND Ref(L,-5) < Ref(L,-2) AND Ref(L,-5) < Ref(L,-1) AND Ref(L,-5) < L) AND (Ref(L,-4)< L OR Ref(L,-3) < L OR Ref(L,-2) < L OR Ref(L,-1) < L), {then ...} Ref(L,-5), {5th day back low, else...} PREV )))))