Jackal 5-State Machine — 股票价格状态分类
Source: Jackal Quant 深度研报 (2026-05-17)
Purpose: 每天看盘前花 5 分钟判断个股处于哪个 state,对应执行哪套操作。
Edge: 散户最大的 alpha 杀手是「在 State 2 当成 State 1 追、在 State 3 当成 State 5 割」。Identify the state correctly = avoid 80% of position-sizing mistakes.
When to invoke (CRITICAL — 防误触)
✅ Trigger when ALL of these are true:
- A clear stock ticker is mentioned (
$TICKER, NVDA, MRVL, "苹果", "英伟达") OR a stock/options/equity context is established
- User asks "state", "阶段", "状态", "5态", "Jackal" in equity-market context
❌ Do NOT trigger when:
- User is writing/reviewing code (React state, useState, state machines, FSM, XState)
- User mentions "state" in a software/devops/AI agent context
- User talks about US states (California state, Texas state)
- No ticker or market context is clear
- User is in
cr-review, design-doc, playwright-cli, humanize-tone flow
If ambiguous, ask: "你是问 $TICKER 股票的 5-state 分类吗?还是软件 state machine?"
The 5 States (核心定义)
State 1 · 突破并站稳 (Breakout & Hold)
判断标准 (ALL of):
- 价格突破前期关键阻力位 (e.g., 52W high, multi-month resistance)
- 连续 2 个交易日收盘高于突破位
- 突破日 volume ≥ 30 日平均的 1.5x (理想 2x+)
- MACD histogram 转正
- MA 排列: Price > 20EMA > 50MA > 200MA (完美多头)
少数能成立的 state(每年 <15% 时间)
操作: 用「突破回踩 (breakout pullback)」策略,不要直接追涨
- 激进派 (Aggressive): 30% 仓位在突破日尾盘买
- 标准派 (Standard): 30% 等回踩到突破位 +0-3% 范围买
- 保守派 (Conservative): 20% 等突破后整理 3-7 天再买
State 2 · 区间震荡 (Range-bound) — 最常见 60% 概率
判断标准:
- 价格在前期高点的 5-15% 区间内 oscillate
- volume 萎缩到 30 日平均的 0.7x 或以下
- MACD histogram 在 zero line 附近反复
- 缺少明确 breakout 方向
操作: 轻仓试探,等催化剂
- 激进派: 可在区间下沿 15-20% 仓位小仓试探
- 标准派 / 保守派: 完全按兵不动
State 3 · 回踩支撑 (Pullback to Support) — 最优加仓机会
判断标准 (ALL of):
- 价格从近期高点回撤至 20EMA / 50MA / 关键密集成交区
- volume 萎缩到 30 日平均的 0.6x 以下
- 5min RSI 回到 40-50 区间 (从超买回归中性)
- 价格未跌破上升趋势线
操作: 这是 Jackal 框架里 R/R 最好的入场
- 激进派: 40% 目标仓位
- 标准派: 50% 目标仓位
- 保守派: 20% 试探仓 (其余等 State 4)
State 4 · 深度回调 (Deep Correction) — 年 1-2 次的绝佳 BUY
判断标准 (任一即可):
- 触发: earnings miss / 宏观恐慌 / sector-wide selloff
- 单日跌幅 ≥ 10%, volume 巨量 ≥ 30 日平均 4 倍
- 价格深度回调至历史关键支撑 (200MA, jump-up base, 38.2-61.8% Fib retracement)
- 短期 RSI < 25 (oversold)
操作: 绝佳的 buy opportunity,所有风格都该建仓
- 激进派: 60-80% 目标仓位
- 标准派: 60-80% 目标仓位
- 保守派: 60-80% 目标仓位
注意: 这种 capitulation scenario 一年只有 1-2 次,错过非常可惜。
State 5 · 跌破结构性破坏 (Structural Break)
判断标准 (ALL of):
- 跌破 jump-up base 或前期 4 月密集区下沿
- 跌破伴随 volume 放大
- 出现真实 fundamentals 负面事件 (e.g., guidance cut, major customer loss, accounting issue)
- 200MA 趋势线开始 roll over
操作: 清仓离场。两周不看盘让情绪 reset,再决定要不要重新参与。
输入参数 (Inputs)
最少需要:1 个 ticker symbol (e.g., MRVL, NVDA, IREN)
可选附加:
- 当前价格 (current price) — 若未提供,调用
mcp__yfmcp__yfinance_get_ticker_info
- 时间框架 (timeframe, default = daily)
- 用户风格 (Aggressive / Standard / Conservative — 默认按用户偏好或问)
执行流程 (Algorithm)
Step 1: Validate trigger
- 确认 ticker 存在 (yfinance lookup)
- 确认是 equity context (NOT code, NOT US states)
Step 2: Pull data
- Current price, prev close
- 20EMA, 50MA, 200MA
- 52W high/low
- 30-day average volume, last 5 days volume
- MACD (12,26,9) histogram + signal/macd lines
- RSI(14) daily + 5min if intraday data available
- 1-2 月前的关键 resistance / support cluster
Step 3: Score each state
- State 1 checklist (5 conditions) → boolean each
- State 2 checklist (4 conditions)
- State 3 checklist (4 conditions)
- State 4 checklist (4 conditions, any one trigger)
- State 5 checklist (4 conditions)
Step 4: Pick the state with MOST conditions met
- If tied between 2 and 3, default to 2 (most conservative)
- If State 5 has any trigger, override (worst-case first)
- If State 4 has any trigger, prioritize buy opportunity
Step 5: Output playbook
- Current state + confidence (high/medium/low)
- Conditions met / not met (transparent reasoning)
- Aggressive / Standard / Conservative action
- Specific entry zones (use Jackal-price-ladder if needed)
输出格式 (Output Template)
# $TICKER · Jackal State Machine 判断
**现价**: $XXX.XX (后市 $XXX.XX, $YYYY-MM-DD)
**判断状态**: **State N · [状态名]**
**置信度**: High / Medium / Low
## 触发条件 check (N/M 满足)
✅ 条件 1: ...
✅ 条件 2: ...
❌ 条件 3: ...
...
## 操作建议
| 风格 | 仓位 | 入场区域 | Stop |
|------|------|----------|------|
| Aggressive | XX% | $A-$B | $S1 |
| Standard | XX% | $A-$B | $S1 |
| Conservative | XX% | $A-$B | $S1 |
## 接下来 1-2 周看什么
- 关键 level: $X (上方阻力) / $Y (下方支撑)
- 关键 catalyst: [财报日 / 宏观事件 / 行业新闻]
- 状态转换信号: 突破 $X → State 1; 跌破 $Y → State 5
## 一句话
[Plain English/Chinese summary]
真实案例 (Real Example, 来自原文)
MRVL 在 2026-05-17 的判断:
- 现价: $176.89
- State: State 2 · 区间震荡
- 理由: 5/13 attempted breakout $190.39 failed → rejected → 5/15 -3.12% to $176.89
- 操作: 轻仓试探 OK,all-in 不行
- 最佳 alpha: 等 5/27 财报后的 State 3 (回踩 $150-155) 或 State 4 (跌到 $128-135)
IREN 在 2026-05-17 的判断:
- 现价: $52.94
- State: 第 4 个圆弧底 forming (State 3 边缘)
- 理由: 已测试 20EMA $52.02 成功, volume 衰竭 pattern 明显
- 操作: 第 4 圆弧底底部预期 $47-50, 是 institutional grade entry
反例 (Anti-patterns — DO NOT)
- ❌ 在 State 1 突破日中盘市价单追入 (用 breakout pullback)
- ❌ 在 State 2 震荡区上沿激进加仓 (等 State 3)
- ❌ 在 State 5 跌破后抄底 ("跌这么多总该反弹" = 接刀)
- ❌ 没有 ticker 或 market context 就触发本 skill
与其他 skills 的关系
- 配合
jackal-price-ladder → 拿到具体入场价位
- 配合
jackal-tech-scan → 验证机构资金流方向
- 财报前用
jackal-earnings-playbook 推演 5 phase
- 入场后用
price-alert 设触发提醒
最后: 这个 state 不是静态的,每天/每周都要重新判断。市场告诉你「现在是什么 state」,不是你预设的 state。
1---2name: jackal-state-machine3description: STOCK TRADING ONLY — Classify a stock's current price action into 1 of 5 states (Breakout / Range / Pullback / Deep-Correction / Structural-Break) from Jackal Quant's framework, and output the corresponding position-sizing playbook. Use when user types English: "what state is $TICKER in", "state classify NVDA", "Jackal state for MRVL", "5-state $TICKER", or Chinese: "$TICKER 现在是哪个 state", "$TICKER 在哪个阶段", "$TICKER 的 5态分类", "用 Jackal 框架看 $TICKER". DO NOT trigger for: software state machines, code state diagrams, finite-state automata, React state, Redux state, or any non-equity-market query. If "state" appears without a ticker symbol or market context, do NOT invoke.4---56# Jackal 5-State Machine — 股票价格状态分类78> **Source**: Jackal Quant 深度研报 (2026-05-17)9> **Purpose**: 每天看盘前花 5 分钟判断个股处于哪个 state,对应执行哪套操作。10> **Edge**: 散户最大的 alpha 杀手是「在 State 2 当成 State 1 追、在 State 3 当成 State 5 割」。Identify the state correctly = avoid 80% of position-sizing mistakes.1112---1314## When to invoke (CRITICAL — 防误触)1516### ✅ Trigger when ALL of these are true:171. A clear **stock ticker** is mentioned (`$TICKER`, `NVDA`, `MRVL`, "苹果", "英伟达") OR a stock/options/equity context is established182. User asks "state", "阶段", "状态", "5态", "Jackal" in equity-market context1920### ❌ Do NOT trigger when:21- User is writing/reviewing **code** (React state, useState, state machines, FSM, XState)22- User mentions "state" in a software/devops/AI agent context23- User talks about US states (California state, Texas state)24- No ticker or market context is clear25- User is in `cr-review`, `design-doc`, `playwright-cli`, `humanize-tone` flow2627If ambiguous, ask: "你是问 $TICKER 股票的 5-state 分类吗?还是软件 state machine?"2829---3031## The 5 States (核心定义)3233### State 1 · 突破并站稳 (Breakout & Hold)34**判断标准 (ALL of):**35- 价格突破前期关键阻力位 (e.g., 52W high, multi-month resistance)36- 连续 2 个交易日收盘高于突破位37- 突破日 volume ≥ 30 日平均的 1.5x (理想 2x+)38- MACD histogram 转正39- MA 排列: Price > 20EMA > 50MA > 200MA (完美多头)4041**少数能成立的 state**(每年 <15% 时间)42**操作**: 用「突破回踩 (breakout pullback)」策略,**不要**直接追涨43- 激进派 (Aggressive): 30% 仓位在突破日尾盘买44- 标准派 (Standard): 30% 等回踩到突破位 +0-3% 范围买45- 保守派 (Conservative): 20% 等突破后整理 3-7 天再买4647### State 2 · 区间震荡 (Range-bound) — 最常见 60% 概率48**判断标准:**49- 价格在前期高点的 5-15% 区间内 oscillate50- volume 萎缩到 30 日平均的 0.7x 或以下51- MACD histogram 在 zero line 附近反复52- 缺少明确 breakout 方向5354**操作**: 轻仓试探,等催化剂55- 激进派: 可在区间下沿 15-20% 仓位小仓试探56- 标准派 / 保守派: **完全按兵不动**5758### State 3 · 回踩支撑 (Pullback to Support) — 最优加仓机会59**判断标准 (ALL of):**60- 价格从近期高点回撤至 20EMA / 50MA / 关键密集成交区61- volume 萎缩到 30 日平均的 0.6x 以下62- 5min RSI 回到 40-50 区间 (从超买回归中性)63- 价格未跌破上升趋势线6465**操作**: 这是 Jackal 框架里 **R/R 最好的入场**66- 激进派: 40% 目标仓位67- 标准派: 50% 目标仓位68- 保守派: 20% 试探仓 (其余等 State 4)6970### State 4 · 深度回调 (Deep Correction) — 年 1-2 次的绝佳 BUY71**判断标准 (任一即可):**72- 触发: earnings miss / 宏观恐慌 / sector-wide selloff73- 单日跌幅 ≥ 10%, volume 巨量 ≥ 30 日平均 4 倍74- 价格深度回调至历史关键支撑 (200MA, jump-up base, 38.2-61.8% Fib retracement)75- 短期 RSI < 25 (oversold)7677**操作**: 绝佳的 buy opportunity,**所有风格都该建仓**78- 激进派: 60-80% 目标仓位79- 标准派: 60-80% 目标仓位80- 保守派: 60-80% 目标仓位8182**注意**: 这种 capitulation scenario 一年只有 1-2 次,错过非常可惜。8384### State 5 · 跌破结构性破坏 (Structural Break)85**判断标准 (ALL of):**86- 跌破 jump-up base 或前期 4 月密集区下沿87- 跌破伴随 volume 放大88- 出现真实 fundamentals 负面事件 (e.g., guidance cut, major customer loss, accounting issue)89- 200MA 趋势线开始 roll over9091**操作**: 清仓离场。两周不看盘让情绪 reset,再决定要不要重新参与。92- 所有风格: 清仓 0% 仓位9394---9596## 输入参数 (Inputs)9798最少需要:**1 个 ticker symbol** (e.g., `MRVL`, `NVDA`, `IREN`)99100可选附加:101- 当前价格 (current price) — 若未提供,调用 `mcp__yfmcp__yfinance_get_ticker_info`102- 时间框架 (timeframe, default = daily)103- 用户风格 (Aggressive / Standard / Conservative — 默认按用户偏好或问)104105---106107## 执行流程 (Algorithm)108109```110Step 1: Validate trigger111 - 确认 ticker 存在 (yfinance lookup)112 - 确认是 equity context (NOT code, NOT US states)113114Step 2: Pull data115 - Current price, prev close116 - 20EMA, 50MA, 200MA117 - 52W high/low118 - 30-day average volume, last 5 days volume119 - MACD (12,26,9) histogram + signal/macd lines120 - RSI(14) daily + 5min if intraday data available121 - 1-2 月前的关键 resistance / support cluster122123Step 3: Score each state124 - State 1 checklist (5 conditions) → boolean each125 - State 2 checklist (4 conditions)126 - State 3 checklist (4 conditions)127 - State 4 checklist (4 conditions, any one trigger)128 - State 5 checklist (4 conditions)129130Step 4: Pick the state with MOST conditions met131 - If tied between 2 and 3, default to 2 (most conservative)132 - If State 5 has any trigger, override (worst-case first)133 - If State 4 has any trigger, prioritize buy opportunity134135Step 5: Output playbook136 - Current state + confidence (high/medium/low)137 - Conditions met / not met (transparent reasoning)138 - Aggressive / Standard / Conservative action139 - Specific entry zones (use Jackal-price-ladder if needed)140```141142---143144## 输出格式 (Output Template)145146```markdown147# $TICKER · Jackal State Machine 判断148149**现价**: $XXX.XX (后市 $XXX.XX, $YYYY-MM-DD)150**判断状态**: **State N · [状态名]**151**置信度**: High / Medium / Low152153## 触发条件 check (N/M 满足)154155✅ 条件 1: ...156✅ 条件 2: ...157❌ 条件 3: ...158...159160## 操作建议161162| 风格 | 仓位 | 入场区域 | Stop |163|------|------|----------|------|164| Aggressive | XX% | $A-$B | $S1 |165| Standard | XX% | $A-$B | $S1 |166| Conservative | XX% | $A-$B | $S1 |167168## 接下来 1-2 周看什么169170- 关键 level: $X (上方阻力) / $Y (下方支撑)171- 关键 catalyst: [财报日 / 宏观事件 / 行业新闻]172- 状态转换信号: 突破 $X → State 1; 跌破 $Y → State 5173174## 一句话175[Plain English/Chinese summary]176```177178---179180## 真实案例 (Real Example, 来自原文)181182**MRVL 在 2026-05-17 的判断**:183- 现价: $176.89184- State: **State 2 · 区间震荡**185- 理由: 5/13 attempted breakout $190.39 failed → rejected → 5/15 -3.12% to $176.89186- 操作: 轻仓试探 OK,all-in 不行187- 最佳 alpha: 等 5/27 财报后的 State 3 (回踩 $150-155) 或 State 4 (跌到 $128-135)188189**IREN 在 2026-05-17 的判断**:190- 现价: $52.94191- State: **第 4 个圆弧底 forming** (State 3 边缘)192- 理由: 已测试 20EMA $52.02 成功, volume 衰竭 pattern 明显193- 操作: 第 4 圆弧底底部预期 $47-50, 是 institutional grade entry194195---196197## 反例 (Anti-patterns — DO NOT)198199- ❌ 在 State 1 突破日中盘市价单追入 (用 breakout pullback)200- ❌ 在 State 2 震荡区上沿激进加仓 (等 State 3)201- ❌ 在 State 5 跌破后抄底 ("跌这么多总该反弹" = 接刀)202- ❌ 没有 ticker 或 market context 就触发本 skill203204---205206## 与其他 skills 的关系207208- 配合 `jackal-price-ladder` → 拿到具体入场价位209- 配合 `jackal-tech-scan` → 验证机构资金流方向210- 财报前用 `jackal-earnings-playbook` 推演 5 phase211- 入场后用 `price-alert` 设触发提醒212213---214215**最后**: 这个 state 不是静态的,每天/每周都要重新判断。市场告诉你「现在是什么 state」,不是你预设的 state。