Red Day Autopsy CLI: deterministic local statement forensics for first-break trades, leak cost, and next-session seatbelts.
Project description
TradeLoop Red Day Autopsy
I blew 11 FundingPips evals.
The pattern was always the same: the first loss hurt, but the trade after the loss broke the account.
TradeLoop Red Day Autopsy takes a real statement and shows:
- the first trade where your rule stopped being real
- the cost of the leak in that window
- the seatbelt rules to carry into the next session
Deterministic. Versioned. Same input, same output. No AI in the score.
This is the open-source reference implementation behind TradeLoop, the hosted Red Day Autopsy and Tomorrow's Seatbelt product. Run it locally, inspect the math, challenge the rules, or add broker formats.
Run It Locally
pip install tradeloop-tilt-checker
tilt-check examples/sample_trades.csv
JSON output for audits, tests, or prop-firm review:
tilt-check examples/sample_trades.csv --format json --currency USD
The CLI never uploads your trades. It reads a local CSV and prints Markdown or JSON.
Required CSV columns are case-insensitive and alias-friendly:
timestampsymbolsideentry_priceexit_pricequantitypnl- optional
duration_minutes - optional
id
What It Detects
This package implements four open-core signatures:
| Signature | What it catches |
|---|---|
revenge_size_escalation |
Size jump immediately after a losing trade. |
post_loss_tilt_session |
Cluster of trades inside the post-loss window. |
loss_streak_oversize |
Three losses followed by a larger recovery attempt. |
drawdown_doubling |
Adding size while the recent trade window is already net negative. |
Thresholds use per-trader baselines where possible. A trader is compared to their own typical size and pace, not a universal lot-size rule.
Example Output
{
"engine_version": "rda-0.1.0",
"privacy": "local_only_no_upload",
"score": 532,
"band": "Fragile",
"first_break_trade": {
"row": 14,
"symbol": "XAUUSD",
"pattern": "revenge_size_escalation",
"size_multiple": 2.4,
"minutes_after_loss": 6.0
},
"leak_cost": {
"currency": "USD",
"amount": 320.0,
"method": "sum_abs_negative_pnl_on_flagged_break_trades"
},
"seatbelts": [
"No size increase for 15 minutes after a losing trade.",
"If you take 3 trades after a loss inside the window, stop the session."
]
}
See examples for synthetic/anonymized statements plus expected outputs.
Methodology
The full public explanation is in METHODOLOGY.md.
Short version:
- Sort trades chronologically.
- Build a robust per-trader baseline from median and IQR.
- Evaluate each trade as if it arrived live.
- Freeze every signature fire with evidence.
- Pick the first material break.
- Sum the negative PnL of flagged break trades as leak cost.
- Generate seatbelts from the fired patterns.
This is for discipline forensics, not financial advice and not signal generation. It does not tell you what to buy or sell.
Hosted App Vs Open Core
| Capability | This repo | Hosted TradeLoop |
|---|---|---|
| Local CSV analysis | Yes | Yes |
| Markdown report | Yes | Yes |
| JSON contract | Yes | Yes |
| First-break trade | Yes | Yes |
| Leak cost | Yes | Yes |
| Seatbelt suggestions | Yes | Yes |
| Multi-statement history | No | Yes |
| Live Seatbelt interrupt | No | Yes, Pro |
| Outcome Receipt | No | Yes |
| Score Card mint/share | No | Yes |
| Prop-firm Passport | No | Yes |
| Broker sync / webhooks | No | Yes |
Use this repo when you want to audit the promise. Use the hosted app when you want the 60-second product loop and next-session continuity.
- Hosted app: https://app.tradeloop.trade/score?utm_source=github&utm_medium=oss&utm_campaign=red_day_autopsy
- Methodology: https://app.tradeloop.trade/methodology?utm_source=github&utm_medium=oss&utm_campaign=red_day_autopsy
- Telegram bot: https://t.me/TradeLoopTiltBot
Why This Exists
TradeLoop was built after Varun Teja Chunduri cycled through 11 FundingPips $5K/$10K evaluation accounts between October 2025 and May 2026. The corrected public disclosure is roughly Rs 50,000 to Rs 60,000 in evaluation fees and about $3,000 to $5,000 in cumulative simulated capital wiped.
The point of publishing the core is simple: traders and prop firms should be able to inspect how the promise is kept.
Contributing
Good first contributions:
- add a broker CSV format
- add a synthetic example case
- improve a seatbelt rule
- challenge a methodology assumption
- add a parser regression test
Read CONTRIBUTING.md before opening a PR.
License
Apache License 2.0. See LICENSE.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file tradeloop_tilt_checker-1.1.0.tar.gz.
File metadata
- Download URL: tradeloop_tilt_checker-1.1.0.tar.gz
- Upload date:
- Size: 39.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b933049f74546e913db1e99be245b324b7b57821af4a56cd691477640f606c5f
|
|
| MD5 |
74d187a1dcdcf9997855bb6cb48e96dc
|
|
| BLAKE2b-256 |
e505defe886b99a733d2177820ecf9bc5bc69110a48beca00788a46ca7e43d9d
|
File details
Details for the file tradeloop_tilt_checker-1.1.0-py3-none-any.whl.
File metadata
- Download URL: tradeloop_tilt_checker-1.1.0-py3-none-any.whl
- Upload date:
- Size: 27.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
356a0ab4943dfd5d5408b0e286fd21ce9fba035fe4ace3109038f2d02ab5f767
|
|
| MD5 |
647de1a79a52c8f7c13157980cbfc022
|
|
| BLAKE2b-256 |
3a99ccae3d39846fd4bd378b4106322d5252cdfac8e5ae2788f81d51ded064cc
|