Practice Risk control · judgement English
Eight strategies failed and the money is still here. That is not evidence my risk management works.
2,685 words · about 12 min
Eight strategies, none clearing the bar set in advance, and the capital intact. Whether that is risk control or a small position, this account cannot say.
An account that is still open is the weakest evidence in trading, and it is the evidence people trust most.
Survivorship reads as competence. It reads that way to the person holding the account too, which is the part worth watching, because that person is the one deciding how much size to put on next. Here is a specific instance, using an account I can open the books on: eight strategies, four of them killed outright, none of them clearing a threshold that was written down before any of them started — and the capital is intact.
The tempting conclusion is that risk control did that.
The stop that never came: forty-five minutes at Knight Capital
On 1 August 2012 a deployment at Knight Capital accumulated an unintended position in approximately forty-five minutes and cost the firm more than $460 million. The SEC’s order reads like an incident report (Release 34-70694 / Admin. Proc. 3-15570, 16 October 2013, retrieved 2026-08-28).
| What the order records | The engineering problem underneath |
|---|---|
| Retired functionality “remained present and callable” | Dead code was never deleted, only stopped being called |
| The new code reused the flag that activated it | One name, two meanings |
| One of eight servers did not get the new code | Deployment was not atomic and nothing reconciled it |
| No second technician reviewed the deployment | The only check was that somebody remembered |
Forty-five minutes is not slow reflexes.
Nothing in that path was designed to stop. The system spent those minutes doing exactly what it had been written to do, which is the ordinary condition of software and the reason a stop condition is not a feature you add to a risk module. It belongs to the order-sending code itself, and a piece of order-sending logic that does not say when it stops sending is unfinished rather than risky.
Directionally right, structurally dead
When LTCM collapsed in 1998 the Federal Reserve chairman told the House Banking Committee that as opportunities thinned the fund “reached further for return over time by employing more leverage and increasing its exposure to risk, a strategy that was destined to fail”, into an environment “so at variance with the experience built into its models” (testimony, 1 October 1998, retrieved 2026-08-28).
Archegos was the same shape at a different scale. Per the SEC’s complaint, the firm went from roughly $1.5B in value with $10B of exposure in March 2020 to more than $36B in value with $160B of exposure at its March 2021 peak (SEC press release 2022-70, retrieved 2026-08-28).
Neither was a directional error.
Both were positions large enough to convert “temporarily wrong” into “permanently out”, and that conversion is the thing risk control is actually for. A view can only be settled by the market if whoever holds it is still there when the settlement arrives.
A third case was going to sit here: Amaranth, 2006. I dropped it, and the reason is worth more than the example was. The primary document I could retrieve is a regulator’s manipulation charge, while the claim I wanted it to support is about concentration risk. The document is real and the claim is real, and the document does not support the claim. Nobody would have caught that, which is exactly why it goes in the text.
The claim, tested against my own account
Real money, snapshot 2026-08-27T05:10:29Z:
| Quantity | Value |
|---|---|
| Capital | $3,300 |
| Current value | $3,499.44 |
| P&L | +$199.44 |
| Lines | 8: four killed, four unproven |
| Highest t | 1.88 (threshold 2.0, fixed in advance) |
| Lines clearing the threshold | 0 |
Read one way, that table is the claim confirmed: everything failed, nothing blew up. There is a second reading of the same numbers and it is simpler.
A Risk control worked: stops closed positions before damage compounded
B The positions were small: $3,300 across four lines, no single incident is fatal
Both readings predict the same account statement.
Telling them apart does not need more survival time, it needs one quantifiable counterfactual: an event where a control fired and the loss it avoided can be computed. I have one, a structural fuse that closed a position on the day it opened, and it fired while I disagreed with it. That is n=1.
This site holds its own strategies to a t-statistic fixed in advance at 2.0, against a literature that argues the bar for a new factor should be 3.0 once you account for how many have been tried (Harvey, Liu & Zhu, 2016). Applying that same ruler here is short: at n=1 there is no t to compute.
So the answer is that I cannot tell.
Not “my risk management is sound”, and not “risk management is overrated” either. A surviving record cannot establish that controls work; it establishes that nothing fatal has happened yet, and those two statements produce identical statements, identical equity curves and identical confidence in the person reading them.
The corollary is uncomfortable and worth stating plainly: the strongest evidence for your risk control comes from your worst loss. The deepest single-line drawdown here has not been deep enough to produce that evidence, so this account owes it. Owing it is the honest entry.
Diversify the assumption, not the ticker
The eight lines span crypto perpetuals, US equities, futures, prediction markets, sports and Taiwanese equities. Six venues, and the result is four killed, four unproven, zero clearing the bar.
Spreading across tickers only helps when the risk lives in the ticker. What these lines had in common was an assumption: that a good enough entry condition makes the exit a detail. Testing across lines is what killed it. Three independent lines in three markets produced the same finding, that exit design matters more than entry (the cross-line result, in Chinese).
One thing to run: list your lines, then ask how many die together if your central assumption is wrong. Above one, they are slices of a single position.
The cost is visible, the benefit is not
Controls cost something every day: blocked positions, delayed deployments, time. What they buy is an absence, and absences do not appear on any report. That asymmetry, rather than laziness, is why controls are usually installed after the incident that would have justified them.
This site’s build gates are the same shape. Seven of them, and five had defects on the day they were written, with none of the five reporting anything (five gates, five silent failures). Read the build output from that day and all seven were green.
On 2026-08-28 the same class showed up again, and it is the reason this article exists in the order it does. The leak gate that protects this site’s disclosure boundary had nine categories of rule and not one of them covered stop placement or holding time, which are the two things the site says it will never publish. The rule now exists; eleven lines in the published corpus had to be annotated as killed variants before the build went green again; and the English half of that rule was written specifically because of this article.
One thing to run: write down what each of your protections claims to catch, then confirm it can go red by injecting a fault into the artefact rather than the source.
Original research: contracts that stopped trading and were never marked delisted
This part is not a retelling. Claim: a category of perpetual contract has stopped producing data while continuing to look alive everywhere. The page is up, the history is there, the chart renders. A backtest will fill orders across that frozen stretch, and those fills do not exist.
Method (data/coins/*.json, 718 files, as_of identical across all of them at 2026-08-10): for every contract not marked delisted, take the more recent of the two series end dates (funding rate and open interest) and measure the distance to as_of.
| Stopped for more than | Contracts | Share of the 689 not marked delisted |
|---|---|---|
| 7 days | 122 | 17.7% |
| 90 days | 111 | 16.1% |
| 180 days | 84 | 12.2% |
| 365 days | 38 | 5.5% |
| 730 days | 0 | 0% |
The cut-off is not carrying any weight here, which matters more than the number itself: those 122 contracts have been stopped for between 39 and 417 days, median 255. Any threshold between 7 and 39 days returns the same 122 — there is nothing in that interval to move. (The 417 is a lower bound rather than the truth: it takes the more recent of the two series, and for these contracts that is the funding series, which padding extends — see the two end-date fields below.)
One numerator, two denominators, both correct
The strategy side reached 122 by an unrelated test: closing price frozen for fourteen consecutive days. I reached 122 by series staleness. Four contracts they named appear in my list.
15.3% = 122 / 797 denominator: symbols with tail data up to as_of (their test)
17.7% = 122 / 689 denominator: pages on this site not marked delisted (mine)
Publishing one figure would make it look like the figure.
Two unrelated tests returning the same count is strong evidence. “Therefore they are the same 122 contracts” is an inference nobody has checked, and I cannot check it: their raw data sits in a directory this side does not touch, and I do not have their list. So the record says counts agree and four named examples match, and stops there.
Six you can click
| Contract | Funding ends | Open interest ends | Gap between the two |
|---|---|---|---|
| WAVESUSDT | 2025-06-19 | 2024-06-10 | 374 days |
| AGIXUSDT | 2025-06-19 | 2024-07-15 | 339 days |
| FTMUSDT | 2025-06-19 | 2025-01-06 | 164 days |
| BNXUSDT | 2025-06-19 | 2025-03-17 | 94 days |
| BALUSDT | 2025-06-19 | 2025-04-13 | 67 days |
| MKRUSDT | 2025-09-08 | 2025-09-07 | 1 day |
Every one of them stopped before 2026, and that is not a coincidence.
The example I originally picked stopped in 2026, and a ticker sitting next to a 2026 date is precisely the shape this site’s leak gate uses to catch live signals, so it stopped me from publishing the row. The gate was right. That line really does have the shape of a leak, and the only difference is intent, which is not a checkable property. What I worked around was the shape rather than the rule: a contract with an older end date carries the identical claim.
One of them, opened up
WAVESUSDT has funding data ending 2025-06-19 and open interest ending 2024-06-10, 374 days apart on the same contract, with the more recent of the two already 417 days behind as_of. Its page does not print a single “data ends” date. Each series prints its own, so the divergence is something the page states rather than something a reader has to suspect.
38 of the 122 share a single funding end date, 2025-06-19. A batch of contracts retired together would look like that, and the site’s own files rule it out in three checkable lines: those 38 have 28 distinct open-interest end dates spanning 2022-11-13 to 2025-10-03; their last 30 funding values contain two distinct numbers where BTC, ETH and SOL each contain 30; and across the last 200 values the median count of distinct numbers is 10.
Contracts retired on one day do not stop reporting open interest on 28 different days, and contracts still trading do not oscillate between two funding values. The shared date is a boundary in the collection pipeline, and what it truncated was padded funding data for instruments that were already dead. That argument rules out a single shared stop; the date each contract actually stopped trading is not something these files can give you, because that needs volume and volume is not among the published fields.
The two end-date fields are not equally honest
This fell out of checking the paragraph above, and it is a property of the data rather than an argument in this piece: the open-interest end date is close to accurate and the funding end date is extended by padding. Across those 38 contracts funding_last runs later than oi_last_date by a median of 193 days, from −106 to 949.
So if you want to know when a contract stopped producing data on this site, read the open-interest line. Both dates are printed on every coin page, and until this was checked I did not know one of them was softer than the other.
What this site does, and where this site is blind
No detector. A detector needs a threshold, a threshold needs a definition of “stopped trading”, and that definition immediately acquires a boundary dispute. Printing each series’ own end date needs neither: the reader gets a fact and makes the call.
And the delisting guard on this site is blind to this whole category. It compares a series’ end date to as_of, while forward-filled rows leave a contract that stopped trading with a candle on the as_of date. The guard’s field of view is exactly where the defect leaves no trace.
Five questions to put to your own account
- Was your stop condition written before the position, or after the loss? Both leave the sentence “I cut it” in the record. The order of events is the whole difference.
- Last time it fired, did you agree with it? If you always agree, it is not protecting you from anything.
- If your central assumption is wrong, how many lines die together? More than one and they are not diversified.
- Has each protection ever gone red? If not, inject a fault into the artefact and confirm it can.
- Is any part of your data already dead while you treat it as live? Print the last write date of every series and see how far from today it is.
None of the five says “be disciplined”.
That instruction is not wrong, it is just not actionable, and an account that survives while producing no evidence either way is the ordinary case rather than the exception. The five above are the parts you can actually check, and the fourth section of this piece is what happens when you apply the same standard to yourself and come up short.
FAQ
Is this saying risk management does not work? No. It says a surviving record is not evidence that it works. Evidence requires a computable counterfactual, and counterfactuals only appear when the loss is deep enough to produce one.
Does a small position count as good risk management? They are different things wearing the same result. Size discipline keeps you alive at this scale; at a larger scale something else is doing the work, which is why survival at $3,300 cannot underwrite a method.
How do I check the 122 for myself? Open any of the coin pages linked above and read the two series end dates. If your data comes from elsewhere, ask the same question of it: when was the last point actually written?
Why not publish the risk parameters? Stop placement, holding time and capacity limits are the one category this site never publishes, and the reasoning is on the method page. Where numbers from dead variants do appear, they are marked as such in the source — not because they are safe, but because they are dead.
Sources
Three external sources, each retrieved and read on 2026-08-28 rather than summarised second-hand: the 1998 testimony on LTCM (federalreserve.gov), the SEC’s Knight Capital order (sec.gov, a 98,373-byte PDF read in full), and the Archegos complaint announcement (sec.gov). The multiple-testing bar is the same paper this site’s eight checks for a track record already leans on.
Real balances and the liveness panel are on the performance page; the eight lines and their verdicts are on the front page.