Every signal the strategy sent, and exactly what the broker did with it.
A run is a period during which the settings and the timeframe did not change. The moment either moves, the run ends and a new one begins — so a 1-minute run and a 4-hour run are never averaged into one figure. P&L is computed from the broker's own deals inside each window, so a run cannot drift from the account.
| Run | Timeframe | Started | Ended | Trades | Points | P&L |
|---|---|---|---|---|---|---|
| 89632.934
active |
1 min | 11:19:02 17 Sep |
— | 10 | -78.3 | -78.30 |
Reconstructed from the fills, not from the broker's statement. The strategy reverses rather than flattening, so one message usually closes a trade and opens the next; points are index points, and P&L is MetaTrader's own figure for the trade including commission and swap. Running is the cumulative total up to and including that trade, so with the newest at the top it counts down toward the start of the test.
| Direction | Opened | Closed | Held | Entry | Exit | Points | P&L | Running |
|---|---|---|---|---|---|---|---|---|
| sell 1.0 | 17:54:51 17 Sep |
— | open | 51,806.4 | — | — | — | — |
| buy 1.0 | 17:31:52 17 Sep |
17:54:08 17 Sep broker stop |
22m | 51,851.1 | 51,806.4 | -44.7 | -44.70 | +132.45 |
| sell 1.0 | 16:54:51 17 Sep |
17:31:52 17 Sep reversal |
37m | 51,845.0 | 51,851.0 | -6.0 | -6.00 | +177.15 |
| buy 1.0 | 16:38:52 17 Sep |
16:54:51 17 Sep reversal |
15m | 51,868.6 | 51,845.0 | -23.6 | -23.60 | +183.15 |
| sell 1.0 | 16:30:50 17 Sep |
16:38:37 17 Sep broker stop |
7m | 51,825.4 | 51,867.6 | -42.2 | -42.20 | +206.75 |
| buy 1.0 | 16:26:49 17 Sep |
16:30:30 17 Sep broker stop |
3m | 51,861.4 | 51,830.3 | -31.1 | -31.10 | +248.95 |
| sell 1.0 | 16:02:51 17 Sep |
16:26:49 17 Sep reversal |
23m | 51,855.5 | 51,861.4 | -5.9 | -5.90 | +280.05 |
| buy 1.0 | 15:19:51 17 Sep |
16:02:51 17 Sep reversal |
43m | 51,847.6 | 51,855.7 | +8.1 | +8.10 | +285.95 |
| buy 1.0 | 12:50:50 17 Sep |
14:33:16 17 Sep broker stop |
1h 42m | 51,760.3 | 51,827.5 | +67.2 | +67.20 | +277.85 |
| sell 1.0 | 12:14:50 17 Sep |
12:41:12 17 Sep broker stop |
26m | 51,764.6 | 51,748.6 | +16.0 | +16.00 | +210.65 |
| buy 1.0 | 11:56:50 17 Sep |
12:14:50 17 Sep reversal |
18m | 51,779.6 | 51,763.5 | -16.1 | -16.10 | +194.65 |
| sell 1.0 | 10:48:50 17 Sep |
11:08:52 17 Sep reversal |
20m | 52,114.6 | 51,953.4 | +161.2 | +161.20 | +210.75 |
| sell 1.0 | 07:24:50 17 Sep |
07:45:40 17 Sep broker stop |
20m | 51,893.1 | 51,910.9 | -17.8 | -17.80 | +49.55 |
| buy 1.0 | 06:07:51 17 Sep |
07:24:50 17 Sep reversal |
1h 16m | 51,876.0 | 51,893.1 | +17.1 | +17.10 | +67.35 |
| sell 1.0 | 05:27:54 17 Sep |
06:07:21 17 Sep broker stop |
39m | 51,922.4 | 51,869.6 | +52.8 | +52.80 | +50.25 |
| buy 1.0 | 04:43:51 17 Sep |
05:27:53 17 Sep reversal |
44m | 51,923.0 | 51,922.4 | -0.6 | -0.60 | -2.55 |
| sell 1.0 | 04:38:53 17 Sep |
04:41:34 17 Sep broker stop |
2m | 51,882.6 | 51,913.1 | -30.5 | -30.50 | -1.95 |
| buy 1.0 | 04:02:53 17 Sep |
04:38:52 17 Sep reversal |
35m | 51,852.0 | 51,882.6 | +30.6 | +30.60 | +28.55 |
| sell 1.0 | 03:53:51 17 Sep |
04:01:54 17 Sep broker stop |
8m | 51,805.9 | 51,843.3 | -37.4 | -37.40 | -2.05 |
| buy 1.0 | 03:38:54 17 Sep |
03:53:33 17 Sep broker stop |
14m | 51,823.0 | 51,810.1 | -12.9 | -12.90 | +35.35 |
| sell 1.0 | 02:32:54 17 Sep |
03:17:26 17 Sep broker stop |
44m | 51,830.0 | 51,814.6 | +15.4 | +15.40 | +48.25 |
| buy 1.0 | 02:16:51 17 Sep |
02:32:37 17 Sep broker stop |
15m | 51,846.0 | 51,828.2 | -17.8 | -17.80 | +32.85 |
| sell 1.0 | 01:43:54 17 Sep |
02:16:51 17 Sep reversal |
32m | 51,845.4 | 51,846.0 | -0.6 | -0.60 | +50.65 |
| sell 0.1 | 20:51:51 15 Sep |
21:12:55 15 Sep reversal |
21m | 52,186.0 | 52,187.0 | -1.0 | -0.10 | +51.25 |
| buy 0.1 | 17:36:51 15 Sep |
20:51:51 15 Sep reversal |
3h 15m | 52,129.4 | 52,186.0 | +56.6 | +4.77 | +51.35 |
| sell 0.1 | 17:20:51 15 Sep |
17:25:21 15 Sep broker stop |
4m | 52,080.6 | 52,112.8 | -32.2 | -3.22 | +46.58 |
| buy 0.1 | 16:30:50 15 Sep |
17:20:51 15 Sep reversal |
50m | 52,054.6 | 52,080.6 | +26.0 | +2.60 | +49.80 |
| sell 0.1 | 16:08:51 15 Sep |
16:30:50 15 Sep reversal |
21m | 52,042.8 | 52,054.7 | -11.9 | -1.19 | +47.20 |
| buy 0.1 | 15:09:49 15 Sep |
16:08:51 15 Sep reversal |
59m | 52,033.0 | 52,042.8 | +9.8 | +0.98 | +48.39 |
| sell 0.1 | 14:43:51 15 Sep |
15:09:49 15 Sep reversal |
25m | 52,052.4 | 52,032.4 | +20.0 | +2.00 | +47.41 |
| buy 0.1 | 14:00:50 15 Sep |
14:43:50 15 Sep reversal |
43m | 51,988.4 | 52,052.5 | +64.1 | +6.41 | +45.41 |
| sell 0.1 | 13:32:53 15 Sep |
14:00:49 15 Sep reversal |
27m | 51,982.6 | 51,988.3 | -5.7 | -0.57 | +39.00 |
| buy 0.1 | 12:58:51 15 Sep |
13:32:53 15 Sep reversal |
34m | 51,972.6 | 51,982.3 | +9.7 | +0.97 | +39.57 |
| sell 0.1 | 11:06:51 15 Sep |
12:58:50 15 Sep reversal |
1h 51m | 52,357.4 | 51,971.4 | +386.0 | +38.60 | +38.60 |
Best +386.0 points, worst -44.7. Far too few trades to mean anything about the strategy — they are here because execution accuracy is only worth reading next to what it cost.
Times are the bridge's. “Sent” is what the script put on the wire; “placed” is what reached the broker. A reversal is one message that closes and re-opens, so it shows two fills and two outcomes. Stops are re-anchored to the broker's price at the moment of the order, which is why one lands within about a point of the distance asked for rather than exactly on it. The small grey number under each outcome is MetaTrader's own code, kept so a failure can be looked up.
| Time | Message | Chart price | Broker fill | Feed gap | Stop at broker | Outcome |
|---|---|---|---|---|---|---|
| 17:51:06 17 Sep |
modify | — | — | — | 51,819.0 asked 51,818.0 |
Executed 10009 |
| 17:17:03 17 Sep |
sell 1 | 51,804.4 | 51,806.4 | +1.0 | 51,837.2 asked 31.8 away, landed 30.8 |
Executed 10009 |
| 17:16:24 17 Sep |
close | — | — | — | — | — |
| 16:54:04 17 Sep |
buy 1 | 51,849.2 | closed 51,851.0 opened 51,851.1 |
+1.8 | 51,806.4 asked 44.6 away, landed 44.7 |
Executed ×2 10009 |
| 16:30:09 17 Sep |
modify | — | — | — | 51,862.4 asked 51,863.9 |
Executed 10009 |
| 16:17:03 17 Sep |
sell 1 | 51,846.5 | closed 51,845.0 opened 51,845.0 |
-1.5 | 51,880.6 asked 35.6 away, landed 35.6 |
Executed ×2 10009 |
| 16:05:03 17 Sep |
modify | — | — | — | 51,840.2 asked 51,839.0 |
Executed 10009 |
| 16:01:04 17 Sep |
buy 1 | 51,867.4 | 51,868.6 | +1.2 | 51,822.0 asked 46.6 away, landed 46.6 |
Executed 10009 |
| 16:00:53 17 Sep |
close | — | — | — | — | — |
| 15:53:02 17 Sep |
sell 1 | 51,825.6 | 51,825.4 | +0.2 | 51,867.6 asked 41.8 away, landed 42.2 |
Executed 10009 |
| 15:52:45 17 Sep |
close | — | — | — | — | — |
| 15:49:01 17 Sep |
buy 1 | 51,860.4 | closed 51,861.4 opened 51,861.4 |
+1.0 | 51,830.3 asked 31.1 away, landed 31.1 |
Executed ×2 10009 |
| 15:37:01 17 Sep |
modify | — | — | — | 51,876.9 asked 51,877.0 |
Executed 10009 |
| 15:25:03 17 Sep |
sell 1 | 51,855.8 | closed 51,855.7 opened 51,855.5 |
-0.1 | 51,895.1 asked 39.4 away, landed 39.6 |
Executed ×2 10009 |
| 15:15:05 17 Sep |
modify | — | — | — | 51,849.3 asked 51,850.2 |
Executed 10009 |
| 14:58:02 17 Sep |
modify | — | — | — | 51,831.1 asked 51,832.0 |
Executed 10009 |
| 14:42:03 17 Sep |
buy 1 | 51,848.9 | 51,847.6 | -0.9 | 51,812.9 asked 35.1 away, landed 34.7 |
Executed 10009 |
| 13:55:30 17 Sep |
close | — | — | — | — | — |
| 13:04:02 17 Sep |
modify | — | — | — | 51,827.5 asked 51,823.6 |
Executed 10009 |
| 13:01:06 17 Sep |
modify | — | — | — | 51,809.3 asked 51,805.4 |
Executed 10009 |
| 12:43:03 17 Sep |
modify | — | — | — | 51,791.1 asked 51,787.2 |
Executed 10009 |
| 12:38:02 17 Sep |
modify | — | — | — | 51,772.9 asked 51,769.0 |
Executed 10009 |
| 12:36:05 17 Sep |
modify | — | — | — | 51,754.7 asked 51,750.8 |
Executed 10009 |
| 12:18:02 17 Sep |
modify | — | — | — | 51,736.5 asked 51,732.6 |
Executed 10009 |
| 12:13:02 17 Sep |
buy 1 | 51,756.5 | 51,760.3 | +3.9 | 51,700.1 asked 60.3 away, landed 60.2 |
Executed 10009 |
| 12:03:26 17 Sep |
close | — | — | — | — | — |
| 11:57:03 17 Sep |
modify | — | — | — | 51,748.6 asked 51,746.7 |
Executed 10009 |
| 11:55:05 17 Sep |
modify | — | — | — | 51,766.8 asked 51,764.9 |
Executed 10009 |
| 11:54:02 17 Sep |
modify | — | — | — | 51,785.0 asked 51,783.1 |
Executed 10009 |
| 11:53:02 17 Sep |
modify | — | — | — | 51,803.2 asked 51,801.3 |
Executed 10009 |
| 11:52:02 17 Sep |
modify | — | — | — | 51,821.4 asked 51,819.5 |
Executed 10009 |
| 11:37:02 17 Sep |
sell 1 | 51,761.6 | closed 51,763.5 opened 51,764.6 |
+1.9 | 51,839.6 asked 76.1 away, landed 75.0 |
Executed ×2 10009 |
| 11:23:03 17 Sep |
modify | — | — | — | 51,754.4 asked 51,748.3 |
Executed 10009 |
| 11:22:03 17 Sep |
modify | — | — | — | 51,736.2 asked 51,730.1 |
Executed 10009 |
| 11:21:03 17 Sep |
modify | — | — | — | 51,718.0 asked 51,711.9 |
Executed 10009 |
| 11:20:05 17 Sep |
modify | — | — | — | 51,699.8 asked 51,693.7 |
Executed 10009 |
| 11:19:02 17 Sep |
buy 1 | 51,774.3 | 51,779.6 | +6.1 | 51,681.6 asked 98.8 away, landed 98.0 |
Executed 10009 |
| 10:31:06 17 Sep |
modify | — | — | — | — | — |
| 10:31:04 17 Sep |
close | — | 51,953.4 | — | — | Executed 10009 |
| 10:30:30 17 Sep |
modify | — | — | — | 52,108.4 asked 52,109.4 |
Executed 10009 |
| 10:26:03 17 Sep |
modify | — | — | — | 52,144.8 asked 52,145.8 |
Executed 10009 |
| 10:11:02 17 Sep |
sell 1 | 52,114.6 | 52,114.6 | -1.0 | 52,163.0 asked 49.4 away, landed 48.4 |
Executed 10009 |
| 07:26:52 17 Sep |
close | — | — | — | — | — |
| 06:50:05 17 Sep |
modify | — | — | — | 51,910.9 asked 51,910.8 |
Executed 10009 |
| 06:47:02 17 Sep |
sell 1 | 51,893.0 | closed 51,893.1 opened 51,893.1 |
+0.1 | 51,929.1 asked 36.0 away, landed 36.0 |
Executed ×2 10009 |
| 06:11:04 17 Sep |
modify | — | — | — | 51,868.3 asked 51,866.2 |
Executed 10009 |
| 05:35:03 17 Sep |
modify | — | — | — | 51,850.1 asked 51,848.0 |
Executed 10009 |
| 05:30:02 17 Sep |
buy 1 | 51,873.0 | 51,876.0 | +2.1 | 51,831.9 asked 43.2 away, landed 44.1 |
Executed 10009 |
| 05:29:47 17 Sep |
close | — | — | — | — | — |
| 05:19:01 17 Sep |
modify | — | — | — | 51,869.6 asked 51,868.8 |
Executed 10009 |
| 05:13:02 17 Sep |
modify | — | — | — | 51,887.8 asked 51,887.0 |
Executed 10009 |
| 05:04:00 17 Sep |
modify | — | — | — | 51,906.0 asked 51,905.2 |
Executed 10009 |
| 05:03:02 17 Sep |
modify | — | — | — | 51,924.2 asked 51,923.4 |
Executed 10009 |
| 04:56:03 17 Sep |
modify | — | — | — | 51,942.4 asked 51,941.6 |
Executed 10009 |
| 04:50:05 17 Sep |
sell 1 | 51,921.6 | closed 51,922.4 opened 51,922.4 |
+0.8 | 51,960.6 asked 38.2 away, landed 38.2 |
Executed ×2 10009 |
| 04:31:05 17 Sep |
modify | — | — | — | 51,918.2 asked 51,913.2 |
Executed 10009 |
| 04:09:04 17 Sep |
modify | — | — | — | 51,900.0 asked 51,895.0 |
Executed 10009 |
| 04:06:03 17 Sep |
buy 1 | 51,919.0 | 51,923.0 | +5.0 | 51,881.8 asked 42.2 away, landed 41.2 |
Executed 10009 |
| 04:03:48 17 Sep |
close | — | — | — | — | — |
| 04:01:04 17 Sep |
sell 1 | 51,881.2 | closed 51,882.6 opened 51,882.6 |
+1.4 | 51,913.1 asked 30.5 away, landed 30.5 |
Executed ×2 10009 |
| 03:38:02 17 Sep |
modify | — | — | — | 51,866.7 asked 51,865.7 |
Executed 10009 |
| 03:30:06 17 Sep |
modify | — | — | — | 51,848.5 asked 51,847.5 |
Executed 10009 |
| 03:27:03 17 Sep |
modify | — | — | — | 51,830.3 asked 51,829.3 |
Executed 10009 |
| 03:25:05 17 Sep |
buy 1 | 51,851.0 | 51,852.0 | +1.0 | 51,812.1 asked 39.9 away, landed 39.9 |
Executed 10009 |
| 03:24:21 17 Sep |
close | — | — | — | — | — |
| 03:16:03 17 Sep |
sell 1 | 51,806.7 | 51,805.9 | -2.1 | 51,843.3 asked 38.7 away, landed 37.4 |
Executed 10009 |
| 03:15:47 17 Sep |
close | — | — | — | — | — |
| 03:04:02 17 Sep |
modify | — | — | — | 51,810.1 asked 51,810.0 |
Executed 10009 |
| 03:01:06 17 Sep |
buy 1 | 51,822.9 | 51,823.0 | +0.1 | 51,791.9 asked 31.1 away, landed 31.1 |
Executed 10009 |
| 02:39:43 17 Sep |
close | — | — | — | — | — |
| 02:32:03 17 Sep |
modify | — | — | — | 51,814.6 asked 51,814.2 |
Executed 10009 |
| 02:21:05 17 Sep |
modify | — | — | — | 51,832.8 asked 51,832.4 |
Executed 10009 |
| 01:55:06 17 Sep |
sell 1 | 51,829.6 | 51,830.0 | +0.4 | 51,851.0 asked 21.0 away, landed 21.0 |
Executed 10009 |
| 01:39:03 17 Sep |
buy 1 | 51,844.0 | closed 51,846.0 opened 51,846.0 |
+2.0 | 51,828.2 asked 17.8 away, landed 17.8 |
Executed ×2 10009 |
| 01:24:07 17 Sep |
modify | — | — | — | 51,851.1 asked 51,851.1 |
Executed 10009 |
| 01:06:05 17 Sep |
sell 1 | 51,845.4 | 51,845.4 | +0.0 | 51,869.3 asked 23.9 away, landed 23.9 |
Executed 10009 |
| 20:35:07 15 Sep |
buy 0.1 | 52,186.0 | closed 52,187.0 opened 52,187.0 |
+1.0 | 52,177.9 asked 9.1 away, landed 9.1 |
Executed ×2 10009 |
| 20:14:02 15 Sep |
sell 0.1 | 52,184.9 | closed 52,186.0 opened 52,186.0 |
+1.1 | 52,194.7 asked 8.7 away, landed 8.7 |
Executed ×2 10009 |
| 16:59:03 15 Sep |
buy 0.1 | 52,120.6 | 52,129.4 | +6.8 | 52,070.9 asked 56.5 away, landed 58.5 |
Executed 10009 |
| 16:47:36 15 Sep |
close | — | — | — | — | — |
| 16:43:03 15 Sep |
sell 0.1 | 52,079.4 | closed 52,080.6 opened 52,080.6 |
+1.2 | 52,112.8 asked 32.2 away, landed 32.2 |
Executed ×2 10009 |
| 15:53:02 15 Sep |
buy 0.1 | 52,050.6 | closed 52,054.7 opened 52,054.6 |
+4.1 | 51,985.9 asked 68.8 away, landed 68.7 |
Executed ×2 10009 |
| 15:31:03 15 Sep |
sell 0.1 | 52,042.7 | closed 52,042.8 opened 52,042.8 |
+0.1 | 52,082.5 asked 39.7 away, landed 39.7 |
Executed ×2 10009 |
| 14:32:01 15 Sep |
buy 0.1 | 52,029.7 | closed 52,032.4 opened 52,033.0 |
+2.7 | 51,984.1 asked 48.3 away, landed 48.9 |
Executed ×2 10009 |
| 14:06:02 15 Sep |
sell 0.1 | 52,054.1 | closed 52,052.5 opened 52,052.4 |
-1.6 | 52,107.9 asked 55.4 away, landed 55.5 |
Executed ×2 10009 |
| 13:55:05 15 Sep |
modify | — | — | — | 52,049.8 asked 52,050.0 |
Executed 10009 |
| 13:23:01 15 Sep |
buy 0.1 | 51,988.5 | closed 51,988.3 opened 51,988.4 |
-0.2 | 51,949.8 asked 38.5 away, landed 38.6 |
Executed ×2 10009 |
| 12:55:04 15 Sep |
sell 0.1 | 51,982.4 | closed 51,982.3 opened 51,982.6 |
-0.1 | 52,043.4 asked 61.1 away, landed 60.8 |
Executed ×2 10009 |
| 12:21:02 15 Sep |
buy 0.1 | 51,976.0 | closed 51,971.4 opened 51,972.6 |
-4.6 | 51,913.8 asked 57.6 away, landed 58.8 |
Executed ×2 10009 |
| 11:23:00 15 Sep |
modify | — | — | — | 52,016.7 asked 52,017.5 |
Executed 10009 |
| 11:10:03 15 Sep |
modify | — | — | — | 52,116.7 asked 52,117.5 |
Executed 10009 |
| 10:35:05 15 Sep |
modify | — | — | — | 52,216.7 asked 52,217.5 |
Executed 10009 |
| 10:32:02 15 Sep |
modify | — | — | — | 52,316.7 asked 52,317.5 |
Executed 10009 |
| 10:29:03 15 Sep |
sell 0.1 | 52,357.6 | 52,357.4 | -0.8 | 52,416.7 asked 59.9 away, landed 59.3 |
Executed 10009 |
Taken from the script's source with changed values marked, because no entry has yet reported its settings. This can drift out of date; a reported set cannot.
Trailing Step is in chart ticks, not points: 1000 ticks on this 0.1-tick feed is 100 index points. The same input on a 0.01-tick feed would be ten points, which is the kind of thing that looks fine and trails ten times too tightly.
For each round trip: the best it was ever worth (MFE), the worst it was ever worth (MAE), and the difference between the best and what was actually banked. P&L says whether a trade worked; these say why. Measured from one-minute bars between entry and exit.
The stop figure is a sample minimum, not a target. “No winner went further than X against us” is the tightest stop that would not have cost a winner on the trades that happened. It moves as trades arrive — on 17 September it went from 24.3 to 56.3 points when a single new winning trade closed. Setting a stop to it would be fitting to the past.
Give-back being large does not mean it is recoverable. A tighter trailing stop keeps more of the trades that ran and cuts short the trades that would have run further, and which effect wins depends on the route each trade took — something MFE and MAE cannot show, because they are only its endpoints. So the real one-minute path of every trade was replayed against a stop sitting a fixed distance behind the best price seen.
| Stop behind best price | Net points | vs actual | Exited on trail | Winners kept |
|---|---|---|---|---|
| 5 pts | +8.4 | -585.4 | 35/35 | 5/15 |
| 8 pts | +82.8 | -511.0 | 33/35 | 6/15 |
| 10 pts | +58.0 | -535.8 | 33/35 | 4/15 |
| 12 pts | +50.0 | -543.8 | 32/35 | 4/15 |
| 15 pts | +54.5 | -539.3 | 32/35 | 6/15 |
| 20 pts | +217.6 | -376.2 | 31/35 | 10/15 |
| 25 pts | +163.1 | -430.7 | 29/35 | 10/15 |
| 30 pts | +46.5 | -547.3 | 28/35 | 10/15 |
| 40 pts | +159.0 | -434.8 | 24/35 | 13/15 |
| 50 pts | +277.5 | -316.3 | 16/35 | 13/15 |
Every tightening tested made the result worse. Actual was +593.8 points; the best of ten offsets was 50 points behind the peak and still finished -316.3 points short, with the curve still improving as it widened. The reason is the room figure above: the typical winner pulls back around 57.9 points from a running high and then goes on to make a new one. Any trail tighter than that removes it from the trade before its best price arrives.
So the give-back looks structural rather than like a tuning error — the cost of a system whose winners travel a noisy route. The lever is unlikely to be a faster ratchet. It is more likely a partial exit: bank part of the position early, where give-back becomes zero, and leave the remainder the wide room it demonstrably needs.
Modelled pessimistically — within each bar the adverse move is assumed to come first, so every figure is a floor. A wider stop can never score better than actual here, because the strategy’s own exit still caps each trade, so only the tightening direction is informative. Re-entry is not modelled, and the peak of the curve is fitted to the trades that happened. Read the direction, not the number.
The same figures, for anything that reads rather than looks: metrics.json — published with every rebuild, and carrying its own sample-size and accuracy caveats so they cannot be separated from the numbers.
Every session is classified from the 20 daily bars that closed before it opened — never from its own bar. That constraint is what makes the label usable: a condition you can only identify with hindsight is not something a strategy could ever have adapted to. Each round trip is then attributed to the condition that was already knowable when its day began.
Efficiency is how much of the market’s movement went somewhere: the net move over 20 sessions divided by the distance actually travelled. Near 1.0 every session pushed the same way; near 0 the market covered a great deal of ground and arrived back where it started.
| Condition | Trades | Points | Per trade | Win rate | Reliability |
|---|---|---|---|---|---|
| structure choppy |
13 | +512.6 | +39.4 | 53.8% | below 30 trades |
| trending | 22 | +81.2 | +3.7 | 36.4% | below 30 trades |
| direction bear |
35 | +593.8 | +17.0 | 42.9% | every trade landed here — no contrast to measure; mixed lot sizes, so only points compare |
| volatility normal |
35 | +593.8 | +17.0 | 42.9% | every trade landed here — no contrast to measure; mixed lot sizes, so only points compare |
This is an audit. Nothing adapts to these labels, and nothing should yet. Two of the three axes have every trade in a single group — a few days of history cannot contain a bull market or a quiet one, so “bear, 100%” is the sample speaking, not the market. Only structure has two populated groups, and both sit below the 30-trade bar this project uses everywhere else.
It is also already contradicting the obvious hypothesis. A reversal system ought to do better in trending conditions and bleed in chop; the trades so far show 39.4 points per trade in chop against 3.7 when trending. That may well reverse with the next fortnight of data, which is exactly the point of recording it before acting on it rather than after.
Read points, not dollars. The position size changed from 0.1 to 1.0 lots inside this sample. Summing money across that comparison measures the lot size and labels the result a market condition; points are unaffected by it.
Written from the logs by the assistant running the test, and regenerated with them. The distinction it draws is deliberate: execution quality is answerable after a handful of orders, because it asks whether each message survived the trip. Profitability is not, and pretending otherwise would be the most useful-looking and least useful thing this page could do.
The sample has reached 33 closed trades, past the 30 this page withholds a verdict below. The wording here was written when there were five, and it updates its numbers but not its reasoning - it cannot notice a pattern nobody has looked for. Treat the profitability section as provisional until someone has actually read the logs again.
94 messages, 100 orders, 13 not executed. Stops land within about a point of the distance asked for, and the chart-to-broker gap averages +1.0 points across 35 entries. This part has enough evidence to stand on: it is a question of fidelity, and every message either arrived intact or did not.
Median result is -0.6 points. Crossing the spread costs about 2.0 points per round trip, so roughly 99% of the typical trade is paid to the broker before anything else happens. That ratio does not improve with more data; it improves with a longer timeframe or a wider stop.
The largest winner is 41% of all gross profit. Trend-following does produce that shape, so it is not by itself a fault - but it means the headline figure describes one trade, not a process.
33 trades, 15 profitable, profit factor 2.78
On the author's own parameters, US30 backtested at -4.40% over 2 April to 9 September 2026 on the 15-minute chart, profit factor 0.925, maximum drawdown -11.83%; the 5-minute run was -9.71%. A profitable first day does not contradict that, and should not be mistaken for doing so. It is the prior these live trades have to overturn.
Five hops. The script owns the first one and nothing else; everything after it is replaceable, which is the whole point of the Middleman setting.
You do not need the bridge. It is a test rig built to prove the script, not a product, and the script was written so it could be swapped out.
Set Middleman to PineConnector, paste your licence ID, point the alert at their URL. Nothing to host and nothing to keep running. They size and route the order.
Built from their docs · never run
Same idea, different message format. One limitation shapes the script: TradersPost cannot move a stop once a trade is open, so the entry stop stays at the broker as a safety net and the strategy sends an exit when its own trail is hit.
Built from their docs · never run
Self-hosted, what produced every number on this page. More work than it looks, and the requirements below are not optional — each one comes from something that went wrong.
Running · all figures here
If you self-host, these are the parts that bite. The MetaTrader5 Python package is Windows only, so it needs a Windows machine that never sleeps — a laptop entering standby lost two hours of signals here, silently. The public endpoint has to be stable: a free tunnel dropping for sixteen seconds already swallowed one exit, and TradingView does not retry a timeout. Only one bridge may run per account, because two place every order twice. And the symbol names, contract sizes, digits and lot step all differ by broker — the same index is US30 at one firm and US30.cash at another, quoted to a different number of decimals, which silently changes what a “point” of slippage tolerance means.
Read the price gap carefully. Charting the same firm the orders execute at was the point, and the gap is small. But a handful of readings is not a measured constant, and sending the stop as a distance is what makes the gap harmless. That should stay as it is until there are enough entries to say what the gap actually does.
This is a demo account, and it is about plumbing. Everything here tests whether execution is faithful to the script. It says nothing about whether the strategy makes money.