gf-dma-health-index

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

GF-DMA Health Index

GF-DMA健康指数

Core Idea

核心思想

Evaluate whether a stock's current price trend is supported by fundamental speed and moving-average structure.
Use the index to answer:
text
Is the current price trend supported by revenue growth, profit growth, estimate revisions, and the 20/50/100/200DMA system?
Treat results as research analysis, not investment advice. For latest/current scoring, verify data from current sources before calculating.
评估股票当前价格趋势是否得到基本面增速和均线结构的支撑。
使用该指数回答:
text
当前价格趋势是否得到营收增长、利润增长、预期修正以及20/50/100/200DMA体系的支撑?
将结果视为研究分析,而非投资建议。如需最新/当前评分,计算前请从实时数据源验证数据。

Required Inputs

所需输入

Collect the newest available data before scoring:
  • Price/technical data: latest price, 20DMA, 50DMA, 100DMA, 200DMA, ATR20, 5-day price change, and 20/50/100/200-day price changes or historical prices.
  • Fundamental data: latest quarterly revenue, EPS, gross margin or gross profit, next-quarter company guidance, consensus revenue/EPS estimates, and 30-day estimate revisions.
  • Preferred sources: company IR releases/presentations, earnings calls, Yahoo Finance historical prices/analysis, TradingView technicals/estimates, Barchart technical analysis, Seeking Alpha estimates, Koyfin, FactSet, Bloomberg, TIKR, or Visible Alpha.
For U.S.-listed companies, SEC filings can improve the fundamental side of the score.
edgartools
is an optional helper for retrieving the latest 10-K, 10-Q, 8-K, XBRL financial statements, filing text, insider transactions, and ownership filings.
If the environment does not already have it, install with
pip install edgartools
or
uv pip install edgartools
. The import package is
edgar
, not
edgartools
. SEC access requires an identity; set
EDGAR_IDENTITY="Name email@example.com"
in the environment or call
from edgar import set_identity; set_identity("name@example.com")
before requests.
Minimal usage pattern:
python
from edgar import Company

company = Company("AAPL")
financials = company.get_financials()
income = financials.income_statement()
filings = company.get_filings(form="8-K")
Use SEC data for:
  • reported quarterly revenue, gross profit, EPS, cash flow, balance sheet, share count, and historical trend baselines
  • management language on demand, backlog, pricing, capacity, inventory, customer concentration, and risks
  • 8-K earnings releases or guidance disclosures when they contain the newest company-provided numbers
Do not use SEC data for the technical module or revision module. Price, 20/50/100/200DMA, ATR20, 5-day price slope, consensus estimates, and 30-day estimate revisions still require market-data and estimate sources. When SEC data is used, state the filing form and filing date so the user can judge freshness.
If a required field is unavailable, say which field is missing and use the simplified formula only when appropriate.
评分前收集最新可用数据:
  • 价格/技术数据:最新股价、20DMA、50DMA、100DMA、200DMA、ATR20、5日价格变动,以及20/50/100/200日价格变动或历史股价。
  • 基本面数据:最新季度营收、EPS、毛利率或毛利润、下一季度公司指引、一致营收/EPS预期,以及30天预期修正数据。
  • 推荐数据源:公司投资者关系发布/演示文稿、财报电话会议、Yahoo Finance历史价格/分析、TradingView技术指标/预期数据、Barchart技术分析、Seeking Alpha预期数据、Koyfin、FactSet、Bloomberg、TIKR或Visible Alpha。
对于美国上市企业,SEC filings可提升评分的基本面维度准确性。
edgartools
是可选工具,用于获取最新的10-K、10-Q、8-K、XBRL财务报表、申报文本、内幕交易及持股申报文件。
若环境未安装该工具,可通过
pip install edgartools
uv pip install edgartools
安装。导入包为
edgar
而非
edgartools
。访问SEC数据需身份验证;可在环境变量中设置
EDGAR_IDENTITY="Name email@example.com"
,或在请求前调用
from edgar import set_identity; set_identity("name@example.com")
极简使用示例:
python
from edgar import Company

company = Company("AAPL")
financials = company.get_financials()
income = financials.income_statement()
filings = company.get_filings(form="8-K")
SEC数据可用于:
  • 已披露的季度营收、毛利润、EPS、现金流、资产负债表、股份数量及历史趋势基准
  • 管理层关于需求、积压订单、定价、产能、库存、客户集中度及风险的表述
  • 包含最新公司提供数据的8-K财报发布或指引披露
请勿将SEC数据用于技术模块或修正模块。股价、20/50/100/200DMA、ATR20、5日价格斜率、一致预期及30天预期修正仍需市场数据和预期数据源。使用SEC数据时,请注明申报表格类型和申报日期,以便用户判断数据时效性。
若某必填字段缺失,请说明缺失字段,仅在合适情况下使用简化公式。

Calculation Workflow

计算流程

1. Fundamental Speed

1. 基本面增速

Calculate:
text
G_f = 0.35G_Revenue + 0.25G_GrossProfit + 0.30G_EPS + 0.10G_Revision
Where:
  • G_Revenue = next-quarter revenue guidance / latest-quarter revenue - 1
  • G_GrossProfit = next-quarter gross profit / latest-quarter gross profit - 1
  • G_EPS = next-quarter EPS guidance / latest-quarter EPS - 1
  • G_Revision = 30-day consensus estimate revision
Fallbacks:
  • If gross profit or EPS is missing:
    G_f = 0.5G_Revenue + 0.5G_EPS
  • If only revenue guidance is available:
    G_f = G_Revenue
计算公式:
text
G_f = 0.35G_Revenue + 0.25G_GrossProfit + 0.30G_EPS + 0.10G_Revision
其中:
  • G_Revenue = 下一季度营收指引 / 最新季度营收 - 1
  • G_GrossProfit = 下一季度毛利润 / 最新季度毛利润 - 1
  • G_EPS = 下一季度EPS指引 / 最新季度EPS - 1
  • G_Revision = 30天一致预期修正值
备选方案:
  • 若毛利润或EPS缺失:
    G_f = 0.5G_Revenue + 0.5G_EPS
  • 若仅提供营收指引:
    G_f = G_Revenue

2. DMA Speed

2. DMA增速

Calculate quarterly annualized-equivalent moving-average speed for each DMA:
text
G_DMAx = ((SMA_x(t) - SMA_x(t-k)) / SMA_x(t-k)) * (63 / k)
Use
k = 5
or
10
trading days by default. If only price-change data is available, approximate:
text
DailySlope_x ~= (P_t - P_t-x) / x
G_DMAx ~= DailySlope_x * 63 / P_t
Compute
G_DMA20
,
G_DMA50
,
G_DMA100
, and
G_DMA200
.
计算各DMA的季度年化等效均线增速:
text
G_DMAx = ((SMA_x(t) - SMA_x(t-k)) / SMA_x(t-k)) * (63 / k)
默认使用
k = 5
或10个交易日。若仅提供价格变动数据,可近似计算:
text
DailySlope_x ~= (P_t - P_t-x) / x
G_DMAx ~= DailySlope_x * 63 / P_t
计算
G_DMA20
G_DMA50
G_DMA100
G_DMA200

3. Fundamental-DMA Match

3. 基本面-DMA匹配度

Calculate:
text
R_x = G_DMAx / G_f
Interpret
R_50
and
R_100
first:
R_xStatus
< 0.5Trend clearly below fundamental speed
0.5-0.8Under-reflected or cheap versus trend
0.8-1.3Healthy match
1.3-2.0Hot but potentially explainable
> 2.0Overheated / FOMO escape risk
Core DMA emphasis:
Stock typeKey DMA
Mega-cap growth leaders like NVDA, AVGO, MSFT50DMA
Memory/cyclical semis like MU, SNDK100DMA
High-elasticity optical names like LITE, AAOI20DMA + 50DMA
Industrial AI/power names like ETN, VRT, TEL100DMA + 200DMA
Small-cap hard-manufacturing names like SIVE, CPSH20DMA + ATR divergence
Semiconductor ETFs like SOXX, SMH50DMA + 100DMA
计算公式:
text
R_x = G_DMAx / G_f
优先解读
R_50
R_100
R_x状态
< 0.5趋势明显低于基本面增速
0.5-0.8趋势反映不足或相对低估
0.8-1.3匹配健康
1.3-2.0热度较高但或有合理解释
> 2.0过热 / 追涨逃逸风险
核心DMA侧重点:
股票类型关键DMA
NVDA、AVGO、MSFT等大盘成长龙头50DMA
MU、SNDK等内存/周期半导体100DMA
LITE、AAOI等高弹性光模块企业20DMA + 50DMA
ETN、VRT、TEL等工业AI/电力企业100DMA + 200DMA
SIVE、CPSH等小盘硬制造企业20DMA + ATR背离
SOXX、SMH等半导体ETF50DMA + 100DMA

4. Price-DMA Divergence

4. 股价-DMA背离

Calculate:
text
D_x = P_t / SMA_x(t) - 1
Z_x = (P_t - SMA_x) / ATR20
Interpretation:
SignalStatus
0%-5% above 20DMAHealthy close-to-line trend
5%-12% above 20DMAStrong trend, mild valuation stretch
12%-20% above 20DMAHot; divergence score should fall
>20% above 20DMAShort-term escape; divergence score should fall sharply
>30% above 50DMAMedium-term overheat
>50% above 100DMAMajor repricing
>100% above 200DMAExtreme long-cycle repricing
0%-5% below 20/50DMA with stable fundamentalsHealthy pullback; divergence score can rise
5%-15% below 50DMA with stable/improving fundamentalsBetter valuation entry, but verify trend damage separately
Below 100/200DMA with deteriorating fundamentalsTrend damage; do not treat as cheap automatically
ATR divergence is asymmetric:
Z_xStatus
0 to 2Healthy
2 to 3Hot
3 to 4Very hot
>4Escape; reduce divergence score sharply
-1 to 0 with stable fundamentalsMild pullback; can improve valuation-health score
-3 to -1 with stable/improving fundamentalsDiscounted pullback; score can be high, but check trend parallelism
< -3 or below key long DMA with estimate cutsPossible breakdown; score should fall
Important:
S_Divergence
is a valuation-health score, not a pure momentum score. Upward price-DMA divergence lowers the score because the stock is more stretched. Downward divergence raises the score only when fundamental speed and revision confirmation are stable or improving; if fundamentals are deteriorating, downward divergence is trend damage rather than an opportunity.
计算公式:
text
D_x = P_t / SMA_x(t) - 1
Z_x = (P_t - SMA_x) / ATR20
解读规则:
信号状态
较20DMA高出0%-5%健康的紧贴均线趋势
较20DMA高出5%-12%趋势强劲,估值略有拉伸
较20DMA高出12%-20%热度较高;背离评分应下调
较20DMA高出>20%短期逃逸;背离评分应大幅下调
较50DMA高出>30%中期过热
较100DMA高出>50%重大重估
较200DMA高出>100%极端长周期重估
较20/50DMA低0%-5%且基本面稳定健康回撤;背离评分可上调
较50DMA低5%-15%且基本面稳定/改善估值更具吸引力,但需单独验证趋势受损情况
较100/200DMA低且基本面恶化趋势受损;勿自动视为低估
ATR背离具有不对称性:
Z_x状态
0至2健康
2至3热度较高
3至4热度极高
>4逃逸;大幅下调背离评分
-1至0且基本面稳定小幅回撤;可提升估值健康评分
-3至-1且基本面稳定/改善折价回撤;评分可较高,但需检查趋势平行度
< -3或低于关键长期DMA且预期下调可能破位;评分应下调
重要提示:
S_Divergence
是估值健康评分,而非纯动量评分。股价向上偏离DMA会降低评分,因为股票估值拉伸程度更高。只有当基本面增速和预期修正确认稳定或改善时,向下偏离才会提升评分;若基本面恶化,向下偏离属于趋势受损而非机会。

5. Trend Parallelism / Escape Ratio

5. 趋势平行度 / 逃逸比率

Calculate:
text
EscapeRatio = 5-day price slope / 50DMA daily slope
Interpretation:
EscapeRatioStatus
0.8-1.2Price and 50DMA are parallel; healthy
1.2-1.8Short-term acceleration; acceptable
1.8-2.5Clearly hot
>2.5FOMO escape
0-0.5Momentum decay
<0Short-term reversal; trend damage
计算公式:
text
EscapeRatio = 5日价格斜率 / 50DMA每日斜率
解读规则:
EscapeRatio状态
0.8-1.2股价与50DMA平行;健康
1.2-1.8短期加速;可接受
1.8-2.5明显过热
>2.5追涨逃逸
0-0.5动量衰减
<0短期反转;趋势受损

6. Revision Confirmation

6. 预期修正确认

Score estimate revisions:
Revision stateScore
Revenue and EPS estimates rising; company guide above consensus85-100
Mild upward revisions; guide slightly above consensus70-85
Stable expectations; limited upward revision55-70
Revisions starting to fall35-55
Guide below consensus; analysts cutting estimates<35
预期修正评分:
修正状态评分
营收和EPS预期上调;公司指引高于一致预期85-100
小幅上调预期;指引略高于一致预期70-85
预期稳定;上调幅度有限55-70
预期开始下调35-55
指引低于一致预期;分析师下调预期<35

Divergence Module Scoring

背离模块评分

Use asymmetric scoring for
S_Divergence
:
StateScore
Price close to 20/50DMA, above 100/200DMA80-95
Stable/improving fundamentals; price below 20DMA but near 50DMA85-100
Stable/improving fundamentals; price 5%-15% below 50DMA while long DMAs remain healthy75-95
Price 5%-12% above 20DMA65-80
Price 12%-20% above 20DMA50-70
Price >20% above 20DMA or >30% above 50DMA25-55
Price below 50DMA with weakening fundamentals or estimate cuts35-60
Price below 100DMA with estimate cuts15-45
Price below 200DMA with fundamental deterioration0-30
When price is below key DMAs, explicitly state whether the lower price is a healthy pullback or a breakdown. The deciding gate is fundamental speed plus revision confirmation.
S_Divergence
采用不对称评分:
状态评分
股价贴近20/50DMA,且高于100/200DMA80-95
基本面稳定/改善;股价低于20DMA但接近50DMA85-100
基本面稳定/改善;股价较50DMA低5%-15%且长期DMA保持健康75-95
股价较20DMA高5%-12%65-80
股价较20DMA高12%-20%50-70
股价较20DMA高>20%或较50DMA高>30%25-55
股价低于50DMA且基本面走弱或预期下调35-60
股价低于100DMA且预期下调15-45
股价低于200DMA且基本面恶化0-30
当股价低于关键DMA时,需明确说明低价是健康回撤还是破位。判断标准为基本面增速加预期修正确认。

Final Scoring

最终评分

Calculate total score out of 100:
text
HealthScore = 40S_GrowthMatch + 25S_Divergence + 20S_Parallel + 15S_Revision
Module scoring:
ModuleWeight
Fundamental speed match40%
Price-DMA divergence / pullback opportunity25%
Trend parallelism20%
Revision confirmation15%
Final interpretation:
ScoreStateMeaning
85-100Healthy MomentumHealthy main uptrend
75-85Strong but WatchStrong trend; continue monitoring
65-75Hot but SupportedHot, but fundamentals can still support it
55-65Damaged / OverheatedTrend damage or local overheat
40-55High RiskRisk clearly rising
<40Broken / EscapingBroken trend or post-escape pullback
计算总分(满分100):
text
HealthScore = 40S_GrowthMatch + 25S_Divergence + 20S_Parallel + 15S_Revision
模块权重:
模块权重
基本面增速匹配度40%
股价-DMA背离 / 回撤机会25%
趋势平行度20%
预期修正确认15%
最终解读:
评分状态含义
85-100健康动量健康主升趋势
75-85强劲但需关注趋势强劲;持续监控
65-75过热但有支撑热度较高,但基本面仍可支撑
55-65趋势受损/过热趋势受损或局部过热
40-55高风险风险明显上升
<40趋势破位/逃逸后趋势破位或逃逸后回撤

Mermaid Visualizations

Mermaid可视化

For a full report, include 2-4 Mermaid diagrams when they materially improve comprehension. A short answer or data-limited analysis may use fewer. Do not create a diagram merely to meet a quota.
Prioritize these views:
  1. An
    xychart-beta
    comparing latest price with 20/50/100/200DMA values, with the source values preserved in the adjacent table.
  2. An
    xychart-beta
    of the four 0-100 module scores, clearly separated from their percentage weights.
  3. A compact
    flowchart
    explaining why a below-DMA state is a healthy pullback or a breakdown, using fundamental speed and revision confirmation as the gate.
Apply these rules to every diagram:
  • Use fenced
    mermaid
    blocks, match the report language, keep node IDs in simple ASCII, and keep labels short.
  • Prefer broadly supported
    flowchart
    ,
    pie
    , and
    stateDiagram
    syntax. Use
    xychart-beta
    ,
    quadrantChart
    , or
    timeline
    only as progressive enhancement and retain the adjacent Markdown table as the fallback.
  • Use only evidence and values already stated in the report. Keep price currency, periods, scores, weights, and units consistent with the surrounding tables; never fill missing data for visual completeness.
  • Place each diagram beside the analysis it explains and follow it with a one-sentence takeaway. Keep citations, URLs, dates, and detailed caveats outside the diagram.
  • Keep a diagram focused: normally no more than 12 nodes or 8 plotted values. Diagrams supplement rather than replace calculations, score tables, caveats, and source trails.
完整报告中,若能显著提升理解度,可加入2-4个Mermaid图表。简短回答或数据受限的分析可减少图表数量,勿为凑数而创建图表。
优先选择以下视图:
  1. xychart-beta
    图表,对比最新股价与20/50/100/200DMA数值,相邻表格保留源数据。
  2. xychart-beta
    图表展示四个模块的0-100分得分,与百分比权重明确区分。
  3. 简洁的
    flowchart
    流程图,解释股价低于DMA时为何是健康回撤或破位,以基本面增速和预期修正确认为判断标准。
所有图表需遵循以下规则:
  • 使用围栏式
    mermaid
    代码块,匹配报告语言,节点ID使用简单ASCII字符,标签简洁。
  • 优先使用广泛支持的
    flowchart
    pie
    stateDiagram
    语法。仅将
    xychart-beta
    quadrantChart
    timeline
    作为增强功能,保留相邻Markdown表格作为兼容回退。
  • 仅使用报告中已陈述的证据和数值。确保股价货币、周期、评分、权重及单位与周边表格一致;切勿为视觉完整性填充缺失数据。
  • 每个图表放置在其解释的分析内容旁,随后附上一句总结。将引用、URL、日期及详细警示放在图表外。
  • 图表需聚焦:通常不超过12个节点或8个绘制值。图表为计算、评分表、警示及数据源追踪提供补充,而非替代。

Output Format

输出格式

Use this structure for every ticker:
markdown
undefined
每个ticker均使用以下结构:
markdown
undefined

TICKER: GF-DMA Health Index 评分

TICKER: GF-DMA健康指数 评分

最终评分:XX / 100 状态:Healthy Momentum / Strong but Watch / Hot but Supported / Damaged / High Risk / Broken
一句话判断: ...
  1. 基本面速度
  • 最新季度营收:
  • 下一季度营收指引:
  • 营收 QoQ:
  • EPS QoQ:
  • 毛利润 QoQ:
  • Fundamental Speed:
  1. 均线速度匹配 | 均线 | 季度化斜率 | 相对基本面速度 | 判断 | |---|---:|---:|---| | 20DMA | | | | | 50DMA | | | | | 100DMA | | | | | 200DMA | | | |
若价格和四条均线数据完整,在表后加入 Mermaid xychart;表格继续作为数值和兼容性回退。
  1. 股价-均线背离 | 指标 | 当前背离 | 判断 | |---|---:|---| | P / 20DMA - 1 | | | | P / 50DMA - 1 | | | | P / 100DMA - 1 | | | | P / 200DMA - 1 | | |
  2. 趋势平行度
  • Escape Ratio:
  • 判断:
  1. 预期上修确认
  • 公司指引 vs 市场预期:
  • 过去 30 天预期变化:
  • 判断:
  1. 综合评分 | 模块 | 权重 | 分数 | |---|---:|---:| | 基本面速度匹配 | 40% | | | 股价-均线背离 | 25% | | | 趋势平行度 | 20% | | | 预期上修确认 | 15% | |
在表后加入四个模块分数的 Mermaid xychart,不要把模块分数与模块权重混画在同一坐标轴。
结论: ...
当价格位于关键均线下方时,可加入 Mermaid flowchart,展示健康回撤与趋势破坏的判断门槛。
undefined
最终评分:XX / 100 状态:Healthy Momentum / Strong but Watch / Hot but Supported / Damaged / High Risk / Broken
一句话判断: ...
  1. 基本面速度
  • 最新季度营收:
  • 下一季度营收指引:
  • 营收 QoQ:
  • EPS QoQ:
  • 毛利润 QoQ:
  • Fundamental Speed:
  1. 均线速度匹配 | 均线 | 季度化斜率 | 相对基本面速度 | 判断 | |---|---:|---:|---| | 20DMA | | | | | 50DMA | | | | | 100DMA | | | | | 200DMA | | | |
若价格和四条均线数据完整,在表后加入 Mermaid xychart;表格继续作为数值和兼容性回退。
  1. 股价-均线背离 | 指标 | 当前背离 | 判断 | |---|---:|---| | P / 20DMA - 1 | | | | P / 50DMA - 1 | | | | P / 100DMA - 1 | | | | P / 200DMA - 1 | | |
  2. 趋势平行度
  • Escape Ratio:
  • 判断:
  1. 预期上修确认
  • 公司指引 vs 市场预期:
  • 过去 30 天预期变化:
  • 判断:
  1. 综合评分 | 模块 | 权重 | 分数 | |---|---:|---:| | 基本面速度匹配 | 40% | | | 股价-均线背离 | 25% | | | 趋势平行度 | 20% | | | 预期上修确认 | 15% | |
在表后加入四个模块分数的 Mermaid xychart,不要把模块分数与模块权重混画在同一坐标轴。
结论: ...
当价格位于关键均线下方时,可加入 Mermaid flowchart,展示健康回撤与趋势破坏的判断门槛。
undefined

Detailed Reference

详细参考

Read
references/original-framework.md
when a task needs the full Chinese framework text, examples, source priority list, or scoring tables in their original form.
When the reference format differs, preserve its analytical intent but follow this SKILL.md's current output and visualization rules.
当任务需要完整的中文框架文本、示例、数据源优先级列表或原始评分表时,请阅读
references/original-framework.md
若参考格式与本文不同,请保留其分析意图,但遵循本SKILL.md当前的输出和可视化规则。