// test further(long) bars if all red
int greenCnt = 0;
int redCnt = 0;
int volumeCnt = 0;
int loopCnt = 0;
int j = 0; //track the next bar beyond the short term range
int k = bar - lookbackShort;
PrintDebug("loop through short range bar:" + bar + " to " + k);
for (int i = bar; i >= k; i--)
{
Console.WriteLine("loop:" + loopCnt);
loopCnt += 1;
if (greenOrRed(Bars, i))
{
greenCnt += 1;
PrintDebug(bar + ":green:" + greenCnt + " close:[" + i + "]=" + Bars.Close[i] + " loop:" + loopCnt);
}
else
{
redCnt += 1;
PrintDebug(bar + ":red:" + redCnt + " close:[" + i + "]=" + Bars.Close[i] + " loop:" + loopCnt);
}
if (Bars.Volume[i] >= Bars.Volume[i - 1])
{
volumeCnt += 1;
PrintDebug(bar + ":volcnt=" + volumeCnt + " vol:" + Bars.Volume[i] + " bar:" + (bar - 1) + " vol:" + Bars.Volume[i - 1] + " close:" + Bars.Close[i] + " loop:" + loopCnt);
}
j = i;
}
s1.greenCntShort = greenCnt;
AnnotateBar(greenCnt + " G", bar, true, Color.White, Color.Black);
s1.redCntShort = redCnt;
PrintDebug("end of loop bar:" + bar + ": total short green cnt:" + greenCnt);
PrintDebug("end of loop bar:" + bar + ": total short red cnt:" + redCnt);
PrintDebug("end of loop bar:" + bar + ": total short vol cnt:" + volumeCnt + " red cnt:" + redCnt + " loop:" + loopCnt);
j = j - 1;
int l = k - lookbackLong; // look back further
PrintDebug("loop through long range bar:" + j + " to " + l);
// looking for the futher bars than short range
redCnt = 0;
loopCnt = 0;
for (int i = j; i >= l; i--)
{
//Console.WriteLine("loop:" + loopCnt);
loopCnt += 1;
if (Bars.Close[i] < Bars.Close[i - 1])
{
redCnt += 1;
PrintDebug(bar + ":long red cnt:" + redCnt + " close:[" + i + "]=" + Bars.Close[i] + " loop:" + loopCnt);
}
if (Bars.Close[i] > Bars.Close[i - 1])
{
greenCnt += 1;
PrintDebug(bar + ":" + greenCnt + " close:[" + i + "]=" + Bars.Close[i] + " loop:" + loopCnt);
}
if (Bars.Volume[i] >= Bars.Volume[i - 1])
{
volumeCnt += 1;
PrintDebug(bar + ":vol cnt:" + volumeCnt + " close:[" + i + "]=" + Bars.Close[i] + " loop:" + loopCnt);
}
//j = i;
}
s1.greenCntLong = greenCnt + s1.greenCntShort; //total green cnt for short and long # of bars
No comments:
Post a Comment