You are on page 1of 4

_SECTION_BEGIN("CHART");

SetChartOptions(0,chartShowArrows|chartShowDates);
_N(Title = StrFormat("{{NAME}} - {{INTERVAL}} {{DATE}} Open %g, Hi %g, Lo %g, Close %g
(%.1f%%) {{VALUES}}", O, H, L, C, SelectedValue( ROC( C, 1 ) ) ));
Plot( C, "Close", ParamColor("Color", colorDefault ), styleNoTitle | ParamStyle("Style") |
GetPriceStyle() );
_SECTION_END();
// EMA
MOAV = EMA(C,5);
Plot(MOAV,"MVG Avg", colorWhite,styleLine);
//RVI
xPrice = ParamField("Price",3);
Period = Param("Period",10,1,100,1);
SD10=StDev(xPrice,Period);
upward = (xPrice > Ref(xPrice,-1)) * SD10;
downward = (xPrice < Ref(xPrice,-1)) * SD10;
upwardMA = wilders(upward,Period);
downwardMA = wilders(downward,Period);
RV = upwardMA / downwardMA;
myRVI = 100 - 100 / (1 + RV);
//ORB
_SECTION_BEGIN("ORB");
BT = Param("BreakoutTime",093000,09000,120000);
ET = Param("EndTime",152000,09000,160000);
Today = LastValue(Day());
NewDay = Day()!= Ref(Day(), -1);
EndDay = (Day()!= Ref(Day(), 1));
Validtime = TimeNum() > BT AND TimeNum() < 144500;
HighValue=HighestSince(NewDay,H);
LowValue=LowestSince(NewDay,L);
RangeHigh = ValueWhen(TimeNum()>091500 AND TimeNum()<BT,HighValue);
RangeLow = ValueWhen(TimeNum()>091500 AND TimeNum()<BT,LowValue);
Buysetup = L > RangeHigh AND C > O;
Shortsetup = H < RangeLow AND C < O;
Buyorb = Buysetup AND TimeNum()>BT AND TimeNum()<144500 ;
Shortorb= Shortsetup AND TimeNum()>BT AND TimeNum()<144500 ;
SELLORB = TimeNum() > ET;
COVERORB = TimeNum() > ET;
// ORB ALTERNATE METHOD - BUT BACKTEST SHOWS ZERO. HENCE NOT USED.
//Today = LastValue(Day());
//NewDay = Day()!= Ref(Day(), -1);
//EndDay = (Day()!= Ref(Day(), 1));
//BT = Param("BreakoutTime",93000,09000,120000);
//target = Param("Target in Percentage",2.5,0.1,10,0.1);
//HighValue=HighestSince(newDay,H);
//LowValue=LowestSince(newDay,L);
//RangeHigh = ValueWhen(Cross(TimeNum() , BT), HighValue);
//RangeLow = ValueWhen(Cross(TimeNum() , BT), LowValue);
//BuyORB = TimeNum() > BT AND TimeNum() < 150000 AND Cross(L,RangeHigh);
//ShortORB = TimeNum() > BT AND TimeNum() < 150000 AND Cross(RangeLow,H);
//BuyORB= ExRem(BuyORB,newDay);
//ShortORB = ExRem(ShortORB,newday);
//SellORB = Cross(RANGELOW, H) OR TimeNum()>151500 ;
//CoverORB = Cross(L,RANGEHIGH) OR TimeNum()>151500 ;
//SellORB = ExRem(SellORB,BuyORB);
//CoverORB = ExRem(CoverORB,ShortORB);
//Long = Flip(BuyORB,SellORB);
//Shrt = Flip(ShortORB,CoverORB);
IIf((Today <
Day()),Plot(RANGEHIGH,"RANGEHIGH",colorBrightGreen,styledots),Plot(RANGEHIGH,"RANGEHI
GH",colorBrightGreen,styleLine));
IIf((Today <
Day()),Plot(RANGELOW,"RANGELOW",colorRed,styleDots),Plot(RANGELOW,"RANGELOW",color
Red,styleLine));
_SECTION_END();
//STREND
_SECTION_BEGIN("STREND");
Factor=Param("Factor",1.5,1,10,0.1);
Pd=Param("ATR Periods",14,1,100,1);
Up=(H+L)/2+(Factor*ATR(Pd));
Dn=(H+L)/2-(Factor*ATR(Pd));
iATR=ATR(Pd);
TrendUp=TrendDown=Null;
trend[0]=1;
changeOfTrend=0;
flag=flagh=0;
for (i = 1; i <BarCount-1; i++) {
TrendUp[i] = Null;
TrendDown[i] = Null;
trend[i]=1;
if (Close[i]>Up[i-1]) {
trend[i]=1;
if (trend[i-1] == -1) changeOfTrend = 1;
}
else if (Close[i]<Dn[i-1]) {
trend[i]=-1;
if (trend[i-1] == 1) changeOfTrend = 1;
}
else if (trend[i-1]==1) {
trend[i]=1;
changeOfTrend = 0;
}
else if (trend[i-1]==-1) {
trend[i]=-1;
changeOfTrend = 0;
}
if (trend[i]<0 && trend[i-1]>0) {
flag=1;
}
else {
flag=0;
}
if (trend[i]>0 && trend[i-1]<0) {
flagh=1;
}
else {
flagh=0;
}
if (trend[i]>0 && Dn[i]<Dn[i-1]){
Dn[i]=Dn[i-1];
}
if (trend[i]<0 && Up[i]>Up[i-1])
{ Up[i]=Up[i-1];
}
if (flag==1)
{ Up[i]=(H[i]+L[i])/2+(Factor*iATR[i]);;
}
if (flagh==1)
{ Dn[i]=(H[i]+L[i])/2-(Factor*iATR[i]);;
}
if (trend[i]==1) {
TrendUp[i]=Dn[i];
if (changeOfTrend == 1) {
TrendUp[i-1] = TrendDown[i-1];
changeOfTrend = 0;
}
}
else if (trend[i]==-1) {
TrendDown[i]=Up[i];
if (changeOfTrend == 1) {
TrendDown[i-1] = TrendUp[i-1];
changeOfTrend = 0;
}
}
}
Plot(TrendUp,"Trend",colorGreen);
Plot(TrendDown,"Down",colorRed);
Buy = buyorb AND trend==1;
Sell= trend==-1 OR SELLORB ;
//Sell= SELLORB OR (MACD(12,26) < 0 );
Buy=ExRem(Buy,Sell);
Sell=ExRem(Sell,Buy);
Short=SHORTorb AND trend==-1;
Cover=trend==1 OR COVERORB ;
//Cover = COVERORB OR (MACD(12,26) > 0 );
Short = ExRem(Short,Cover);
Cover = ExRem(Cover,Short);
//Title = EncodeColor(colorWhite)+ "ORB-SUPERTREND INTRADAY " + " - " + Name() + " - " +
EncodeColor(colorRed)+ Interval(2) + EncodeColor(colorWhite) +
// " - " + Date() +" - "+"\n" +EncodeColor(colorRed) +"Op-"+O+" "+"Hi-"+H+" "+"Lo-"+L+" "+
//"Cl-"+C+" "+ "Vol= "+ WriteVal(V/100)+"\n"+
//EncodeColor(colorLime);
PlotShapes(IIf(Buy, shapeSquare, shapeNone),colorBlueGrey, 0, L, Offset=-40);
PlotShapes(IIf(Buy, shapeSquare, shapeNone),colorBlueGrey, 0,L, Offset=-50);
PlotShapes(IIf(Buy, shapeHollowUpArrow, shapeNone),colorWhite, 0,L, Offset=-45);
PlotShapes(IIf(Short, shapeSquare, shapeNone),colorYellow, 0, H, Offset=40);
PlotShapes(IIf(Short, shapeSquare, shapeNone),colorYellow, 0,H, Offset=50);
PlotShapes(IIf(Short, shapeHollowDownArrow, shapeNone),colorRed, 0,H, Offset=-45);
PlotShapes(Sell*shapeStar,colorWhite,0,H,20);
PlotShapes(Cover*shapeStar,colorWhite,0,L,-20);
_SECTION_END();
// G) EXPLORATION FOR SEARCHING FOR STOCKS SATISFYING BUY AND SELL
CONDITIONS.
_SECTION_BEGIN("EXPLORATION");
Filter = Buy OR Sell;
AddTextColumn( FullName(), "Company Name" );
AddColumn( Buy, "Buy", 1 );
AddColumn( Short, "Short", 1 );
AddColumn( C, "Close", 1.3 );
_SECTION_END();
//_SECTION_BEGIN("Price");
//SetChartOptions(0,chartShowArrows|chartShowDates);
//_N(Title = StrFormat("{{NAME}} - {{INTERVAL}} {{DATE}} Open %g, Hi %g, Lo %g, Close %g
(%.1f%%) {{VALUES}}", O, H, L, C, SelectedValue( ROC( C, 1 ) ) ));
//Plot( C, "Close", ParamColor("Color", colorDefault ), styleNoTitle | ParamStyle("Style") |
GetPriceStyle() );
//_SECTION_END();

You might also like