// Downloaded From https://www.WiseStockTrader.com
// ************************************************************
// @@@@@@@@@@@@@@@@@@CHART PANE SETTING @@@@@@@@@@@@@@@@@@@@@@@
// ============================================================

_SECTION_BEGIN("Chart Pane");
   SetChartOptions(0,chartShowArrows|chartShowDates);
   //SetChartBkColor(ParamColor("Outer Panel",ColorRGB(30, 30, 30)));
   //SetChartBkGradientFill(ParamColor("Upper Chart",colorSkyblue),ParamColor("LowerChart",colorDarkGrey));
   GraphXSpace=10;
   //SetBarFillColor(IIf(C>O,colorgreen,IIf(C<O,colorred,colorblue))); 
   //  Plot(C,"close",(IIf(C>O,colorgreen,IIf(C<O,colorred,colorblue))); 
 
Title = EncodeColor(ColorRGB(127, 179, 213))+  Title = Name() + "     " + EncodeColor(ColorRGB(41, 128, 185)) + Date() +
"      " + EncodeColor(ColorRGB(127, 179, 213)) + "{{INTERVAL}}  " +
	EncodeColor(ColorRGB(127, 179, 213))+ "     Open = "+ EncodeColor(ColorRGB(41, 128, 185))+ WriteVal(O,1.2) + 
	EncodeColor(ColorRGB(127, 179, 213))+ "     High = "+ EncodeColor(ColorRGB(41, 128, 185)) + WriteVal(H,1.2) +
	EncodeColor(ColorRGB(127, 179, 213))+ "      Low = "+ EncodeColor(ColorRGB(41, 128, 185))+ WriteVal(L,1.2) + 
	EncodeColor(ColorRGB(127, 179, 213))+ "    Close = "+ EncodeColor(ColorRGB(41, 128, 185))+ WriteVal(C,1.2)+
	EncodeColor(ColorRGB(127, 179, 213))+ "    Volume = "+ EncodeColor(ColorRGB(41, 128, 185))+ WriteVal(V,1);

Plot(V, "Volume", ColorRGB(27, 79, 114),styleHistogram|styleOwnScale|styleThick, 10);
Plot(Day()!=Ref(Day(),-1),"",ColorRGB(25,33,25),styleHistogram|styleDashed|styleNoLabel|styleOwnScale);
_SECTION_END();

// ************************************************************
// @@@@@@@@@@@@@@@@@@CANDLE AND MAGNIFIED PRICE N TIME@@@@@@@@@
// ============================================================

_SECTION_BEGIN("Grid_HourDay");
per3=Param("Mov. Avg.20",20,2,300,1);
per15=Param("Mov. Avg.50",50,2,300,1);
avg3 = MA (C,per3);
avg15 = MA (C,per15);
Buy1=Cross (avg3,avg15);
Sell1=Cross (avg15,avg3);
SetBarFillColor( IIf( avg3 > avg15, colorGreen, colorRed ) ); 
Plot( C, "Price", IIf( avg3 > avg15, colorGreen, colorRed ), styleCandle );

//Magnified Market Price
GfxSelectFont("Times New Roman", 30, 700, True ); 
GfxSetBkMode( 1 );  
GfxSetTextColor( colorLime ); 
GfxTextOut(""+C, 700 , 10 );
YC=TimeFrameGetPrice("C",inDaily,-1);
DD=Prec(C-YC,2);
xx=Prec((DD/YC)*100,2);
GfxSelectFont("Times New Roman", 11, 700, True ); 
GfxSetBkMode( 1 );  
GfxSetTextColor(colorGreen ); 
GfxTextOut(""+DD+"  ("+xx+"%)", 700 , 50 );
_SECTION_END();

_SECTION_BEGIN("Grid_HourDay");
ShowGrid = ParamToggle("Show Grid", "No|Yes", 1);
if (ShowGrid == 1)
{
grid_DAY = IIf(Day() != Ref(Day(), -1), 1, 0); 
grid_DAY_color = ParamColor("?olorDAY", colorBlue);
Plot(grid_DAY, "", grid_DAY_color, styleHistogram|styleThick|styleNoLabel|styleNoRescale|styleOwnScale);

grid_HOUR = IIf(Hour() != Ref(Hour(), -1), 1, 0); 
grid_HOUR_color = ParamColor("?olorHOUR", colorBrown);
Plot(grid_HOUR, "", grid_HOUR_color, styleHistogram|styleDashed|styleNoLabel|styleNoRescale|styleOwnScale);
}
else 
{}
_SECTION_END();

// ************************************************************
// @@@@@@@@@@@@@@@@@@CONDITIONAL SETTING @@@@@@@@@@@@@@@@@@@@@@
// ============================================================

_SECTION_BEGIN("CONDITIONAL SETTING ");



GfxSetTextColor( colorBlack );
GfxSelectSolidBrush( colorGreen ); // this is the box background color
GfxSelectPen( colorRed, 2); // broader color


// GETTING TIME FRAME VALUE
DH= TimeFrameGetPrice("H",inDaily,0);
DL= TimeFrameGetPrice("L",inDaily,0);
Plot(DH,"HIGH",colorBlue,styleLine);
Plot(DL,"Low",colorGreen,styleLine);
GfxTextOut( ("HIGH = "+DH), 13,40);
GfxTextOut( ("LOW = "+Dl ), 13,60);
//DC= TimeFrameGetPrice("C",inDaily,-1);
ClAll=TimeNum()>=152000;
LET= TimeNum()<=150000;

//Entry-Exit
//BASE FORMULA 
//B=1;
//C=100;
//D=(A-(B*int(A/B)));  // A=125.25 (125.25-(1*INT(125.25/1))) = 0.25
//E=((A-(C*int(A/C)))-D); //((125.25-(100*INT(125.25/100))) - 0.25) = 25
//F=D*C; // 0.25 * 100 = 25 

// FOR CHECKING IF DAYHIGH IS MAGIC NUMBER 
B=1;
CC=100;
DHD = (DH - ( B * int( DH / B ))); //A = DH 
DHE = (DH - ( CC * int ( DH / CC )) - DHD); //A = DH AND D = DHD
DHF = DHD * CC;
GfxTextOut( ("DHD = "+DHD ), 13,80);
GfxTextOut( ("DHE = "+DHE ), 13,100);
GfxTextOut( ("DHF = "+DHF ), 13,120);

SCond = DHE==DHF!=0;
Short = ValueWhen(IIf(SCond,DHE,Null),DH,1);
//CoverPrice = ShortPrice + Short * 0.005;


// FOR CHECKING IF DAYLOW IS MAGIC NUMBER 
DLD = (DL - ( B * int( DL / B ))); //A = DH 
DLE = (DL - ( CC * int ( DL / CC )) - DLD); //A = DL AND D = DLD
DLF = DLD * CC;

BCond = DLE==DLF!=0;
Buy = ValueWhen(IIf(BCond,DLE,Null),DL,1);
//Sell = Buy + Buy * 

//GfxTextOut( ("HIGH = "+DHE ), 13,40);
//GfxTextOut( ("LOW = "+DLE ), 13,60);
GfxSelectSolidBrush( colorRed );
GfxTextOut( ("DLD = "+DLD ), 13,140);
GfxTextOut( ("DLE = "+DLE ), 13,160);
GfxTextOut( ("DLF = "+DLF ), 13,180);
GfxTextOut( ("BCOND = "+BCOND ), 13,200);
GfxTextOut( ("SCOND = "+SCOND ), 13,220);

//Remove Excessive signals
Buy  =ExRem(Buy,Short)   ;
Short=ExRem(Short,Buy);
//Sell =ExRem(Sell,Buy)   ;
//Cover=ExRem(Cover,Short);

// PLOTTING SHAPE
PlotShapes(IIf(Buy, shapeSquare, shapeNone),colorGreen, 0, L, Offset=-25);
PlotShapes(IIf(Buy, shapeSquare, shapeNone),colorLime, 0,L, Offset=-35);                      
PlotShapes(IIf(Buy, shapeUpArrow, shapeNone),colorWhite, 0,L, Offset=-30); 

PlotShapes(IIf(Short, shapeSquare, shapeNone),colorOrange, 0, H, Offset=25);
PlotShapes(IIf(Short, shapeSquare, shapeNone),colorRed, 0,H, Offset=35);                      
PlotShapes(IIf(Short, shapeDownArrow, shapeNone),colorWhite, 0,H, Offset=-30); 


_SECTION_END();


// OPEN HIGH LOW 

// ************************************************************
// @@@@@@@@@@@@@@@@@@CONDITIONAL SETTING @@@@@@@@@@@@@@@@@@@@@@
// ============================================================

_SECTION_BEGIN("OPEN=HIGH=LOW ");

TimeFrameSet(inDaily);
V1=V;
V2=Ref(V,-1);
V3=LLV(L,250);
OI1=Ref(OI,-1);
OI2=(OI-OI1)/1000;
L1=LLV(L,250);
L2=L;
H1=H;
Oa=Open;
Ha=High;
La=Low;
Cond11=Oa==Ha;
Cond12=Oa==La;
BuyOHL = Cond12;
ShortOHL= Cond11;
Cc = Close > 100;
in = Inside();
TimeFrameRestore();

//Remove Excessive signals

BuyOHL=ExRem(BuyOHL,ShortOHL);
ShortOHL=ExRem(ShortOHL,BuyOHL);

//Filter =  cc AND BuyOHL OR ShortOHL OR in ;


_SECTION_END();
// END OF HIGH LOW 

// ************************************************************
// @@@@@@@@@@@@@@@@@@EXPLORATION SETTING @@@@@@@@@@@@@@@@@@@@@@
// ============================================================

_SECTION_BEGIN("Exploration");
OHLMAG =ParamToggle("OHL/MAGIC","OHL|MAGIC");
TimeFrameSet(inDaily);
//Settings for exploration
Value1 = V;
Value2 = V*(H-L);
Value3 = V/(H-L);
Climax = (Value2 == HHV(Value2,10));
VolumeBlast = V > Ref(V, -1) AND Climax AND V > 2*WMA( V, 8 );

//Filter = (CCLOSE) AND (Buy OR Short);

if (OHLMAG==0)
{
Filter =  cc AND BuyOHL OR ShortOHL OR in ; //OHL
// OHL
AddColumn( IIf( BuyOHL, 66, colorRed ), "BuyOHL", formatChar, 1, bkcolor = IIf( BuyOHL, 43, colorRed ) );

}
else
{

Filter = (cc) AND (BCOND OR SCOND);   // MAGIC NUMBER
// MAGIC NUMBER 
AddColumn( IIf( SCOND, 66, colorRed ), "Buy", formatChar, 1, bkcolor = IIf( SCOND, 43, colorRed ) );

}

AddColumn( C, "CMP", 1.2, colorDefault, colorLightBlue );
AddColumn(Open,"Open");
AddColumn(High,"High/SELL");
AddColumn(Low,"Low/BUY");
AddColumn(Volume,"Volume",1.0, colorDefault, IIf (VolumeBlast,colorBlue,colorYellow));
//AddColumn(BCOND,"BUY");
//AddColumn(SCOND,"SELL");
AddColumn(in, "inside day");
SetSortColumns(-2,-8,-3);
TimeFrameRestore();

_SECTION_END();