To help speed up the performance of your MetaTrader 4 software on your VPS or computer there are certain settings which you can disable. By reducing the number of settings improve the performance of your MetaTrader software and subsequently the running of your Expert Advisor.
The 5 things you can do to reduce the consumption of resources of MetaTrader 4 on your VPS or computer are:
Switch news offReduce bar countDisable notifications & emailDisable eventsReduce account history
Here’s how you can check each of those tasks.
To access and tweak your settings navigate to the main menu bar found at the top of MetaTrader once you open it and click on Tools > Options, or using your keyboard select Ctrl+O.
To adjust your MetaTrader 4 settings, select the Options item from the Tools menu bar
We will now progress through each of the MetaTrader option tabs available in this modal window which has popped up to see what we can change to help maximise the use of our MetaTrader platform.
Switch News Off
I use the server settings to either change my main password, or investor password (to verify my trading account with MyFXBook) or to disable the news.
Therefore, unless you’re needing to see the news in your MetaTrader instance you can reduce the load of the system having to ping and fetch the news by unticking the Enable news checkbox as shown in the image below.
Disable news feed
Reduce Bar Count
In the next tab across labelled Charts we can change how elements on the chart are displayed. If you are running a Windows VPS and would like to optimise the speed of your system then you can disable most of the options here.
For example, do you need to see the open, high, low and close (Show OHLC) values on your charts?
Do you need to see the OHLC values of the currency pairs your Expert Advisor is running?
Personally, I don’t need to see the OHLC values, or even where the system entered the market. As the purpose of my Windows VPS is to execute the trades according as to how I’ve structured the buy and sell methods of my system.
I’m not using my Windows VPS set up to visually trade anything. If something is wrong then I would switch these options on to check that everything is working as expected, but as they are not needed to help execute a trade I have elected to remove them.
One very important option within this Charts section is loading the correct number of bars onto the chart. Setting this value correctly requires you to know how many bars are needed for your Expert Advisor to calculate indicator values.
If I have a system that uses a 250 bar moving average then I wouldn’t want to load any less than 250 bars. As my Expert Advisor for this Windows VPS doesn’t rely on too many bars I have set this value to a small value of 500 for both the maximum number of bars the system is to hold in memory in its history, and the maximum number of bars to see in a chart.
Change these values to reflect the maximum number of bars your Expert Advisor needs to properly calculate indicator values
Disabling Notifications & Email
The next couple of tabs labelled Notifications and Email all relate to how you want the system to notify you of trades.
I have in the past, before MyFXBook came along, used email to help report on the health of my system by having it analyse how trades in the last 24 hours performed.
However, now that I can easily analyse my trades using a third-party provider there’s no need for the MetaTrader system which is executing my trades to notify me at the same time. This helps to minimise the load placed on the system.
If you want the MetaTrader app to notify you of trades turn this feature on, otherwise don’t enable
The only reason I would use the Email settings today would be if I didn’t trust my VPS. I would be setting up an email alert in my OnDeinit function to see how many times my VPS disconnects. As this can be a real problem for my system if I’m finding my trades are not executing due to not being connected to the market in the first place.
And there may be legitimate reasons for why I have been disconnected by my VPS. Perhaps I’ve reached my limit on the amount of bytes, or have exceeded a threshold with CPU processing. If you’re finding this is the case you may want to check my other article on how to make your VPS faster.
Similar to notifications, unless you really need to be notified through email on how your Expert Advisor is going you may want to disable this feature.
The only other setting which you could also disable is found in the Events window. Unless you need to hear what is happening with your Expert Advisor placing trades, or when your platform has disconnected from the server then there really is no need to have this resource on.
If a trade does not make a sound, does it make a trade? Of course! Therefore, there’s no real need for Events to be enabled.
Reduce Account History
If your Expert Advisor needs to go back into your account history then this last option may not be applicable. But, if your script doesn’t rely on your historical trades, or you only need to look back over the last X number of days of trades then there’s an option to reduce the number of historical trades shown in your Account History tab.
By reducing the number of days in your Account History tab any code looping through historical trades such as the code below will take less time to process:
To reduce the number of trades in your Account History simply click on the Account History tab in your Terminal window pane, then right-click anywhere and you should see the following context menu pop-up. Select Custom Period as this provides a more options than the context menus Last 3 Months and Last Month options.
Right-click in Account History and select Custom Period for more options
Finally, a pop-up window will prompt you for the Custom Period you would like to select and depending on how far back your Expert Advisor needs history you would select the most appropriate option. After selecting your option click OK, and your Account History has been reduced to the new setting.
Select the appropriate Account History needed
Some settings as you have seen are very important to enable, whereas most just help to lighten the load on your Windows VPS. The important thing to consider with each setting is how it will impact your system’s ability to execute trades. While some settings are not important for some use cases, they may be some important for you.