After spinning up my new Windows VPS on AWS and installing my MetaTrader 4 platform from Pepperstone, I found after opening a few charts and applying an Expert Advisor that things started getting quite sluggish. And I asked myself the question, “How can I make my MetaTrader 4 instance faster?

Here are some things I tried to make my MetaTrader 4 run faster, try them and see how they work for you and your system:

  1. Increase RAM
  2. Increase virtual CPUs
  3. Minimise VPS distance

Let’s dive into these points in a little more detail.

Optimise Your VPS

Choosing to change hardware on your Windows VPS will bring about the most evident change when you optimise your VPS, but it should be done as a last resort because all three options listed below can incur additional charges.

Increase VPS RAM

Out of the three sub-points raised in this section this option will be the one that when changes are made it will make it really fast. However, if you increase the size of your RAM, you similarly will be increasing your VPS costs.

How much RAM should you have?

Unfortunately the answer depends on how many charts you are running Expert Advisors, the best way to know how much is to start small and then keep increasing the VPS RAM until you’ve achieved what you desire.

Thankfully, with AWS this is relatively easy as all you need do is spin up a new Windows VPS instance with different instance settings. Personally I prefer the t3 instances as I’ve found these to run faster than the t2 instances.

Amazon AWS allows you to spin up new instance with different RAM settings, you can start from as little as 512MB of RAM and 3904GB of RAM!

Amazon AWS allows you to spin up new instance with different RAM settings, you can start from as little as 512MB of RAM and 3904GB of RAM!

Increase Virtual CPUs

Similar to increasing the size of RAM, another option that can help us optimise our MetaTrader 4 instance is increasing the number of virtual CPUs that process our Expert Advisors.

Perhaps the best way to illustrate increasing CPUs is to imagine that we’re in a store and everybody is rushing to the teller. If customers have only one item to purchase then the teller can process our purchase quickly and move to the next customer, but if a customer has lot of purchases then the teller must add up all their purchases (which then blocks all the other customers from having their purchases processed). It’s not until the teller has finished with the larger customer that it then can proceed to the next customer.

By adding more virtual CPUs it is the equivalent of adding more tellers in our illustration. If then a customer has a large number of purchases to process, the other customers can proceed to the next teller to have their purchases processed.

You will be able to tell if you need more virtual CPU if when you open up your system’s Task Manager you see that the CPU value is constantly at 100%.

If your Windows VPS is constantly at 100% CPU it is blocking your Expert Advisors and causing them to be delayed.

If your Windows VPS is constantly at 100% CPU it is blocking your Expert Advisors and causing them to be delayed.

And just as we saw above with Windows VPS we can create a new Windows VPS at the click of a button and test which instance works best with our set up.

Minimise VPS Distance

Out of the two other hardware changes you can make to optimise your VPS speed this is perhaps the one with the least impact, but is still important for you to consider.

With Amazon AWS Windows VPS instances you have the option of setting up your VPS in several locations all around the world.

Change the location of your VPS instance to be either closer to where you are located, or closer to your forex exchange.

Change the location of your VPS instance to be either closer to where you are located, or closer to your forex exchange.

The question you need to ask when considering this option is: what’s the most important factor to you - speed of execution or speed of operation?

Speed of Execution

For most traders they want their order to be routed quickly to the exchange. The way you can check how fast your order is being routed to the forex exchange of your broker is within MetaTrader 4 clicking on File > Open an Account which should bring up a dialog box like so:

Note the ping times on the right-hand side. If you’re looking for speed of execution with your forex trading system you will want to keep those ping times as small as possible.

Note the ping times on the right-hand side. If you’re looking for speed of execution with your forex trading system you will want to keep those ping times as small as possible.

To improve the time to execution of your script you will want to ensure the location you’ve set up has the smallest ping time possible. You will likely find that most forex brokers have an exchange in New York and therefore the North Virginia location would be the closest.

Speed of Operation

While speed of execution is very important to the success of your automated forex trading system when you are first starting out you might want to have the location of your Windows VPS closer to where you are. This enables you to get familiar with running a VPS as well as allows you to quickly make adjustments to the system when needed.

The beauty of Amazon VPS is because of their size you should easily be able to find a location either within your country or state, or one nearby.

Conclusion

Within this article we explored three ways you can optimise your MetaTrader platform by exploring the hardware options available - increasing RAM, increasing the number of virtual CPUs and minimising the distance between your server and the exchange (or you and your server).

It is very easy to test all three variables within Amazon AWS and as Amazon only charges by the second you could easily spin up a server, test to see how it performs, and then terminate the instance and spin up another one. Within a matter of about an hour you would have a good solid understanding of what your set up needs to run - just be sure to test during market hours.

You might want to read our next article on improving the performance of your MetaTrader platform by tweaking the settings .