Live execution pilot · broker demo

T4T Macro IFVG — Execution Log

Every signal the strategy sent, and exactly what the broker did with it.

Running
executor connected, signals flowing
16 September 2026, 11:23 Cayman
Last signal
2 h ago
23 received in total — 17 buy, 6 flatten
Executed
5
5 closed (3 of them test fixtures), 0 refused by a guard
Trades closed
2
1 in profit
Planned → filled
10.63
mean distance from the planned price, in points
Open now
flat
1 of 2 executors connected
Net result
-150
account currency, closed trades only
Results

Every trade the strategy produced

Taken from the broker's own deal history — not from TradingView's messages, which carry one alert for both legs of an exit and so cannot tell a stop-out from a take-profit. Planned is the price your strategy sent; filled is what the broker gave.

TimeInstrumentWindowDir PlannedFilledSlip ExitRisk askedRisk taken HeldWhyR P&LRunning
16 Sep 09:02 Cayman NAS100 09:20 long 29143.34 29162.64 19.3 29162.64 51.23 70.53 14 min scratched at breakeven +0.00R +52.64 -150.21
15 Sep 22:36 Cayman NAS100 22:50 long 29071.1 29069.14 -1.96 29028.57 42.53 40.57 12 min stop hit -0.95R -202.85 -202.85

2 trades, -150.21 in total. Best +52.64, worst -202.85. 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.

Every leg, trade by trade

⭐ The table above is the outcome; this is the working. For a strategy that scales out in thirds, the outcome alone hides most of what happened — when a third came off, when the stop moved and to where, what the remainder closed at. Straight from the executor's own records; nothing here is derived.

NAS100 09:20 #23
16 Sep 08:48 Cayman · +52.64
TimeLegLotsPriceDetail
08:48:43opened long529162.64planned 29143.34, filled 29162.64 (+19.30 points) · stop 29092.10837958
08:50:28target tp1 filled1.629195.29a third closed, the rest runs on
09:02:58scratched at breakeven29162.64P&L +52.64 · +0.00R
NAS100 22:50 #20
15 Sep 22:24 Cayman · -202.85
TimeLegLotsPriceDetail
22:24:27opened long529069.14planned 29071.1, filled 29069.14 (-1.96 points) · stop 29028.57306067
22:36:38stop hit29028.57P&L -202.85 · -0.95R
Price action

What the market did around each trade

Candles from your broker's own feed — the same one that filled the order, so a candle and a fill can never disagree. ⭐ Each chart is drawn hours after the trade closed and deliberately runs on past the exit, because the useful question is not where we got in. It is what price did next.

NAS100 long 5 09:20
16 Sep 08:48 Cayman · +52.64 · +0.00R
stop 29,092tp1 29,195tp2 29,246tp3 29,297fill 29,163

Scratched at breakeven after taking 1 target, and price then reached tp2 within 138 minutes without us. One trade proves nothing either way — but this is the shape to watch for across a sample, because it would be the stop, not the signal, costing the edge.

NAS100 long 5 22:50
15 Sep 22:24 Cayman · -202.85 · -0.95R
stop 29,029fill 29,069

Over the 180 minutes after the exit price reached 29,096.84. ⚠ This trade's targets were not recorded — the executor only began reporting them on 16 September — so nothing here can be said about whether they would have been hit.

The ledger

Every message, in order

What the relay did with each message before the executor ever saw it. Times are the relay's, which is the only clock in this chain that is both trusted and shared. ⚠ A rejected message is a missed trade, and a missed trade looks exactly like a quiet market — so each one is listed rather than counted.

TimeFromInstanceMessageOutcomeWhy
16 Sep 08:48:06 Cayman TradingView nas3m buy Accepted
16 Sep 02:11:02 Cayman manual test nas3m flatten Accepted
16 Sep 02:10:07 Cayman manual test nas3m buy Accepted
15 Sep 22:24:01 Cayman TradingView nas3m buy Accepted
15 Sep 19:39:24 Cayman manual test nas3m flatten Accepted
15 Sep 19:33:07 Cayman nas3m flatten Accepted
15 Sep 19:31:45 Cayman nas3m buy Accepted
15 Sep 19:31:26 Cayman nas3m Rejected the message body was not valid JSON bad_json
15 Sep 19:16:13 Cayman nas3m buy Accepted
15 Sep 14:46:29 Cayman ustec3m buy Accepted
15 Sep 12:36:50 Cayman ustec3m Rejected the day's trade budget was already spent daily_ceiling
15 Sep 12:36:38 Cayman eurusd3m flatten Accepted
15 Sep 12:36:03 Cayman ustec3m Rejected the day's trade budget was already spent daily_ceiling
15 Sep 08:58:19 Cayman eurusd3m buy Accepted
15 Sep 07:57:32 Cayman eurusd3m buy Accepted
15 Sep 07:55:33 Cayman eurusd3m Rejected the day's trade budget was already spent daily_ceiling
15 Sep 07:53:16 Cayman eurusd3m Rejected the day's trade budget was already spent daily_ceiling
15 Sep 07:53:12 Cayman eurusd3m flatten Accepted
15 Sep 07:47:22 Cayman eurusd3m buy Accepted
15 Sep 07:33:26 Cayman eurusd3m buy Accepted
15 Sep 07:15:41 Cayman eurusd3m buy Accepted
15 Sep 07:13:28 Cayman eurusd3m flatten Accepted
15 Sep 07:11:30 Cayman eurusd3m buy Accepted
15 Sep 07:11:29 Cayman eurusd3m buy Ignored as a duplicate
15 Sep 07:11:28 Cayman eurusd3m buy Ignored as a duplicate
15 Sep 07:11:28 Cayman eurusd3m buy Accepted
15 Sep 07:05:39 Cayman eurusd3m buy Accepted
15 Sep 07:01:18 Cayman eurusd3m buy Accepted
14 Sep 18:22:10 Cayman eurusd3m buy Ignored as a duplicate
14 Sep 18:22:10 Cayman eurusd3m buy Accepted
14 Sep 18:22:08 Cayman nq3m Rejected the message arrived with no content empty_body
14 Sep 18:22:08 Cayman nq3m Rejected the shared secret did not match bad_secret
14 Sep 06:39:54 Cayman nq3m buy Ignored as a duplicate
14 Sep 06:39:53 Cayman nq3m buy Accepted
14 Sep 06:39:52 Cayman nq3m Rejected the message arrived with no content empty_body
14 Sep 06:39:51 Cayman nq3m Rejected the shared secret did not match bad_secret
Configuration

The settings behind every number here

Times on this page are Cayman time. ⚠ New York is 1 hour ahead of Cayman at the moment, because New York observes daylight saving and Cayman does not. So a window labelled 09:20 NY is 08:20 your time today — and the same clock in January, when the two align.

⚠⚠ A TradingView alert freezes your inputs, the chart symbol and the timeframe at the moment you create it, and keeps firing that frozen copy until it is deleted and remade. So a trade does not belong to “the settings” — it belongs to whatever was frozen into the alert that produced it. Each block below is one such configuration, with the trades that came from it.

⚠ TradingView offers no way to read an alert's settings back, so these are declared, not read. Where the messages themselves prove something, it is marked evidenced; everything else is our word for it.

Nasdaq 3-minute nas3m
CURRENT 2026-09-16 → now

First TradingView-originated signal 2026-09-16, 23:24 Cayman the previous evening. ⚠ Breakeven set to After 2:1 on 2026-09-16 on the author's instruction, confirmed by call - his Pine default is After 1:1, and the bridge had it hardcoded to after the first target.

2 trades came from this configuration.

SettingYour defaultRunning asHow we know
Chart and instrument
ChartVANTAGE:NAS100declared
Timeframe3mdeclared
Broker symbolNAS100evidenced
AccountVantage demo, 1:100, USD 100kdeclared
Macro windows
09:20 NYoffonfired
14:50 NYoffonno signal yet
18:50 NYoffonno signal yet
22:50 NYoffonfired
Trade geometry, as the messages describe it
Reward multiples1:1 · 2:1 · 3:11.0:1 · 2.0:1 · 3.0:1evidenced (1 signal)
Scale Out (Partial TPs)?truethirdsevidenced (1)
What your own messages prove about the rest
Stop distance in effect51.23 pointsevidenced your SL Buffer × ATR14, as it came out on the last signal
Lots we sent the broker5evidenced our sizing from your risk, capped by our lot ceiling
tp1 distance1.00Revidenced 1:1 — from the prices your strategy sent
tp2 distance2.00Revidenced 2:1 — from the prices your strategy sent
tp3 distance3.00Revidenced 3:1 — from the prices your strategy sent
Strategy inputs changed from your defaults
Max Trades Per Day74declared
Enable Webhook Alerts?falsetruedeclared
Ticker SymbolNQM2026NAS100declared
Move SL to BreakevenAfter 1:1After 2:1declared
Execution limits (ours, not yours)
Risk per trade0.5 % of balancedeclared
Position cap5.0 lotsdeclared
Daily loss limit3.0 %declared
Concurrent positions1 declared
Nasdaq 3-minute (retired) ustec3m
RETIRED 2026-09-15 → 2026-09-16

Retired: that broker refused every index order with retcode 10017. No trade ever executed on this epoch.

0 trades came from this configuration.

SettingYour defaultRunning asHow we know
Chart and instrument
ChartCAPITALCOM:US100declared
Timeframe3mdeclared
Broker symbolUSTECdeclared
AccountMetaQuotes demo, USD 100kdeclared
Macro windows
09:20 NYoffonno signal yet
14:50 NYoffonno signal yet
18:50 NYoffonno signal yet
22:50 NYoffonno signal yet
Trade geometry, as the messages describe it
Reward multiples, scale-out1:1 · 2:1 · 3:1, thirdsdeclaredawaiting a real signal ⚠ hand-fired tests are deliberately not counted — their geometry is ours, not the strategy's
Strategy inputs changed from your defaults
Max Trades Per Day74declared
Enable Webhook Alerts?falsetruedeclared
Ticker SymbolNQM2026US100declared
Execution limits (ours, not yours)
Risk per trade0.5 % of balancedeclared
Position cap5.0 lotsdeclared
Daily loss limit3.0 %declared
Concurrent positions1 declared

Every input in your strategy

⭐ Read straight out of your Pine source rather than retyped, so the defaults column cannot drift from the strategy. All 66 of them, with the 15 the pilot changed marked. Not one line of your Pine was modified — the bridge reads the plan your strategy already emits.

SettingYour defaultRunning as
Strategy Settings
Position SizingFixedFixed
Contracts (Fixed)33
Risk % (of Equity)1.01.0
Scale Out (Partial TPs)?truetrue
Single TP Target2:12:1
Move SL to BreakevenAfter 1:1After 2:1 changed
Max Trades Per Day74 changed
Max Trades Per Macro Window11
Close at End of Day?truetrue
Allow Longs?truetrue
Allow Shorts?truetrue
Use Date Filter?truetrue
Start Datetimestamp("2026-01-01 00:00 +0000")timestamp("2026-01-01 00:00 +0000")
End Datetimestamp("2026-12-31 23:59 +0000")timestamp("2026-12-31 23:59 +0000")
Webhook Alerts
Enable Webhook Alerts?falsetrue changed
Ticker SymbolNQM2026NAS100 changed
Signal Settings
Bars After Macro For Signal66
FVG Size Filter (ATR)?truetrue
Min Gap (×ATR14)0.230.23
FVG Validity (Bars)400400
Mitigation Level50%50%
Displacement Filter
Enable Displacement Filter?truetrue
Min Body % of Range0.600.60
Min Body vs Avg Body (×)1.601.60
Avg Body Lookback2020
Signal Cooldown
Enable Cooldown?truetrue
Cooldown (Bars)1010
Liquidity Sweep
Enable Sweep Filter?truetrue
Sweep Threshold (×ATR14)0.00.0
Sweep ModeAlignedAligned
Require Sweep Rejection?falsefalse
Asia H/Ltruetrue
London H/Ltruetrue
NY Opentruetrue
Midnighttruetrue
CISD Filter
Enable CISD Filter?truetrue
Trade Setup
Entry ModeIFVG EdgeIFVG Edge
SL Buffer (×ATR14)1.951.95
Performance Tables
Show Results Table?truetrue
Show Per-Macro Breakdown?truetrue
Macros
00:50-01:10falsefalse
01:50-02:10falsefalse
02:50-03:10falsefalse
03:50-04:10truefalse changed
04:50-05:10falsefalse
05:50-06:10falsefalse
06:50-07:10falsefalse
07:50-08:10truefalse changed
08:50-09:10falsefalse
09:20-09:40falsetrue changed
09:50-10:10truefalse changed
10:50-11:10truefalse changed
11:50-12:10falsefalse
12:50-13:10truefalse changed
13:50-14:10falsefalse
14:50-15:10falsetrue changed
15:15-15:45falsefalse
15:50-16:10falsefalse
16:50-17:10falsefalse
17:50-18:10falsefalse
18:50-19:10falsetrue changed
19:50-20:10falsefalse
20:50-21:10truefalse changed
21:50-22:10falsefalse
22:50-23:10falsetrue changed
23:50-00:10truefalse changed
Assessment

What this data does and does not support

Each finding recomputes from the records on every rebuild, heading included. ⚠ The reasoning behind them does not — it updates its numbers but cannot notice something nobody has looked for.

!

1 plan did not reach the broker

5 plans executed, 0 plans refused by the executor, 1 rejected at the relay before the executor saw them. ⚠ A refused plan is a missed trade, and a missed trade looks exactly like a quiet market — so each one is listed rather than summarised. Each was a deliberate stop, but a guard that fires often is telling you something about the configuration rather than about the market.

Realised risk matches the plan

Across 1 trade stopped out with no target filled, the mean realised result is -0.95R where the plan called for exactly -1.00R — 5% less risk than intended. ⭐ The strategy computes its stop from a reference price; the fill lands where the market puts it, so the true distance to the stop — and therefore the money actually at risk — is not the distance it planned. On this sample the two agree, which is the result you want.

No read on profitability - 2 trades is not a sample

Removing the single largest trade changes the result from -150 to +53. Any win rate, profit factor or expectancy computed from 2 trades would be an artefact of which trades happened to occur. Nothing here should be read as evidence the strategy makes or loses money until there are at least 30, across more than one session.

·

Next deadline: Vantage demo account, 30 days away

Vantage demo account 2026-10-16 (30d) · TradingView alert 2026-11-14 (59d). ⚠ Each of these stops the pilot with no error, no email and no trace, and a strategy that trades at most four times a day cannot be watched for silence — a lapsed account and a quiet market look identical. ⭐ That is why they are counted down from recorded dates rather than noticed after the fact. The nearest one is the one that matters.

!

There is no backtest on this page, and that is a gap

A live run is only meaningful against a prior, and none has been established here: this strategy has not been backtested on our side, so there is no expectation for these figures to confirm or contradict. ⭐ You have the strategy tester and the history we do not - a run on the same instrument, timeframe and four windows would give this page the baseline it is currently missing. Until then, treat every number here as a measurement of execution and none of it as evidence about edge.

Architecture

How a signal becomes an order

Four hops. Your script owns the first and nothing after it.

1
Your strategy fires
An alert on order fills sends the JSON your Pine already builds — direction, size, stop and all three targets. TradingView posts it from its own servers.
2
A relay catches it
A small program on a free Cloudflare account. It exists because TradingView needs a public address to post to and a home PC does not have one. It stamps the message, refuses duplicates, and holds it.
3
The executor collects it
An expert advisor inside MetaTrader asks the relay for anything new. ⭐ It reaches out, so nothing needs to reach in — no port forwarding, no fixed address, nothing exposed.
4
The broker fills it
The stop goes to the broker with the order, so a dead executor still leaves a protected position. Thirds close at each target and the stop moves to breakeven on its own.

Running it without us

⭐ The relay is yours to own, not ours to rent you. Everything on this page runs on infrastructure you would control.

The relay is a free Cloudflare account and four commands. Your account, your URL, your secrets. Nothing runs on our side, and nothing breaks if we disappear.

The executor is a single file. It drops into MetaTrader's Experts folder and attaches to a chart. Its risk settings are a text file it re-reads every thirty seconds, so they change without a dialog and without a restart.

The alert message is a wrapper around your own. ⭐ That is why your Pine needs no changes at all — TradingView substitutes your strategy's JSON inside it.

Status

What this run has and hasn't shown

Proven, on real orders
  • The whole plan travels in the entry message — every later message is ignored, so none can be lost, duplicated or misread.
  • The stop is attached to the order, and the final target parked at the broker.
  • A position stopped out by the market was reported as a loss — which your strategy's own message stream would have reported as a take-profit.
  • A stale plan is refused rather than traded late.
  • The executor was killed mid-trade and recovered its position, cursor and settings.
  • A signal from TradingView reached the broker. First one 15 September, 22:24 Cayman — accepted by the relay and filled 25 seconds later. This was the last untested link in the chain.
Not yet observed
  • Breakeven succeeding — it needs price to move off the entry far enough to clear the broker's minimum stop distance. ⭐ The executor started reporting this on 16 September, so the first success will be recorded rather than missed.
  • Any target filling. The one real trade stopped out before its first target, so partial closes and breakeven have never run on a strategy signal.
  • Anything at all about whether the strategy makes money. See the assessment.