Discussion of article "Creating a Multi-Currency Multi-System Expert Advisor"

 

New article Creating a Multi-Currency Multi-System Expert Advisor has been published:

I believe there are quite a few traders who trade more than one trading symbol and use multiple strategies. This approach does not only allow you to potentially increase your profit but to also minimize the risk of substantial drawdown upon efficient money management. When creating an Expert Advisor, the first natural step in checking the efficiency of the program strategy is optimization in order to determine the best input parameters.

With parameter values identified, Expert Advisors would technically be ready for trading. However that would leave one important question unanswered. What would testing results be like if a trader could put all his strategies together in a single Expert Advisor? The realization that drawdown on several symbols or strategies might at some point overlap and result in a ghastly total drawdown or even a margin call may sometimes come as a nasty surprise.

This article introduces a concept of creating a multi-currency multi-system Expert Advisor that will allow us to find an answer to this important question.

In general terms, the structure of the Expert Advisor is as follows:

Fig. 1. Structure of the multi-currency multi-system Expert Advisor

Fig. 1. Structure of the multi-currency multi-system Expert Advisor

Author: Maxim Khrolenko

 

Thats Great for Experts, but too much complicated for new bies, if anybody worked on this EA, kindly email me alnoorgfx@gmail.com


Kind regards

 
Good article. Market moves in dynamic way and no one expert adviser that use single strategy will work forever. Combining various strategies will increase the success rate of auto trading.
 
Good article, but can't you have the same result, and easier, with a simple EA using several graphs (one for each group of instruments)?
 
You would have to have at a min. 23 accounts running at a min 46 bots buy and sell hedge and re-hedge exit and hedge more. It's a never ending cycle, very complex monitoring each and every position in a way as not to erase ones signal from profitability, not as easy as the article above, its a very nice proof of concept. I love it.
 
q.import:
You would have to have at a min. 23 accounts running at a min 46 bots buy and sell hedge and re-hedge exit and hedge more. It's a never ending cycle, very complex monitoring each and every position in a way as not to erase ones signal from profitability, not as easy as the article above, its a very nice proof of concept. I love it.

As I stated before, you have the same result, and easier, with a simple EA using several graphs and just one account, to trade more than one trading symbol and use multiple strategies.
The only condition is: your algorithm must check the symbols and do specific operations, not generic, just for the group symbol you define, and you must have input parameters to define each group of symbols.

For instance, imagine a simple Moving Average Crossing EA, you just need adapt the code to be as simple as code below. This will enable any EA to be multi-currency multi-system in one account, and you can have 12 symbols and 4 groups of independent backtesting adjustment (period_MA1 and period_MA2).

// Structure of the multi-currency multi-system Expert Advisor using 1 account and multiple graphs

input string symbol1="EURUSD"; // graph group symbol 1 
input string symbol2="EURJPY"; // graph group symbol 2  
input string symbol3="USDJPY"; // graph group symbol 3  
int period_MA1=14; // period of moving average 1
int period_MA2=9; // period of moving average 2

// algorithm symbol test (execute the strategy algorithm testing the name of the symbol)
if (...==symbol1 || ...==symbol2 || ...==symbol3) {
   ...
}
 
figurelli:

As I stated before, you have the same result, and easier, with a simple EA using several graphs and just one account, to trade more than one trading symbol and use multiple strategies.
The only condition is: your algorithm must check the symbols and do specific operations, not generic, just for the group symbol you define, and you must have input parameters to define each group of symbols.

For instance, imagine a simple Moving Average Crossing EA, you just need adapt the code to be as simple as code below. This will enable any EA to be multi-currency multi-system in one account, and you can have 12 symbols and 4 groups of independent backtesting adjustment (period_MA1 and period_MA2).

I agree its great have one EA for 12 symbols even more if your into exotics. Indicator data is not accurate. Example IBFX opens after FXCM and FXCM open after Dukascopy the moving average would be off, so would all the other indicators. Its a parlor trick, Real Economic data and Economic Indicators that don't rely on opening or closings but price alone. technical indicators are great psychological indications of public perception of price for speculation. The market place is so much bigger and correlated and to rely on only 1 ea with a couple of tricks to get by would only result in a bad EA later down the road, it may work for 2010 but not in 2012 nope thats not for me. Multiple EA's hedging against psychological perception vs hard economic data positions, responding to Commodities , Securities, Gov Debt. pushing hard numbers and seeing how the world's market places respond and adjusting my position accordingly with the release of the data against all market sectors. Its very complex. MQL5 Language has come alone way and I love to see progress such as the article I read. I see progress that allows people to only be limited by there imagination. I am building on the code and developing a framework like I said its a great proof of concept. I see amazing things coming on the road ahead for metaqoutes and the people who dedicate there time.
 

Hello.

This code of EA is exactly what I'm looking for.

However, I'm doing it semi-auto with my custom EA with 15 symbols

though, I'm only controlling 2-3 at most. Would there be any version for

MT4?

 

Thanks. 

 

Furthermore, I'm not using any indicators; my account equity is my indicator...

 
I tested strategy A for GBPUSD for same period with same settings in mt4 but my results are not same. Any idea why?
 

i have a simple question here.  If, say, the code within the OnTimer takes more than 1-second to execute on average (such as 2 or 3 seconds), should i change the EventSetTimer within OnInit to a higher value (such as 5 or 6 seconds) ?  Thanks.

==========================================

int OnInit()

  {

   //--- Set event generation frequency

   EventSetTimer(1); // 1 second

   // ...

   return(0);

  }

Reason: