edge-strategy-reviewer — Claude Code skill: strategy draft quality
A deterministic quality gate for strategy drafts: checks edge plausibility, overfitting risk and execution realism, then returns PASS, REVISE or REJECT.
npx skills add tradermonty/claude-trading-skills --skill edge-strategy-reviewer -a claude-codeWhat edge-strategy-reviewer does
The skill reads YAML drafts produced by edge-strategy-designer and scores each one against eight weighted criteria. Those cover edge plausibility (weight 20), overfitting risk (20), sample adequacy (15), regime dependency, exit calibration, risk concentration, execution realism and invalidation quality. A weighted average becomes the confidence score, and the score drives the verdict.
The verdict logic is blunt. A fail on C1 or C2 means an immediate REJECT. Confidence of 70 or higher with no fail findings gives PASS, anything below 35 is REJECT, and the rest lands in REVISE with revision instructions attached. Export eligibility is checked separately: you need PASS, export_ready_v1 and an exportable family.
Everything runs through review_strategy_drafts.py. It needs Python 3.10+ with PyYAML, plus either a --drafts-dir directory or a single --draft file. Flags include --format json, --markdown-summary, --strict-export and --bias-checklist. That last one acts as a mandatory strategy-research bias gate: leave a required item unaddressed and a PASS drops to REVISE with export eligibility gone. No PyYAML means the script never starts, so check that first.
What it helps with
- filter overfit strategy drafts before they reach export
- replace a gut feeling with a numeric confidence score
- check whether the sample actually supports the claimed edge
- see which criteria failed and what to rewrite
- block export of a strategy with an unaddressed research bias
Example prompts for the agent
- review the drafts in reports/edge_strategy_drafts/ and list the verdicts
- run review_strategy_drafts.py on draft_xxx.yaml with json output
- run the check with --bias-checklist and tell me which items are unaddressed
How to install edge-strategy-reviewer
1Skills CLI (Vercel)
npx skills add tradermonty/claude-trading-skills --skill edge-strategy-reviewer -a claude-code2Manually: put the files in place
~/.claude/skills/edge-strategy-reviewer/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/edge-strategy-reviewer/
1Skills CLI (Vercel)
npx skills add tradermonty/claude-trading-skills --skill edge-strategy-reviewer -a codex2Manually: put the files in place
.agents/skills/edge-strategy-reviewer/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add tradermonty/claude-trading-skills --skill edge-strategy-reviewer -a cursor2Manually: put the files in place
.cursor/skills/edge-strategy-reviewer/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install tradermonty/claude-trading-skills edge-strategy-reviewer2Manually: put the files in place
.github/skills/edge-strategy-reviewer/SKILL.md1Skills CLI (Vercel)
npx skills add tradermonty/claude-trading-skills --skill edge-strategy-reviewer -a gemini-cli2Platform CLI
gemini skills install https://github.com/tradermonty/claude-trading-skills --path skills/edge-strategy-reviewerManually: put the files in place
.devin/skills/edge-strategy-reviewer/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add tradermonty/claude-trading-skills --skill edge-strategy-reviewer -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about edge-strategy-reviewer
How do I install edge-strategy-reviewer in Claude?
Run npx skills add tradermonty/claude-trading-skills --skill edge-strategy-reviewer -a claude-code. The skill lands at ~/.claude/skills/edge-strategy-reviewer/SKILL.md.
What does edge-strategy-reviewer do?
It scores strategy drafts against eight weighted criteria and computes a confidence score. You get a PASS, REVISE or REJECT verdict plus an export eligibility flag.
What do I need to run it?
YAML draft files from edge-strategy-designer and Python 3.10+ with PyYAML. Without PyYAML, review_strategy_drafts.py will not start.
Source text
SKILL.md · MIT
---
name: edge-strategy-reviewer
description: >
Critically review strategy drafts from edge-strategy-designer for edge
plausibility, overfitting risk, sample size adequacy, and execution realism.
Use when strategy_drafts/*.yaml exists and needs quality gate before pipeline
export. Outputs PASS/REVISE/REJECT verdicts with confidence scores.
---
# Edge Strategy Reviewer
Deterministic quality gate for strategy drafts produced by `edge-strategy-designer`.
## When to Use
- After `edge-strategy-designer` generates `strategy_drafts/*.yaml`
- Before exporting drafts to `edge-candidate-agent` via the pipeline
- When manually validating a draft strategy for edge plausibility
## Prerequisites
- Strategy draft YAML files (output of `edge-strategy-designer`)
- Python 3.10+ with PyYAML
## Workflow
1. Load draft YAML files from `--drafts-dir` or a single `--draft` file
2. Evaluate each draft against 8 criteria (C1-C8) with weighted scoring
3. Compute confidence score (weighted average of all criteria)
4. Determine verdict: PASS / REVISE / REJECT
5. Assess export eligibility (PASS + export_ready_v1 + exportable family)
6. Write review output (YAML or JSON) and optional markdown summary
## Review Criteria
| # | Criterion | Weight | Key Checks |
|---|-----------|--------|------------|
| C1 | Edge Plausibility | 20 | Thesis quality, domain terms, mechanism keywords (continuous 50-95) |
| C2 | Overfitting Risk | 20 | 5-tier filter count scoring (90/80/60/40/10), precise threshold penalty |
| C3 | Sample Adequacy | 15 | Continuous scoring from estimated annual opportunities (10-95) |
| C4 | Regime Dependency | 10 | Cross-regime validation |
| C5 | Exit Calibration | 10 | Stop-loss, reward-to-risk |
| C6 | Risk Concentration | 10 | Position sizing limits |
| C7 | Execution Realism | 10 | Volume filter, export consistency |
| C8 | Invalidation Quality | 5 | Signal count and specificity |
## Verdict Logic
- C1 or C2 severity=fail → immediate REJECT
- confidence >= 70, no fail findings → PASS
- confidence < 35 → REJECT
- Otherwise → REVISE (with revision instructions)
## Running the Script
```bash
# Review all drafts in a directory
python3 skills/edge-strategy-reviewer/scripts/review_strategy_drafts.py \
--drafts-dir reports/edge_strategy_drafts/ \
--output-dir reports/
# Single draft review
python3 skills/edge-strategy-reviewer/scripts/review_strategy_drafts.py \
--draft reports/edge_strategy_drafts/draft_xxx.yaml \
--output-dir reports/
# JSON output with markdown summary
python3 skills/edge-strategy-reviewer/scripts/review_strategy_drafts.py \
--drafts-dir reports/edge_strategy_drafts/ \
--output-dir reports/ \
--format json \
--markdown-summary
# Strict export mode: export-eligible drafts with any warn → REVISE
python3 skills/edge-strategy-reviewer/scripts/review_strategy_drafts.py \
--drafts-dir reports/edge_strategy_drafts/ \
--output-dir reports/ \
--strict-export
# Bias checklist (issue #297): mandatory strategy-research bias gate.
# Uses the bundled checklist unless a custom YAML path is supplied.
# A draft leaving any required item unaddressed is downgraded PASS → REVISE
# and loses export eligibility.
python3 skills/edge-strategy-reviewer/scripts/review_strategy_drafts.py \
--drafts-dir reports/edge_strategy_drafts/ \
--output-dir reports/ \
--bias-checklist
```
## Output Format
Primary output: `review.yaml` (or `review.json`)
```yaml
generated_at_utc: "2026-02-28T12:00:00+00:00"
source:
drafts_dir: "/path/to/strategy_drafts"
draft_count: 4
summary:
total: 4
PASS: 1
REVISE: 2
REJECT: 1
export_eligible: 1
reviews:
- draft_id: "draft_xxx_core"
verdict: "PASS"
confidence_score: 80
export_eligible: true
findings: [...]
revision_instructions: []
```
## Resources
- `references/review_criteria.md` — Detailed scoring rubric for C1-C8
- `references/overfitting_checklist.md` — Overfitting detection heuristics
© tradermonty · MIT · tradermonty/claude-trading-skills