Edge 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+metadata.jsonfortrade-strategy-pipelinePhase I. - Run preflight compatibility checks for
edge-finder-candidate/v1before pipeline execution.
Prerequisites
- Python 3.9+ with
PyYAMLinstalled. - Access to the target
trade-strategy-pipelinerepository for schema/stage validation. uvavailable when running pipeline-managed validation via--pipeline-root.
Output
strategies/<candidate_id>/strategy.yaml: Phase I-compatible strategy spec.strategies/<candidate_id>/metadata.json: provenance metadata including interface version and ticket context.- Validation status from
scripts/validate_candidate.py(pass/fail + reasons). - Daily detection artifacts:
daily_report.mdmarket_summary.jsonanomalies.jsonwatchlist.csvtickets/exportable/*.yamltickets/research_only/*.yaml
Position in Split Workflow
Recommended split workflow:
skills/edge-hint-extractor: observations/news ->hints.yamlskills/edge-concept-synthesizer: tickets/hints ->edge_concepts.yamlskills/edge-strategy-designer: concepts ->strategy_drafts+ exportable ticket YAMLskills/edge-candidate-agent(this skill): export + validate for pipeline handoff
Workflow
- Run auto-detection from EOD OHLCV:
skills/edge-candidate-agent/scripts/auto_detect_candidates.py- Optional:
--hintsfor human ideation input - Optional:
--llm-ideas-cmdfor external LLM ideation loop
- 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
trade-strategy-pipelineand run dry-run first.
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
validation.oos_ratioomitted ornull. - Export only supported entry families for v1:
pivot_breakoutwithvcp_detectiongap_up_continuationwithgap_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
idmismatch. - Require deterministic metadata with
interface_version: edge-finder-candidate/v1. - Use
--dry-runin pipeline before full execution.
Resources
skills/edge-candidate-agent/scripts/export_candidate.py
Generate strategies/<candidate_id>/strategy.yaml and metadata.json from a research ticket YAML.
skills/edge-candidate-agent/scripts/validate_candidate.py
Run interface checks and optional StrategySpec/validate_spec checks against trade-strategy-pipeline.
skills/edge-candidate-agent/scripts/auto_detect_candidates.py
Auto-detect edge ideas from EOD OHLCV, generate exportable/research tickets, and optionally export/validate automatically.
references/pipeline_if_v1.md
Condensed integration contract for edge-finder-candidate/v1.
references/signal_mapping.md
Map hypothesis families to currently exportable signal families.
references/research_ticket_schema.md
Ticket schema used by export_candidate.py.
references/ideation_loop.md
Hint schema and external LLM ideation command contract.