How many expert advisors are running in this example?

 

Assume an expert advisor named "EA1".

Attach the expert advisor to Chart1.

Attach the expert advisor to Chart2.

Attach the expert advisor to Chart3.

QUESTION: How many expert advisors are now running?

QUESTION: If there are 3 expert advisors now running, does this mean when EA1 on Chart1 gets a market tick, the other EAs are not processing?

QUESTION: If EA1 on Chart1 TAKES A REALLY LONG TIME TO PROCESS, the next market tick might be for Chart2 or maybe Chart3 or maybe Chart1 again?

Thank you. I'm trying to understand how MetaTrader works. Sometimes it's like throwing balloons at a statue in the dark.

 

C

> QUESTION: How many expert advisors are now running?

3 instances

> QUESTION: If there are 3 expert advisors now running, does this mean when EA1 on Chart1 gets a market tick, the other EAs are not processing?

No - all the EA instances get the tick

> QUESTION: If EA1 on Chart1 TAKES A REALLY LONG TIME TO PROCESS, the next market tick might be for Chart2 or maybe Chart3 or maybe Chart1 again?
Any EA that takes long enough in its start() function can miss a tick or ticks - not fatal, so long as you know when to RefreshRates()

> Sometimes it's like throwing balloons at a statue in the dark.

Or... herding cats?

Good luck - and keep throwing :)

-BB-

 
BarrowBoy wrote >>

C

> QUESTION: How many expert advisors are now running?

3 instances

> QUESTION: If there are 3 expert advisors now running, does this mean when EA1 on Chart1 gets a market tick, the other EAs are not processing?

No - all the EA instances get the tick

> QUESTION: If EA1 on Chart1 TAKES A REALLY LONG TIME TO PROCESS, the next market tick might be for Chart2 or maybe Chart3 or maybe Chart1 again?
Any EA that takes long enough in its start() function can miss a tick or ticks - not fatal, so long as you know when to RefreshRates()

> Sometimes it's like throwing balloons at a statue in the dark.

Or... herding cats?

Good luck - and keep throwing :)

-BB-

Thank you. A quick follow-up: When all 3 EAs get the tick, does this mean each EA is processing separately and simultaneously with the other EAs (at least to the extent that the operating system is time slicing across all of its processes)?

 

> When all 3 EAs get the tick, does this mean each EA is processing separately and simultaneously with the other EAs (at least to the extent that the operating system is time slicing across all of its processes)?

Yes

-BB-

Reason: