RMO code for Amibroker 4.9

#1
Pl. copy and paste :

_SECTION_BEGIN("RMO");
SwingTrd1 = 100 * (Close - ((MA(C,2)+
MA(MA(C,2),2)+
MA(MA(MA(C,2),2),2) +
MA(MA(MA(MA(C,2),2),2),2) +
MA(MA(MA(MA(MA(C,2),2),2),2),2) +
MA(MA(MA(MA(MA(MA(C,2),2),2),2),2),2) +
MA(MA(MA(MA(MA(MA(MA(C,2),2),2),2),2),2),2)+
MA(MA(MA(MA(MA(MA(MA(MA(C,2),2),2),2),2),2),2),2)+
MA(MA(MA(MA(MA(MA(MA(MA(MA(C,2),2),2),2),2),2),2), 2),2)+
MA(MA(MA(MA(MA(MA(MA(MA(MA(MA(C,2),2),2),2),2),2), 2),2),2),2))
/10))/(HHV(C,10)-LLV(C,10));
SwingTrd2=
EMA(SwingTrd1,30);
SwingTrd3=
EMA(SwingTrd2,30);
RMO= EMA(SwingTrd1,81);
Buy=Cross(SwingTrd2,SwingTrd3);
Sell=Cross(SwingTrd3,SwingTrd2);
Bull_Trend=EMA(SwingTrd1,81)>0;
Bear_Trend=EMA(SwingTrd1,81)<0;
Ribbon_kol=IIf(Bull_Trend,colorGreen, IIf(Bear_Trend,colorRed, colorBlack));
Plot(4, "ribbon", Ribbon_kol, styleOwnScale|styleArea|styleNoLabel, -0.5,100);
Impulse_UP= EMA(SwingTrd1,30) > 0;
Impulse_Down= EMA(SwingTrd1,81) < 0;
bar_kol=IIf(impulse_UP, colorBlue, IIf(impulse_Down, colorRed,IIf(Bull_Trend, colorRed, colorBlue)));
Plot(Close,"Close",bar_kol,styleBar | styleThick );
shape = Buy * shapeUpArrow + Sell * shapeDownArrow;
PlotShapes( shape, IIf( Buy, colorBlue, colorRed ),0, IIf( Buy, Low, High ) );
_SECTION_END();
 
#2
And here is Intraday Automatic Exploration (set time to 5 Min.) i've coded with audio alerts.
Gives live signals if you have Real Time Streaming Data -eSignal or Quote.com.
Pl do not use with PIB/Odin convertors or Yahoo data (datafetchers et. all) - will waste a good system.

Following is RMO training link. Please go through the video at least 3 times before using RMO.
http://www.equis.com/customer/training/rmo/

Enjoy!


//RMO EXPLORATIONS - INTRADAY
_SECTION_BEGIN("RMO");
SwingTrd1=100 *
(Close - ((MA(C,2) +
MA(MA(C,2),2) +
MA(MA(MA(C,2),2),2) +
MA(MA(MA(MA(C,2),2),2),2) +
MA(MA(MA(MA(MA(C,2),2),2),2),2) +
MA(MA(MA(MA(MA(MA(C,2),2),2),2),2),2) +
MA(MA(MA(MA(MA(MA(MA(C,2),2),2),2),2),2),2) +
MA(MA(MA(MA(MA(MA(MA(MA(C,2),2),2),2),2),2),2),2) +
MA(MA(MA(MA(MA(MA(MA(MA(MA(C,2),2),2),2),2),2),2), 2),2) +
MA(MA(MA(MA(MA(MA(MA(MA(MA(MA(C,2),2),2),2),2),2), 2),2),2),2)) / 10)) /
(HHV(C,10) - LLV(C,10));
SwingTrd2=EMA(SwingTrd1,30);
SwingTrd3=EMA(SwingTrd2,30);
RMO = EMA(SwingTrd1,81);
New_Bullish = IIf(RMO > 0 AND Ref(RMO, -1) <= 0,1,0);
New_Bearish = IIf(RMO < 0 AND Ref(RMO, -1) >= 0,1,0);
New_Buy_Arrow = IIf(Cross(SwingTrd2,SwingTrd3),1,0) AND RMO >0;
New_Sell_Arrow = IIf(Cross(SwingTrd3,SwingTrd2),1,0) AND RMO <0;
New_Blue_Bar = IIf(Cross(SwingTrd2,0),1,0) AND RMO >0;
New_Red_Bar = IIf(Cross(0,SwingTrd2),1,0) AND RMO <0;
Old_Bullish = IIf(RMO > 0 AND Ref(RMO, -1) > 0,1,0);
Old_Bearish = IIf(RMO < 0 AND Ref(RMO, -1) < 0,1,0);
New_Buy_Bar = IIf(Ref(New_Buy_Arrow,-1) AND C > Ref(H,-1), 1, 0);
New_Sell_Bar = IIf(Ref(New_Sell_Arrow,-1) AND C < Ref(L,-1), 1, 0);
P_Buy = (Ref(RMO,-1) > 0) AND (Ref(New_Blue_Bar,-1) > 0);
P_Sell= (Ref(RMO,-1) < 0) AND (Ref(New_Red_Bar,-1) > 0);
CBR = RMO;
CBS2= SwingTrd2;
CBS3= SwingTrd3;
PBR = Ref(RMO,-1);
PBS2= Ref(SwingTrd2,-1);
PBS3= Ref(SwingTrd3,-1);
New3CBuy = ((CBR > 0) AND (CBS2 >0) AND (CBS2 > CBS3) AND ((PBR <= 0) AND (PBS2 <=0) AND (PBS2 <= PBS3)));
New3CSell= ((CBR < 0) AND (CBS2 <0) AND (CBS2 < CBS3) AND ((PBR >= 0) AND (PBS2 >=0) AND (PBS2 >= PBS3)));
New_Arrow_New_Bar_Buy = ((CBR > 0) AND (CBS2 >0) AND (CBS2 > CBS3) AND ((PBS2 <=0) AND (PBS2 <= PBS3)));
New_Arrow_New_Bar_Sell= ((CBR < 0) AND (CBS2 <0) AND (CBS2 < CBS3) AND ((PBS2 >=0) AND (PBS2 >= PBS3)));
B1=New_Buy_Bar;
S1=New_Sell_Bar;
B2=New3CBuy;
S2=New3CSell;
B3=New_Buy_Arrow;
S3=New_Sell_Arrow;
B4=New_Buy_Arrow;
S4=New_Sell_Arrow;
B5=New_Blue_Bar;
S5=New_Red_Bar;
B6=New_Bullish;
S6=New_Bearish;
Buy= (B1 OR B2 OR B3 OR B4 OR B5 OR B6) ;
Sell= (S1 OR S2 OR S3 OR S4 OR S5 OR S6);
Filter=Buy OR Sell;
SetOption("NoDefaultColumns", True );
AddTextColumn(Name(),"Security",1.2, colorDefault, colorDefault, 90);
AddColumn( DateTime(), "Date", formatDateTime, colorDefault,colorDefault,100);
AddColumn(IIf(B1,66,IIf(S1,83,32)),"New Trade Bar", formatChar, colorWhite, bkcolor =IIf(B1, colorGreen,IIf(S1,colorRed,colorDefault)));
AddColumn(IIf(B2,66,IIf(S2,83,32)),"New3C", formatChar, colorWhite, bkcolor =IIf(B2, colorGreen,IIf(S2,colorRed,colorDefault)));
AddColumn(IIf(B3,66,IIf(S3,83,32)),"New Arrow+Bar", formatChar, colorWhite, bkcolor =IIf(B3, colorGreen,IIf(S3,colorRed,colorDefault)));
AddColumn(IIf(B4,66,IIf(S4,83,32)),"New Arrow", formatChar, colorWhite, bkcolor =IIf(B4, colorGreen,IIf(S4,colorRed,colorDefault)));
AddColumn(IIf(B5,66,IIf(S5,83,32)),"New Bar", formatChar, colorWhite, bkcolor =IIf(B5, colorGreen,IIf(S5,colorRed,colorDefault)));
AddColumn(IIf(B6,66,IIf(S6,83,32)),"New RMO", formatChar, colorWhite, bkcolor =IIf(B6, colorGreen,IIf(S6,colorRed,colorDefault)));
AlertIf( Buy, "SOUND C:\\Windows\\Media\\chimes.wav", "Audio alert", 1, 1+8 );
AlertIf( Sell, "SOUND C:\\Windows\\Media\\ding.wav", "Audio alert", 2, 1+8 );
_SECTION_END();
 
Last edited:
D

datafetchers

Guest
#3
Dear Sudhir,

Thanks for modifying RMO from amibroker forum.

I don't think there is any problems with DataFetchers.com utility if you have moderate config like Windows XP-SP2 with Minimum of 256MB RAM which is recommended for Windows XP itself while, 512MB RAM is good for normal operation under Windows XP.

Anyway, it is your personal recommendation, you must be true but if you can tell problems, we can improve.

Thanks for comments...

Regards,

DataFetchers
 
#4
Dear Sudhir,

Thanks for modifying RMO from amibroker forum.

I don't think there is any problems with DataFetchers.com utility if you have moderate config like Windows XP-SP2 with Minimum of 256MB RAM which is recommended for Windows XP itself while, 512MB RAM is good for normal operation under Windows XP.

Anyway, it is your personal recommendation, you must be true but if you can tell problems, we can improve.

Thanks for comments...

Regards,

DataFetchers
I have nothing personal against datafetchers or teksignal or nidhidata . It's only that indiabulls PIB software which is designed purposely to delay writing data in the client data folder. When one has both data streaming (eSignal and PIB converted) in two windows on same screen, the difference is very real and important. Importance being in the fact that if you have a system having decision making parameters like an event 20 seconds before bar completion,it can lead to even a good system giving bad signals.

One can argue as to how many traders need that kind of accuracy. But then only 5% traders make money, rest being the contributors (myself included in the 95% 'fodder').

I've an interesting recent example of importance of timely data. If you see the charts of last
15 minutes of trade on 12th April (F&O segement of NSE), you will see the volume breakout in majority of single stock futures (Hamzei intraday volume breakout parameters) which could mean a lot before one decides to square off an intraday position at 3:10pm or at 3:29pm.

I have read from various posts about your capability in handling challenges. If you really want to add value to converters, i think that you should try to capture the time & sales data also from PIB so that it can be reviewed any time which imho is most critical aspect of uasish's coining of term "Conceptual Change" in technical trading.

with best regards.
 
Last edited:
D

datafetchers

Guest
#5
Dear Sudhir,

Thanks for valuable information on trading, Yes only data is important if you are doing intraday trading, only TRUE and GOOD data can give you money, if it is fast and accurate with time.

Ours is converters, alternatives for live data and in no way it is RT data from either source like PIB, Yahoo, NSE, BSE, MCX etc. But in case of ODIN, it gives almost live data only 10 Secs delay which can be reduced in options to get even faster data.

So simple is, if you are getting and hope of getting more from stock market or commodity market from Live, Accurate data, you must go for paid data vendors who is taking charges from Rs. 500 PM to 8000 PM depending on capacity to earn of individual. If that amount is like brokerage to anybody, person must go for that, absolutely no alternatives.

But if person is not such capable in term of Technical analysis and money, he may try for alternatives like us or go for EOD.

Regarding your second suggestion, of taking data from PIB of sales etc. again it is dangerous if you are not getting perfect data in case of intraday data, it is delayed but accurate while in sales etc. data, it changes so fast that there is always chance of missing updates which is dangerous for trading decision so better, don't take that way.

Anyway, I strongly suggest those who is making money due to good data, never go for alternative but if you are starters, learners or slow money maker, try for alternatives like us.

Regards,

DataFetchers.
 
#9
Hi sudhir ji

Error is:

ROM:

Sell= (S1 OR S2 OR S3 OR S4 OR S5 OR S6);
Filter=Buy OR Sell;
SetOption("NoDefaultColumns",True);
AddTextColumns(Name(),Security",1.2ColourDefault,C o
------------------------^

Error 31
Syntax error,expecting')or','

This ir the Error

Thanks Pramendra
 
#10
Hi sudhir ji

Error is:

ROM:

Sell= (S1 OR S2 OR S3 OR S4 OR S5 OR S6);
Filter=Buy OR Sell;
SetOption("NoDefaultColumns",True);
AddTextColumns(Name(),Security",1.2ColourDefault,C o
------------------------^

Error 31
Syntax error,expecting')or','

This ir the Error

Thanks Pramendra
There is extra space at last two letters of last line you have quoted - C o.
Delete this space so that it becomes Color (instead of C olor) or copy the corrected code.
Also note that the word is Color and not Colour in the AFL.

Pl. feel free to ask for any further clarification, if required.
 
Last edited:

Similar threads