SupRes=ParamToggle("Sup-Res","No|Yes",1);
SHowband = ParamToggle("band", "Yes|No");
ShowKPL = ParamToggle("KPL", "No|Yes");
_SECTION_BEGIN("KPL");
no=Param( "Swing", 5, 1, 55 );
tsl_col=colorWhite;
res=HHV(H,no);
sup=LLV(L,no);
avd=IIf(C>Ref(res,-1),1,IIf(C<Ref(sup,-1),-1,0));
avn=ValueWhen(avd!=0,avd,1);
tsl=IIf(avn==1,sup,res);
if(ShowKPL == True)
{
Plot(tsl, _DEFAULT_NAME(), tsl_col, styleStaircase,0,0,1);
Buy=Cross(C,tsl);
Sell=Cross(tsl,C);
shape=Buy*shapeUpArrow + Sell*shapeDownArrow;
PlotShapes(shape,IIf(Buy,tsl_col,tsl_col),0,IIf(Buy,Low,High));
_SECTION_END();
};
_SECTION_BEGIN("VOLUME_Hight of Volume Bars Control");
PlotVOL = ParamToggle( "plot Volume?","No| Yes",0);
VolColor = (C>O OR (C==O AND
(H-C)<=(C-L) ))*ParamColor( "VUpColor" ,colorGreen) +
(C<O OR (C==O AND
(H-C)>(C-L)) )*ParamColor( "VDnColor" ,colorRed) ;
VolScale = Param("1/Vol. Height (TimeBar chart)(fraction of window) 5=1/5=20%",10,
2, 100, 1.0) ; // Timebars
if (PlotVOL >0)
Vheight = VolScale;
Plot(Prec(Volume ,0),"V",VolColor,
styleNoTitle| styleOwnScale| styleNoLabel| styleThick| ParamStyle( "VStyle",
styleHistogram,maskHistogram| styleNoLabel) ,Vheight ); }
//Plot(MA(Volume,50),"",colorLightBlue,styleLine);
_SECTION_END();
_SECTION_BEGIN("sheroune");
SetChartBkColor( colorBlack ) ;
f = Param("Rsi of",5,1,50,1);
s = Param("ema of rsi",4,2,100,1);
A1=round(EMA(RSI(f),s)*10)/10;
BBtop=BBandTop(A1,5,.5);
BBbot=BBandBot(A1,5,.5);
Color = IIf(A1 > bbtop, colorBrightGreen, IIf(a1 < bbbot,colorRed,colorYellow));
piv = (H + L + C)/3;
Plot(MA(piv,3),"",IIf(MA(piv,3) > Ref(MA(piv,3),-
1),colorGreen,colorDarkRed),styleThick);
Plot(C,"",Color,styleBar+styleThick);
em34 = EMA(C,34);
em20 = EMA(C,20);
Plot(em34,"",colorWhite,styleThick);
Plot(em20,"",colorAqua,styleThick);
PlotOHLC(em34,IIf(em34 > em20,em34,em20),IIf(em34 <
em20,em34,em20),em34,"",IIf(em20 >
em34,colorBlue,colorBrown),styleCloud+styleNoLabel);
_SECTION_END();
_SECTION_BEGIN("Support-Resistance");
SupResA = Param("Sup-Res A Period",20,0,100,1);
SupResB = Param("Sup-Res B Period",25,0,100,1);
Res1 = ParamColor("Resistance High", colorRed );
Res2 = ParamColor("Resistance Low", colorDarkRed );
Sup1 = ParamColor("Support High", colorDarkGreen );
Sup2 = ParamColor("Support Low", colorBrightGreen );
BuyOffSet = SupResA;//Optimize("BuyOffSet",18,15,20,1);
SellOffset = BuyOffSet;//Optimize("SellOffset",2,2,14,2);
RegLength = 5;//Optimize("RegLength",5, 2,11,2);
BuyATRPeriod = 2;//Optimize("BuyATRPeriod",2,2,5,1);
SellATRPeriod = BuyATRPeriod;//Optimize("SellATRPeriod",4,2,11,2);
ATRMultiplier = 0.5;//Optimize("ATRMultiplier",1,0.7,1.25,.05);
SuppA = HHV(H-ATRMultiplier*ATR(BuyATRPeriod),BuyOffset); /* RED */
RessB = LLV(L+ATRMultiplier*ATR(SellATRPeriod),SellOffset); /* GREEN */
nn=SupResB;
mmm=100;
TYP=(High + Low + 2*Close)/4;
CI=(TYP-MA(TYP,14))/(0.015*StDev(TYP,14));
CCCI=EMA(CI,5)+mmm;
Hh=HHV(H,nn);
Ll=LLV(L,nn);
MM=(Hh+Ll)/2;
CCCC=EMA(CCCI*(Hh-Ll)/(2*mmm)+Ll,5);
if(SupRes)
{
MaxGraph = 12;
BuyOffSet = SupResA;//Optimize("BuyOffSet",18,15,20,1);
SellOffset = BuyOffSet;//Optimize("SellOffset",2,2,14,2);
RegLength = 5;//Optimize("RegLength",5, 2,11,2);
BuyATRPeriod = 2;//Optimize("BuyATRPeriod",2,2,5,1);
SellATRPeriod = BuyATRPeriod;//Optimize("SellATRPeriod",4,2,11,2);
ATRMultiplier = 0.5;//Optimize("ATRMultiplier",1,0.7,1.25,.05);
SuppA = HHV(H-ATRMultiplier*ATR(BuyATRPeriod),BuyOffset); /* RED */
RessB = LLV(L+ATRMultiplier*ATR(SellATRPeriod),SellOffset); /* GREEN */
Plot(SuppA,"",sup1,ParamStyle("Sup-Res A Style", styleDashed|styleNoTitle) );
Plot(RessB,"",res2,ParamStyle("Sup-Res A Style", styleDashed|styleNoTitle) );
nn=SupResB;
mmm=100;
TYP=(High + Low + 2*Close)/4;
CI=(TYP-MA(TYP,14))/(0.015*StDev(TYP,14));
CCCI=EMA(CI,5)+mmm;
Hh=HHV(H,nn);
Ll=LLV(L,nn);
MM=(Hh+Ll)/2;
CCCC=EMA(CCCI*(Hh-Ll)/(2*mmm)+Ll,5);
Plot(Hh,"",Res1, ParamStyle("Sup-Res B Style", styleThick|styleNoTitle) );
Plot(Ll,"",Sup2, ParamStyle("Sup-Res B Style", styleThick|styleNoTitle) ) ;
}
_SECTION_END();
_SECTION_BEGIN("Pivot");
nBars = Param("Number of bars", 12, 5, 40);
bShowTCZ = Param("Show TCZ", 1, 0, 1);
nExploreBarIdx = 0;
nExploreDate = 0;
nCurDateNum = 0;
DN = DateNum();
DT = DateTime();
bTCZLong = False;
bTCZShort = False;
nAnchorPivIdx = 0;
ADX8 = ADX(8);
if(Status("action")==1) {
bDraw = True;
bUseLastVis = 1;
} else {
bDraw = False;
bUseLastVis = False;
bTrace = 1;
nExploreDate = Status("rangetodate");
for (i=LastValue(BarIndex());i>=0;i--) {
nCurDateNum = DN[i];
if (nCurDateNum == nExploreDate) {
nExploreBarIdx = i;
}
}
}
GraphXSpace=7;
if (bDraw) {
}
aHPivs = H - H;
aLPivs = L - L;
aHPivHighs = H - H;
aLPivLows = L - L;
aHPivIdxs = H - H;
aLPivIdxs = L - L;
aAddedHPivs = H - H;
aAddedLPivs = L - L;
aLegVol = H - H;
aRetrcVol = H - H;
nHPivs = 0;
nLPivs = 0;
lastHPIdx = 0;
lastLPIdx = 0;
lastHPH = 0;
lastLPL = 0;
curPivBarIdx = 0;
aHHVBars = HHVBars(H, nBars);
aLLVBars = LLVBars(L, nBars);
aHHV = HHV(H, nBars);
aLLV = LLV(L, nBars);
nLastVisBar = LastValue(
Highest(IIf(Status("barvisible"), BarIndex(), 0)));
curBar = IIf(nlastVisBar > 0 AND bUseLastVis, nlastVisBar,
IIf(Status("action")==4 AND nExploreBarIdx > 0, nExploreBarIdx,
LastValue(BarIndex())));
curTrend = "";
if (aLLVBars[curBar] < aHHVBars[curBar])
curTrend = "D";
else
curTrend = "U";
if (curBar >= 120) {
for (i=0; i<120; i++) {
curBar = IIf(nlastVisBar > 0 AND bUseLastVis,
nlastVisBar-i,
IIf(Status("action")==4 AND nExploreBarIdx > 0,
nExploreBarIdx-i,
LastValue(BarIndex())-i));
if (aLLVBars[curBar] < aHHVBars[curBar]) {
if (curTrend == "U") {
curTrend = "D";
curPivBarIdx = curBar - aLLVBars[curBar];
aLPivs[curPivBarIdx] = 1;
aLPivLows[nLPivs] = L[curPivBarIdx];
aLPivIdxs[nLPivs] = curPivBarIdx;
nLPivs++;
}
} else {
if (curTrend == "D") {
curTrend = "U";
curPivBarIdx = curBar - aHHVBars[curBar];
aHPivs[curPivBarIdx] = 1;
aHPivHighs[nHPivs] = H[curPivBarIdx];
aHPivIdxs[nHPivs] = curPivBarIdx;
nHPivs++;
}
}
}
}
curBar =
IIf(nlastVisBar > 0 AND bUseLastVis,
nlastVisBar,
IIf(Status("action")==4 AND nExploreBarIdx > 0,
nExploreBarIdx,
LastValue(BarIndex()))
);
if (nHPivs >= 2 AND nLPivs >= 2) {
lastLPIdx = aLPivIdxs[0];
lastLPL = aLPivLows[0];
lastHPIdx = aHPivIdxs[0];
lastHPH = aHPivHighs[0];
nLastHOrLPivIdx = Max(lastLPIdx, lastHPIdx);
nAddPivsRng = curBar - nLastHOrLPivIdx;
aLLVAfterLastPiv = LLV(L, nAddPivsRng);
nLLVAfterLastPiv = aLLVAfterLastPiv[curBar];
aLLVIdxAfterLastPiv = LLVBars(L, nAddPivsRng);
nLLVIdxAfterLastPiv = curBar - aLLVIdxAfterLastPiv[curBar];
aHHVAfterLastPiv = HHV(H, nAddPivsRng);
nHHVAfterLastPiv = aHHVAfterLastPiv[curBar];
aHHVIdxAfterLastPiv = HHVBars(H, nAddPivsRng);
nHHVIdxAfterLastPiv = curBar - aHHVIdxAfterLastPiv[curBar];
if (lastHPIdx > lastLPIdx) {
/* There are at least two possibilities here. One is that
the previous high was higher, indicating that this is a
possible short retracement or one in the making.
The other is that the previous high was lower, indicating
that this is a possible long retracement in the working.
However, both depend on opposing pivots. E.g., if I find
higher highs, what if I have lower lows?
If the highs are descending, then I can consider:
- a lower low, and leave it at that
- a higher high and higher low
- a lower low and another lower high
*/
if (aHPivHighs[0] < aHPivHighs[1]) {
if (nLLVAfterLastPiv < aLPivLows[0] AND
(nLLVIdxAfterLastPiv - lastHPIdx - 1) >= 1
AND nLLVIdxAfterLastPiv != curBar ) {
// -- OK, we'll add this as a pivot.
// Mark it for plotting...
aLPivs[nLLVIdxAfterLastPiv] = 1;
aAddedLPivs[nLLVIdxAfterLastPiv] = 1;
// ...and then rearrange elements in the
// pivot information arrays
for (j=0; j<nLPivs; j++) {
aLPivLows[nLPivs-j] = aLPivLows[nLPivs-(j+1)];
aLPivIdxs[nLPivs-j] = aLPivIdxs[nLPivs-(j+1)];
}
aLPivLows[0] = nLLVAfterLastPiv;
aLPivIdxs[0] = nLLVIdxAfterLastPiv;
nLPivs++;
// -- Test whether to add piv given last piv is high
// AND we have lower highs
}
// -- Here, the last piv is a high piv, and we have
// higher-highs. The most likely addition is a
// Low piv that is a retracement.
} else {
if (nLLVAfterLastPiv > aLPivLows[0] AND
(nLLVIdxAfterLastPiv - lastHPIdx - 1) >= 1
AND nLLVIdxAfterLastPiv != curBar ) {
// -- OK, we'll add this as a pivot.
// Mark it for plotting...
aLPivs[nLLVIdxAfterLastPiv] = 1;
aAddedLPivs[nLLVIdxAfterLastPiv] = 1;
// ...and then rearrange elements in the
// pivot information arrays
for (j=0; j<nLPivs; j++) {
aLPivLows[nLPivs-j] = aLPivLows[nLPivs-(j+1)];
aLPivIdxs[nLPivs-j] = aLPivIdxs[nLPivs-(j+1)];
}
aLPivLows[0] = nLLVAfterLastPiv;
aLPivIdxs[0] = nLLVIdxAfterLastPiv;
nLPivs++;
// -- Test whether to add piv given last piv is high
// AND we have lower highs
}
// -- The last piv is a high and we have higher highs
// OR lower highs
}
/* ****************************************************************
Still finding missed pivot(s). Here, the last piv is a low piv.
**************************************************************** */
} else {
// -- First case, lower highs
if (aHPivHighs[0] < aHPivHighs[1]) {
if (nHHVAfterLastPiv < aHPivHighs[0] AND
(nHHVIdxAfterLastPiv - lastLPIdx - 1) >= 1
AND nHHVIdxAfterLastPiv != curBar ) {
// -- OK, we'll add this as a pivot.
// Mark that for plotting
aHPivs[nHHVIdxAfterLastPiv] = 1;
aAddedHPivs[nHHVIdxAfterLastPiv] = 1;
// ...and then rearrange elements in the
// pivot information arrays
for (j=0; j<nHPivs; j++) {
aHPivHighs[nHPivs-j] = aHPivHighs[nHPivs-(j+1)];
aHPivIdxs[nHPivs-j] = aHPivIdxs[nhPivs-(j+1)];
}
aHPivHighs[0] = nHHVAfterLastPiv;
aHPivIdxs[0] = nHHVIdxAfterLastPiv;
nHPivs++;
// -- Test whether to add piv given last piv is high
// AND we have lower highs
}
// -- Second case when last piv is a low piv, higher highs
// Most likely addition is high piv that is a retracement.
// Considering adding a high piv as long as it is higher
} else {
// -- Where I have higher highs,
if (nHHVAfterLastPiv > aHPivHighs[0] AND
(nHHVIdxAfterLastPiv - lastLPIdx - 1) >= 1
AND nHHVIdxAfterLastPiv != curBar ) {
// -- OK, we'll add this as a pivot.
// Mark it for plotting...
aHPivs[nHHVIdxAfterLastPiv] = 1;
aAddedHPivs[nHHVIdxAfterLastPiv] = 1;
// ...and then rearrange elements in the
// pivot information arrays
for (j=0; j<nHPivs; j++) {
aHPivHighs[nHPivs-j] = aHPivHighs[nHPivs-(j+1)];
aHPivIdxs[nHPivs-j] = aHPivIdxs[nhPivs-(j+1)];
}
aHPivHighs[0] = nHHVAfterLastPiv;
aHPivIdxs[0] = nHHVIdxAfterLastPiv;
nHPivs++;
// -- Test whether to add piv given last piv is high
// AND we have lower highs
}
// -- If there are at least two of each
}
/* ****************************************
// -- Done with finding pivots
***************************************** */
if (bDraw) {
PivotEntry = ParamColor( "Entry Color", colorBrightGreen );
PivotEntry2 = ParamColor( "Entry Color2", colorYellow );
PivotExit = ParamColor( "Exit Color", colorRed );
PivotExit2 = ParamColor( "Exit Color2", colorYellow );
// -- OK, let's plot the pivots using arrows
PlotShapes(
IIf(aHPivs==1, shapeSquare, shapeNone),
PivotExit, 0, High, Offset=30);
PlotShapes(
IIf(aAddedHPivs==1, shapeSquare, shapeNone),
PivotExit2, 0, High, Offset=30);
PlotShapes(
IIf(aLPivs==1, shapeSquare , shapeNone),
PivotEntry, 0, Low, Offset=-30);
PlotShapes(
IIf(aAddedLPivs==1, shapeSquare , shapeNone),
PivotEntry2, 0, Low, Offset=-30);
PlotShapes(
IIf(aHPivs==1, shapeSquare, shapeNone),
colorBlack, 0, High, Offset=35);
PlotShapes(
IIf(aAddedHPivs==1, shapeSquare, shapeNone),
colorBlack, 0, High, Offset=35);
PlotShapes(
IIf(aLPivs==1, shapeSquare , shapeNone),
colorBlack, 0, Low, Offset=-35);
PlotShapes(
IIf(aAddedLPivs==1, shapeSquare , shapeNone),
colorBlack, 0, Low, Offset=-35);
}
/* ****************************************
// -- Done with discovering and plotting pivots
***************************************** */
m = (Hh+Ll)/2;
//EncodeColor(colorAqua)+"Midpoint "+m
_SECTION_BEGIN("shiree FPSR");
//PlotOHLC(O,H,L,C,"Price",IIf(C>O,colorGreen,colorRed),styleCandle);
// Get Previous Day's close, Low and High
Prev_Close = TimeFrameGetPrice( "C", inDaily, -1, expandFirst) ;
Prev_Low = TimeFrameGetPrice( "L", inDaily, -1, expandFirst) ;
Prev_High = TimeFrameGetPrice( "H", inDaily, -1, expandFirst) ;
Today = LastValue(Day( ) );
//////////////////////////////30 MT
STRATEGY /////////////////////////////////////////////////////////////
BS=(Prev_High-Prev_Low)/3;
Y=R30=Prev_Close+BS;
X=S30=Prev_Close-BS;
BSColor = colorBlue;
//Plot(X,"",colorBlue,styleThick|styleNoLabel);
//Plot(Y,"",colorBlue,styleThick|styleNoLabel);
///////////////////////////////////////////////////////////////////////////////////
////////////////////
SetChartOptions(0,chartShowArrows|chartShowDates);
Show_Prev = ParamToggle( "Display Pivots", "No|Yes", 1);
////////////////////// FPSR AS BUNCH OF
LINES/////////////////////////////////////////////////////////////
XY=Y-X;
Z1=X+0.0025*XY;
Z2=X+0.0050*XY;
Z3=X+0.0075*XY;
Z4=X+0.0100*XY;
Z5=X+0.0125*XY;
Z6=X+0.0150*XY;
Z7=X+0.0175*XY;
Z8=X+0.0200*XY;
Z9=X+0.0225*XY;
Z0=X+0.0250*XY;
Z11=Y-0.0025*XY;
Z12=Y-0.005*XY;
Z13=Y-0.0075*XY;
Z14=Y-0.01*XY;
Z15=Y-0.0125*XY;
Z16=Y-0.0150*XY;
Z17=Y-0.0175*XY;
Z18=Y-0.02*XY;
Z19=Y-0.0225*XY;
Z20=Y-0.025*XY;
//ColorR=ColorRGB(150,20,100);
ColorXY=ParamColor("XY", colorYellow);
////////////////////////////////////////////////////////////////////////////
if(Show_Prev)
{
Plot(IIf(Today == Day(),Z1, Null), "", ColorXY,styleLine|styleThick|styleNoRescale|
styleNoLabel);
Plot(IIf(Today == Day(),Z2, Null),"", ColorXY,styleLine|styleThick|styleNoRescale|
styleNoLabel);
Plot(IIf(Today == Day(),Z3, Null),"", ColorXY,styleLine|styleThick|styleNoRescale|
styleNoLabel);
Plot(IIf(Today == Day(),Z4, Null),"", ColorXY,styleLine|styleThick|styleNoRescale|
styleNoLabel);
Plot(IIf(Today == Day(),Z5, Null),"", ColorXY,styleLine|styleThick|styleNoRescale|
styleNoLabel);
Plot(IIf(Today == Day(),Z6, Null),"", ColorXY,styleLine|styleThick|styleNoRescale|
styleNoLabel);
Plot(IIf(Today == Day(),Z7, Null),"", ColorXY,styleLine|styleThick|styleNoRescale|
styleNoLabel);
Plot(IIf(Today == Day(),Z8, Null),"", ColorXY,styleLine|styleThick|styleNoRescale|
styleNoLabel);
Plot(IIf(Today == Day(),Z9, Null),"", ColorXY,styleLine|styleThick|styleNoRescale|
styleNoLabel);
Plot(IIf(Today == Day(),Z0, Null),"", ColorXY,styleLine|styleThick|styleNoRescale|
styleNoLabel);
Plot(IIf(Today == Day(),Z11, Null),"", ColorXY,styleLine|styleThick|styleNoRescale|
styleNoLabel);
Plot(IIf(Today == Day(),Z12, Null),"", ColorXY,styleLine|styleThick|styleNoRescale|
styleNoLabel);
Plot(IIf(Today == Day(),Z13, Null),"", ColorXY,styleLine|styleThick|styleNoRescale|
styleNoLabel);
Plot(IIf(Today == Day(),Z14, Null),"", ColorXY,styleLine|styleThick|styleNoRescale|
styleNoLabel);
Plot(IIf(Today == Day(),Z15, Null),"", ColorXY,styleLine|styleThick|styleNoRescale|
styleNoLabel);
Plot(IIf(Today == Day(),Z16, Null),"", ColorXY,styleLine|styleThick|styleNoRescale|
styleNoLabel);
Plot(IIf(Today == Day(),Z17, Null),"", ColorXY,styleLine|styleThick|styleNoRescale|
styleNoLabel);
Plot(IIf(Today == Day(),Z18, Null),"", ColorXY,styleLine|styleThick|styleNoRescale|
styleNoLabel);
Plot(IIf(Today == Day(),Z19, Null),"", ColorXY,styleLine|styleThick|styleNoRescale|
styleNoLabel);
Plot(IIf(Today == Day(),Z20, Null),"", ColorXY,styleLine|styleThick|styleNoRescale|
styleNoLabel);}
_SECTION_END();
_SECTION_BEGIN("BB");
bb2top = BBandTop(Close,20,2.25);
bb1top = BBandTop(Close,20,1);
bb2bot = BBandBot(Close,20,2.25);
bb1bot = BBandBot(Close,20,1);
if(ShowBAND == False)
{
Plot (bb2top,"",IIf(bb2top > Ref(bb2top,-1) AND bb2bot < Ref(bb2bot,-
1),colorBlue,colorGrey40));
Plot (bb2bot,"",IIf(bb2top > Ref(bb2top,-1) AND bb2bot < Ref(bb2bot,-
1),colorBlue,colorGrey40));
PlotOHLC(bb2top,bb2top,bb1top,bb1top,"",colorDarkGrey,styleCloud);
PlotOHLC(bb1bot,bb1bot,bb2bot,bb1bot,"",colorDarkGrey,styleCloud);
};
DayH = TimeFrameGetPrice("H", inDaily, -1);// yesterdays high
DayL = TimeFrameGetPrice("L", inDaily, -1);//low
Title = EncodeColor(colorWhite)+ "SHEROUNE ka SYSTEM" + " - " + Name() + " - " +
EncodeColor(colorRed)+ Interval(2) + EncodeColor(colorWhite) +
" - " + Date() +" - "+
EncodeColor(colorYellow)+ " Yesterday's High : "+ EncodeColor(colorWhite)+DayH +
EncodeColor(colorYellow)+ " Yesterday's Low : "+ EncodeColor(colorWhite)+DayL
+"\n"+
WriteIf(H > Ref(H,-1),EncodeColor(colorBrightGreen),EncodeColor(colorRed))+"
Hi "+H+"\n"+
EncodeColor(colorWhite)+"Op "+O+EncodeColor(colorAqua)+" Cl : " +C+"\n"+
WriteIf(L < Ref(L,-1),EncodeColor(colorRed),EncodeColor(colorBrightGreen))+"
Lo "+L
+"\n"+"\n"+
EncodeColor(colorBrightGreen)+"SL for Short "+Hh
+"\n"+
EncodeColor(colorRed)+"SL for Long "+Ll
+"\n"
+"\n"
+WriteIf(EM20 > EM34, EncodeColor(colorBrightGreen),EncodeColor(colorRed))
+ "Ema-20 = " +em20
+"\n"
+ "Ema-34 = " +em34
+"\n"+"\n"
+ EncodeColor(colorBrightGreen)+ "Bull channel = " +WriteIf(C
<bb1top,EncodeColor(colorGrey40),WriteIf(C > bb2top, EncodeColor(colorBlue),
EncodeColor(colorBrightGreen)))+bb2top+ " --- " +bb1top
+"\n"
+ EncodeColor(colorRed)+"Bear channel= " +WriteIf(C >
bb1bot,EncodeColor(colorGrey40), WriteIf(C <
bb2bot,EncodeColor(colorBlue),EncodeColor(colorRed)))+bb2bot+ " --- " +bb1bot
+"\n"
+"\n"
+EncodeColor(colorWhite)+"Trailing SL :"+WriteIf(C >tsl,
EncodeColor(colorGreen),EncodeColor(colorRed))+ tsl
+"\n"+"\n"
+ "Volume = " +WriteIf(C>O OR (C==O AND (H-C)<=(C-
L)),EncodeColor(colorBrightGreen),EncodeColor(colorRed))+V
;
_SECTION_BEGIN("Time Left");
function GetSecondNum()
{
Time = Now( 4 );
Seconds = int( Time % 100 );
Minutes = int( Time / 100 % 100 );
Hours = int( Time / 10000 % 100 );
SecondNum = int( Hours * 60 * 60 + Minutes * 60 + Seconds );
return SecondNum;
}
RequestTimedRefresh( 1 );
TimeFrame = Interval();
SecNumber = GetSecondNum();
Newperiod = SecNumber % TimeFrame == 0;
SecsLeft = SecNumber - int( SecNumber / TimeFrame ) * TimeFrame;
SecsToGo = TimeFrame - SecsLeft;
x=Param("xposn",918,0,1000,1);
y=Param("yposn",586,0,1000,1);
GfxSelectSolidBrush( ColorRGB( 230, 230, 230 ) );
GfxSelectPen( ColorRGB( 230, 230, 230 ), 2 );
if ( NewPeriod )
{
GfxSelectSolidBrush( colorYellow );
GfxSelectPen( colorYellow, 2 );
Say( "New period" );
}
GfxRoundRect( x+55, y+17, x-4, y-2, 0, 0 );
GfxSetBkMode(1);
GfxSelectFont( "Arial", 9, 700, False );
GfxSetTextColor( colorBlack );
GfxTextOut( ""+SecsToGo+" / "+NumToStr( TimeFrame, 1.0 ), x, y );
_SECTION_END();