Trader Risk
Risk Manager.
Install
npx skills add Jakeschincariol/day-trader-skill --skill trader-risk -g -a claude-code -y- Repository
- Jakeschincariol/day-trader-skill4.3k
- Category
- Business
- Updated
- 15d ago
- License
- MIT
- Context cost
- Mediumabout 2,122 tokens
- Runs scripts
- Yes, review before use
What it does
Risk Manager. Checks every trade against your limits and stops anything over them, before it can reach the broker. For a day trade: a stop is required, the loss at the stop must fit your max loss per trade (measured from the higher of the plan's entry and a fresh price), reward:risk must meet your minimum, the day's total risk must fit your daily loss limit, no more than your trades per day, and no new entries outside your entry window or when the market is closed. It also keeps the basics: blocked tickers, order size, position cap, cash buffer, margin, short sales, options and crypto, malformed or bad bracket orders, duplicates and a daily order limit. Getting out is never blocked by a day limit. Prints PASS or BLOCK with the reason and records the verdicts so trader-broker only shows an order that passed. Use when the user says "check my order", "is this safe", "risk check", "does this break my rules", "can I take this trade", "how much have I risked today", or before /trader-broker, always.
trader-risk
The Risk Manager is the gate between a proposal and the broker. Every order written by trader-budget or trader-broker's flatten passes through it. A BLOCK is final for that order: it does not go to the user for a yes, and it does not go to the broker. Most people who day trade lose money. These limits keep each loss and each day's losses small. They do not make a trade win.
${CLAUDE_SKILL_DIR} below is this skill's folder (where this SKILL.md lives).
python3 "${CLAUDE_SKILL_DIR}/check.py" # trader/ files; writes trader/state/risk.json
python3 "${CLAUDE_SKILL_DIR}/check.py" --json
python3 "${CLAUDE_SKILL_DIR}/check.py" --no-write # look without recording
python3 "${CLAUDE_SKILL_DIR}/check.py" --now "2026-10-19 10:15" # pin the clock (New York time)
What it reads and writes
| file | what |
|---|---|
trader/orders.json | the proposed orders (trader-budget, or trader-broker's flatten) |
trader/config.json | the limits (trader-budget ships config.example.json) |
trader/portfolio.json | cash and holdings; if missing, a fresh account funded with the budget |
trader/prices.json | a fresh price raises the entry it measures risk from; also values holdings |
trader/state/broker.json | what was placed today: duplicates, trades per day, daily loss, day trades |
trader/state/risk.json | the verdicts it writes, with a fingerprint of each exact order |
Entries and exits
An entry opens or adds to a position: a buy, or a sell that would go short. An exit only reduces what you already hold. Getting out must always be possible, so an exit is checked for format, asset and short sales only. Every other rule (day limits, entry window, loss, reward:risk, blocked list, size, duplicates) turns into a warning for an exit, never a BLOCK.


