FD FlowDesk

Auto-Trade

Read-only status for the Trading212 connection: whether it's actually enabled, current risk limits and exposure, and the full order audit log. The cron reconciles new Top Picks basket entries into buy orders and basket exits into sell orders — see api/lib/auto_trade_lib.php for the full lifecycle.

Status

ENABLEDDEMOAPI key setTOP PICKS
Open positions
7 / 10
Deployed
$700.00 / $1,000.00
Max per position
$100.00
Stop-loss
-10.0%
Min confidence
70 / 100
Min quality percentile
60 / 100
trading212_min_quality now gates on quality_percentile, not raw quality — a name's standing vs. everything else currently scored, not an absolute number that can shift as the option chain refreshes

Performance

Real, realized returns from every position this app has actually opened with Trading212 — tracked since 2026-08-25 20:25:20. A closed position uses the exit price captured when its close confirmed; an open one is marked to the current spot (unrealized). Nothing here is a backtest or a simulation.

Closed trades
35
Win rate
40.7%
Avg return / trade
+0.33%
Avg hold time
8.5h

Win/loss asymmetry

A stop-loss caps a single position's loss (see Min quality/confidence above) while a winner is allowed to run uncapped — this only shows the ONE net avg return above; this splits it into what winners and losers each actually averaged, the direct check for whether that "small controlled losses, larger uncapped wins" structure is actually showing up in real fills.

Avg win
+1.83%
11 winning trades
Avg loss
-0.86%
13 losing trades
Win/loss ratio
2.13x
avg win ÷ avg loss magnitude — above 1x means winners really do outrun losers

Cumulative P&L

2026-08-27 14:30:40Cumulative: +8.74%

Conviction calibration — real fills

How real, closed Trading212 positions actually performed, binned by the confidence/quality they had at entry — the strongest evidence for whether the Min confidence/Min quality bars above are set at the right level, since it reflects real execution, not an "if you'd held it" approximation. This never changes those settings itself; that stays a deliberate config.local.php edit.

By confidence

Band (0-100)Closed tradesWin rateAvg returnSample
70..801735.3%+0.50%sufficient
80..90650.0%+0.07%too few

By quality percentile

Band (0-100)Closed tradesWin rateAvg returnSample
20..3020.0%-2.20%too few
30..4010.0%-1.75%too few
40..5010.0%-1.80%too few
60..70771.4%+0.82%too few
70..80333.3%+0.19%too few
80..90425.0%+2.13%too few
90..100333.3%+0.37%too few

By choppiness

Band (0-100)Closed tradesWin rateAvg returnSample
0..101145.5%-0.02%sufficient
20..30742.9%+1.80%too few

By stability

Band (0-100)Closed tradesWin rateAvg returnSample
60..7010.0%-2.15%too few
80..90955.6%+0.58%sufficient
90..100650.0%+1.65%too few

Raw pairs (confidence vs. quality, per closed position)

If confidence and quality look identical band-for-band above, this is where to check whether that's two genuinely different numbers that just usually land together, or the same number twice.

SymbolEnteredConfidenceQualityReturn
CVX2026-08-28 16:187687-0.05%
SNAP2026-08-28 14:427870+2.97%
PYPL2026-08-28 12:447892+2.23%
PCG2026-08-28 12:328283-0.49%
BB2026-08-28 09:568083+0.89%
XYL2026-08-27 20:347662-2.15%
ROKU2026-08-27 20:347582+0.41%
PATH2026-08-27 20:348384+0.08%
T2026-08-27 19:167481+0.00%
BB2026-08-27 18:467882+1.72%
ARM2026-08-27 18:038392-0.62%
SNAP2026-08-27 17:077769-1.80%
ARM2026-08-27 17:068291-0.49%
OXY2026-08-27 16:208082+1.04%
ARM2026-08-27 15:547380+0.00%
ARM2026-08-27 15:447380-0.64%
XPEV2026-08-27 14:367579+0.00%
PURR2026-08-27 14:197890+9.22%
HTZ2026-08-26 20:107865-1.75%
CVX2026-08-26 20:027686-0.31%
AMC2026-08-26 19:547862-2.25%
CVX2026-08-26 18:097780-0.39%
SOUN2026-08-26 17:587978+1.23%

Liquidity calibration — real fills

How real, closed Trading212 positions actually performed, binned by combined call+put options volume at entry — the same signal VerdictLib's VOL_USABLE=10000 gate dimension checks (verdict_lib.php), never checked against a real outcome until now. This never changes that threshold itself.

Liquidity tier (combined call+put volume)Closed tradesWin rateAvg returnSample
Mid (5k-50k)1844.4%+0.68%sufficient

Conviction calibration — Top Picks basket (paper ledger)

Same idea, from the forward-tracked Top Picks basket ledger (every basket entry/exit, whether or not it was ever real-money traded) instead of real fills — accumulates faster, but doesn't reflect real slippage/execution. This never changes any setting itself either.

By confidence

Band (0-100)Closed tradesWin rateAvg returnSample
60..70425.0%+0.04%too few
70..807316.4%-0.39%sufficient
80..903627.8%-0.05%sufficient
90..100540.0%-0.32%too few

By quality percentile

Band (0-100)Closed tradesWin rateAvg returnSample
10..2020.0%-15.81%too few
20..30825.0%-0.39%sufficient
30..40922.2%-0.29%sufficient
40..50911.1%-0.42%sufficient
50..6080.0%+0.00%sufficient
60..702817.9%+0.04%sufficient
70..801136.4%+0.09%sufficient
80..901020.0%+0.83%sufficient
90..1001520.0%-0.02%sufficient

By choppiness

Band (0-100)Closed tradesWin rateAvg returnSample
0..103930.8%-0.86%sufficient
20..30417.3%+0.23%sufficient

By stability

Band (0-100)Closed tradesWin rateAvg returnSample
60..70333.3%-0.80%too few
70..8020.0%-0.06%too few
80..902532.0%+0.10%sufficient
90..1001926.3%-1.22%sufficient

Raw pairs (confidence vs. quality, per closed position)

Same check as above, from the paper-ledger side.

SymbolEnteredConfidenceQualityReturn
SIRI2026-08-30 02:387482+0.00%
PG2026-08-30 00:277281+0.00%
DOW2026-08-29 22:587181+0.00%
AMC2026-08-29 22:067482+0.00%
SIRI2026-08-29 21:377482+0.00%
UNP2026-08-29 21:027481+0.00%
SNAP2026-08-29 20:258193+0.00%
KEEL2026-08-29 19:177181+0.00%
HTZ2026-08-29 19:057382+0.00%
DOW2026-08-29 18:267181+0.00%
SIRI2026-08-29 17:147482+0.00%
PG2026-08-29 15:318091+0.00%
HTZ2026-08-29 13:327382+0.00%
BB2026-08-29 12:128192+0.00%
AMC2026-08-29 11:568594+0.00%
SIRI2026-08-29 11:337482+0.00%
UNP2026-08-29 11:077988+0.00%
PG2026-08-29 09:547281+0.00%
KEEL2026-08-29 09:137890+0.00%
HTZ2026-08-29 09:027382+0.00%
DOW2026-08-29 08:187181+0.00%
AMC2026-08-29 07:197482+0.00%
SIRI2026-08-29 06:547482+0.00%
UNP2026-08-29 06:307481+0.00%
SNAP2026-08-29 05:528193+0.00%
S2026-08-29 05:357891+0.00%
PG2026-08-29 05:147281+0.00%
CVX2026-08-28 23:498186-0.20%
FNGR2026-08-28 22:287755-10.19%
SIRI2026-08-28 22:088481+0.11%

Liquidity calibration — Top Picks basket (paper ledger)

Same idea, from the forward-tracked Top Picks basket ledger instead of real fills — accumulates faster, doesn't reflect real slippage/execution. This never changes VerdictLib's VOL_USABLE threshold itself.

Liquidity tier (combined call+put volume)Closed tradesWin rateAvg returnSample
Mid (5k-50k)7817.9%-0.31%sufficient
High (50k+)250.0%-0.08%too few

Order audit log

PlacedSymbolResolved codeSideQtyTarget $StatusErrorAction
2026-08-30 04:38:15DOWBUY0.0000$100.00resolve_failedcould not resolve a Trading212 instrument code for this symbol (it may not be tradeable on this account)
2026-08-30 04:22:17KEELBUY0.0000$100.00resolve_failedcould not resolve a Trading212 instrument code for this symbol (it may not be tradeable on this account)
2026-08-30 03:12:18AMCAMC_CA_EQBUY38.6100$100.00pending_fill
2026-08-30 02:51:13KEELBUY0.0000$100.00resolve_failedcould not resolve a Trading212 instrument code for this symbol (it may not be tradeable on this account)
2026-08-30 02:38:16SIRISIRI_US_EQBUY3.5039$100.00cancelledcancelled: Top Picks basket direction flipped before this order confirmed
2026-08-30 02:01:16UNPUNP_US_EQBUY0.5000$100.00pending_fill
2026-08-30 01:20:29KEELBUY0.0000$100.00resolve_failedcould not resolve a Trading212 instrument code for this symbol (it may not be tradeable on this account)
2026-08-30 00:46:20SS_US_EQBUY4.6425$100.00pending_fill
2026-08-30 00:27:17PGPG_US_EQBUY0.6955$100.00cancelledcancelled: Top Picks basket direction flipped before this order confirmed
2026-08-29 23:49:13KEELBUY0.0000$100.00resolve_failedcould not resolve a Trading212 instrument code for this symbol (it may not be tradeable on this account)
2026-08-29 23:38:20HTZHTZ_US_EQBUY46.7290$100.00pending_fill
2026-08-29 22:58:17DOWBUY0.0000$100.00resolve_failedcould not resolve a Trading212 instrument code for this symbol (it may not be tradeable on this account)
2026-08-29 22:06:20AMCAMC_CA_EQBUY38.6100$100.00cancelledcancelled: Top Picks basket direction flipped before this order confirmed
2026-08-29 21:37:28SIRISIRI_US_EQBUY3.5039$100.00cancelledcancelled: Top Picks basket direction flipped before this order confirmed
2026-08-29 21:02:25UNPUNP_US_EQBUY0.5000$100.00cancelledcancelled: Top Picks basket direction flipped before this order confirmed
2026-08-29 20:25:23SNAPSNAP_US_EQBUY18.4162$100.00cancelledcancelled: Top Picks basket direction flipped before this order confirmed
2026-08-29 19:05:26HTZHTZ_US_EQBUY46.7290$100.00cancelledcancelled: Top Picks basket direction flipped before this order confirmed
2026-08-29 17:14:18SIRISIRI_US_EQBUY3.5039$100.00cancelledcancelled: Top Picks basket direction flipped before this order confirmed
2026-08-29 15:31:16PGPG_US_EQBUY0.6955$100.00cancelledcancelled: Top Picks basket direction flipped before this order confirmed
2026-08-29 13:32:55HTZHTZ_US_EQBUY46.7290$100.00cancelledcancelled: Top Picks basket direction flipped before this order confirmed
2026-08-29 12:14:27KEELBUY0.0000$100.00resolve_failedcould not resolve a Trading212 instrument code for this symbol (it may not be tradeable on this account)
2026-08-29 12:12:17BBBB_CA_EQBUY12.2549$100.00cancelledcancelled: Top Picks basket direction flipped before this order confirmed
2026-08-29 11:56:18AMCAMC_CA_EQBUY38.6100$100.00cancelledcancelled: Top Picks basket direction flipped before this order confirmed
2026-08-29 11:33:13SIRISIRI_US_EQBUY3.5039$100.00cancelledcancelled: Top Picks basket direction flipped before this order confirmed
2026-08-29 11:07:21UNPUNP_US_EQBUY0.5000$100.00cancelledcancelled: Top Picks basket direction flipped before this order confirmed