1. What the system observed. HYUNDAI repeatedly cleared the entry filter chain — funding rate, persistence, basis, and liquidity all passed — and the strategy opened positions on it several times.
2. Why the trade was entered (each time). Every individual entry looked correct in isolation: nothing in a single snapshot distinguished HYUNDAI from any other qualifying symbol.
3. What the model expected. A funding-rate arbitrage trade behaving like the rest of the whitelist — funding earned exceeding fees and any naked-leg drift over the hold.
4. What changed. Across three consecutive HYUNDAI positions, all three closed net-negative. The project has an automatic mechanism built exactly for this pattern — three consecutive net-negative exits on the same symbol should trigger a loss-streak auto-blacklist. It did not fire for HYUNDAI: an implementation gap meant this specific case wasn't caught automatically, even though it matched the pattern the rule exists to detect.
5. Funding, price movements, and costs. The specific mechanism varied trade to trade, but the consistent pattern across all three was: whatever funding was earned did not clear the combination of fees and adverse price/basis movement.
6. Final result. HYUNDAI was added to the manual blacklist on 2026-08-02 after a human review caught the pattern the automatic system missed. It has not been re-entered since.
7. What was learned. An automatic filter is only as good as its coverage of the cases it's meant to catch. This incident is why the auto-blacklist logic gets checked against real outcomes periodically rather than trusted blindly — a rule that exists on paper but doesn't fire in the one case that matters is functionally the same as not having the rule. See Methodology for the current auto-blacklist criteria and how revival works.
This is an example of a "rejected" opportunity in the sense that mattered: not rejected at entry (it passed every filter), but correctly rejected going forward once the pattern was visible — which is precisely what a research process closing the loop should do.