Claude-trading-skills edge-candidate-agent
Generate and prioritize US equity long-side edge research tickets from EOD observations, then export pipeline-ready candidate specs for trade-strategy-pipeline Phase I. Use when users ask to turn hypotheses/anomalies into reproducible research tickets, convert validated ideas into `strategy.yaml` + `metadata.json`, or preflight-check interface compatibility (`edge-finder-candidate/v1`) before running pipeline backtests.
git clone https://github.com/tradermonty/claude-trading-skills
T=$(mktemp -d) && git clone --depth=1 https://github.com/tradermonty/claude-trading-skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/edge-candidate-agent" ~/.claude/skills/tradermonty-claude-trading-skills-edge-candidate-agent && rm -rf "$T"
skills/edge-candidate-agent/SKILL.mdEdge Candidate Agent
Overview
Convert daily market observations into reproducible research tickets and Phase I-compatible candidate specs. Prioritize signal quality and interface compatibility over aggressive strategy proliferation. This skill can run end-to-end standalone, but in the split workflow it primarily serves the final export/validation stage.
When to Use
- Convert market observations, anomalies, or hypotheses into structured research tickets.
- Run daily auto-detection to discover new edge candidates from EOD OHLCV and optional hints.
- Export validated tickets as
+strategy.yaml
formetadata.json
Phase I.trade-strategy-pipeline - Run preflight compatibility checks for
before pipeline execution.edge-finder-candidate/v1
Prerequisites
- Python 3.9+ with
installed.PyYAML - Access to the target
repository for schema/stage validation.trade-strategy-pipeline
available when running pipeline-managed validation viauv
.--pipeline-root
Output
: Phase I-compatible strategy spec.strategies/<candidate_id>/strategy.yaml
: provenance metadata including interface version and ticket context.strategies/<candidate_id>/metadata.json- Validation status from
(pass/fail + reasons).scripts/validate_candidate.py - Daily detection artifacts:
daily_report.mdmarket_summary.jsonanomalies.jsonwatchlist.csvtickets/exportable/*.yamltickets/research_only/*.yaml
Position in Split Workflow
Recommended split workflow:
: observations/news ->skills/edge-hint-extractorhints.yaml
: tickets/hints ->skills/edge-concept-synthesizeredge_concepts.yaml
: concepts ->skills/edge-strategy-designer
+ exportable ticket YAMLstrategy_drafts
(this skill): export + validate for pipeline handoffskills/edge-candidate-agent
Workflow
- Run auto-detection from EOD OHLCV:
skills/edge-candidate-agent/scripts/auto_detect_candidates.py- Optional:
for human ideation input--hints - Optional:
for external LLM ideation loop--llm-ideas-cmd
- Load the contract and mapping references:
references/pipeline_if_v1.mdreferences/signal_mapping.mdreferences/research_ticket_schema.mdreferences/ideation_loop.md
- Build or update a research ticket using
.references/research_ticket_schema.md - Export candidate artifacts with
.skills/edge-candidate-agent/scripts/export_candidate.py - Validate interface and Phase I constraints with
.skills/edge-candidate-agent/scripts/validate_candidate.py - Hand off candidate directory to
and run dry-run first.trade-strategy-pipeline
Quick Commands
Daily auto-detection (with optional export/validation):
python3 skills/edge-candidate-agent/scripts/auto_detect_candidates.py \ --ohlcv /path/to/ohlcv.parquet \ --output-dir reports/edge_candidate_auto \ --top-n 10 \ --hints path/to/hints.yaml \ --export-strategies-dir /path/to/trade-strategy-pipeline/strategies \ --pipeline-root /path/to/trade-strategy-pipeline
Create a candidate directory from a ticket:
python3 skills/edge-candidate-agent/scripts/export_candidate.py \ --ticket path/to/ticket.yaml \ --strategies-dir /path/to/trade-strategy-pipeline/strategies
Validate interface contract only:
python3 skills/edge-candidate-agent/scripts/validate_candidate.py \ --strategy /path/to/trade-strategy-pipeline/strategies/my_candidate_v1/strategy.yaml
Validate both interface contract and pipeline schema/stage rules:
python3 skills/edge-candidate-agent/scripts/validate_candidate.py \ --strategy /path/to/trade-strategy-pipeline/strategies/my_candidate_v1/strategy.yaml \ --pipeline-root /path/to/trade-strategy-pipeline \ --stage phase1
Export Rules
- Keep
.validation.method: full_sample - Keep
omitted orvalidation.oos_ratio
.null - Export only supported entry families for v1:
withpivot_breakoutvcp_detection
withgap_up_continuationgap_up_detection
- Mark unsupported hypothesis families as research-only in ticket notes, not as export candidates.
Guardrails
- Reject candidates that violate schema bounds (risk, exits, empty conditions).
- Reject candidate when folder name and
mismatch.id - Require deterministic metadata with
.interface_version: edge-finder-candidate/v1 - Use
in pipeline before full execution.--dry-run
Resources
skills/edge-candidate-agent/scripts/export_candidate.py
skills/edge-candidate-agent/scripts/export_candidate.pyGenerate
strategies/<candidate_id>/strategy.yaml and metadata.json from a research ticket YAML.
skills/edge-candidate-agent/scripts/validate_candidate.py
skills/edge-candidate-agent/scripts/validate_candidate.pyRun interface checks and optional
StrategySpec/validate_spec checks against trade-strategy-pipeline.
skills/edge-candidate-agent/scripts/auto_detect_candidates.py
skills/edge-candidate-agent/scripts/auto_detect_candidates.pyAuto-detect edge ideas from EOD OHLCV, generate exportable/research tickets, and optionally export/validate automatically.
references/pipeline_if_v1.md
references/pipeline_if_v1.mdCondensed integration contract for
edge-finder-candidate/v1.
references/signal_mapping.md
references/signal_mapping.mdMap hypothesis families to currently exportable signal families.
references/research_ticket_schema.md
references/research_ticket_schema.mdTicket schema used by
export_candidate.py.
references/ideation_loop.md
references/ideation_loop.mdHint schema and external LLM ideation command contract.