There are a few factors that you have to consider when setting up the Expert Advisor (EA) to run on your MT4 simulator. With proper setup and configuration, the simulated result will yield positive result when run the EA on live account
Below are some configurations for your consideration.
1) The choice of simulation chart period. The commonly used charting period is 1 minute chart (M1), 5 minutes chart (M5), 15 minutes chart (M15), 1 hour chart (H1), 4 hour chart (H4) and 1 day chart (D1). From my experiences, simulating with M1 period result will produce accurate results from your EA. Any chart time frame greater then 1M, will result in frame stepping by the simulator. The simulator will step thru the time frame and aggregate the closet to your number, which can cause false breakout and unrealistic result.
2) Use fully downloaded M1 result from a data server. Many broker nowadays support client to backwards download data from now to 2002 (at least last 10 years of data). Once full M1 data downloaded, you can use period converter to convert to M5, M15, H1, H4 and D1 database. This will complete the database that is used by simulator when called to run back testing for your EA.
3) Most EA are ready to be used for live and demo trading. However, if you are modifying a EA that is meant for live trading, you need to include below 3lines of code to let it run in back testing mode by the simulator.
line1: static datetime nextRund
line2: if( nextRund > TimeCurrent() ) return(0);
line3: nextRund = TimeCurrent() + 30;
The above codes with delay your program by 30 seconds before it proceed to executed the next program. You cannot use while loop or jump program as it is non static and will stop the moment the program executed the last line of code. The above actually set a static variable and this variable is match with the time in the PC. As this variable is static, it will stay in memory when your program exist and execute again. The 30 is default in terms of seconds. This may be difficult at first, but after some trial and error, you will get use to it and use different time seconds to your advantage.
4) Delay is non static but it can be use to temporarily stop the program while running other function. This is extremely using if you are running multiple EA and executing on a single data server. By setting different delays, your program will execute at different time thus not congesting the order send to your server. This act as multitasking your order and does average your CPU utilisation over time.
The above are some factor to consider. Thank you
Source http://www.bestforexranking.com
Effective Strategies to Resolve Marital Conflicts
Navigating marital conflicts can be challenging, but effective communication is key to resolving issues without escalating tensions. This guide offers practical advice on handling high-stakes conversations to strengthen your relationship. By focusing on clear communication, understanding, and empathy, you can address conflicts constructively and avoid common pitfalls that lead to misunderstandings and hurt feelings.Navigating Breakups: Practical Advice
Breaking up is a universal experience, yet finding solid advice on how to handle it can be challenging. While long-term couples might not have the insights you need, those who have navigated breakups and emerged stronger can offer valuable guidance. This article explores different perspectives on managing breakups effectively.Relationship Advice for Rekindling Love
Breakups are tough, and most of us will face one at some point. Love is incredible, but when it falters, it can leave us feeling lost. Yet, there's hope. A breakup can be a chance to rebuild a stronger, more fulfilling relationship. Here's how to navigate this journey.