Jump to content

(Question) about Multiple MT4 platform


Recommended Posts

Hi:

I am doing a lots of testing on MT4 platform with multiple currencies and various EAs and Indicators. In any given time, I am running 9-10 MT4 platforms per PC and within each brokers' platform, I have somewhere 6 currencies to as many as 28 pairs.

 

Needless to say, this makes PC to slow down A LOT.

 

I am asking friends here if anyone has a solution or suggestion as how to reduce PC to perform better in this situation.

 

1) Is there a way to use just one platform installed and using multiple executable to open different broker's platform? It seems possible since all brokers use same exact folder structure. I am wondering if having one set of folders (same structure of any MT4 platform) and point the short cuts to the master folder? Just an idea...

 

2) Any files that i can empty at the end of the day to clear cashe or temp files within MT4? I usually clean out the log files often, but it takes very little space. So, I am wondering if this is even helping.

 

3) Any other suggestion?

 

Thanks,

 

 

UPDATE:

Thanks to many friends who provide these helpful hints!

For those friends @ Indo_Invest having similar issues with their PCs, here is the listing of suggestions. I will try to update this page if more suggestion comes in, so that all information is on the first page without searching entire thread to get the information.

 

1) The values for Bars Memory and Bars per chart, will significantly reduce memory consumption and improve TCP connection stability:

Max Bars in History: 50000 (or less as per CNS: 5000)

Max Bars in Chart: 5000

 

RESTART MT4 after making the changes

 

2) Open Market Watch and click on HIDE ALL (All non used pairs on Charts will not show any further and not use up bandwidth/resources).

Then close Market Watch if not needed. You can always go back later and choose "Show All" to select new charts, just remember to

reset for "Hide All" when you're done. Turning off the market watch window DOES NOT help in this respect, so always choose to

"Hide All", once your charts are set.

 

3) Turn news feed off (if you dont need it)

 

4) Uncheck "Save deleted charts to reopen"

 

5) mt4 will load all scripts, indicators and EAs into memory when you start it, even though you might not be using them all

so, deleting unused/unnecessary indis/script/eas will help too

Edited by fx4_ever
Link to comment
Share on other sites

1) Is there a way to use just one platform installed and using multiple executable to open different broker's platform? It seems possible since all brokers use same exact folder structure. I am wondering if having one set of folders (same structure of any MT4 platform) and point the short cuts to the master folder? Just an idea...

Thanks,

Absolutely not. If you were to use a 'common' MT4 instead of launching today's 9-10, you would not gain anything, because MT4's memory footprint is fairly lean and mean, and this is not where your CPU drag (and thus slow down) is occurring, but it is rather very likely due to the EAs and indicators that you likely need to run along with the EAs. Even if you could get 1 MT4 going, CPU cycle savings would be 0, because you are still running 9-10 EAs and their associated indicators.

 

And, all that aside, assuming you are running multiple MT4 brokers, each has their own price feed and datafeed, and this is a requirement to testing multiple brokers - there is absolutely no way to have 1 MT4 session and feed it multiple price feeds. (There is multi-MT4, but this is not what you are looking for - multi-MT4 allows for multiple source price feeds within the same MT4 session - but it still gets those price feeds from the one sole broker you are connected to.)

 

 

 

2) Any files that i can empty at the end of the day to clear cashe or temp files within MT4? I usually clean out the log files often, but it takes very little space. So, I am wondering if this is even helping.

 

There are some files that build up over time, but this is not likely to be the source of your problem. If you were to do a clean install and start Day 1 with all 9-10 MT4 installs, the first hour of the speed with which it runs, is about as good as it's going to get - there are no other tweaks or downsizings you can really introduce.

 

3) Any other suggestion?

 

Thanks,

Nothing that will be significant IMO.

 

You did not mention your CPU type, but whatever CPU you have, the best performance you will attain is by having 1 MT4 install, and then running ALL the EAs & indis through that 1 broker. I suspect if you do this, you will find the machine just as slow, thereby proving that it is the EAs & indis causing the performance drag. Short of getting multiple machines - which don't even need to be quick IMO, that is pretty much your only option.

Link to comment
Share on other sites

osijek1289,

Thank you very much for details reply and suggestion. Over the years, I've tried many different option to perform the PC to work better with all the test is running, but I came to pretty much same conclusion as what you've suggested.

Thank you again, for your time. :)

Link to comment
Share on other sites

Hi All,

 

I do set below to level MT4 performance, esp while scalping. Initially tips by ATC and CNS though...

 

****************************************************

 

The values for Bars Memory and Bars per chart, will significantly reduce memory consumption and improve TCP connection stability.

 

Max Bars in History: 50000 (or less as per CNS: 5000)

 

Max Bars in Chart: 5000

 

RESTART MT4 after making the changes

 

****************************************************

 

While having set all your charts and EAs:

 

Open Market Watch and click on HIDE ALL (All non used pairs on Charts will not show any further and not use up bandwidth/resources). Then close Market Watch if not needed.

 

You can always go back later and choose "Show All" to select new charts, just remember to reset for "Hide All" when you're done. Turning off the market watch window DOES NOT help in this respect, so always choose to "Hide All", once your charts are set.

That might not work with EAs supporting multiple pairs from one chart. Give it a try though...

 

Hope that helps further ;)

 

Cheers

Edited by expat1967
Link to comment
Share on other sites

expat1967's suggestions above are completely correct - those are the steps to perform to minimize MT4's CPU and overall overhead.

 

I chose not to mention them in my original post because I have never noticed this to make any difference - the impact I suspect is very minimal, and, in comparison to the CPU cycles a EA, indi or script can consume, would be difficult to notice. If you do try it, please report back - it would be interesting to hear from someone who is pushing their PC to the limit.

 

I'm sure many have seen how MT4 slows down when there is quick price action and lots of movement occurring in many of the pairs, or, pre and post news - this is because of the large amounts of data coming in to MT4, and I suspect it's inability to deal with it quickly enough. It would be interesting if doing the hideall as suggested would have an impact here.

Link to comment
Share on other sites

Hi

 

The max number of bars are the main factor as per my experience.

 

You can push it to the limit e.g. with Pallada on 10 different charts which drives a native MT4 setup on its knees. When you limit the bars as mentioned prior it will drive just nice no visable slow down while running consistently for a whole trading week;)

 

In the end it depends what EA or Indicator you are running and how much input and resources it does require. Check with the Windows Task Manager...

 

Cheers

Link to comment
Share on other sites

Hi All,

 

I do set below to level MT4 performance, esp while scalping. Initially tips by ATC and CNS though...

 

****************************************************

 

The values for Bars Memory and Bars per chart, will significantly reduce memory consumption and improve TCP connection stability.

 

Max Bars in History: 50000 (or less as per CNS: 5000)

 

Max Bars in Chart: 5000

 

RESTART MT4 after making the changes

 

****************************************************

 

While having set all your charts and EAs:

 

Open Market Watch and click on HIDE ALL (All non used pairs on Charts will not show any further and not use up bandwidth/resources). Then close Market Watch if not needed.

 

You can always go back later and choose "Show All" to select new charts, just remember to reset for "Hide All" when you're done. Turning off the market watch window DOES NOT help in this respect, so always choose to "Hide All", once your charts are set.

That might not work with EAs supporting multiple pairs from one chart. Give it a try though...

 

Hope that helps further ;)

 

Cheers

 

Thanks, expat1967! I hope these information helps many traders reading this thread. It's all part of making Hi-Tech to work on our advantage. :)

Over night, my newly build PC had Windows upgrade and reboot itself. I hate when that happened. Of course, immediately switch the settings, so that it won't happened again. I am going to change the regedit to make sure when it reboot, automatically to logon and start all those MT4 platforms. That is on my "to do " list today. :)

 

Now, I just found out (I am bit late on the news these days..LOL), Oanda is offering Mt4 platform. Just download and setting up a few accounts for testing. They said it will be available for Live with in 2-3 month. Asian scalper won't work since Oanda's spread is very high during these sessions. But, I think it would be nice for during the day trading with low spread that Oanda usually offers.

Edited by fx4_ever
Link to comment
Share on other sites

expat1967's suggestions above are completely correct - those are the steps to perform to minimize MT4's CPU and overall overhead.

 

I chose not to mention them in my original post because I have never noticed this to make any difference - the impact I suspect is very minimal, and, in comparison to the CPU cycles a EA, indi or script can consume, would be difficult to notice. If you do try it, please report back - it would be interesting to hear from someone who is pushing their PC to the limit.

 

I'm sure many have seen how MT4 slows down when there is quick price action and lots of movement occurring in many of the pairs, or, pre and post news - this is because of the large amounts of data coming in to MT4, and I suspect it's inability to deal with it quickly enough. It would be interesting if doing the hideall as suggested would have an impact here.

 

Hi osijek1289,

I took expat1967's suggestion of changing MaxBar display to 5000 and hide all currencies from each MT4. I never thought to change this back after I ran back testing, etc., but expat reminded just now, so while I am thinking about it, I changed the settings.

I already see the difference. My PC (one that I am typing this thread) is running 6 MT4 platforms and each Platform has at least 6 to 18 currencies running with indicators and EA to the max. Many Indicators have multiple TF configuration, thus, using a lots of Algo..

But, just after changing these settings per expat's suggestion, my CPU is quiet down a lot. I can really hear it. It's very quiet now.

 

Results: Task Manger show:

Before the change: My CPU Usage were 90% + and Memory used at 2.5GB and stayed that area most of the times.

After the change: My CPU Usage now at 25-30% and Memory used at 1.50 GB give a little more or less

Link to comment
Share on other sites

Go for this... what im using

AMD Phenom 2 x 6 black edition CPU (its got six processors in one so its the max u can go for the buck)

3 GB of ddr3 (dont go for more as 32-bit cannot read over 3gb plus theres not much 64-bit stuff yet)

AMD Radeon 5800/5900 with 1gb ddr5 or better radeon 6800/6900 with 2gb ddr5 (this is very important as cpu load is due to the graphics of charts and indicators, so your shifting 70% load to the graphics board now)

 

Personally im able to run about 15 terminals and still just minimize them and be able to play a 3d game without hiccups..

 

Also make sure you do a msconfig and disable all unwated processes and startup programs.

download ramboost and every time you boot up pc.. wait for the hard drive LED to stop completely then you know everythings loaded, the optimize the ram with ramboost that defragments your ram... windows could take up 600-800 of ram, but after optimization it can go down to 300-400. so then your ready to start terminals and even play a game.

 

hope this helps... :)

Link to comment
Share on other sites

Go for this... what im using

AMD Phenom 2 x 6 black edition CPU (its got six processors in one so its the max u can go for the buck)

3 GB of ddr3 (dont go for more as 32-bit cannot read over 3gb plus theres not much 64-bit stuff yet)

AMD Radeon 5800/5900 with 1gb ddr5 or better radeon 6800/6900 with 2gb ddr5 (this is very important as cpu load is due to the graphics of charts and indicators, so your shifting 70% load to the graphics board now)

 

Personally im able to run about 15 terminals and still just minimize them and be able to play a 3d game without hiccups..

 

Also make sure you do a msconfig and disable all unwated processes and startup programs.

download ramboost and every time you boot up pc.. wait for the hard drive LED to stop completely then you know everythings loaded, the optimize the ram with ramboost that defragments your ram... windows could take up 600-800 of ram, but after optimization it can go down to 300-400. so then your ready to start terminals and even play a game.

 

hope this helps... :)

 

it depends A LOT of what you run in these MT4 :)

Q9550 with 4 (yeah despite 32 bit XP, so 3 GB DDR3) and I may overload with only few mt4.... the graphics must be just with own ram, nothing else needed - it is not 3D, CAD/CAM processing...

also do not forget "msconifg"...

AND if there are too many read/writes to the disk - manage out to set a RAMDISK - it will helps A LOT!

Edited by musketeer
Link to comment
Share on other sites

Hi osijek1289,

I took expat1967's suggestion of changing MaxBar display to 5000 and hide all currencies from each MT4. I never thought to change this back after I ran back testing, etc., but expat reminded just now, so while I am thinking about it, I changed the settings.

I already see the difference. My PC (one that I am typing this thread) is running 6 MT4 platforms and each Platform has at least 6 to 18 currencies running with indicators and EA to the max. Many Indicators have multiple TF configuration, thus, using a lots of Algo..

But, just after changing these settings per expat's suggestion, my CPU is quiet down a lot. I can really hear it. It's very quiet now.

 

Results: Task Manger show:

Before the change: My CPU Usage were 90% + and Memory used at 2.5GB and stayed that area most of the times.

After the change: My CPU Usage now at 25-30% and Memory used at 1.50 GB give a little more or less

 

Thats good to know - glad you documented the before and after.

 

It must have something to do with the high number of MT4s that you are running, or the way in which the EAs & indis are using or processing the bar count information.

 

I normally try to run MT4 as lean and mean as possible, but started to notice slowdowns in MT4 at one point, and decreasing the bars did not seem to help. Glad it worked though.

Link to comment
Share on other sites

Thats good to know - glad you documented the before and after.

 

It must have something to do with the high number of MT4s that you are running, or the way in which the EAs & indis are using or processing the bar count information.

 

I normally try to run MT4 as lean and mean as possible, but started to notice slowdowns in MT4 at one point, and decreasing the bars did not seem to help. Glad it worked though.

 

do not forget to uncheck "Save deleted charts to reopen"

Link to comment
Share on other sites

Hi;

I have weird experience and I hope someone can help me figure this out.

I have robot for testing (forex growthbot) and decided to remove it and test something else. I closed all charts and put new charts with new robot on it. After short while, I placed order from Forex Growthbot! Which I don't understand how it could be possible. I remove Forex Growthbot EA from Experts folder and its dll from Library folder, restart MT4 and now,it still open orders by EA (Forex Growthbot)! :-O

This robot is weird and devilish! >:)

Anyway, anyone have an idea why it will do that?

 

Also, what is the purpose of Toos/Options/Expert Advisors - checked on "Allow external experts imports" ? Can it be uncheck and still EA will run?

Edited by fx4_ever
Link to comment
Share on other sites

am not so sure, but in last build there is a bug which do not tells to EAs that IsAllowed - mean clicking the button for allow/stop EAs - it does not work! Also, be sure to uncheck "Save deleted charts to reopen"

but still that is not good explanation of your weird case :)

 

edit: Allow external experts imports: If there is a need to import functions from other experts or MQL4 libraries during the expert advisor operation, this option must be enabled. If it is disabled, no one of the running experts will be able to request functions from other MQL4 programs. It is recommended to disable this option when working with unknown expert advisors.

 

Also, you may check for manual confirmation both on dll calls and for trading - so it must show who trades....

Edited by musketeer
Link to comment
Share on other sites

While having a good wrap up of the setup as per the prior posts, lets not forget as well your basic infrastructure. Looking at the network specific/influencing settings it will help not only yourself as well it will benefit your broker and therefore also other traders.

 

I do run live and demo from VPS. Reason beeing, I and I assume many others just cant realize the network and CPU performance of an up to date VPS from home. My results compared 1 to 1 have shown that a MT4 on VPS performs way better than on PC. Let it be through lower latency, bandwith and CPU power.

 

Cheers

Link to comment
Share on other sites

am not so sure, but in last build there is a bug which do not tells to EAs that IsAllowed - mean clicking the button for allow/stop EAs - it does not work! Also, be sure to uncheck "Save deleted charts to reopen"

but still that is not good explanation of your weird case :)

 

edit: Allow external experts imports: If there is a need to import functions from other experts or MQL4 libraries during the expert advisor operation, this option must be enabled. If it is disabled, no one of the running experts will be able to request functions from other MQL4 programs. It is recommended to disable this option when working with unknown expert advisors.

 

Also, you may check for manual confirmation both on dll calls and for trading - so it must show who trades....

 

Thanks for your suggestion. I did disabled all possible options that I think this issue maybe connect to, but no success.

It's really getting weirder by the minute. No matter what I have changed the settings, I still getting trade from this EA.

So, I decided to reinstalled new MT4 with new account. As new installed, I did not copy any of files that belong to "Forex Growthbot". But, to my surprise, the darn thing open the trade on this new installed, new account! How is this possible?

I am glad this is just demo and not live account. I am not sure what to do. It must written something to some windows dll or something that recognize and remember mac ID or something.. I am not sure... This is driving me nut! The way it behaves, it is acting like virus, but I know it isn't.:((:((:((

Edited by fx4_ever
Link to comment
Share on other sites

wow

this EA writes for sure somewhere - on the registry and/or another files... that way was protected for expiration

get

http://www.nirsoft.net/utils/cports.html

, shut down all internet related, run the mt4 and track with cports open connections. you must have only one from mt4 on port 443 initiated by "terminal.exe"

get all other connections, and write here.... we may understand with what you are dealing with...

Edited by musketeer
Link to comment
Share on other sites

wow

this EA writes for sure somewhere - on the registry and/or another files... that way was protected for expiration

get

http://www.nirsoft.net/utils/cports.html

, shut down all internet related, run the mt4 and track with cports open connections. you must have only one from mt4 on port 443 initiated by "terminal.exe"

get all other connections, and write here.... we may understand with what you are dealing with...

Thanks, I know what I will be doing this weekend! LOL

Link to comment
Share on other sites

Thanks for your suggestion. I did disabled all possible options that I think this issue maybe connect to, but no success.

It's really getting weirder by the minute. No matter what I have changed the settings, I still getting trade from this EA.

So, I decided to reinstalled new MT4 with new account. As new installed, I did not copy any of files that belong to "Forex Growthbot". But, to my surprise, the darn thing open the trade on this new installed, new account! How is this possible?

I am glad this is just demo and not live account. I am not sure what to do. It must written something to some windows dll or something that recognize and remember mac ID or something.. I am not sure... This is driving me nut! The way it behaves, it is acting like virus, but I know it isn't.:((:((:((

 

Just a suggestion, u can download the process explorer from Micr0s0ft to check what programs are running at the background and try to catch "ForexGrowthbot" in action:

 

download: hxxp://technet.microsoft.c0m/en-us/sysinternals/bb896653

 

taipan

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...