Jump to content

Welcome to the new Traders Laboratory! Please bear with us as we finish the migration over the next few days. If you find any issues, want to leave feedback, get in touch with us, or offer suggestions please post to the Support forum here.

  • Welcome Guests

    Welcome. You are currently viewing the forum as a guest which does not give you access to all the great features at Traders Laboratory such as interacting with members, access to all forums, downloading attachments, and eligibility to win free giveaways. Registration is fast, simple and absolutely free. Create a FREE Traders Laboratory account here.

gorachand

Adv Get MOB Easy Language Code

Recommended Posts

Hello,

 

Given below is the Easy language code for the Adv Get indicator Make or Break (MOB)

But it gives compiling errors when compiles in Multicharts which uses Easy language.

I tried replacing '|' with',' but that still did not help.

Can anybody help?

 

SECTION_BEGIN("MOB Simulation");

SetChartOptions(0,chartShowArrows|chartShowDates);

 

_N(Title = StrFormat("{{NAME}} - {{INTERVAL}} {{DATE}} Open %g, High %g, Low %g, Close %g (%.1f%%) {{VALUES}}", O, H, L, C, SelectedValue( ROC( C, 1 ) ) ));

 

//Plot Colored Candles

PlotOHLC(O ,H ,L ,C ,"Price",IIf(C>O,colorGreen,colorRed),styleCandle) ;

 

Offset = 5; //Recommended to use two sheets: one with 5 and another with 7, or maybe other offset value

 

Avgmov = Offset * MA (abs(ROC(C,1)) ,20);

per = LastValue(Avgmov) ;

numberOfBars = Cum(1);

Range = 0.01;

PS = TroughBars(L, per, 1) == 0;

Title = Title + StrFormat("AVGMOV %g|%g|%g\n", Avgmov,per, numberOfBars);

 

xa = LastValue(ValueWhen (PS,numberOfBars,1)) ;//x from last trough

Ya = LastValue(ValueWhen (PS,L,1)) ;//y (Low) last trough

 

PR = PeakBars(H,per, 1) == 0;

xb = LastValue(ValueWhen (PR,numberOfBars,1)) ;//x from last peak

Yb = LastValue(ValueWhen (PR,H,1)) ;//y (High) last peak

Title = Title + StrFormat("PS %g|%g|%g|%g|%g|%g", PS,xa,ya,PR,xb,yb);

 

Trough_ReTest = abs((L/ya)-1) <Range;

Peak_ReTest = abs((H/yb)-1) <Range;

Trough_Cross = Cross(ya,C);

Peak_Cross = Cross(C,yb);

 

//UP = upSwing DN = downSwing

UP = xb>xa;//upSwing

DN = xa>xb;//DownSwing

RT23_6 = IIf(UP,yb-(yb- ya)*0.236, IIf(DN,ya+ (yb-ya)*0.236,-1e10) );

RT38_2 = IIf(UP,yb-(yb- ya)*0.382, IIf(DN,ya+ (yb-ya)*0.382,-1e10) );

RT50_0 = IIf(UP,yb-(yb- ya)*0.500, IIf(DN,ya+ (yb-ya)*0.500,-1e10) );

RT61_8 = IIf(UP,yb-(yb- ya)*0.618, IIf(DN,ya+ (yb-ya)*0.618,-1e10) );

RT78_6 = IIf(UP,yb-(yb- ya)*0.786, IIf(DN,ya+ (yb-ya)*0.786,-1e10) );

 

RT12_7 = IIf(UP,yb-(yb- ya)*1.27, IIf(DN,ya+ (yb-ya)*1.27,-1e10) );

RT16_1 = IIf(UP,yb-(yb- ya)*1.61, IIf(DN,ya+ (yb-ya)*1.61,-1e10) );

 

RT=

IIf(UP,-100* (yb-L)/(yb- ya),

100*(H-ya)/( yb-ya));//Retracement_ Value

InZone = C<yb & C>ya;//use it for filter to receive only signals that are in in the Retracement zone.

Buy = Trough_ReTest OR peak_Cross;

Sell = Peak_ReTest OR trough_Cross;

Filter = 1;

AddColumn(RT, "RT%");

AddColumn(Trough_ReTest,"TR- Test",1.0) ;

AddColumn(Peak_ReTest,"PK-Test",1.0) ;

AddColumn(Trough_Cross,"TR-Cross",1.0);

AddColumn(Peak_Cross,"PK-Cross",1.0);

//AddColumn(CdDoji( )OR CHammer(),"Candle" ,1.0);

//Plot(C,"C",1, 64);

Plot(IIf(numberOfBars>xa, ya,-1e10) ,"Bottom" ,colorBrown, 1+8);

Plot(IIf(numberOfBars>xb, yb,-1e10) ,"Top",colorBrown,1+8);

xab = IIf(xb>xa,xb, xa);

//Retracements

Plot(IIf(numberOfBars>= xab+1,RT23_6,-1e10), "R2 23.6% Retr.",5,styleLine | styleNoTitle | styleDots);

Plot(IIf(numberOfBars>= xab+1,RT38_2,-1e10), "R1 38.2% Retr.",5,styleLine | styleNoTitle | styleDots);

Plot(IIf(numberOfBars>= xab+1,RT50_0,-1e10), "ZR 50.0% Retr.",colorBlue, styleLine | styleNoTitle | styleDots);

Plot(IIf(numberOfBars>= xab+1,RT61_8,-1e10), "S1 61.8% Retr.",colorDarkRed, styleLine | styleNoTitle | styleDots);

Plot(IIf(numberOfBars>= xab+1,RT78_6,-1e10), "S2 78.6% Retr.",colorDarkRed, styleLine | styleNoTitle |styleDots);

 

// Plot the MOB Cloud

Plot(IIf(numberOfBars>= xab+1,RT12_7,-1e10), "127% ext.",colorBrightGreen, styleNoTitle | styleNoLabel | styleLine);

Plot(IIf(numberOfBars>= xab+1,RT16_1,-1e10), "161% ext.",colorBrightGreen, styleNoTitle | styleNoLabel | styleLine);

CondA=IIf(numberOfBars>= xab+1,RT12_7,-1e10);

CondB=IIf(numberOfBars>= xab+1,RT16_1,-1e10);

PlotOHLC(Condb,Condb,Conda,Conda,"",ColorRGB(30,13 0,30),styleCloud, styleNoTitle | styleNoLabel);

 

GraphXSpace = 0.5;

 

//Plot(Gauss2ord(C,5),"M5",4,1);

//GraphXSpace = 1.5;

//Title = Name()+" per = "+WriteVal(per, 1.0) +" Close = "+WriteVal(C, 1.2)+ " ("+WriteVal( ROC(C,1), 1.2)+"%)" +" Current Correction = "+WriteVal(RT, 1.0)+"%";

 

//Plot( Volume,"V", ParamColor("Color", colorBlueGrey ), ParamStyle( "Style", stylehidden| styleOwnScale | styleThick, maskHistogram ), 2 );

_SECTION_END( );

 

 

Regards,

 

Dr.Chatterjee

Share this post


Link to post
Share on other sites

use code box ! It's the number one reason for the errors . You have to see it to believe it ! Go back to your source and ask him or her to repost the same way . You can export save from your trading program to a txt file without the errors as well . Code gets lost or shuffled by just pasting in open space ! Please post back with the correct code from the source . It can be used as an example to all the wasted code on this site for the same reason !

 

Press # symbol from inside your post menu . Place code between

   X here     

 

SECTION_BEGIN("MOB Simulation");
SetChartOptions(0,chartShowArrows|chartShowDates);

_N(Title = StrFormat("{{NAME}} - {{INTERVAL}} {{DATE}} Open %g, High %g, Low %g, Close %g (%.1f%%) {{VALUES}}", O, H, L, C, SelectedValue( ROC( C, 1 ) ) ));

//Plot Colored Candles 
PlotOHLC(O ,H ,L ,C ,"Price",IIf(C>O,colorGreen,colorRed),styleCandle) ;

Offset = 5; //Recommended to use two sheets: one with 5 and another with 7, or maybe other offset value

Avgmov = Offset * MA (abs(ROC(C,1)) ,20);
per = LastValue(Avgmov) ;
numberOfBars = Cum(1);
Range = 0.01;
PS = TroughBars(L, per, 1) == 0;
Title = Title + StrFormat("AVGMOV %g|%g|%g\n", Avgmov,per, numberOfBars);

xa = LastValue(ValueWhen (PS,numberOfBars,1)) ;//x from last trough
Ya = LastValue(ValueWhen (PS,L,1)) ;//y (Low) last trough

PR = PeakBars(H,per, 1) == 0;
xb = LastValue(ValueWhen (PR,numberOfBars,1)) ;//x from last peak
Yb = LastValue(ValueWhen (PR,H,1)) ;//y (High) last peak
Title = Title + StrFormat("PS %g|%g|%g|%g|%g|%g", PS,xa,ya,PR,xb,yb);

Trough_ReTest = abs((L/ya)-1) <Range;
Peak_ReTest = abs((H/yb)-1) <Range;
Trough_Cross = Cross(ya,C);
Peak_Cross = Cross(C,yb);

//UP = upSwing DN = downSwing
UP = xb>xa;//upSwing
DN = xa>xb;//DownSwing
RT23_6 = IIf(UP,yb-(yb- ya)*0.236, IIf(DN,ya+ (yb-ya)*0.236,-1e10) );
RT38_2 = IIf(UP,yb-(yb- ya)*0.382, IIf(DN,ya+ (yb-ya)*0.382,-1e10) );
RT50_0 = IIf(UP,yb-(yb- ya)*0.500, IIf(DN,ya+ (yb-ya)*0.500,-1e10) );
RT61_8 = IIf(UP,yb-(yb- ya)*0.618, IIf(DN,ya+ (yb-ya)*0.618,-1e10) );
RT78_6 = IIf(UP,yb-(yb- ya)*0.786, IIf(DN,ya+ (yb-ya)*0.786,-1e10) );

RT12_7 = IIf(UP,yb-(yb- ya)*1.27, IIf(DN,ya+ (yb-ya)*1.27,-1e10) );
RT16_1 = IIf(UP,yb-(yb- ya)*1.61, IIf(DN,ya+ (yb-ya)*1.61,-1e10) );

RT=
IIf(UP,-100* (yb-L)/(yb- ya),
100*(H-ya)/( yb-ya));//Retracement_ Value
InZone = C<yb & C>ya;//use it for filter to receive only signals that are in in the Retracement zone.
Buy = Trough_ReTest OR peak_Cross;
Sell = Peak_ReTest OR trough_Cross;
Filter = 1;
AddColumn(RT, "RT%");
AddColumn(Trough_ReTest,"TR- Test",1.0) ;
AddColumn(Peak_ReTest,"PK-Test",1.0) ;
AddColumn(Trough_Cross,"TR-Cross",1.0);
AddColumn(Peak_Cross,"PK-Cross",1.0);
//AddColumn(CdDoji( )OR CHammer(),"Candle" ,1.0);
//Plot(C,"C",1, 64);
Plot(IIf(numberOfBars>xa, ya,-1e10) ,"Bottom" ,colorBrown, 1+8);
Plot(IIf(numberOfBars>xb, yb,-1e10) ,"Top",colorBrown,1+8);
xab = IIf(xb>xa,xb, xa);
//Retracements
Plot(IIf(numberOfBars>= xab+1,RT23_6,-1e10), "R2 23.6% Retr.",5,styleLine | styleNoTitle | styleDots);
Plot(IIf(numberOfBars>= xab+1,RT38_2,-1e10), "R1 38.2% Retr.",5,styleLine | styleNoTitle | styleDots);
Plot(IIf(numberOfBars>= xab+1,RT50_0,-1e10), "ZR 50.0% Retr.",colorBlue, styleLine | styleNoTitle | styleDots);
Plot(IIf(numberOfBars>= xab+1,RT61_8,-1e10), "S1 61.8% Retr.",colorDarkRed, styleLine | styleNoTitle | styleDots);
Plot(IIf(numberOfBars>= xab+1,RT78_6,-1e10), "S2 78.6% Retr.",colorDarkRed, styleLine | styleNoTitle |styleDots);

// Plot the MOB Cloud
Plot(IIf(numberOfBars>= xab+1,RT12_7,-1e10), "127% ext.",colorBrightGreen, styleNoTitle | styleNoLabel | styleLine);
Plot(IIf(numberOfBars>= xab+1,RT16_1,-1e10), "161% ext.",colorBrightGreen, styleNoTitle | styleNoLabel | styleLine);
CondA=IIf(numberOfBars>= xab+1,RT12_7,-1e10);
CondB=IIf(numberOfBars>= xab+1,RT16_1,-1e10);
PlotOHLC(Condb,Condb,Conda,Conda,"",ColorRGB(30,13 0,30),styleCloud, styleNoTitle | styleNoLabel);

GraphXSpace = 0.5;

//Plot(Gauss2ord(C,5),"M5",4,1);
//GraphXSpace = 1.5;
//Title = Name()+" per = "+WriteVal(per, 1.0) +" Close = "+WriteVal(C, 1.2)+ " ("+WriteVal( ROC(C,1), 1.2)+"%)" +" Current Correction = "+WriteVal(RT, 1.0)+"%";

//Plot( Volume,"V", ParamColor("Color", colorBlueGrey ), ParamStyle( "Style", stylehidden| styleOwnScale | styleThick, maskHistogram ), 2 );
_SECTION_END( );

Edited by johnnydaymon

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×

Important Information

By using this site, you agree to our Terms of Use.