I used the ticks example as the simplest and most illustrative to describe the general idea. The EA uses more complex algorithms.
I do not like the variant where N symbols are written in one EA because it is too cumbersome and not universal. There are several articles on this topic on the portal, and I've seen them: but I don't like big loops, arrays, copying of data, a lot of packs of variables for each symbol, etc. I want to use a simpler and more efficient, in my opinion, approach: one code of EA for each symbol (the symbol is determined by the chart, to which the EA is linked) - and each copy of the EA works in parallel with other ones. But in this case, the analytical information, which is needed for making decisions, is shared with each other.
The idea of having global variables visited me, but it is more of a procedural approach, and I want to use all the advantages of the OOP. I plan to write a separate class that would pass the necessary analytical data to Expert Advisors in the form of an array and let them make trade decisions.
I cannot say anything about the speed, I need to conduct tests. Although, I think that everything is more universal in one Expert Advisor, but it is up to you. The transfer of general analytical information through files is still possible, but ... I do not know whether this approach will give you any speed advantage, and most likely, it will only cause more problems.
Can anyone advise (on a personal basis) a broker who has CFD trading on a broad list of Russian oil stocks? I need at least 5 tickers. I have looked at many reputable companies - either the instruments are in indicative mode, or a maximum of 4 tickers are presented.
1. When will the new build of 4 come out, or will no one be fixing bugs in the near future?
2. Please fix fucking cache (either parameters or CopyClose function) in the tester 4 (just can't wait - when you change tester 's parameters or recompile, it always caches during new test)
3. is it normal that the ticket at once also inMODE_TRADES and does not exist because of4108 errorfromOrderClose (in 4ka tester (every tick) execution reachesOrderClose, and only then it returns error about non-existence of the ticket.
//+------------------------------------------------------------------+//| base_config_order OrderClose |//+------------------------------------------------------------------+int base_config_order::order_send_close()
{
if (m_ticket == 0) // тикет есть
return SEND_ZERO_TICKET
if (OrderSelect(m_ticket, SELECT_BY_TICKET, MODE_TRADES) == false) // тикет существует
if (OrderSelect(m_ticket, SELECT_BY_TICKET, MODE_HISTORY) == false)
return SEND_BAD_TICKET;
elsereturn SEND_HISTORY_TICKET;
if (IsTradeAllowed() == false)
return SEND_TRADE_DONT_ALLOWED;
if (OrderClose(m_ticket, OrderLots(), OrderClosePrice(), G_SLIPPAGE, send_color == sell_color ? buy_color : sell_color) == false) // тикет уже не существует
return SEND_CLOSE_ERROR;
return SEND_CLOSE_OK;
}
Tapochun: I can't say anything about the speed - I need to do some tests. Although, I think that everything in one Expert Advisor is more universal, but it is up to you. The transfer of general analytical information can still be done via files, but ... I do not know whether this approach will give you any speed benefits, but most likely, it will only add to problems.
I will search for a way to implement my idea for now. I will be glad to get help from experienced programmers. It cannot be implemented in new MQL4, it is more likely that I am doing something wrong.
VangoghFX: I'll be looking for a way to implement my idea in the meantime. I will be glad to get help from experienced programmers. It cannot be implemented in new MQL4, most likely I am doing something wrong.
Thank you very much for your reply.
I used the ticks example as the simplest and most illustrative to describe the general idea. The EA uses more complex algorithms.
I do not like the variant where N symbols are written in one EA because it is too cumbersome and not universal. There are several articles on this topic on the portal, and I've seen them: but I don't like big loops, arrays, copying of data, a lot of packs of variables for each symbol, etc. I want to use a simpler and more efficient, in my opinion, approach: one code of EA for each symbol (the symbol is determined by the chart, to which the EA is linked) - and each copy of the EA works in parallel with other ones. But in this case, the analytical information, which is needed for making decisions, is shared with each other.
The idea of having global variables visited me, but it is more of a procedural approach, and I want to use all the advantages of the OOP. I plan to write a separate class that would pass the necessary analytical data to Expert Advisors in the form of an array and let them make trade decisions.
What happened to MQL5 Storage? Is it a day off?
What happened to MQL5 Storage? Is it a day off?
We did a full backup. Everything is working now.
1. When will the new build of 4 come out, or will no one be fixing bugs in the near future?
2. Please fix fucking cache (either parameters or CopyClose function) in the tester 4
(just can't wait - when you change tester 's parameters or recompile, it always caches during new test)
3. is it normal that the ticket at once also inMODE_TRADES and does not exist because of4108 errorfromOrderClose
(in 4ka tester (every tick) execution reachesOrderClose, and only then it returns error about non-existence of the ticket.
I can't say anything about the speed - I need to do some tests. Although, I think that everything in one Expert Advisor is more universal, but it is up to you. The transfer of general analytical information can still be done via files, but ... I do not know whether this approach will give you any speed benefits, but most likely, it will only add to problems.
I'll be looking for a way to implement my idea in the meantime. I will be glad to get help from experienced programmers. It cannot be implemented in new MQL4, most likely I am doing something wrong.
look into VadimZhunko's data sharing library
Good afternoon.
metatrader 5 build 1010
ChartPriceOnDropped(),ChartWindowOnDropped(), ChartTimeOnDropped(), ChartXOnDropped(), ChartYOnDropped() stop working
return 0
What can it be?
Thank you very much, it looks very promising ) I'll investigate and report the results
then you will be more comfortable not using closed third-party libraries.
Use File Mapping natively without DLL