Data Quality
stock missing exit price
58/1108 resolved stock signals are quarantined (incomplete_exit, legacy, excluded from all stats)
WARN
crypto missing exit price
0/745 resolved crypto signals have an outcome but no exit_price/pct_gain
OK
outcome pct gain mismatch
0/1050 resolved stock signals have outcome/pct_gain sign mismatches (e.g. outcome=LOSS with a positive pct_gain)
OK
stopped out without verdict
No stopped-out signals yet
OK
shadow score neutral dilution
428/730 shadow-scored signals have >50% of factors on neutral-credit fallback
WARN
profile cache staleness
Last full refresh 17 days ago (21769 symbols; expected roughly monthly)
OK
coingecko cache health
1794 cached entries, oldest 261.3h old
OK
regime snapshot staleness
Most recent regime snapshot 8.2h old (expected within 48h)
OK
Regime-Conditioned Performance
RANGE BOUND LOW VOL
34 trades
· win rate 41.2%
· Sharpe -0.11
TRENDING HIGH VOL
3 trades
· small sample
TRENDING LOW VOL
394 trades
· win rate 65.2%
· Sharpe 0.34
Auto-Trade Rejection Report
Exactly why signals reaching AutoTrader.on_signal() are accepted or rejected, by the specific gate that decided it — real, persisted data (fix #349), not reconstructed from logs that don't survive this project's own log retention.
Covering 2026-07-23 to 2026-09-11.
9434 decisions logged —
298 accepted ·
9136 rejected
MODERATE
circuit breaker
2371 (26.0% of rejections)
min rr
2069 (22.6% of rejections)
· 105/2069 within 10% of clearing
min smc grade
1332 (14.6% of rejections)
· 471/1332 within 10% of clearing
max positions
1042 (11.4% of rejections)
smc bearish bias
951 (10.4% of rejections)
duplicate position
736 (8.1% of rejections)
min confluence
367 (4.0% of rejections)
· 283/367 within 10% of clearing
min rel vol
78 (0.9% of rejections)
· 10/78 within 10% of clearing
min swing confluence
41 (0.4% of rejections)
· 23/41 within 10% of clearing
portfolio exposure
38 (0.4% of rejections)
broker rejected
28 (0.3% of rejections)
news blackout
26 (0.3% of rejections)
stale price invalidates bracket
26 (0.3% of rejections)
market closed
23 (0.3% of rejections)
min rr at execution
5 (0.1% of rejections)
unpriceable symbol
3 (0.0% of rejections)
Scalp Stop-Width Filtering
2026-07-23: real closed stock trades had stops as tight as 0.15%-2.2% of entry — tighter than ordinary intraday noise, contributing to a 16.7% stock win rate vs crypto's 57.9% over the same window. MIN_SCALP_STOP_PCT now rejects a stop that's too tight, the same way MAX_SCALP_STOP_PCT already rejected one too wide — a distinct, earlier stage than the rejection report above (a signal filtered here never reaches on_signal() at all).
Covering 2026-09-01 to 2026-09-10.
1016
too tight (avg 0.53%)
BREAKOUT
69 too tight · 0 too wide
BULL_FLAG
0 too tight · 16 too wide
CANDLE
346 too tight · 4 too wide
EMA_PULL
129 too tight · 0 too wide
FIB_BOUNCE
36 too tight · 0 too wide
GAP_GO
4 too tight · 95 too wide
HOD_BREAK
48 too tight · 1 too wide
MOMENTUM
127 too tight · 67 too wide
ORB
0 too tight · 1 too wide
PM_HIGH
3 too tight · 26 too wide
SETUP
171 too tight · 0 too wide
VWAP
83 too tight · 33 too wide
GAP_GO Entry Slippage
Real case, 2026-07-23: a GAP_GO market order intended to enter CITR at $5.04 filled at $5.96 (18.25% slippage), while position sizing had already used the tiny intended risk-per-share — the stop stayed fixed near the pre-gap level, turning a controlled 1%-risk trade into a $1,267 loss. GAP_GO entries are now a marketable limit order bounded at entry × (1 + MAX_GAP_GO_ENTRY_SLIPPAGE) instead of an unrestricted market order.
Halal ETF Constituents Not Yet Tracked
Real holdings of SPUS/HLAL/MNZL (from their own SEC Form N-PORT filings) that don't match any symbol already on the watchlist by company name. A review list only — N-PORT filings never include a ticker, so matching is by name and inherently fuzzy. Nothing here is added automatically; each candidate needs its own live ticker/listing check first, same discipline that caught "AMAL" resolving to an unrelated bank.
383 watchlist symbols confirmed held by a real fund ·
104 real holdings not matched to the watchlist
as of 2026-08-23
AECOM (00766T100)
MNZL · 0.03%
AGCO Corp (001084102)
MNZL · 0.02%
Acuity Inc (00508Y102)
MNZL · 0.02%
Antero Resources Corp (03674X106)
MNZL · 0.04%
Apellis Pharmaceuticals Inc (03753U106)
MNZL · 0.01%
Arrow Electronics Inc (042735100)
MNZL · 0.03%
Ashland Inc (044186104)
MNZL · 0.01%
AvalonBay Communities Inc (053484101)
MNZL · 0.10%
Avantor Inc (05352A100)
MNZL · 0.02%
Avnet Inc (053807103)
MNZL · 0.03%
BellRing Brands Inc (07831C103)
MNZL · 0.01%
BorgWarner Inc (099724106)
MNZL · 0.04%
Bright Horizons Family Solutions Inc (109194100)
MNZL · 0.01%
Brookfield Renewable Corp (11285B108)
MNZL · 0.02%
Bruker Corp (116794108)
MNZL · 0.01%
CDW Corp/DE (12514G108)
MNZL · 0.09%
CH Robinson Worldwide Inc (12541W209)
MNZL · 0.07%
CLEAN HARBORS INC COM (184496107)
MNZL · 0.06%
Cava Group Inc (148929102)
MNZL · 0.03%
Certara Inc (15687V109)
MNZL · 0.00%
Choice Hotels International Inc (169905106)
MNZL · 0.00%
ConocoPhillips (20825C104)
HLAL, MNZL · 0.51%
Crocs Inc (227046109)
MNZL · 0.02%
DR Horton Inc (23331A109)
HLAL, MNZL · 0.15%
Dick's Sporting Goods Inc (253393102)
MNZL · 0.05%
Dillard's Inc (254067101)
MNZL · 0.00%
Eagle Materials Inc (26969P108)
MNZL · 0.02%
Elastic NV (N/A)
MNZL · 0.02%
Electronic Arts Inc (285512109)
HLAL · 0.18%
Eli Lilly & Co (532457108)
HLAL, MNZL · 2.68%
Envista Holdings Corp (29415F104)
MNZL · 0.01%
Equity Residential (29476L107)
MNZL · 0.09%
Esab Corp (29605J106)
MNZL · 0.02%
Expeditors International of Wa (302130109)
HLAL · 0.07%
Ferguson Enterprises Inc (31488V107)
HLAL, MNZL · 0.18%
Floor & Decor Holdings Inc (339750101)
MNZL · 0.02%
Fortune Brands Innovations Inc (34964C106)
MNZL · 0.01%
GXO Logistics Inc (36262G101)
MNZL · 0.02%
Gap Inc/The (364760108)
MNZL · 0.02%
Gates Industrial Corp PLC (N/A)
MNZL · 0.02%
Globant SA (N/A)
MNZL · 0.01%
Hayward Holdings Inc (421298100)
MNZL · 0.01%
Hologic Inc (436440101)
HLAL · 0.06%
Huntsman Corp (447011107)
MNZL · 0.01%
IAC Inc (44891N208)
MNZL · 0.01%
IFF (459506101)
HLAL · 0.08%
Insmed Inc (457669307)
MNZL · 0.10%
JB Hunt Transport Services Inc (445658107)
HLAL, MNZL · 0.06%
James Hardie Industries PLC (N/A)
MNZL · 0.01%
Jones Lang LaSalle Inc (48020Q107)
MNZL · 0.06%
+ 54 more, not shown
Signal-Level Factor Research
Based on 672 resolved stock signals with a real scoring breakdown on file — low vs high tercile win rate per factor.
liquidity structure
stuck at 0.0 for most signals — not enough spread to compare yet
LOW VARIANCE
vwap
stuck at 7.2 for most signals — not enough spread to compare yet
LOW VARIANCE
momentum
low `19.6%` (n=224) vs high `24.1%` (n=224)
MODERATE
volume
low `18.8%` (n=224) vs high `23.2%` (n=224)
MODERATE
smc
stuck at 0.0 for most signals — not enough spread to compare yet
LOW VARIANCE
trend
low `8.5%` (n=82) vs high `12.0%` (n=83)
WEAK
sentiment
low `14.7%` (n=224) vs high `20.1%` (n=224)
MODERATE
fundamentals
low `21.9%` (n=224) vs high `24.6%` (n=224)
MODERATE
risk liquidity
low `21.4%` (n=224) vs high `21.9%` (n=224)
MODERATE
Feature Redundancy
liquidity_structure and smc — insufficient variance to assess
r=0.922 (artifact)
Research Registry
Every hypothesis this platform tests, registered here before its result is known — a question can't be quietly reworded after the fact to match whatever the data happened to show.
Does RSI >= 60 at signal time outperform RSI < 60?
mean -0.49% (n=258) vs -0.10% (n=581) · p=0.121
WEAK
Does an SMC grade above 50 (real structural credit, per scoring_engine.py's own fallback rule) outperform 50 or below?
mean -0.38% (n=147) vs -0.38% (n=463) · p=0.976
WEAK
Does a signal in this week's rotating-in sector outperform one that isn't?
mean -0.92% (n=38) vs -0.54% (n=422) · p=0.068
MODERATE
Evidence Ledger
The most recent resolved signals feeding every conclusion above — every one WIN/LOSS, nothing excluded or reworded after the fact.