How to improve automated trading strategy results with a Scheduler

Bottom line: with a help of the Scheduler restricting our 24/5 strategy from trading on less volatile time intervals (Asian sessions), we could cut losses up to 43% while only reducing the number of trades by 22%. While the scheduler can’t improve the strategy as such, restricting the trading to only the periods of highest volatility helped – because the current strategy works best during powerful price moves.

Background. We have been testing our automated trader on GBPUSD for 8 month (test report). In all these tests, we kept the strategy running 24/5.

As our analysis showed, there have been frequent considerable losses when the strategy had a position open by the Rollover after the New York close (5PM EST). When the Rollover started, the spread was increasing from normal (~1 pip) to tens of pips in a matter of several ticks. Making trade closing without losses impossible even for our tick-based strategies.

However, this pattern is completely predictable and so, these losses are avoidable if we use time scheduling.

In the latest release of our software, we implemented a Scheduler, which forbids opening of new trades during a specified time interval – even if all market entry criteria are otherwise met.

How to control Automated Trader with a Scheduler
Automated Trader control with a Scheduler

Use the Scheduler is very easy. Use the Stop at and Resume at controls to specify the beginning and the end of the time interval when you don’t want the automated trader to be active, then check the Restrict trading by time box.

You can enable/disable the Scheduler and change the times also during a running simulation.

The times are entered in UTC. The maximum duration of the restriction is 24 hours. If you enter the same time into both controls, there will be no restrictions.

If there is an active trade when the time restriction starts, the position will be closed.

To test the Scheduler, we re-ran the April 2021 and May 2021 tests with the trading restriction time interval set to 20.40-22.00 UTC.

As expected, we could cut losses considerably: 12% (114 pips) in the April test and 14% (209 pips) in the May test.

You can try this for yourself using the tick data from our tests. We suggest you use our reworked Batch Tester to speed up the testing.

Then, we re-ran the April test with the Scheduler set to pause trading for the Asian sessions (restriction period: 18.00-06.00). The idea was to mostly utilize more volatile Europe and the US sessions.

We were able to cut losses by 43% (400.2 pips) compared to the original test; with 49.8% win ratio achieved.

At first glance, this might seem logical – since we restricted trading during half of the trading day. However, we need to look at the number of trades, not time.

Here is the breakdown of the test re-run. In [] we showed the numbers of trades in the respective original tests. You can compare with the original April test.

=== Report for test: 1/6; GBPUSD; start: 2021 Apr 04 21:06:46
Total net profit 27.2 pips
Total trades 203 [236]
Profit trades 112
Loss trades 91

=== Report for test: 2/6; GBPUSD; start: 2021 Apr 25 21:07:22
Total net profit -169.8 pips
Total trades 206 [257]
Profit trades 97
Loss trades 109

=== Report for test: 3/6; GBPUSD; start: 2021 Apr 22 03:41:44
Total net profit -99.0 pips
Total trades 85 [101]
Profit trades 39
Loss trades 46

=== Report for test: 4/6; GBPUSD; start: 2021 Apr 18 21:35:35
Total net profit -4.4 pips
Profit trades 58 [142]
Loss trades 53

=== Report for test: 5/6; GBPUSD; start: 2021 Apr 11 21:12:01
Total net profit -175.1 pips
Total trades 159 [191]
Profit trades 76
Loss trades 83

=== Report for test: 6/6; GBPUSD; start: 2021 Apr 01 07:00:13
Total net profit -90.9 pips
Total trades 49 [54]
Profit trades 23
Loss trades 26

Total trades: 760. But in the original test there were 981 trades. The difference is only 22%. So 43% of the loss reduction is significant. It can be explained by greater win ratio during higher volatility periods.

Finally, we also re-ran the May test with the same trading restrictions (18.00-6.00) and the results were in line with the April ones.

With the Scheduler, we cut losses 36% (557.3 pips). But the number of trades only reduced 16% (883). the overall win ratio was 48.9%

Here is the breakdown of the May test re-run. In [] we showed the numbers of trades in the respective original tests.

=== Report for test: 1/6; GBPUSD; start: 2021 May 09 21:11:20
Total net profit -243.4 pips
Total trades 266 [321]
Profit trades 132
Loss trades 134

=== Report for test: 2/6; GBPUSD; start: 2021 May 06 02:29:45
Total net profit -101.3 pips
Total trades 113 [125]
Profit trades 59
Loss trades 54

=== Report for test: 3/6; GBPUSD; start: 2021 May 25 21:38:03
Total net profit -106.5 pips
Total trades 113 [128]
Profit trades 60
Loss trades 53

=== Report for test: 4/6; GBPUSD; start: 2021 May 23 21:18:39
Total net profit 21.6 pips
Total trades 62 [75]
Profit trades 37
Loss trades 25

=== Report for test: 5/6; GBPUSD; start: 2021 May 02 21:25:44
Total net profit -48.6 pips
Total trades 110 [130]
Profit trades 54
Loss trades 56

=== Report for test: 6/6; GBPUSD; start: 2021 May 16 21:16:50
Total net profit -491.8 pips
Total trades 219 [272]
Profit trades 90
Loss trades 129

In conclusion, we can say that while the Scheduler definitely works well to reduce the drawdown, it is mostly important for the current initial versions of the strategy.

It won’t improve the strategies as such. And we are working towards our next goal – the improvements in the take profit algorithm efficiency. This is the “lowest hanging fruit” since we very consistently show 80%+ of potential wins but realized wins are about 50%.

Stay tuned.