Every signal the strategy sent, and exactly what the broker did with it.
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 what 0.1 lots made on them, before any commission.
| Direction | Opened | Closed | Held | Entry | Exit | Points | P&L | Running |
|---|---|---|---|---|---|---|---|---|
| sell 0.1 | 10:29:03 | 12:21:02 | 1h 51m | 52,357.4 | 51,971.4 | +386.0 | +38.60 | +38.60 |
| buy 0.1 | 12:21:02 | 12:55:04 | 34m | 51,972.6 | 51,982.3 | +9.7 | +0.97 | +39.57 |
| sell 0.1 | 12:55:04 | 13:23:01 | 27m | 51,982.6 | 51,988.3 | -5.7 | -0.57 | +39.00 |
| buy 0.1 | 13:23:01 | 14:06:02 | 43m | 51,988.4 | 52,052.5 | +64.1 | +6.41 | +45.41 |
| sell 0.1 | 14:06:02 | 14:32:01 | 25m | 52,052.4 | 52,032.4 | +20.0 | +2.00 | +47.41 |
| buy 0.1 | 14:32:01 | — | open | 52,033.0 | — | — | — | — |
Best +386.0 points, worst -5.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 |
|---|---|---|---|---|---|---|
| 10:29:03 | sell 0.1 | 52,357.6 | 52,357.4 | -0.8 | 52,416.7 asked 59.9 away, landed 59.3 |
Executed 10009 |
| 10:32:02 | modify | — | — | — | 52,316.7 asked 52,317.5 |
Executed 10009 |
| 10:35:05 | modify | — | — | — | 52,216.7 asked 52,217.5 |
Executed 10009 |
| 11:10:03 | modify | — | — | — | 52,116.7 asked 52,117.5 |
Executed 10009 |
| 11:23:00 | modify | — | — | — | 52,016.7 asked 52,017.5 |
Executed 10009 |
| 12:21:02 | 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 |
| 12:55:04 | 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 |
| 13:23:01 | 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 |
| 13:55:05 | modify | — | — | — | 52,049.8 asked 52,050.0 |
Executed 10009 |
| 14:06:02 | 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 |
| 14:32:01 | 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 |
TradingView offers no way to read an alert's settings back, so this is the script's own shipped defaults with the changed values marked. What makes it checkable rather than merely claimed: every message carries a fingerprint of the settings that produced it, and the bridge flags any message arriving with a different one. Nothing on this page has been flagged.
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.
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.