_SECTION_BEGIN("Price");
SetChartBkColor(colorBlack);
GraphXSpace=5;
_N(Title = StrFormat("{{NAME}} {{DATE}} {{INTERVAL}}: O=%1.2f, H=%1.2f, L=%1.2f, C=%1.2f, V=%1.0f\n{{VALUES}}", O, H, L, C, V));
BaseHi[1] = H[0];
BaseLo[1] = L[0];
IamInside[1] = C[1] < BaseHi[1] AND C[1] > BaseLo[1];
for (i = 2; i < BarCount; i++)
{
if (IamInside[i-1])
{
IamInside[i] = C[i] < BaseHi[i-1] AND C[i] > BaseLo[i-1];
if (IamInside[i])
{
BaseHi[i] = BaseHi[i-1];
BaseLo[i] = BaseLo[i-1];
}
else
{
BaseHi[i] = H[i-1];
BaseLo[i] = L[i-1];
}
}
else
{
IamInside[i] = C[i] > L[i-1] AND C[i] < H[i-1];
BaseHi[i] = H[i-1];
BaseLo[i] = L[i-1];
}
}
Upclr = ParamColor("UpColour",colorBlack);
Dnclr = ParamColor("DnColour",colorRed);
SetBarFillColor(IIf(C > O, Upclr,Dnclr));
//BarColor = IIf(NOT IamInside,ParamColor("BreakColour",colorYellow),ParamColor("Barcolour",colorWhite)); //IIf(C > O, colorSeaGreen, colorPink)
BarColor = IIf(NOT IamInside,IIf(C>BaseHi,ParamColor("BreakOutColour",colorBrightGreen),ParamColor("BreakDownColor",colorRose)),ParamColor("Barcolour",colorBlueGrey)); //IIf(C > O, colorSeaGreen, colorPink)
Plot(C, "Close", Barcolor, styleCandle | styleNoTitle);
// Can comment out or delete the following
//PlotShapes(IamInside*21,colorWhite,0,L,-10);
Plot(BaseHi, "BH",colorBlueGrey, styleDashed|styleStaircase);
Plot(BaseLo, "BL",colorLime, styleDashed|styleStaircase);
_SECTION_END();