Stock Picker Orchestrator
Use this skill to coordinate the full analysis system from user intent to final recommendation framing.
Purpose
- Convert user request into the right analysis pipeline.
- Control budget: vnstock API calls, breadth of news scraping, depth of valuation work.
- Produce transparent outputs: what was fetched, assumptions, confidence, gaps.
- Scope boundary: this skill coordinates other skills and does not replace their domain-specific logic.
Skill graph (preferred dependencies)
vnstock-free-expert for structured market/fundamental data.
nso-macro-monitor for Vietnam macro snapshot.
us-macro-news-monitor for global macro spillover signals.
vn-market-news-monitor for domestic market narrative.
equity-valuation-framework for decision-grade valuation and report standard.
portfolio-risk-manager for IPS mini + position sizing + risk triggers (no-margin).
Trigger conditions
- "Find best stock(s)"
- "Screen this sector"
- "Analyze ticker X deeply"
- "How do macro/news affect these stocks"
- "Value this stock like a professional"
First step: intent classification
Classify user request into one of these modes:
Single-Ticker Deep Dive
Multi-Ticker/Universe Screening
Macro/News-Led Investigation
Portfolio Refresh
If ambiguous, choose the most conservative high-signal mode and note assumption.
Execution workflow (ordered)
- Parse user intent and select one routing mode.
- Set budget preset (
Light, Standard, Deep) and hard request limits.
- Execute required upstream skills for the chosen route.
- Validate intermediate outputs for freshness, completeness, and conflicts.
- Run valuation layer only at the required depth.
- Aggregate confidence across modules using the shared rubric.
- Return output using the mandatory output contract.
Budget policy (required)
Define and enforce budget at start:
API budget: max vnstock calls
News budget: max headlines/articles per source
Valuation depth: quick multiples vs full DCF
Default safe presets:
Light: 20-40 vnstock calls, headlines-only news, quick valuation
Standard: 40-120 calls, mixed headlines + selected deep reads, scenario valuation
Deep: 120+ calls, full context package, full valuation + sensitivity
Prefer free-tier-safe pacing when using vnstock.
Free-tier budget mapping (required)
Use these hard limits for vnstock runs:
- Guest/no API key: max
20 requests/min (recommended pacing >= 3.2s/request).
- Community API key: max
60 requests/min (recommended pacing >= 1.1s/request; keep 3.2s/request if unstable).
Policy actions:
- Estimate call count before execution and choose the smallest viable preset.
- If estimated calls exceed current budget, reduce scope (smaller universe or fewer modules).
- Reuse cached artifacts before making new requests.
- Stop scope expansion when remaining call budget < 10% and report partial results.
Routing logic
A) Single ticker request
Priority: depth over breadth.
Pipeline:
vnstock-free-expert fetch financials + price behavior.
- Optional macro/news context if user asks or risk is macro-sensitive.
equity-valuation-framework full thesis + valuation + risks.
B) Multi-ticker/sector screening
Priority: breadth first, then depth on finalists.
Pipeline:
vnstock-free-expert broad screener/ranking.
- Select top candidates by objective criteria.
- Run quick valuation layer on shortlist.
- Deep valuation only for top 1-3 names.
C) Macro/news-led request
Priority: context first, valuation second.
Pipeline:
nso-macro-monitor + us-macro-news-monitor + vn-market-news-monitor.
- Map exposures to sectors/tickers.
- Run quick vnstock validation on impacted names.
- If needed, run
equity-valuation-framework for decision-critical names.
D) Portfolio refresh
Priority: risk control + monitoring triggers + sizing discipline.
Pipeline:
- Re-score holdings and benchmark against alternatives.
- Macro/news stress overlay.
- Run
equity-valuation-framework at least quick depth on key holdings/watchlist.
- Run
portfolio-risk-manager to produce IPS mini + position sizing policy + per-ticker triggers/invalidation.
- Flag rebalance candidates with confidence and data gaps.
Mandatory output contract
Always include these sections in final response:
What Was Fetched
- Data sources used, date/time, and coverage.
Pipeline Chosen
- Why this route was selected for current user intent.
Assumptions
- Explicit assumptions on macro, valuation parameters, and data quality.
Results
- Ranked outputs or thesis summary with concise evidence.
Confidence and Gaps
- Confidence level + missing data + potential impact.
Risk Flags
- Top risks and monitoring triggers.
Next-Step Options
- 2-3 practical follow-up actions (e.g., deepen 1 ticker, expand peer set, update after next macro release).
Shared confidence rubric (required)
Use a unified confidence output across pipeline steps:
High: all critical modules complete with no material data blockers.
Medium: one critical module has partial gaps but overall conclusion remains stable.
Low: key module(s) missing or conflicting evidence makes conclusion fragile.
Aggregation rule:
- Compute per-module confidence first (
vnstock, macro, news, valuation).
- Overall confidence = minimum of critical modules used in the chosen pipeline.
- If module outputs conflict, cap overall confidence at
Medium unless conflict is resolved with stronger evidence.
- Always state which module is the bottleneck for confidence.
Governance and quality rules
- Single source of truth: if user provides ACTIVE_WATCHLIST/holdings, do not self-modify it; only propose drafts requiring user confirmation.
- Never present uncertain outputs as facts.
- Separate observed data from inference.
- Prefer reproducible logic over ad-hoc narratives.
- When data is insufficient, downgrade confidence and narrow claims.
- Avoid absolute buy/sell instructions; provide valuation framing and risk-aware interpretation.
Conflict resolution rules
If outputs from different modules disagree:
- Trust data quality hierarchy first (freshness/completeness/consistency).
- Prefer broad consensus metrics over fragile point estimates.
- Keep both interpretations and state decision boundary (what would change the conclusion).
Fallback behavior
- If macro/news skills are unavailable: continue with vnstock + valuation only and mark missing context.
- If valuation inputs are weak: provide screening + directional view; defer full valuation.
- If API budget is near limit: stop expanding scope, summarize partial results, request user confirmation for deeper run.
Example orchestration prompts
- "Run a single-ticker deep dive for HPG with full valuation and risk register."
- "Screen VN30 for top value-quality names, then deep value top 3."
- "Start from macro shock signals, then identify Vietnamese sector winners/losers and value 2 candidates."
Trigger examples
- "Find the best Vietnam stocks this week with full reasoning."
- "Compare three candidate tickers and tell me which one is strongest."
- "Start from macro and news, then shortlist potential winners."
1---2name: stock-picker-orchestrator3description: Acts as a meta-orchestrator that routes stock-analysis requests across data, macro/news, and valuation skills under explicit budget controls; used when users ask to find candidates, compare stocks, or run end-to-end expert analysis.4---56# Stock Picker Orchestrator78Use this skill to coordinate the full analysis system from user intent to final recommendation framing.910## Purpose11- Convert user request into the right analysis pipeline.12- Control budget: vnstock API calls, breadth of news scraping, depth of valuation work.13- Produce transparent outputs: what was fetched, assumptions, confidence, gaps.14- Scope boundary: this skill coordinates other skills and does not replace their domain-specific logic.1516## Skill graph (preferred dependencies)171. `vnstock-free-expert` for structured market/fundamental data.182. `nso-macro-monitor` for Vietnam macro snapshot.193. `us-macro-news-monitor` for global macro spillover signals.204. `vn-market-news-monitor` for domestic market narrative.215. `equity-valuation-framework` for decision-grade valuation and report standard.226. `portfolio-risk-manager` for IPS mini + position sizing + risk triggers (no-margin).2324## Trigger conditions25- "Find best stock(s)"26- "Screen this sector"27- "Analyze ticker X deeply"28- "How do macro/news affect these stocks"29- "Value this stock like a professional"3031## First step: intent classification32Classify user request into one of these modes:33- `Single-Ticker Deep Dive`34- `Multi-Ticker/Universe Screening`35- `Macro/News-Led Investigation`36- `Portfolio Refresh`3738If ambiguous, choose the most conservative high-signal mode and note assumption.3940## Execution workflow (ordered)411. Parse user intent and select one routing mode.422. Set budget preset (`Light`, `Standard`, `Deep`) and hard request limits.433. Execute required upstream skills for the chosen route.444. Validate intermediate outputs for freshness, completeness, and conflicts.455. Run valuation layer only at the required depth.466. Aggregate confidence across modules using the shared rubric.477. Return output using the mandatory output contract.4849## Budget policy (required)50Define and enforce budget at start:51- `API budget`: max vnstock calls52- `News budget`: max headlines/articles per source53- `Valuation depth`: quick multiples vs full DCF5455Default safe presets:56- `Light`: 20-40 vnstock calls, headlines-only news, quick valuation57- `Standard`: 40-120 calls, mixed headlines + selected deep reads, scenario valuation58- `Deep`: 120+ calls, full context package, full valuation + sensitivity5960Prefer free-tier-safe pacing when using vnstock.6162## Free-tier budget mapping (required)63Use these hard limits for vnstock runs:64- Guest/no API key: max `20 requests/min` (recommended pacing >= `3.2s/request`).65- Community API key: max `60 requests/min` (recommended pacing >= `1.1s/request`; keep `3.2s/request` if unstable).6667Policy actions:681. Estimate call count before execution and choose the smallest viable preset.692. If estimated calls exceed current budget, reduce scope (smaller universe or fewer modules).703. Reuse cached artifacts before making new requests.714. Stop scope expansion when remaining call budget < 10% and report partial results.7273## Routing logic7475### A) Single ticker request76Priority: depth over breadth.77Pipeline:781. `vnstock-free-expert` fetch financials + price behavior.792. Optional macro/news context if user asks or risk is macro-sensitive.803. `equity-valuation-framework` full thesis + valuation + risks.8182### B) Multi-ticker/sector screening83Priority: breadth first, then depth on finalists.84Pipeline:851. `vnstock-free-expert` broad screener/ranking.862. Select top candidates by objective criteria.873. Run quick valuation layer on shortlist.884. Deep valuation only for top 1-3 names.8990### C) Macro/news-led request91Priority: context first, valuation second.92Pipeline:931. `nso-macro-monitor` + `us-macro-news-monitor` + `vn-market-news-monitor`.942. Map exposures to sectors/tickers.953. Run quick vnstock validation on impacted names.964. If needed, run `equity-valuation-framework` for decision-critical names.9798### D) Portfolio refresh99Priority: risk control + monitoring triggers + sizing discipline.100Pipeline:1011. Re-score holdings and benchmark against alternatives.1022. Macro/news stress overlay.1033. Run `equity-valuation-framework` at least quick depth on key holdings/watchlist.1044. Run `portfolio-risk-manager` to produce IPS mini + position sizing policy + per-ticker triggers/invalidation.1055. Flag rebalance candidates with confidence and data gaps.106107## Mandatory output contract108Always include these sections in final response:1091101. `What Was Fetched`111- Data sources used, date/time, and coverage.1121132. `Pipeline Chosen`114- Why this route was selected for current user intent.1151163. `Assumptions`117- Explicit assumptions on macro, valuation parameters, and data quality.1181194. `Results`120- Ranked outputs or thesis summary with concise evidence.1211225. `Confidence and Gaps`123- Confidence level + missing data + potential impact.1241256. `Risk Flags`126- Top risks and monitoring triggers.1271287. `Next-Step Options`129- 2-3 practical follow-up actions (e.g., deepen 1 ticker, expand peer set, update after next macro release).130131## Shared confidence rubric (required)132Use a unified confidence output across pipeline steps:133- `High`: all critical modules complete with no material data blockers.134- `Medium`: one critical module has partial gaps but overall conclusion remains stable.135- `Low`: key module(s) missing or conflicting evidence makes conclusion fragile.136137Aggregation rule:1381. Compute per-module confidence first (`vnstock`, `macro`, `news`, `valuation`).1392. Overall confidence = minimum of critical modules used in the chosen pipeline.1403. If module outputs conflict, cap overall confidence at `Medium` unless conflict is resolved with stronger evidence.1414. Always state which module is the bottleneck for confidence.142143## Governance and quality rules144- Single source of truth: if user provides ACTIVE_WATCHLIST/holdings, do not self-modify it; only propose drafts requiring user confirmation.145- Never present uncertain outputs as facts.146- Separate observed data from inference.147- Prefer reproducible logic over ad-hoc narratives.148- When data is insufficient, downgrade confidence and narrow claims.149- Avoid absolute buy/sell instructions; provide valuation framing and risk-aware interpretation.150151## Conflict resolution rules152If outputs from different modules disagree:1531. Trust data quality hierarchy first (freshness/completeness/consistency).1542. Prefer broad consensus metrics over fragile point estimates.1553. Keep both interpretations and state decision boundary (what would change the conclusion).156157## Fallback behavior158- If macro/news skills are unavailable: continue with vnstock + valuation only and mark missing context.159- If valuation inputs are weak: provide screening + directional view; defer full valuation.160- If API budget is near limit: stop expanding scope, summarize partial results, request user confirmation for deeper run.161162## Example orchestration prompts163- "Run a single-ticker deep dive for HPG with full valuation and risk register."164- "Screen VN30 for top value-quality names, then deep value top 3."165- "Start from macro shock signals, then identify Vietnamese sector winners/losers and value 2 candidates."166167## Trigger examples168- "Find the best Vietnam stocks this week with full reasoning."169- "Compare three candidate tickers and tell me which one is strongest."170- "Start from macro and news, then shortlist potential winners."