Install any skill in seconds. Free to start, no credit card required.
Get Started Free →staskh/ib-stop-loss
Downside stop-loss management for PMCC, naked LEAPS, and stock positions in IB. Computes stop prices, detects alerts, and places conditional combo orders. Dry-run by default. Requires TWS or IB Gateway running locally.
Passed 12 of 17 test cases with the skill, and 2 of 17 without it.
and 13 more in the full report
13 fixed3 passed either way6 still failing0 broke
Tokens, turns and time describe resource use, not a dollar price.
One of 13 test cases the skill fixed. Same model, same prompt, with and without the skill.
What default price proximity triggers the `short_near_strike` alert for short option legs?
| Checked | Without skill | With skill |
|---|---|---|
| Flags `short_near_strike` when underlying price is within 5% of or above the short strike. | Missed | Passed |
The instructions your model reads when the skill loads.
Analyzes PMCC (diagonal call spread), naked LEAPS, and stock positions in the IB portfolio and manages conditional stop-loss orders.
Default mode is dry-run — no orders are placed unless --execute is in the request.
TWS or IB Gateway must be running locally with API enabled:
IB_PORT env var — default port when --port is omitted (e.g. IB_PORT=4001 for a Gateway container). Precedence: --port flag > IB_PORT > built-in default. Set it in the shell or a .env file.Port fallback: If the configured port fails, automatically retry on the other port. If the retry succeeds, save to memory which account type worked (live/paper) and reuse it for all IB skill calls in this and future sessions — until the user explicitly asks for the other account. If both ports fail, ask the user to verify that TWS or IB Gateway is running with API access enabled.
Dry-run (default — no orders placed):
uv run python .claude/skills/ib-stop-loss/scripts/stop_loss.py
Execute (cancel orphan orders + place SL_ conditional orders):
uv run python .claude/skills/ib-stop-loss/scripts/stop_loss.py --execute
Execute forced (basis = current mid price, can lower existing stops):
uv run python .claude/skills/ib-stop-loss/scripts/stop_loss.py --execute --forced
Format JSON output as a markdown report with four sections:
test cases passed, vs 2 / 17 without
Published skills whose descriptions closely match this one, with their headline benchmark lift.
More skills from the same source and nearby in the registry, with their headline benchmark lift.