alphaspec 0.1.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (31) hide show
  1. alphaspec/__init__.py +8 -0
  2. alphaspec/_data/catalog/i18n/en.json +1016 -0
  3. alphaspec/_data/catalog/indicators.json +9790 -0
  4. alphaspec/_data/docs/MARKETS.md +29 -0
  5. alphaspec/_data/docs/RULES.md +133 -0
  6. alphaspec/_data/docs/RUNTIME_API.md +80 -0
  7. alphaspec/_data/docs/SPEC.md +99 -0
  8. alphaspec/_data/examples/artifacts/01-ema-cross-us-equity.json +20 -0
  9. alphaspec/_data/examples/artifacts/02-rsi-reversion-params.json +25 -0
  10. alphaspec/_data/examples/artifacts/03-mtf-trend-pullback.json +25 -0
  11. alphaspec/_data/examples/artifacts/04-breakout-retest-sequence.json +58 -0
  12. alphaspec/_data/examples/artifacts/05-cn-limit-up-pullback.json +33 -0
  13. alphaspec/_data/examples/scores/01-model-scores-cn-stock.json +17 -0
  14. alphaspec/_data/examples/scores/02-target-weights-us-equity.json +13 -0
  15. alphaspec/_data/schema/0.1/artifact.schema.json +259 -0
  16. alphaspec/_data/schema/0.1/common.schema.json +96 -0
  17. alphaspec/_data/schema/0.1/evidence.schema.json +152 -0
  18. alphaspec/_data/schema/0.1/gate-result.schema.json +55 -0
  19. alphaspec/_data/schema/0.1/score.schema.json +79 -0
  20. alphaspec/_data/skills/alphaspec/SKILL.md +93 -0
  21. alphaspec/_resources.py +77 -0
  22. alphaspec/cli.py +360 -0
  23. alphaspec/client.py +146 -0
  24. alphaspec/lints.py +266 -0
  25. alphaspec/mcp_server.py +231 -0
  26. alphaspec/validate.py +108 -0
  27. alphaspec-0.1.0.dist-info/METADATA +322 -0
  28. alphaspec-0.1.0.dist-info/RECORD +31 -0
  29. alphaspec-0.1.0.dist-info/WHEEL +4 -0
  30. alphaspec-0.1.0.dist-info/entry_points.txt +3 -0
  31. alphaspec-0.1.0.dist-info/licenses/LICENSE +202 -0
@@ -0,0 +1,1016 @@
1
+ {
2
+ "绝对值 |A|": "Absolute value |A|",
3
+ "取操作数的绝对值(只用 left)。": "Absolute value of the operand (uses left only).",
4
+ "任一侧为空(NaN)结果即为空,比较条件不成立。": "If either side is empty (NaN) the result is empty and the comparison is false.",
5
+ "在主周期上逐根运算;自身写 timeframe 不生效,要高周期的量就把 timeframe 写在操作数指标上。": "Computed bar by bar on the primary timeframe; a timeframe on this node has no effect. For a higher-timeframe quantity, put timeframe on the operand indicator.",
6
+ "累积/派发 A/D": "Accumulation/Distribution A/D",
7
+ "量价配合的累积指标,判断资金流向与主力意图。": "Cumulative price-volume indicator used to judge money flow and the intent of large players.",
8
+ "A/D 线在横盘震荡市中会频繁发出错误信号,背离后可能继续背离,盲目抄底会被埋": "In sideways markets the A/D line gives frequent false signals; a divergence can keep diverging, and bottom-fishing on it alone gets punished.",
9
+ "极端行情(如连续涨停/跌停)时,A/D 线可能失真,因为价格被锁在极值附近": "In extreme moves (e.g. consecutive limit-up/limit-down days) the A/D line can be distorted because price is pinned at the limit.",
10
+ "A/D 线是累积指标,数值本身没有固定范围,不同股票不能直接比较,只能看自身趋势和背离": "A/D is cumulative and has no fixed range; values are not comparable across stocks. Use only its own trend and divergences.",
11
+ "相加 A + B": "Add A + B",
12
+ "两个操作数逐根相加。": "Adds two operands bar by bar.",
13
+ "ADX": "ADX",
14
+ "衡量趋势强弱的指标,不指方向只看力度。": "Measures trend strength, not direction.",
15
+ "ADX 只测强弱不测方向,单独看 ADX 上升就买卖会两头挨打": "ADX measures strength, not direction; trading on a rising ADX alone loses both ways.",
16
+ "ADX 在趋势末期可能仍很高,但价格已到顶/底,容易追高或杀跌": "ADX can stay high late in a trend while price is already topping or bottoming, which invites chasing.",
17
+ "参数周期太短(如 7)会导致 ADX 频繁跳动,假信号增多": "A very short period (e.g. 7) makes ADX jumpy and adds false signals.",
18
+ "方向线 DI 的计算周期。": "Period of the directional lines (DI).",
19
+ "ADX 平滑周期;省略时使用与 diPeriod 相关的默认构造。": "ADX smoothing period; when omitted, a default derived from diPeriod is used.",
20
+ "DMA 平行线差 · AMA": "DMA difference of moving averages · AMA",
21
+ "DIF 的 m 日均线。": "m-day moving average of DIF.",
22
+ "短均线": "Short MA",
23
+ "长均线": "Long MA",
24
+ "平滑": "Smoothing",
25
+ "BRAR · AR": "BRAR · AR",
26
+ "人气指标:开盘后的多空力量。": "Sentiment indicator: buying vs selling pressure relative to the open.",
27
+ "开盘价被操纵(如集合竞价异常)时失真": "Distorted when the open is manipulated (e.g. an abnormal call auction).",
28
+ "周期": "Period",
29
+ "Aroon Down": "Aroon Down",
30
+ "衡量价格创N日新低的强度,判断下跌趋势是否持续。": "Measures how recently price made an N-bar low, i.e. whether a downtrend persists.",
31
+ "在横盘震荡行情中,Aroon Down 会频繁在 0-100 之间乱跳,产生大量假信号": "In sideways markets Aroon Down jumps between 0 and 100 and produces many false signals.",
32
+ "Aroon Down 只反映「新低」的时效性,不反映跌幅大小——连续小阴线也能让指标维持高位": "Aroon Down reflects how recent the new low is, not how big the decline is; a run of small down bars keeps it high.",
33
+ "参数 N 选太小(如 10)会过于敏感,容易追在短期低点;选太大(如 50)则反应迟钝": "A small N (e.g. 10) is over-sensitive and buys short-term lows too eagerly; a large N (e.g. 50) reacts too slowly.",
34
+ "Aroon Down 窗口长度。": "Aroon Down window length.",
35
+ "Aroon 振荡器": "Aroon Oscillator",
36
+ "衡量趋势的强弱和持续性,通过时间位置判断方向。": "Trend strength and persistence from the timing of highs and lows.",
37
+ "在横盘震荡市中,Aroon 振荡器会频繁穿越 0 轴,产生大量假信号,让你反复止损": "In sideways markets the oscillator crosses 0 often, producing false signals and repeated stop-outs.",
38
+ "它只考虑最高价和最低价的位置,忽略收盘价,所以极端影线可能误导判断": "Uses only the positions of highs and lows and ignores the close, so extreme wicks can mislead.",
39
+ "参数周期 N 太小时,指标过于敏感,噪音多;太大时,反应迟钝,错过最佳入场点": "A small N is noisy; a large N reacts late and misses entries.",
40
+ "Aroon 振荡器窗口(Up−Down)。": "Aroon Oscillator window (Up − Down).",
41
+ "Aroon Up": "Aroon Up",
42
+ "衡量价格创N日新高的速度,判断上升趋势强弱。": "Measures how recently price made an N-bar high, i.e. the strength of an uptrend.",
43
+ "横盘震荡时 Aroon Up 会频繁上下穿越 50,产生大量假信号": "In sideways markets Aroon Up crosses 50 frequently and produces false signals.",
44
+ "指标只看「创新高」不看幅度,如果价格缓慢爬升但总创新高,Aroon Up 依然很高,容易让人忽视回调风险": "It looks at new highs, not their size: a slow grind that keeps making highs keeps Aroon Up high and hides pullback risk.",
45
+ "Aroon Up 窗口长度。": "Aroon Up window length.",
46
+ "ATR": "ATR",
47
+ "平均真实波幅,衡量股票的「日均波动幅度」,是风控和止损的基石。": "Average True Range: the typical bar-to-bar range of a stock; the basis of risk control and stops.",
48
+ "ATR 不指方向,单独用毫无意义,必须配合趋势指标": "ATR has no direction and is meaningless alone; combine it with a trend indicator.",
49
+ "暴跌或大涨后 ATR 会被拉得很高,用它做止损可能被「震出场」": "After a crash or spike ATR is inflated, and stops based on it may get shaken out.",
50
+ "不同股票的 ATR 数量级差异极大(茅台 vs 创业板小盘股),跨标的策略要用 ATR% 标准化": "ATR magnitudes differ hugely across stocks; for cross-sectional strategies normalise it as ATR%.",
51
+ "平均真实波幅 ATR 的周期。用于该指标计算所回溯的 K 线根数(周期越大曲线越平滑、滞后越大)。": "ATR period: number of bars looked back (larger is smoother and lags more).",
52
+ "ATR 波动率百分比": "ATR volatility percent",
53
+ "ATR 除以价格,标准化波动率,方便跨股对比。": "ATR divided by price: normalised volatility comparable across stocks.",
54
+ "低价股(比如 1 元以下)的 ATR% 可能虚高,因为价格基数小,实际波动金额不大": "ATR% of very low-priced stocks (e.g. below 1 yuan) can look inflated because the price base is small.",
55
+ "停牌后复牌的股票 ATR% 会突然暴增,不要直接用来止损,等几天稳定再说": "ATR% spikes right after a trading halt ends; wait a few days before using it for stops.",
56
+ "ATR% 本身不指方向,不能单独做买卖信号,必须配合趋势指标": "ATR% has no direction and is not a trading signal on its own; combine it with a trend indicator.",
57
+ "ATR / 收盘价 × 100,用于跨品种波动过滤。": "ATR / close × 100, for volatility filtering across instruments.",
58
+ "动量振荡器 AO": "Awesome Oscillator AO",
59
+ "衡量最近5根K线与34根K线动量差值的震荡指标。": "Oscillator: momentum of the last 5 bars minus that of the last 34 bars.",
60
+ "横盘震荡时柱子频繁变色,容易产生假信号,胜率很低": "In sideways markets the histogram flips colour often; false signals and a low hit rate.",
61
+ "零轴附近柱子很矮时信号意义弱,容易追高或杀跌": "Near the zero line, short bars carry little meaning and invite chasing.",
62
+ "AO只看价格中位,忽略成交量,单用容易被骗线": "AO uses only the median price and ignores volume; used alone it is easy to fool.",
63
+ "多空指标 BBI": "Bull and Bear Index BBI",
64
+ "3/6/12/24 日均线的平均,价格在其上方偏多、下方偏空。": "Average of the 3/6/12/24-day moving averages; price above it leans bullish, below leans bearish.",
65
+ "本质是均线,震荡市反复穿越": "It is a moving average at heart and is crossed back and forth in ranges.",
66
+ "均线 1": "MA 1",
67
+ "均线 2": "MA 2",
68
+ "均线 3": "MA 3",
69
+ "均线 4": "MA 4",
70
+ "乖离率 BIAS": "BIAS",
71
+ "价格偏离 N 日均线的百分比,偏离过大常有回归。": "Percent deviation of price from its N-day moving average; large deviations often revert.",
72
+ "强势股可以长时间保持高乖离,单独做空 / 卖出容易卖飞": "Strong stocks can stay far above their average for a long time; shorting or selling on BIAS alone exits too early.",
73
+ "不同波动率的股票合理区间不同,阈值要按股票调": "Reasonable ranges differ with volatility; tune thresholds per stock.",
74
+ "均线周期。": "Moving-average period.",
75
+ "布林下轨": "Bollinger lower band",
76
+ "布林带的下轨,通常代表超卖区域或支撑位。": "Lower Bollinger band, usually read as oversold territory or support.",
77
+ "单边下跌行情中,价格会沿着下轨持续下行,此时抄底会被套牢": "In a one-way decline price rides down the lower band; bottom-fishing there gets trapped.",
78
+ "下轨只是统计边界,不是绝对支撑,价格可以长期在下轨下方运行": "The lower band is a statistical boundary, not hard support; price can stay below it for long.",
79
+ "横盘震荡时,价格反复触碰下轨但无实质反弹,容易产生假信号": "In sideways markets price touches the lower band repeatedly without a real bounce, giving false signals.",
80
+ "中轨与标准差计算所用的周期。": "Period used for the middle band and the standard deviation.",
81
+ "下轨 = 中轨 − k×标准差。": "Lower = middle − k × standard deviation.",
82
+ "布林中轨": "Bollinger middle band",
83
+ "布林带中轨 = N 周期 SMA,配合上下轨判断「价格是否偏离常态」。": "Bollinger middle band = N-period SMA; with the outer bands it shows whether price has left its normal range.",
84
+ "单边强趋势市场,价格会持续沿上轨或下轨运行,用通道反转必死": "In strong one-way trends price rides the upper or lower band; trading reversals at the bands fails.",
85
+ "中轨周期太短(< 10)噪声大,太长(> 30)滞后明显,20 是经典折中": "A middle-band period under 10 is noisy, over 30 lags; 20 is the classic compromise.",
86
+ "默认 2 倍标准差适合大盘股,小盘股波动大可考虑 2.5-3": "The default 2 standard deviations suits large caps; for volatile small caps consider 2.5–3.",
87
+ "布林带中轨 SMA 周期。用于该指标计算所回溯的 K 线根数(周期越大曲线越平滑、滞后越大)。": "Bollinger middle band SMA period: number of bars looked back (larger is smoother and lags more).",
88
+ "布林上轨": "Bollinger upper band",
89
+ "布林带的上轨,代表股价的「压力线」,突破可能意味着强势或泡沫。": "Upper Bollinger band: the resistance line; a break above can mean strength or a bubble.",
90
+ "在单边大涨行情中,股价会长时间贴着上轨运行,此时卖出会踏空大段利润": "In a strong rally price can hug the upper band for long; selling there misses much of the move.",
91
+ "横盘震荡时上轨会频繁被触碰又回落,容易产生假突破,导致反复止损": "In sideways markets the upper band is touched and rejected often, producing false breakouts and repeated stops.",
92
+ "参数设置不当(如周期太短或倍数太小)会导致上轨过于敏感,信号过多": "Poor settings (too short a period or too small a multiplier) make the band over-sensitive with too many signals.",
93
+ "上轨 = 中轨 + k×标准差。": "Upper = middle + k × standard deviation.",
94
+ "布林带宽": "Bollinger bandwidth",
95
+ "布林上下轨之间的宽度占中轨的百分比,衡量波动收敛与扩张。": "Width between the upper and lower bands as a percent of the middle band: volatility contraction and expansion.",
96
+ "只说波动大小、不说方向": "Measures volatility size only, not direction.",
97
+ "标准差倍数": "Standard-deviation multiplier",
98
+ "BRAR · BR": "BRAR · BR",
99
+ "意愿指标:相对昨收的多空力量。": "Willingness indicator: buying vs selling pressure relative to the previous close.",
100
+ "炸板次数 · L2·tick": "Limit-up board breaks · L2·tick",
101
+ "当日炸板次数(封住→买一跌破涨停价的跃迁数)。": "Number of times the limit-up board broke today (transitions from sealed to bid-1 falling below the limit price).",
102
+ "盘中重启会丢失当日累计(状态在内存),重启后从 0 重新数": "An intraday restart loses the running count (state is in memory); counting restarts from 0.",
103
+ "只有进了盘口采集集的标的才有值,其余恒 NaN(比较兜底 false,不会误触发)": "Only symbols in the order-book capture set have values; others are always NaN (comparisons fall back to false and never fire).",
104
+ "★ 求值频率目前仍是 bar 收盘(1/分钟),适合做「现在是什么状态」的确认,不适合捕捉「刚刚发生了什么」跃迁": "★ Evaluation still happens at bar close (once a minute): good for confirming the current state, not for catching a transition that just happened.",
105
+ "撤单率 · L2": "Cancellation rate · L2",
106
+ "一根 bar 内 撤单额/委托额。真封与假封的分水岭。需逐笔委托/成交。": "Cancelled amount / ordered amount within one bar; separates genuine limit-up seals from fake ones. Needs tick-by-tick orders and trades.",
107
+ "只有进了逐笔订阅集(≤50 只)的标的才有值,其余恒 NaN": "Only symbols in the tick-by-tick subscription set (≤ 50) have values; others are always NaN.",
108
+ "分母是委托额,冷清时段样本极少、比值跳动剧烈": "The denominator is order amount; in quiet periods the sample is tiny and the ratio jumps around.",
109
+ "阈值尚未标定,切勿直接照抄示例里的数字": "Thresholds are not calibrated yet; do not copy the numbers in the examples.",
110
+ "看跌吞没": "Bearish engulfing",
111
+ "一根大阴线吃掉前一根阳线,典型的顶部反转信号。": "A large down bar swallows the previous up bar; a classic top-reversal signal.",
112
+ "在震荡市或下跌趋势中出现的看跌吞没,往往只是假信号,容易追空被套": "Bearish engulfing in a range or an existing downtrend is often a false signal; shorting it gets trapped.",
113
+ "如果第二根阴线实体不够大(只比阳线实体大一点点),反转成功率会大幅下降": "If the second bar's body is barely larger than the up bar's body, reversal odds drop sharply.",
114
+ "必须等收盘确认,盘中看到阴线吞没阳线就入场,容易被尾盘拉升打脸": "Wait for the close to confirm; entering intraday on an apparent engulfing gets caught by late rallies.",
115
+ "看跌孕线": "Bearish harami",
116
+ "两根K线组成的看跌反转形态,预示上涨可能结束。": "Two-bar bearish reversal pattern suggesting an advance may be ending.",
117
+ "在横盘震荡市中频繁出现,但多数是假信号,盲目卖出会被来回打脸": "Frequent in sideways markets, mostly as false signals; selling on it blindly gets whipsawed.",
118
+ "单根形态胜率有限,必须等下一根K线确认(比如跌破孕线最低点)再行动": "A single pattern has limited edge; wait for confirmation (e.g. a break of the harami low).",
119
+ "小周期(如5分钟)的孕线噪音极大,尽量在日线或周线使用": "On small timeframes (e.g. 5m) harami is very noisy; prefer daily or weekly.",
120
+ "光头光脚阴线": "Bearish marubozu",
121
+ "开盘即最高、收盘即最低,没有上下影线,卖方全程主导、价格一路下跌。": "Opens at the high and closes at the low with no shadows: sellers in control throughout.",
122
+ "低位恐慌盘也常出现,未必继续跌": "Also common in capitulation at lows; it does not guarantee further declines.",
123
+ "实体 ÷ 开盘价 ≥ 它,排除开盘即最高的小阴线。": "Body ÷ open must be at least this, to exclude tiny bars that merely open at the high.",
124
+ "看涨吞没": "Bullish engulfing",
125
+ "一根阴线后出现一根更大的阳线,完全包住前一根,预示上涨。": "A larger up bar fully covers the previous down bar, suggesting a rise.",
126
+ "在上涨趋势中或横盘震荡中出现的看涨吞没,信号可靠性大幅降低,容易追高被套": "Bullish engulfing inside an uptrend or a range is much less reliable and invites chasing.",
127
+ "两根K线实体都很小(如十字星后的小阳线),吞没形态意义不大,常是假信号": "If both bodies are tiny (e.g. a small up bar after a doji) the pattern means little and is often false.",
128
+ "必须等阳线收盘确认,盘中看到阳线覆盖阴线就追入,尾盘可能回落失败": "Wait for the up bar to close; buying intraday may fail into the close.",
129
+ "看涨孕线": "Bullish harami",
130
+ "两根K线组成的底部反转信号,预示下跌可能结束。": "Two-bar bottom-reversal signal suggesting a decline may be ending.",
131
+ "单根形态胜率不高,尤其在震荡市中经常是假信号,必须等后续确认": "Low hit rate on its own, especially in ranges; wait for confirmation.",
132
+ "第二根K线实体越小,反转力度可能越弱,小十字星形态容易失效": "The smaller the second body, the weaker the reversal; tiny doji versions often fail.",
133
+ "大趋势向下时,看涨孕线可能只是反弹中继,很快继续下跌": "In a major downtrend a bullish harami may only mark a pause before further declines.",
134
+ "光头光脚阳线": "Bullish marubozu",
135
+ "开盘即最低、收盘即最高,没有上下影线,买方全程主导、价格一路上扬。": "Opens at the low and closes at the high with no shadows: buyers in control throughout.",
136
+ "高位连续光头阳线也可能是加速赶顶": "Consecutive marubozu at high levels can also be a blow-off top.",
137
+ "实体 ÷ 开盘价 ≥ 它,排除开盘即最低的小阳线。": "Body ÷ open must be at least this, to exclude tiny bars that merely open at the low.",
138
+ "十字星": "Doji",
139
+ "开盘收盘价几乎相同,形态像十字,代表多空力量平衡。": "Open and close almost equal, forming a cross: buyers and sellers in balance.",
140
+ "十字星在趋势中途出现时,经常只是「空中加油」,继续原方向,盲目反向操作会被打脸": "A doji mid-trend is often just a pause; trading against the trend on it gets punished.",
141
+ "单根十字星信号很弱,必须结合前后K线确认,否则假信号极多": "A single doji is a weak signal; confirm with surrounding bars or expect many false signals.",
142
+ "参数「根数」设太大(如5根以上),信号太少,错过行情;设太小(1根),信号太多,全是噪音": "Too many bars (5+) gives too few signals; 1 bar gives too many, mostly noise.",
143
+ "参与判定的连续 K 线根数。": "Number of consecutive bars considered.",
144
+ "实体相对波幅的比例阈值。": "Threshold for body size relative to the bar's range.",
145
+ "黄昏之星": "Evening star",
146
+ "长阳 → 小实体 → 长阴收破第一根实体中点,上涨末端的见顶组合。": "Long up bar → small body → long down bar closing below the midpoint of the first body: a topping combination.",
147
+ "A 股日线真跳空少,中间那根按「实体不和第 1 根实体重叠」判,比教科书宽": "True gaps are rare on A-share daily bars; the middle bar only needs a body that does not overlap the first body, looser than the textbook.",
148
+ "单独当买卖点胜率不高,配合位置(低位 / 高位)和成交量用": "Weak as a stand-alone entry or exit; use with location (high/low) and volume.",
149
+ "长实体阈值:实体 ÷ 开盘价(0.02 = 2%)。": "Long-body threshold: body ÷ open (0.02 = 2%).",
150
+ "中间那根的小实体阈值(0.008 = 0.8%)。": "Small-body threshold for the middle bar (0.008 = 0.8%).",
151
+ "锤子线": "Hammer",
152
+ "底部反转的蜡烛形态,像一把锤子。": "Bottom-reversal candle shaped like a hammer.",
153
+ "锤子线本身不是买入信号,需要次日确认(比如收阳线或高开),否则可能只是下跌中继": "A hammer is not a buy signal by itself; wait for next-day confirmation (an up close or a gap up), or it may be a pause in a decline.",
154
+ "在上涨趋势中出现的锤子线(称为「吊颈线」)反而是见顶信号,新手容易混淆": "The same shape in an uptrend is a hanging man, a top signal; beginners confuse the two.",
155
+ "成交量太小或处于横盘震荡区间的锤子线,反转概率很低,容易假突破": "Hammers on low volume or inside a range rarely reverse and often fail.",
156
+ "上吊线": "Hanging man",
157
+ "一根带长下影线的小实体K线,预示上涨行情可能反转。": "Small body with a long lower shadow, suggesting an uptrend may reverse.",
158
+ "上吊线单独出现时可靠性不高,必须等第二天确认,否则容易被假信号骗": "Unreliable alone; wait for next-day confirmation.",
159
+ "在强势上涨中,上吊线可能只是短暂回调,随后继续上涨,过早卖出会踏空": "In a strong rally it may be a brief dip; selling early misses the rest of the move.",
160
+ "如果上吊线出现在震荡区间顶部,信号会大打折扣,因为本身就没有明确趋势": "At the top of a range the signal is much weaker because there is no clear trend.",
161
+ "倒锤线": "Inverted hammer",
162
+ "底部反转信号,像倒过来的锤子,预示可能见底反弹。": "Bottom-reversal signal shaped like an upside-down hammer, suggesting a possible rebound.",
163
+ "单根K线形态可靠性较低,必须等次日确认,否则容易是下跌中继": "Single-bar patterns are unreliable; wait for next-day confirmation or it may be a pause in a decline.",
164
+ "上影线越长越好,但如果实体太大或上下影线都长,就不是标准倒锤线": "Longer upper shadows are better, but with a large body or long shadows on both ends it is not a proper inverted hammer.",
165
+ "在强势下跌趋势中,倒锤线可能只是短暂反弹,随后继续暴跌": "In a strong downtrend it may be only a brief bounce before further declines.",
166
+ "岛形底": "Island bottom",
167
+ "向下跳空形成孤岛,随后向上跳空离开,强烈见底信号。": "A gap down forms an island, then a gap up leaves it: a strong bottom signal.",
168
+ "日线上较少见": "Rare on daily bars.",
169
+ "进岛、出岛两个缺口的最小幅度。": "Minimum size of the gaps into and out of the island.",
170
+ "孤岛最多多少根 K 线。": "Maximum number of bars on the island.",
171
+ "岛形顶": "Island top",
172
+ "向上跳空形成孤岛,随后向下跳空离开,两边留下缺口,强烈见顶信号。": "A gap up forms an island, then a gap down leaves it, with gaps on both sides: a strong top signal.",
173
+ "日线上较少见;缺口阈值过小会把普通跳空算进来": "Rare on daily bars; a gap threshold that is too small counts ordinary gaps.",
174
+ "早晨之星": "Morning star",
175
+ "长阴 → 小实体 → 长阳收过第一根实体中点,下跌末端的见底组合。": "Long down bar → small body → long up bar closing above the midpoint of the first body: a bottoming combination.",
176
+ "流星线": "Shooting star",
177
+ "单根K线形态,高位出现长上影预示见顶。": "Single-bar pattern: a long upper shadow at a high suggests a top.",
178
+ "流星线单独使用胜率不高,必须等次日确认(如低开或收阴),否则容易被假信号坑": "Low hit rate alone; wait for next-day confirmation (a lower open or a down close).",
179
+ "在震荡市中或上涨初期出现,可能只是正常回调,直接卖出会踏空": "In a range or early in an advance it may be a normal pullback; selling on it misses the move.",
180
+ "上影线不够长(小于实体2倍)或下影线太长,就不是标准流星线,信号失效": "If the upper shadow is short (less than 2× the body) or the lower shadow is long, it is not a proper shooting star.",
181
+ "陀螺线": "Spinning top",
182
+ "小实体、上下影线都比实体长,多空拉锯、方向待定。": "Small body with both shadows longer than the body: a tug of war with no clear direction.",
183
+ "单独意义不大,要看出现的位置": "Means little alone; location matters.",
184
+ "实体 ÷ 全长 ≤ 它。": "Body ÷ full range must be at most this.",
185
+ "三只乌鸦": "Three black crows",
186
+ "连续三根阴线,预示上涨行情可能反转。": "Three consecutive down bars, suggesting an advance may reverse.",
187
+ "在下跌趋势中出现的三只乌鸦可能是持续信号,而非反转,容易抄底被套": "Inside a downtrend it may signal continuation rather than reversal; bottom-fishing gets trapped.",
188
+ "阴线实体不够大或带有长下影线时,信号可靠性降低,容易假信号": "Small bodies or long lower shadows reduce reliability.",
189
+ "单看形态不结合趋势和成交量,胜率可能不足50%": "Without trend and volume context the hit rate can be under 50%.",
190
+ "三白兵": "Three white soldiers",
191
+ "连续三根大阳线,预示上涨趋势强劲。": "Three consecutive large up bars, suggesting a strong uptrend.",
192
+ "在连续大涨后的高位出现三白兵,可能是主力拉高出货的陷阱,追高容易被套": "After a big run-up it can be a distribution trap; chasing gets trapped.",
193
+ "如果三根阳线实体越来越小或带有长上影线,说明上涨乏力,形态可靠性降低": "Shrinking bodies or long upper shadows signal fading momentum and lower reliability.",
194
+ "横盘震荡市中频繁出现类似形态,但很快被阴线吞没,容易造成假突破": "In ranges similar shapes appear often and are quickly engulfed, producing false breakouts.",
195
+ "平底": "Tweezer bottom",
196
+ "下跌之后两根 K 线最低价几乎相同、先阴后阳,下方有支撑。": "After a decline, two bars with nearly equal lows, down then up: support below.",
197
+ "容差太大会遍地命中": "Too large a tolerance matches almost everywhere.",
198
+ "两根最低价相差不超过的比例。": "Maximum relative difference between the two lows.",
199
+ "前 N 根累计下跌才算「下跌之后」。": "The previous N bars must have declined in total to count as 'after a decline'.",
200
+ "平顶": "Tweezer top",
201
+ "上涨之后两根 K 线最高价几乎相同、先阳后阴,上方有压力。": "After an advance, two bars with nearly equal highs, up then down: resistance above.",
202
+ "两根最高价相差不超过的比例(0.003 = 0.3%)。": "Maximum relative difference between the two highs (0.003 = 0.3%).",
203
+ "前 N 根累计上涨才算「上涨之后」。": "The previous N bars must have advanced in total to count as 'after an advance'.",
204
+ "CCI": "CCI",
205
+ "衡量价格相对统计位置,判断超买超卖的震荡指标。": "Oscillator measuring price relative to its statistical mean, for overbought/oversold.",
206
+ "在强趋势行情中,CCI会长时间停留在超买或超卖区,过早反向操作会导致巨大亏损": "In strong trends CCI can stay overbought or oversold for long; fading it early causes large losses.",
207
+ "CCI对价格突变非常敏感,一根大阳线或大阴线就能让数值剧烈变化,容易产生假信号": "CCI is very sensitive to sudden moves; one large bar swings it and creates false signals.",
208
+ "不同股票或周期的CCI阈值(+100/-100)并非万能,需要根据品种特性调整": "The ±100 thresholds are not universal; adjust per instrument and timeframe.",
209
+ "典型商品通道指标周期。": "Commodity Channel Index period.",
210
+ "Chaikin 振荡器": "Chaikin Oscillator",
211
+ "量价配合的动量指标,判断资金流入流出强度。": "Price-volume momentum indicator for the strength of money inflow and outflow.",
212
+ "在震荡行情中频繁穿越零轴,信号噪音极大,容易反复止损": "In ranges it crosses zero often; very noisy and leads to repeated stops.",
213
+ "背离信号在强单边趋势中可能连续出现多次假信号,等真反转时已经亏了好几笔": "In strong one-way trends divergences can fail several times before a real reversal.",
214
+ "对成交量异常放大的个股(如庄股)极度敏感,容易误判资金意图": "Extremely sensitive to abnormal volume (e.g. heavily controlled stocks), which misleads about money flow.",
215
+ "可选;指定时须同时指定 slow,且 slow>fast。": "Optional; if set, slow must also be set and slow > fast.",
216
+ "可选;未指定时使用 Ta4j 默认 Chaikin 振荡器参数。": "Optional; when omitted the Ta4j default Chaikin Oscillator parameters are used.",
217
+ "蔡金波动率": "Chaikin Volatility",
218
+ "高低价差的 EMA 相对 m 根前的变化率。": "Rate of change of the EMA of the high-low range versus m bars ago.",
219
+ "比较间隔": "Comparison lag",
220
+ "Chaikin 资金流": "Chaikin Money Flow",
221
+ "结合价格位置和成交量,衡量资金流入流出强度的指标。": "Combines where price closes in its range with volume to measure money inflow and outflow.",
222
+ "CMF 在震荡市中频繁穿越 0 轴,容易产生假信号,最好结合趋势指标过滤": "In ranges CMF crosses 0 often; filter it with a trend indicator.",
223
+ "CMF 对成交量异常敏感,如果某天出现极端放量(如乌龙指),指标会瞬间失真": "CMF is very sensitive to volume; one extreme volume day (e.g. a fat-finger trade) distorts it.",
224
+ "CMF 是滞后指标,等它跌破 0 时股价可能已经跌了不少,不适合做短线逃顶": "CMF lags; by the time it drops below 0 price may have fallen a lot, so it is poor for short-term exits at tops.",
225
+ "CMF 汇总窗口长度。": "CMF summation window.",
226
+ "钱德动量摆动 CMO": "Chande Momentum Oscillator CMO",
227
+ "上涨幅度与下跌幅度之差占总幅度的比例,范围 −100~100。": "Sum of gains minus sum of losses as a share of total movement, range −100 to 100.",
228
+ "与 RSI 同类,二选一即可": "Same family as RSI; use one or the other.",
229
+ "能量指标 CR": "CR energy indicator",
230
+ "以昨日中间价为基准,比较多空力量。": "Compares buying and selling strength against the previous bar's mid price.",
231
+ "N 日内全部高于昨中价时分母为 0,值为空": "If every bar in N is above the previous mid price, the denominator is 0 and the value is empty.",
232
+ "统计窗口(根数)。": "Window (bars).",
233
+ "当日累计成交额": "Today's cumulative turnover",
234
+ "今日至今各根成交额之和(元)。": "Sum of traded value of today's bars so far (yuan).",
235
+ "当日任一根 K 线缺成交额(部分数据源不带,如美股)时为空,不给少算了的数。": "Empty if any bar today lacks traded value (some sources, e.g. US equities, do not provide it), rather than reporting an undercount.",
236
+ "换手率请用 DAY_TURNOVER_PCT(成交量 ÷ 流通股本),不需要成交额。": "For turnover rate use DAY_TURNOVER_PCT (volume ÷ free float), which does not need traded value.",
237
+ "需要上一个完整交易日才有值:序列的第一个交易日一律为空。": "Needs a previous complete trading day: the first trading day in the series is always empty.",
238
+ "今日振幅%": "Today's range %",
239
+ "(今日最高 − 今日最低) / 昨收 × 100。": "(today's high − today's low) / previous close × 100.",
240
+ "需要上一个完整交易日才有值:序列的第一个交易日(暖机截断、多半不完整)一律为空,暖机按 3 个交易日折算。": "Needs a previous complete trading day: the first trading day in the series (cut by warm-up, usually incomplete) is always empty; warm-up counts as 3 trading days.",
241
+ "价格与主序列同一复权口径;百分比一律以昨收为分母。": "Prices use the same adjustment as the primary series; percentages always use the previous close as denominator.",
242
+ "当日涨幅%": "Today's change %",
243
+ "现价相对昨收的涨跌幅(%)。": "Change of the current price versus the previous close (%).",
244
+ "与昨收/开盘/最高/最低/均价比较时,「现价」取当根 K 线的哪个价。默认收盘价;判「盘中触及过」用最低价(回落)或最高价(反弹)。": "Which price of the current bar is 'current price' when comparing with previous close/open/high/low/average. Defaults to close; to test 'touched intraday' use low (pullback) or high (rebound).",
245
+ "今日最高": "Today's high",
246
+ "今日至今最高价(含当根)。": "Highest price today so far (including the current bar).",
247
+ "含当根:close > DAY_HIGH 永远不成立,突破新高请用 DAY_HIGH_BEFORE。": "Includes the current bar: close > DAY_HIGH can never hold; for a new-high breakout use DAY_HIGH_BEFORE.",
248
+ "今日此前最高": "Today's prior high",
249
+ "今日在当根之前的最高价(不含当根);当日首根为空。": "Highest price today before the current bar (excluding it); empty on the first bar of the day.",
250
+ "今日最低": "Today's low",
251
+ "今日至今最低价(含当根)。": "Lowest price today so far (including the current bar).",
252
+ "含当根:close < DAY_LOW 永远不成立,跌破新低请用 DAY_LOW_BEFORE。": "Includes the current bar: close < DAY_LOW can never hold; for a new-low break use DAY_LOW_BEFORE.",
253
+ "今日此前最低": "Today's prior low",
254
+ "今日在当根之前的最低价(不含当根);当日首根为空。": "Lowest price today before the current bar (excluding it); empty on the first bar of the day.",
255
+ "当日累积主力净额 · L2": "Today's cumulative main-force net · L2",
256
+ "开盘以来「大单主动买额 − 大单主动卖额」的累积,单位元。": "Cumulative large-order aggressive buy value minus aggressive sell value since the open, in yuan.",
257
+ "「当日」实际是「自本系统订阅它以来」:盘中才加入的票不是全天累积": "'Today' really means 'since this system subscribed to it': symbols added intraday do not have a full-day total.",
258
+ "今日创新高次数": "New highs today",
259
+ "当日首根之后,high 严格高于此前当日最高的根数。": "Number of bars after the first bar of the day whose high is strictly above the day's prior high.",
260
+ "今开": "Today's open",
261
+ "当日首根 K 线的开盘价(A 股即集合竞价价)。": "Open price of today's first bar (the call-auction price for A-shares).",
262
+ "当日换手率%": "Today's turnover rate %",
263
+ "当日累计量 ÷ 流通股本 × 100。": "Today's cumulative volume ÷ free-float shares × 100.",
264
+ "依赖 md_stock_daily_basic 的流通股本;缺数据或标的认不出时为空。": "Depends on free-float shares from md_stock_daily_basic; empty when data is missing or the symbol is unrecognised.",
265
+ "需要上一个完整交易日才有值:序列的第一个交易日(暖机截断、多半不完整)一律为空。": "Needs a previous complete trading day: the first trading day in the series (cut by warm-up, usually incomplete) is always empty.",
266
+ "当日累计成交量": "Today's cumulative volume",
267
+ "今日至今各根成交量之和。": "Sum of volume of today's bars so far.",
268
+ "单位随主序列:分钟线是股,不是手。": "Units follow the primary series: minute bars are in shares, not lots.",
269
+ "量比": "Volume ratio",
270
+ "A 股量比:今日每分钟均量 ÷ 过去 N 日每分钟均量。": "A-share volume ratio: today's average volume per minute ÷ the average per minute over the past N days.",
271
+ "FULL_DAY 口径下开盘几分钟量比天然很大(竞价量 + 开盘放量),开盘段选股建议用 SAME_TIME。": "With FULL_DAY the ratio is naturally huge in the first minutes (auction volume plus the opening burst); for screening near the open use SAME_TIME.",
272
+ "基准取序列里此前多少个完整交易日(停牌日自然跳过);凑不齐为空。暖机按 N + 2 个交易日折算。": "Baseline uses this many previous complete trading days in the series (halted days are skipped); empty if not enough. Warm-up counts as N + 2 trading days.",
273
+ "FULL_DAY=行情软件量比;SAME_TIME=与过去 N 日同一时刻的累计量比。": "FULL_DAY = the volume ratio shown in quote software; SAME_TIME = ratio to cumulative volume at the same time of day over the past N days.",
274
+ "分时均价": "Intraday average price",
275
+ "当日分时均价线 ≈ Σ(典型价 × 量) / Σ量。": "Intraday average price line ≈ Σ(typical price × volume) / Σ volume.",
276
+ "是近似值:真实分时均价=成交额 / 成交量。": "An approximation: the true intraday average is traded value / volume.",
277
+ "DDE 大单净量 · L2": "DDE large-order net · L2",
278
+ "一根 bar 内「大单主动买额 - 大单主动卖额」,单位元。逐笔接入后已切真实计算。": "Large-order aggressive buy value minus aggressive sell value within one bar, in yuan. Computed from real tick-by-tick data.",
279
+ "只有进了逐笔订阅集(≤50 只)的标的才有值,其余恒 NaN(比较兜底 false,不会误触发)": "Only symbols in the tick-by-tick subscription set (≤ 50) have values; others are always NaN (comparisons fall back to false and never fire).",
280
+ "回测/历史区间在逐笔回放接上前恒 NaN——**不要拿回测结果当验证**": "Backtests and historical ranges are always NaN until tick-by-tick replay is connected — **do not treat backtest results as validation**.",
281
+ "单位是元不是手,不同市值股票的绝对值不可横向比较": "Units are yuan, not lots; absolute values are not comparable across market caps.",
282
+ "双指数移动平均": "Double exponential moving average",
283
+ "减少滞后性的双指数均线,比普通均线更灵敏。": "Double EMA with less lag, more responsive than an ordinary moving average.",
284
+ "在震荡行情中 DEMA 会频繁发出假信号,比普通均线更容易被「左右打脸」": "In ranges DEMA gives frequent false signals and whipsaws more than ordinary moving averages.",
285
+ "参数周期太小时(如小于 5),DEMA 几乎紧贴价格,失去平滑意义,反而增加噪音": "With a very small period (e.g. under 5) DEMA hugs price, loses its smoothing and adds noise.",
286
+ "双指数移动平均周期。用于该指标计算所回溯的 K 线根数(周期越大曲线越平滑、滞后越大)。": "DEMA period: number of bars looked back (larger is smoother and lags more).",
287
+ "十档不平衡 · L2·tick": "Depth imbalance (10 levels) · L2·tick",
288
+ "(Σ买量-Σ卖量)/(Σ买量+Σ卖量),取值 [-1, 1]。": "(Σ bid volume − Σ ask volume) / (Σ bid volume + Σ ask volume), in [−1, 1].",
289
+ "档位数取决于行情源能力,只有 L1 的源会退化成 1 档": "The number of levels depends on the data source; an L1-only source degrades to 1 level.",
290
+ "距跌停(百分点)": "Distance to limit-down (percentage points)",
291
+ "(现价 − 跌停价) / 昨收 × 100;0 = 在跌停。": "(current price − limit-down price) / previous close × 100; 0 = at limit-down.",
292
+ "不填=按标的规则(主板 / ST 10、创业板 / 科创板 20、北交所 30);填了就按它算、不看标的。标的认不出(序列名里没有代码)又没填时为空。": "Empty = use the symbol's rule (main board / ST 10, ChiNext / STAR 20, Beijing 30); if set, it is used regardless of symbol. Empty when the symbol is unrecognised (no code in the series name) and nothing is set.",
293
+ "距涨停 · L2·tick": "Distance to limit-up · L2·tick",
294
+ "(涨停价 − 最新价) / 涨停价 × 100,单位 %。已到/越过涨停时为 0。": "(limit-up price − last price) / limit-up price × 100, in %. 0 when at or beyond the limit.",
295
+ "夹到 0 不给负数:「还差 −0.1%」不是能用的判据,涨停之上也不存在成交。": "Clamped at 0, never negative: 'still −0.1% away' is not a usable condition, and no trades exist above the limit.",
296
+ "只有 tick 驱动的策略才有值;bar 驱动时为 NaN,DSL 比较兜底为 false(不会误触发,但也永远不成立)。": "Only tick-driven strategies get values; under bar driving it is NaN and DSL comparisons fall back to false (never fires, but never holds either).",
297
+ "标的需在 L2 行情覆盖范围内才有数据,否则该指标恒为空。": "The symbol must be within L2 market-data coverage, otherwise the indicator is always empty.",
298
+ "距涨停(百分点)": "Distance to limit-up (percentage points)",
299
+ "(涨停价 − 现价) / 昨收 × 100;0 = 在涨停。": "(limit-up price − current price) / previous close × 100; 0 = at limit-up.",
300
+ "相除 A ÷ B": "Divide A ÷ B",
301
+ "两个操作数逐根相除;除数为 0 时为空。": "Divides two operands bar by bar; empty when the divisor is 0.",
302
+ "除数为 0 时为空,不是无穷大。": "Empty when the divisor is 0, not infinity.",
303
+ "DMA 平行线差 · DIF": "DMA difference of moving averages · DIF",
304
+ "短期均线与长期均线之差。": "Short moving average minus long moving average.",
305
+ "均线类,滞后": "Moving-average family; lags.",
306
+ "唐奇安下轨": "Donchian lower band",
307
+ "唐奇安通道的下轨,识别市场最弱支撑位。": "Lower edge of the Donchian channel: the weakest support of the market.",
308
+ "不含当根:「收盘 < 下轨」就是收盘跌破了前 N 根的最低点;其它平台的唐奇安多含当根,对数时差一根": "Excludes the current bar: 'close < lower band' means the close broke below the lowest low of the previous N bars. Most other platforms include the current bar, so values differ by one bar when compared.",
309
+ "在单边下跌行情中,下轨会不断被跌破,你以为是支撑其实是「无底洞」,抄底容易抄在半山腰": "In a one-way decline the lower band keeps breaking; what looks like support is a bottomless pit, and bottom-fishing catches a falling knife.",
310
+ "周期设置太短(如 5 天),下轨波动剧烈,频繁被触碰,失去参考意义;周期太长(如 60 天),下轨反应迟钝,等信号出来价格已经跌了一大截": "A short period (e.g. 5 days) makes the band jumpy and touched constantly; a long one (e.g. 60 days) reacts so slowly that price has fallen far before it signals.",
311
+ "唐奇安下轨窗口:取当根之前的 N 根,不含当根。": "Donchian lower band window: the N bars before the current one, excluding it.",
312
+ "唐奇安中轨": "Donchian middle band",
313
+ "唐奇安通道的中轨线,本质是过去N天的价格中位数。": "Middle line of the Donchian channel: the midpoint of the past N bars' price range.",
314
+ "中轨只是价格中心,没有趋势方向判断能力,单独使用容易在震荡市被假突破骗": "The middle band is a price centre with no trend direction; alone it is fooled by false breakouts in ranges.",
315
+ "参数周期越大,中轨越平滑,但反应越迟钝,等它给出信号行情可能已经走完": "A longer period is smoother but slower; its signal may come after the move is over.",
316
+ "遇到极端行情(如连续涨停/跌停),中轨会严重滞后,完全失去参考意义": "In extreme moves (consecutive limit-up/down days) the middle band lags badly and loses meaning.",
317
+ "唐奇安中轨(高低均值)窗口:取当根之前的 N 根,不含当根。": "Donchian middle band (mean of high and low) window: the N bars before the current one, excluding it.",
318
+ "唐奇安上轨": "Donchian upper band",
319
+ "当根之前 N 根 K 线最高价的最高值(不含当根),构成通道上沿。": "Highest high of the N bars before the current one (excluding it): the upper edge of the channel.",
320
+ "不含当根:5 分钟策略里 period=20 就是「这根 5 分钟收盘突破了前 20 根 5 分钟的最高点」;其它平台的唐奇安多含当根,对数时差一根": "Excludes the current bar: in a 5-minute strategy, period=20 means 'this 5-minute bar closed above the highest high of the previous 20 five-minute bars'. Most other platforms include the current bar, so values differ by one bar when compared.",
321
+ "横盘震荡时,价格反复突破又跌回上轨,假突破极多,追高容易被套": "In ranges price breaks above and falls back repeatedly; many false breakouts, and chasing gets trapped.",
322
+ "N 值太小(比如 5)会频繁触发信号,N 值太大(比如 100)则信号稀少,错过行情": "A small N (e.g. 5) fires often; a large N (e.g. 100) rarely fires and misses moves.",
323
+ "唐奇安通道回溯根数:取当根之前的 N 根,不含当根。": "Donchian channel lookback: the N bars before the current one, excluding it.",
324
+ "指数移动平均": "Exponential moving average",
325
+ "对近期价格赋予更高权重的均线,比SMA更灵敏。": "Moving average that weights recent prices more; more responsive than SMA.",
326
+ "太灵敏是双刃剑——震荡市里EMA比SMA更容易被来回扫,产生更多假信号": "Responsiveness cuts both ways: in ranges EMA whipsaws more than SMA and gives more false signals.",
327
+ "参数设太小(如EMA5)几乎跟价格重合,失去平滑意义,噪音很大": "A very small period (e.g. EMA5) nearly follows price, loses its smoothing and is noisy.",
328
+ "指数移动平均周期。用于该指标计算所回溯的 K 线根数(周期越大曲线越平滑、滞后越大)。": "EMA period: number of bars looked back (larger is smoother and lags more).",
329
+ "简易波动 EMV": "Ease of Movement EMV",
330
+ "结合价格变化与成交量,衡量上涨下跌的难易程度。": "Combines price change and volume to measure how easily price moves up or down.",
331
+ "停牌 / 零成交量的根会得到空值": "Halted or zero-volume bars give empty values.",
332
+ "距今日最高(百分点)": "Distance from today's high (percentage points)",
333
+ "现涨幅 − 今日最高涨幅(百分点,≤0)。": "Current change − change at today's high (percentage points, ≤ 0).",
334
+ "距今日最低(百分点)": "Distance from today's low (percentage points)",
335
+ "现涨幅 − 今日最低涨幅(百分点,≥0)。": "Current change − change at today's low (percentage points, ≥ 0).",
336
+ "距开盘涨跌(百分点)": "Change since the open (percentage points)",
337
+ "现涨幅 − 开盘涨幅(百分点,分母昨收)。负数=开盘回落。": "Current change − change at the open (percentage points, previous close as denominator). Negative = fell back from the open.",
338
+ "偏离均价线(百分点)": "Deviation from the intraday average (percentage points)",
339
+ "(现价 − 分时均价) / 昨收 × 100。": "(current price − intraday average price) / previous close × 100.",
340
+ "距 x 分钟最高(百分点)": "Distance from the x-minute high (percentage points)",
341
+ "现涨幅 − 最近 x 分钟最高涨幅(百分点,≤0)。": "Current change − highest change over the last x minutes (percentage points, ≤ 0).",
342
+ "按交易时间计的最近 x 分钟(不按根数);窗口不跨日,开盘后不足 x 分钟时起点取昨收。须为主周期分钟数的整数倍(5m 主周期只能取 5、10、15…)。": "The last x minutes of trading time (not a bar count); the window does not cross days, and when fewer than x minutes have passed since the open the start is the previous close. Must be a multiple of the primary timeframe in minutes (a 5m strategy can use 5, 10, 15 ...).",
343
+ "距 x 分钟最低(百分点)": "Distance from the x-minute low (percentage points)",
344
+ "现涨幅 − 最近 x 分钟最低涨幅(百分点,≥0)。": "Current change − lowest change over the last x minutes (percentage points, ≥ 0).",
345
+ "基本面/Barra 因子": "Fundamental / Barra factor",
346
+ "把基本面字段当指标用:策略规则可以写「ROE > 15」「PE_TTM < 30」「Barra 质量 z > 1」这种条件。": "Use a fundamental field as an indicator: rules such as 'ROE > 15', 'PE_TTM < 30' or 'Barra quality z > 1'.",
347
+ "分钟主周期上看到的是前一交易日的值(当天盘后才落库,回测取当天就是前视)。": "On a minute primary timeframe you see the previous trading day's value (today's is stored after the close; using it in a backtest would be look-ahead).",
348
+ "财务数据按公告日生效(缺公告日按法定披露截止日):半年报 8 月才公告,7 月看到的仍是一季报。": "Financial data takes effect on its announcement date (or the statutory deadline if missing): half-year reports are announced in August, so in July you still see Q1.",
349
+ "基本面字段是横截面/季度数据,bar 内不变;不要做高频策略": "Fundamental fields are cross-sectional or quarterly and constant within a bar; do not build high-frequency strategies on them.",
350
+ "BARRA = 风格因子 z-score;FINA = 季度财务指标;DAILY_BASIC = 每日估值字段。": "BARRA = style-factor z-score; FINA = quarterly financial metrics; DAILY_BASIC = daily valuation fields.",
351
+ "随 source 变化:BARRA = SIZE/VALUE/LIQUIDITY/MOMENTUM/VOLATILITY/QUALITY;FINA = roe/netprofit_yoy/debt_to_assets/...;DAILY_BASIC = pe_ttm/pb/circ_mv/turnover_rate/...。": "Depends on source: BARRA = SIZE/VALUE/LIQUIDITY/MOMENTUM/VOLATILITY/QUALITY; FINA = roe/netprofit_yoy/debt_to_assets/...; DAILY_BASIC = pe_ttm/pb/circ_mv/turnover_rate/....",
352
+ "距最近缺口 %": "Distance to nearest gap %",
353
+ "最近一个没回补的缺口离现价有多远(%),负数在下方是支撑、正数在上方是压力。": "How far (in %) the most recent unfilled gap is from the current price; negative = below (support), positive = above (resistance).",
354
+ "只看最近的一个缺口,更早的缺口不算": "Only the most recent gap counts; earlier gaps are ignored.",
355
+ "分钟线之间的缺口没有意义,日内策略请用日线周期": "Gaps between minute bars are meaningless; intraday strategies should use the daily timeframe.",
356
+ "只找这么多根以内的缺口。": "Only look for gaps within this many bars.",
357
+ "开盘缺口%": "Opening gap %",
358
+ "今开相对昨收的涨跌幅(%),全天恒定。": "Today's open versus the previous close (%), constant all day.",
359
+ "缺口压力": "Gap resistance",
360
+ "回看内最近一个未回补的向下缺口的回补价(缺口前一根的最低价)。": "Fill price of the most recent unfilled down gap in the lookback (the low of the bar before the gap).",
361
+ "同缺口支撑,日内请用日线。": "Same as gap support: use daily bars for intraday strategies.",
362
+ "输出是价格(与主序列同一复权口径);算不出时为空,比较条件不成立。": "Outputs a price (same adjustment as the primary series); empty when it cannot be computed, and comparisons are false.",
363
+ "配合规则节点 TOUCH / BREAK / RECLAIM / RETEST 使用:{\"type\":\"BREAK\",\"level\":{\"ind\":\"名字\"}}。": "Use with rule nodes TOUCH / BREAK / RECLAIM / RETEST: {\"type\":\"BREAK\",\"level\":{\"ind\":\"name\"}}.",
364
+ "缺口支撑": "Gap support",
365
+ "回看内最近一个未回补的向上缺口的回补价(缺口前一根的最高价)。": "Fill price of the most recent unfilled up gap in the lookback (the high of the bar before the gap).",
366
+ "分钟线之间的缺口没有意义:日内策略请写 timeframe:\"1d\" 用日线缺口。": "Gaps between minute bars are meaningless: intraday strategies should set timeframe:\"1d\" to use daily gaps.",
367
+ "N 日最高": "N-bar high",
368
+ "输入序列(缺省收盘价)在最近 N 根里的最大值。": "Maximum of the input series (close by default) over the last N bars.",
369
+ "含当根,所以「突破前高」要和上一根的值比": "Includes the current bar, so a 'break above the prior high' must compare with the previous bar's value.",
370
+ "回看根数。": "Lookback (bars).",
371
+ "历史波动率(年化)": "Historical volatility (annualised)",
372
+ "近 N 根对数收益率的标准差,按周期年化成百分比。": "Standard deviation of log returns over the last N bars, annualised per timeframe, as a percentage.",
373
+ "与期权隐含波动率是两回事": "Not the same thing as option implied volatility.",
374
+ "赫尔均线 HMA": "Hull moving average HMA",
375
+ "比 EMA 更贴近价格、又更平滑的均线。": "A moving average that tracks price more closely than EMA yet is smoother.",
376
+ "转向快也意味着震荡市里来回穿越多": "Turning quickly also means more crossings in ranges.",
377
+ "一目 延迟线": "Ichimoku lagging span",
378
+ "策略使用26根前的收盘价,对比当前价格,避免绘图位移产生前视。": "The strategy uses the close from 26 bars ago against the current price, avoiding the look-ahead created by chart displacement.",
379
+ "延迟线本身不产生买卖信号,必须结合其他指标(如转折线、基准线)使用": "The lagging span produces no signal by itself; use it with other components (conversion line, base line).",
380
+ "在横盘震荡市中,延迟线会频繁上下穿越K线,产生假信号": "In sideways markets it crosses the bars often and gives false signals.",
381
+ "参数26是默认值,但不同股票或周期可能需要调整,死板用26可能错过信号": "26 is the default; other stocks or timeframes may need adjustment.",
382
+ "延迟线位移(根数)。": "Lagging span displacement (bars).",
383
+ "一目 基准线": "Ichimoku base line",
384
+ "一目均衡图中的中期趋势线,类似26日均线。": "Medium-term trend line of Ichimoku, similar to a 26-day average.",
385
+ "在震荡市中基准线会频繁被穿越,产生大量假信号,容易追涨杀跌": "In ranges the base line is crossed often; many false signals invite chasing.",
386
+ "基准线滞后性比普通26日均线更明显,因为用了最高最低价,对突发行情反应更慢": "It lags more than a 26-day average because it uses highs and lows and reacts slowly to sudden moves.",
387
+ "单独使用基准线效果很差,必须结合转换线、延迟线等一目均衡图其他组件": "Weak alone; combine with the conversion line, lagging span and other Ichimoku components.",
388
+ "一目均衡表基准线周期。": "Ichimoku base line period.",
389
+ "一目 先行带 A": "Ichimoku leading span A",
390
+ "用两条线画出未来支撑阻力区,一目均衡的核心。": "Draws the future support/resistance zone with two lines; the core of Ichimoku.",
391
+ "因为提前平移了 26 根 K 线,所以信号天然滞后——等价格跌破带 A 时,实际已经跌了不少": "Because it is shifted 26 bars ahead, its signals are inherently late: by the time price breaks span A it has already fallen a lot.",
392
+ "在横盘震荡市里,先行带 A 会频繁被上下穿越,产生大量假信号,新手容易反复止损": "In sideways markets span A is crossed both ways often; beginners get stopped repeatedly.",
393
+ "单独用先行带 A 意义不大,必须结合转换线、基准线和延迟线一起看,否则容易误判": "Span A alone means little; read it with the conversion line, base line and lagging span.",
394
+ "一目 先行带 B": "Ichimoku leading span B",
395
+ "一目均衡图领先线B,构成未来云层下沿。": "Ichimoku leading span B, the lower edge of the future cloud.",
396
+ "先行带B是滞后指标(取过去52天极值平均),在快速单边行情中云层会严重滞后,可能给出错误支撑/阻力位": "Span B lags (average of 52-day extremes); in fast one-way moves the cloud lags badly and may show wrong support/resistance.",
397
+ "横盘震荡时云层会变得很宽,价格频繁穿越云层,导致频繁假信号": "In ranges the cloud gets wide and price crosses it often, giving false signals.",
398
+ "先行带B画在26天后,意味着你看到的云层是「未来」的,但实际价格可能提前反应,不要死板等价格碰到云层才操作": "Span B is plotted 26 days ahead, so the cloud you see is 'the future', but price may react early; do not wait rigidly for price to touch the cloud.",
399
+ "一目 转换线": "Ichimoku conversion line",
400
+ "一目均衡图中的短期趋势线,类似9日均线但更灵敏。": "Short-term trend line of Ichimoku, like a 9-day average but more responsive.",
401
+ "在震荡行情中,转换线会频繁上下穿越,导致连续亏损,就像钝刀割肉": "In ranges it crosses up and down often, causing a string of small losses.",
402
+ "转换线只看9根K线,对单根异常K线(如涨停/跌停)反应过度,容易给出假信号": "It looks at only 9 bars and over-reacts to single abnormal bars (e.g. limit-up/limit-down), giving false signals.",
403
+ "单独用转换线做交易胜率很低,必须结合基准线、云层等其它部分一起看": "Low hit rate alone; read it with the base line and the cloud.",
404
+ "一目均衡表转换线(短周期高低均)。": "Ichimoku conversion line (mean of short-period high and low).",
405
+ "大盘距均线 %": "Index distance from MA %",
406
+ "大盘(默认上证指数)离它的 N 日均线有多远,正数表示在均线上方。": "How far the market index (Shanghai Composite by default) is from its N-day average; positive means above it.",
407
+ "均线有滞后:急跌开始的头几天指数可能还在均线上方": "The average lags: in the first days of a sharp drop the index may still be above it.",
408
+ "只管开仓,不会替你平掉已有持仓;要跟大盘出场,另在出场条件里加「< 0」": "Only gates entries and never closes existing positions; to exit with the market, add '< 0' to the exit condition.",
409
+ "指数日线每天收盘后同步,盘后才有当天值": "Index daily bars are synced after each close; today's value exists only after the close.",
410
+ "看哪个指数;默认上证指数。": "Which index; Shanghai Composite by default.",
411
+ "指数的 N 日均线。": "N-day moving average of the index.",
412
+ "涨停封板稳定度": "Limit-up seal stability",
413
+ "衡量涨停后封板有多「稳」,区分一字板、炸板反复和从未触板。": "How firmly a limit-up board holds, separating one-price boards, repeated breaks and never-touched.",
414
+ "limitPct 必须匹配板块:主板 / ST 10、创业板 / 科创板 20、北交所 30;设错会导致全程为 0": "limitPct must match the board: main board / ST 10, ChiNext / STAR 20, Beijing 30; a wrong value keeps it at 0 throughout.",
415
+ "需要上一个完整交易日取昨收:序列的第一个交易日为空(2026-09-23 前用窗口首根 open 近似昨收,高开票恒为 0,已修)": "Needs a previous complete trading day for the previous close: the first trading day in the series is empty (before 2026-09-23 the window's first open approximated the previous close and gap-up stocks were always 0; fixed).",
416
+ "从未触板的股票恒为 0,不能区分「弱势」与「还没启动」——需 Layer 1 先筛涨停池": "Stocks that never touched the limit are always 0, so 'weak' and 'not started yet' look the same; screen a limit-up pool first.",
417
+ "通常 1m × 240 ≈ 当日全天。": "Usually 1m × 240 ≈ the whole trading day.",
418
+ "主板 / ST 10、创业板/科创板 20、北交所 30。": "Main board / ST 10, ChiNext / STAR 20, Beijing 30.",
419
+ "是否封板 · L2·tick": "Sealed at limit-up · L2·tick",
420
+ "当前这一帧是否封住(1=封住,0=没封)。": "Whether the current frame is sealed at the limit (1 = sealed, 0 = not).",
421
+ "回测/历史区间没有盘口上下文,恒 NaN——不要拿回测结果当验证": "Backtests and historical ranges have no order-book context and are always NaN — do not treat backtest results as validation.",
422
+ "考夫曼自适应均线 KAMA": "Kaufman adaptive moving average KAMA",
423
+ "趋势明确时跟得紧、震荡时变钝的自适应均线。": "Adaptive average that follows closely in clear trends and slows down in ranges.",
424
+ "参数多,默认 10/2/30 即可": "Many parameters; the default 10/2/30 is fine.",
425
+ "效率周期": "Efficiency period",
426
+ "快线": "Fast",
427
+ "慢线": "Slow",
428
+ "KDJ · D": "KDJ · D",
429
+ "KDJ 的 D 线:K 的再平滑,比 K 慢,用来和 K 比交叉。": "KDJ D line: K smoothed again, slower than K, used for K/D crossovers.",
430
+ "单边趋势里 K、D 会长时间钝化在 80 以上或 20 以下,超买超卖信号失效": "In one-way trends K and D can stay above 80 or below 20 for long, and overbought/oversold signals fail.",
431
+ "震荡市金叉死叉很多,建议配合趋势过滤(如价格在 MA20 上方才做金叉)": "Ranges produce many crossovers; add a trend filter (e.g. only take golden crosses above MA20).",
432
+ "一字板 / 停牌补的平价 K 线最高 = 最低,RSV 无定义,这一根 K 沿用上一根": "On one-price limit bars or flat bars filled during halts, high = low and RSV is undefined; K carries over from the previous bar.",
433
+ "最近 n 根的最高价、最低价,用来算 RSV(收盘在区间中的位置)。": "Highest high and lowest low of the last n bars, used to compute RSV (where the close sits in the range).",
434
+ "K = RSV 的 m1 日平滑(SMA(RSV, m1, 1))。": "K = RSV smoothed over m1 days (SMA(RSV, m1, 1)).",
435
+ "D = K 的 m2 日平滑(SMA(K, m2, 1))。": "D = K smoothed over m2 days (SMA(K, m2, 1)).",
436
+ "KDJ · J": "KDJ · J",
437
+ "KDJ 的 J 线 = 3K − 2D,最灵敏,可以超出 0~100。": "KDJ J line = 3K − 2D, the most sensitive; can go beyond 0–100.",
438
+ "KDJ · K": "KDJ · K",
439
+ "KDJ 的 K 线:收盘价在近期高低区间中的位置(平滑后)。": "KDJ K line: where the close sits in the recent high-low range (smoothed).",
440
+ "肯特纳下轨": "Keltner lower band",
441
+ "基于ATR的通道下轨,识别超卖和支撑。": "ATR-based lower channel band, for oversold conditions and support.",
442
+ "单边下跌趋势中,价格会贴着下轨一路向下,抄底会被套": "In a one-way decline price rides the lower band down; bottom-fishing gets trapped.",
443
+ "参数敏感:ATR倍数太小会频繁触发假信号,太大则失去参考意义": "Parameter-sensitive: a small ATR multiplier triggers false signals often, a large one makes the band meaningless.",
444
+ "横盘震荡时,下轨可能被反复穿越,产生无效信号": "In ranges the lower band may be crossed repeatedly with no useful signal.",
445
+ "中轨 EMA 的周期(根数)。": "Middle-band EMA period (bars).",
446
+ "计算 ATR 的周期(根数)。": "ATR period (bars).",
447
+ "通道宽度为 ATR×倍数,数值越大通道越宽。": "Channel width is ATR × multiplier; larger values widen the channel.",
448
+ "肯特纳中轨": "Keltner middle band",
449
+ "基于EMA的通道中轨,配合上下轨判断趋势和波动。": "EMA-based middle line of the channel; read with the outer bands for trend and volatility.",
450
+ "中轨本身是滞后指标,EMA周期越大滞后越明显,刚拐头时趋势可能已走完": "The middle band lags, more so with longer EMA periods; when it turns, the trend may be over.",
451
+ "在横盘震荡市中,中轨会被反复穿越,产生大量假信号": "In sideways markets it is crossed repeatedly and gives many false signals.",
452
+ "单独用中轨意义不大,必须结合上下轨或成交量使用": "The middle band alone means little; use it with the outer bands or volume.",
453
+ "肯特纳上轨": "Keltner upper band",
454
+ "基于EMA和ATR的波动通道上轨,用于识别超买和突破。": "Upper band of an EMA/ATR volatility channel, for overbought conditions and breakouts.",
455
+ "在单边暴涨行情中,价格会一直贴着上轨走,过早卖出容易踏空": "In a runaway rally price rides the upper band; selling early misses the move.",
456
+ "ATR参数太小或倍数太大时,上轨离价格太远,失去参考意义": "With a small ATR period or a large multiplier the band is too far from price to be useful.",
457
+ "滞后器 LAG": "Lag LAG",
458
+ "取任意指标 N 根 K 线之前的值,是构造量价背离、MACD 背离等复合判断的基础工具。": "Value of any indicator N bars ago; the building block for price-volume or MACD divergences and other composite tests.",
459
+ "LAG 本身不产生信号,必须与比较运算(GT/LT)和其他指标结合才有意义": "LAG produces no signal itself; it is meaningful only with comparisons (GT/LT) and other indicators.",
460
+ "N 值越大,等待确认时间越长,信号滞后越严重": "Larger N means longer confirmation and more delay.",
461
+ "在 K 线数不足(< N + 指标预热期)时返回 NaN,系统自动视为条件不满足": "Returns NaN when there are not enough bars (< N + the indicator's warm-up); the condition is then treated as false.",
462
+ "取 source 指标 N 根 K 线之前的值。N=1 即取上一根 K 线的值。": "Value of the source indicator N bars ago; N = 1 is the previous bar.",
463
+ "大单占比(盘中) · L2": "Large-order share (intraday) · L2",
464
+ "一根 bar 内 大单成交额/全部成交额。需逐笔成交。注意不是日频因子 SUPER_LARGE_RATIO。": "Large-order traded value / total traded value within one bar. Needs tick-by-tick trades. Not the daily factor SUPER_LARGE_RATIO.",
465
+ "大单金额线是全局固定值,对不同市值的股票严苛程度并不一致": "The large-order amount threshold is a global constant, so it is stricter for some market caps than others.",
466
+ "阈值尚未标定,示例数字仅供说明": "Thresholds are not calibrated yet; example numbers are illustrative only.",
467
+ "跌停价": "Limit-down price",
468
+ "昨收 × (1 − 涨跌幅),按最小价位取整。": "Previous close × (1 − limit), rounded to the tick size.",
469
+ "连板": "Consecutive limit-ups",
470
+ "判定一段时间内是否出现过连板(连续涨停),识别强势股和连板妖股。": "Whether a run of consecutive limit-up days occurred in a period: identifies strong stocks and limit-up streak leaders.",
471
+ "涨停板次日高开低走是常见坑,只看连板容易追高被套": "Opening high and fading the day after a limit-up is a common trap; chasing on streaks alone gets trapped.",
472
+ "一字板买不进,等开板时往往已经是高位,接盘风险极大": "One-price limit boards cannot be bought; by the time the board opens price is usually high and the risk of being the bag holder is large.",
473
+ "市场情绪退潮期,连板股可能补跌更狠,别盲目迷信": "When market sentiment ebbs, streak stocks can fall harder than others; do not trust streaks blindly.",
474
+ "按上海时区 trade_date 对齐的日线回看窗口;数据以 md_bars_1d 为主,近期缺口可由 1m 按 trade_date 回填。": "Daily lookback window aligned to trade_date in Shanghai time; data comes mainly from md_bars_1d, with recent gaps backfilled from 1m bars by trade_date.",
475
+ "要匹配的连续涨停根数,例如 3 表示 3 连板。": "Number of consecutive limit-up bars to match, e.g. 3 means a 3-day streak.",
476
+ "AT_LEAST:至少 N 连板,3 连板包含 4/5 连板;EXACT:恰好 N 连板。": "AT_LEAST: at least N in a row, so a 3-day match includes 4- and 5-day streaks; EXACT: exactly N.",
477
+ "ALLOW_BREAK_AFTER_STREAK:窗口内出现过即可,后面允许断板;REQUIRE_STREAK_TO_WINDOW_END:窗口末日仍处于连板。": "ALLOW_BREAK_AFTER_STREAK: occurring anywhere in the window is enough, breaks afterwards allowed; REQUIRE_STREAK_TO_WINDOW_END: still on a streak on the window's last day.",
478
+ "涨停幅度默认按标的板块自动判断(主板 10、创业板/科创板 20、北交所 30,涨停价 = 前收 ×(1+幅度) 四舍五入到分),池子里主板与创业板混着也不用改。只有「认不出标的」时才用这个值兜底——回测 / 出线 / 画布预览都已自动带上标的,正常不用填。": "The limit size is detected from the symbol's board by default (main board 10, ChiNext/STAR 20, Beijing 30; limit price = previous close × (1 + limit) rounded to the cent), so mixed pools need no change. This value is only a fallback when the symbol cannot be recognised — backtests, signals and canvas previews already pass the symbol, so normally leave it empty.",
479
+ "涨停价": "Limit-up price",
480
+ "昨收 × (1 + 涨跌幅),按最小价位取整。": "Previous close × (1 + limit), rounded to the tick size.",
481
+ "标的从序列名认,认不出(如部分预览/试跑场景)又没填 limitPct 时为空。": "The symbol is recognised from the series name; empty when it cannot be (e.g. some preview or dry-run cases) and limitPct is not set.",
482
+ "复权回测(默认前复权)里最近一次除权之前的日子,昨收是缩放过的,取整后可能与真实涨停价差 1 个最小价位。": "In adjusted backtests (forward-adjusted by default), days before the latest ex-rights date have a scaled previous close; after rounding it may differ from the real limit price by one tick.",
483
+ "线性趋势质量 R2": "Linear trend quality R²",
484
+ "衡量线性趋势的「靠谱程度」,值越高趋势越稳。": "How reliable a linear trend is; higher means steadier.",
485
+ "R2 只衡量线性关系,对「急涨急跌」的抛物线型趋势会给出低值,容易错过主升浪": "R² measures only linear fit; parabolic surges score low, so it can miss the main leg of a rally.",
486
+ "参数周期选得太短(如 5 天),R2 容易忽高忽低,产生大量假信号": "A short period (e.g. 5 days) makes R² jumpy and full of false signals.",
487
+ "R2 本身不指示方向,单独用会陷入「趋势很好但方向错了」的尴尬": "R² has no direction; alone it can say 'great trend' while the trend is down.",
488
+ "线性回归拟合优度,范围 0-1,越接近 1 趋势越线性。": "Goodness of fit of a linear regression, 0–1; closer to 1 means more linear.",
489
+ "线性回归斜率": "Linear regression slope",
490
+ "用线性回归衡量价格趋势的强度和方向,比均线更灵敏。": "Strength and direction of the price trend via linear regression; more responsive than a moving average.",
491
+ "在震荡行情中斜率会频繁正负切换,产生大量假信号,比均线更容易被「左右打脸」": "In ranges the slope flips sign often and whipsaws more than a moving average.",
492
+ "斜率对价格突变非常敏感,一根大阳线或大阴线会瞬间改变斜率,容易误导你追涨杀跌": "The slope is very sensitive to sudden moves; one big bar changes it at once and invites chasing.",
493
+ "不同周期参数下斜率数值差异很大,不能跨周期直接比较,必须固定参数看相对变化": "Slope values differ greatly across periods; do not compare across periods, watch relative change with fixed parameters.",
494
+ "输入序列在窗口内的最小二乘斜率,按均价归一为每根 K 线百分比。": "Least-squares slope of the input series over the window, normalised by the mean price to percent per bar.",
495
+ "下影承接力": "Lower-shadow support strength",
496
+ "量化「低位放量承接」的强度:量比 × 下影线/实体,捕捉多方在低位强力护盘的信号。": "Quantifies buying support at lows: volume ratio × lower shadow / body; captures buyers defending the price.",
497
+ "连续涨停/跌停板时,下影线可能极小甚至为零,承接力数值会失真": "During consecutive limit-up/limit-down boards the lower shadow is tiny or zero and the value is distorted.",
498
+ "大盘股和小盘股的承接力数值不可直接比较——流通盘大小影响量比基数": "Values are not comparable between large and small caps — free float affects the volume-ratio base.",
499
+ "只看承接力不看价格位置容易误判:高位放量长下影可能是出货而非承接": "Ignoring price location misleads: a long lower shadow on high volume at a high can be distribution, not support.",
500
+ "计算量比时使用的历史均量回望根数。5=短线,20=波段。": "Lookback (bars) of average volume for the volume ratio. 5 = short-term, 20 = swing.",
501
+ "N 日最低": "N-bar low",
502
+ "输入序列(缺省收盘价)在最近 N 根里的最小值。": "Minimum of the input series (close by default) over the last N bars.",
503
+ "含当根": "Includes the current bar.",
504
+ "MACD 快线(DIF)": "MACD line (DIF)",
505
+ "快慢两条 EMA 的差值,量化趋势动能与转折。": "Difference between a fast and a slow EMA; quantifies trend momentum and turns.",
506
+ "横盘市场会频繁金叉死叉,假信号成倍增加": "In sideways markets crossovers multiply and false signals double.",
507
+ "MACD 本质是滞后指标,趋势确认时往往已经走了一半": "MACD lags; when a trend is confirmed it is often half over.",
508
+ "0 轴附近的金叉死叉效果差,建议结合 0 轴位置过滤": "Crossovers near the zero line work poorly; filter by position relative to zero.",
509
+ "快线 EMA 周期;若与 slow 均省略则使用 Ta4j 默认 MACD。": "Fast EMA period; if both this and slow are omitted the Ta4j default MACD is used.",
510
+ "慢线 EMA 周期;须大于快线(运行时会自动保证 slow≥fast+1)。": "Slow EMA period; must exceed the fast one (the runtime enforces slow ≥ fast + 1).",
511
+ "MACD 柱(DIF − DEA)": "MACD histogram (DIF − DEA)",
512
+ "MACD 柱 = 快慢线差值再平滑,反映动能强弱和背离。": "MACD histogram = the difference of the fast and slow lines, smoothed again; shows momentum strength and divergence.",
513
+ "在震荡市里,柱子频繁翻红翻绿,信号密集且虚假,追涨杀跌会被反复打脸": "In ranges the histogram flips sign often with dense, false signals; chasing gets whipsawed.",
514
+ "背离信号在单边强趋势中可能连续出现多次「假背离」,价格继续原方向运行": "In strong one-way trends divergences can appear several times and fail while price keeps going.",
515
+ "柱子缩短不等于马上反转,只是动能减弱,可能横盘后再加速,过早反向操作会踏空": "A shrinking histogram is not an immediate reversal, only fading momentum; price may pause and accelerate again, so fading it early misses the move.",
516
+ "MACD 快线周期。": "MACD fast period.",
517
+ "MACD 慢线周期(须大于快线)。": "MACD slow period (must exceed the fast period).",
518
+ "用于计算柱(MACD−信号线)的周期。": "Period used for the histogram (MACD − signal line).",
519
+ "MACD 慢线(DEA)": "MACD signal line (DEA)",
520
+ "MACD 的慢线,用于确认趋势和发出买卖信号。": "MACD's slow line, used to confirm trends and generate signals.",
521
+ "震荡市中金叉死叉频繁出现,胜率极低,容易反复被割": "In ranges crossovers are frequent with a very low hit rate.",
522
+ "信号线滞后于快线,等金叉出现时行情可能已经走了一大半": "The signal line lags the MACD line; by the golden cross much of the move may be gone.",
523
+ "单独看信号线容易误判,必须结合快线位置和零轴判断趋势强弱": "Reading the signal line alone misleads; use the MACD line's position and the zero line to judge trend strength.",
524
+ "对 MACD 线再取 EMA 的周期(信号线)。": "EMA period applied to the MACD line (signal line).",
525
+ "取大 max(A, B)": "Maximum max(A, B)",
526
+ "两个序列逐根取较大者。": "Bar-by-bar larger of two series.",
527
+ "是两个序列逐根比较,不是 N 根内最高——那是 HIGHEST。": "Compares two series bar by bar; it is not the highest over N bars — that is HIGHEST.",
528
+ "均线斜率": "Moving-average slope",
529
+ "衡量均线倾斜程度,判断趋势强弱与转折。": "How steeply a moving average is tilted: trend strength and turns.",
530
+ "斜率本身波动大,容易频繁发出假信号,尤其在横盘震荡时上下乱窜": "The slope itself is volatile and gives frequent false signals, especially in ranges.",
531
+ "参数周期选太短(如 5 日均线+3 根斜率间隔)噪音极大,几乎没法用": "Very short settings (e.g. a 5-day MA with a 3-bar slope lag) are too noisy to use.",
532
+ "斜率只反映均线的变化速度,不反映价格位置,高位斜率回落可能是正常调整而非反转": "The slope reflects how fast the average changes, not where price is; a falling slope at a high may be a normal correction, not a reversal.",
533
+ "先计算输入序列的 SMA。": "First computes an SMA of the input series.",
534
+ "当前均线相对 N 根前均线的百分比变化。": "Percent change of the current average versus the average N bars ago.",
535
+ "中间价 (H+L)/2": "Median price (H+L)/2",
536
+ "(最高 + 最低)÷ 2,AO 等指标的输入。": "(high + low) ÷ 2; the input to AO and similar indicators.",
537
+ "资金流量指标 MFI": "Money Flow Index MFI",
538
+ "结合价格与成交量的超买超卖指标,类似成交量加权的 RSI。": "Overbought/oversold indicator combining price and volume, like a volume-weighted RSI.",
539
+ "在持续单边牛市中,MFI 可能长期在 80 以上钝化,过早卖出会踏空": "In a sustained bull run MFI can stay above 80 for long; selling early misses the move.",
540
+ "MFI 对成交量异常敏感,如果股票突然放量(比如庄家对倒),MFI 会失真": "MFI is very sensitive to volume; sudden volume (e.g. wash trades) distorts it.",
541
+ "背离信号在震荡市里准确率较高,但在强趋势中可能反复出现假背离": "Divergences work better in ranges; in strong trends they can fail repeatedly.",
542
+ "MFI 典型周期 14。用于该指标计算所回溯的 K 线根数(周期越大曲线越平滑、滞后越大)。": "Typical MFI period is 14: number of bars looked back (larger is smoother and lags more).",
543
+ "取小 min(A, B)": "Minimum min(A, B)",
544
+ "两个序列逐根取较小者。": "Bar-by-bar smaller of two series.",
545
+ "是两个序列逐根比较,不是 N 根内最低——那是 LOWEST。": "Compares two series bar by bar; it is not the lowest over N bars — that is LOWEST.",
546
+ "-DI": "-DI",
547
+ "衡量下跌动能的强度,与+DI配合判断趋势方向。": "Strength of downward movement; read with +DI for trend direction.",
548
+ "在震荡市中-DI和+DI频繁交叉,会产生大量假信号,容易追涨杀跌": "In ranges −DI and +DI cross often and produce many false signals.",
549
+ "单独看-DI没有意义,必须和+DI、ADX一起用,否则容易误判趋势": "−DI alone means nothing; use it with +DI and ADX.",
550
+ "参数周期太短(如5以下)会导致-DI过于敏感,噪声多;太长(如30以上)则反应迟钝,错过行情": "A period under about 5 is over-sensitive and noisy; over about 30 reacts too slowly.",
551
+ "−DI 计算周期。": "−DI period.",
552
+ "距今日最高分钟数": "Minutes since today's high",
553
+ "最近一次触及今日最高价到现在过了几分钟。": "Minutes since price last touched today's high.",
554
+ "距今日最低分钟数": "Minutes since today's low",
555
+ "最近一次触及今日最低价到现在过了几分钟。": "Minutes since price last touched today's low.",
556
+ "开盘后分钟数": "Minutes since the open",
557
+ "开盘后第几分钟(交易时间,午休连续计时)。": "Minute of the session since the open (trading time; the lunch break is skipped).",
558
+ "分钟级阈值要求 1m 主周期;5m 主周期上只能取到 5 的倍数(0、5、10…)。": "Minute-level thresholds need a 1m primary timeframe; a 5m primary timeframe only yields multiples of 5 (0, 5, 10 ...).",
559
+ "分时放量倍数": "Intraday volume multiple",
560
+ "当根量 ÷ 过去 N 日同一根(同一「开盘后分钟」)的均量。": "Current bar's volume ÷ average volume of the same bar (same minute since the open) over the past N days.",
561
+ "动量 MTM": "Momentum MTM",
562
+ "当前收盘与 N 根前收盘之差,衡量涨跌速度。": "Current close minus the close N bars ago: speed of the move.",
563
+ "是价差,不同价位的股票不能直接比": "It is a price difference; not comparable across price levels.",
564
+ "相乘 A × B": "Multiply A × B",
565
+ "两个操作数逐根相乘。": "Multiplies two operands bar by bar.",
566
+ "MVWAP": "MVWAP",
567
+ "带成交量的移动平均,量价结合判断趋势强度。": "Moving average of VWAP: combines price and volume to judge trend strength.",
568
+ "成交量异常放大(如突然暴雷或利好)时 MVWAP 会剧烈跳动,容易给出假信号": "Abnormal volume (sudden bad or good news) makes MVWAP jump and gives false signals.",
569
+ "横盘震荡期 MVWAP 和价格反复缠绕,频繁买卖会亏手续费": "In ranges MVWAP and price intertwine; frequent trading loses to fees.",
570
+ "不同股票的成交量基数不同,MVWAP 的数值绝对值没有可比性,只能看相对位置": "Volume bases differ by stock, so absolute MVWAP values are not comparable; only relative position matters.",
571
+ "底层 VWAP 窗口。": "Underlying VWAP window.",
572
+ "对 VWAP 再平滑的周期。": "Smoothing period applied to VWAP.",
573
+ "能量潮 OBV": "On-Balance Volume OBV",
574
+ "通过量价关系判断资金流向,辅助验证趋势。": "Judges money flow from price-volume behaviour; helps confirm trends.",
575
+ "OBV 在极端行情(如连续涨停/跌停)时会失真,因为成交量可能被限制或情绪化放大": "OBV is distorted in extreme moves (consecutive limit-up/down) because volume is capped or emotionally inflated.",
576
+ "OBV 本身不给出买卖点,必须结合价格形态或均线使用,单独看容易误判": "OBV gives no entry or exit itself; combine it with price patterns or moving averages.",
577
+ "大盘股和庄股的 OBV 表现差异很大:庄股 OBV 可能被操纵,而大盘股更真实": "OBV behaves very differently for large caps and heavily controlled stocks: the latter's OBV can be manipulated.",
578
+ "主动买卖不平衡 OFI · L2": "Order flow imbalance OFI · L2",
579
+ "一根 bar 内 (主动买额-主动卖额)/(主动买额+主动卖额),取值 [-1, 1]。需逐笔成交。": "(aggressive buy value − aggressive sell value) / (aggressive buy value + aggressive sell value) within one bar, in [−1, 1]. Needs tick-by-tick trades.",
580
+ "深市方向是**推断**不是事实,样本少时噪声大": "For Shenzhen the trade direction is **inferred**, not reported; noisy with few samples.",
581
+ "回测/历史区间在逐笔回放接上前恒 NaN,不要拿回测结果当验证": "Backtests and historical ranges are always NaN until tick-by-tick replay is connected; do not treat backtest results as validation.",
582
+ "抛物线 SAR": "Parabolic SAR",
583
+ "通过反转点跟踪趋势,自动提示止损或转向。": "Follows a trend through reversal points and suggests stops or reversals.",
584
+ "横盘震荡时会被反复打脸,SAR 点频繁上下翻转,导致连续亏损": "In ranges the SAR flips back and forth, causing a string of losses.",
585
+ "加速因子固定,遇到急涨急跌行情可能跟不上,止损被打掉后行情继续": "The acceleration factor is fixed; in sharp moves it may lag, stopping you out before the move continues.",
586
+ "在跳空缺口或极端行情下,SAR 点可能瞬间远离价格,失去参考意义": "With gaps or extreme moves the SAR can jump far from price and lose meaning.",
587
+ "上升三角形": "Ascending triangle",
588
+ "上升三角形是看涨的持续整理形态,预示突破上涨。": "A bullish continuation pattern that anticipates an upside breakout.",
589
+ "2026-09-23 起默认口径收紧:只认新突破、突破幅度 ≥1.5%、向上突破要放量、形态要有足够幅度。旧口径下 W 底 / M 头约 25% 的股票日都报信号,基本是噪音;收紧后罕见,但实测事件后 10 日胜率仍在 45%–55%,形态本身预测力有限,建议与趋势 / 量能条件组合使用。": "Since 2026-09-23 the default is stricter: only fresh breakouts, a breakout of at least 1.5%, volume on upside breaks, and a pattern of sufficient size. Under the old defaults double bottoms/tops fired on about 25% of stock-days, mostly noise; now they are rare, but the 10-day hit rate after events is still 45%–55%. The pattern alone has limited predictive power; combine it with trend or volume conditions.",
590
+ "横盘震荡或下跌趋势中出现的类似形态很可能是假突破,容易追高被套": "Similar shapes in ranges or downtrends are likely false breakouts; chasing gets trapped.",
591
+ "突破后如果成交量没有放大,可能是假突破,需要等待确认": "A breakout without expanding volume may be false; wait for confirmation.",
592
+ "形态最短跨度:第一个贴线点到突破至少多少根。默认 20。": "Minimum pattern span: bars from the first touch point to the breakout. Default 20.",
593
+ "贴线的摆动点都在最近多少根以内。默认 80。": "All touching swing points must lie within this many recent bars. Default 80.",
594
+ "三角形收敛比例。": "Triangle convergence ratio.",
595
+ "向上突破确认幅度。默认日线 1.5%(填小数 0.015),留空=按周期自动:以日线为基准,按时间平方根换算(小时线约 1/2、15 分钟约 1/4、5 分钟约 1/7、周线约 2.2 倍);填了就按填的值。": "Upside breakout confirmation size. Default 1.5% on daily (enter 0.015). Empty = scale automatically by timeframe from the daily value by the square root of time (hourly ≈ 1/2, 15m ≈ 1/4, 5m ≈ 1/7, weekly ≈ 2.2×); if set, the given value is used.",
596
+ "选择用户语义里哪种突破成立;成立统一返回 +1。": "Which breakout in the user's terms counts; a match always returns +1.",
597
+ "每条边至少几个摆动点贴线(两点只能连一条线,第三个点才验证它)。默认 3。": "Minimum swing points touching each side (two points only define a line; the third verifies it). Default 3.",
598
+ "画线容差:摆动点离线这么近算贴线;从第一个点到突破前,任何 K 线越过边线超过这个比例,这条线作废。默认 1.5%(0.015)。": "Line tolerance: swing points this close to the line count as touching; if any bar from the first point to before the breakout crosses the line by more than this ratio, the line is discarded. Default 1.5% (0.015).",
599
+ "整段形态里边线的漂移不超过起始高度的这个比例就算「平」:两边都平=矩形,上平下升=上升三角,上降下平=下降三角,上降下升=对称三角。默认 0.2。": "A side is 'flat' if it drifts less than this share of the starting height over the pattern: both flat = rectangle, flat top and rising bottom = ascending triangle, falling top and flat bottom = descending triangle, falling top and rising bottom = symmetric triangle. Default 0.2.",
600
+ "BREAKOUT=突破当根;RETEST=突破后回踩确认(例:昨天跳空突破、今天回踩)。": "BREAKOUT = the breakout bar; RETEST = a retest after the breakout (e.g. gapped through yesterday, retested today).",
601
+ "回踩模式:突破发生在此前多少根以内;中间不能已经踩过或收回线内。": "Retest mode: the breakout must have happened within this many bars before; in between price must not already have retested or closed back inside.",
602
+ "回踩模式:最低价(向下破位时最高价)回到边线这么近算踩到。默认日线 2%(0.02),留空=按周期自动:以日线为基准,按时间平方根换算(小时线约 1/2、15 分钟约 1/4、5 分钟约 1/7、周线约 2.2 倍);填了就按填的值。": "Retest mode: the low (the high for a downside break) coming this close to the line counts as a retest. Default 2% on daily (0.02). Empty = scale automatically by timeframe from the daily value by the square root of time (hourly ≈ 1/2, 15m ≈ 1/4, 5m ≈ 1/7, weekly ≈ 2.2×); if set, the given value is used.",
603
+ "连续多少根闭合 K 线有效突破才返回信号。": "Number of consecutive closed bars with a valid breakout before a signal is returned.",
604
+ "CLOSE 使用收盘确认;HIGH_LOW 使用最高/最低价触发。": "CLOSE confirms on the close; HIGH_LOW triggers on the high/low.",
605
+ "ATR 突破过滤使用的历史周期。": "Lookback period for the ATR breakout filter.",
606
+ "设为 0 关闭;大于 0 时突破幅度需同时满足 ATR 倍数过滤。": "0 disables it; above 0 the breakout must also exceed this ATR multiple.",
607
+ "触点优先按局部 swing high/low 统计,跨度越大越严格;无拐点时回退到普通贴线计数。": "Touches are counted on local swing highs/lows first (larger spans are stricter); falls back to plain line touches when there are no turning points.",
608
+ "1=确认那根的前一根还没突破才算(突破后不再每天重复报);0=站在线外就一直报(旧行为)。": "1 = only when the bar before the confirming bar had not broken out yet (no repeated reports after a breakout); 0 = report every bar beyond the line (old behaviour).",
609
+ "向上突破那根的量 ≥ 前 N 根均量 × 此值才算;0=不看量。向下破位不要求放量。": "The upside breakout bar's volume must be ≥ the average of the previous N bars × this value; 0 = ignore volume. Downside breaks need no volume.",
610
+ "放量倍数与前多少根的均量比。": "Number of previous bars averaged for the volume multiple.",
611
+ "三角形起始宽度占价格的百分比下限;太窄的「三角形」只是窄幅波动。默认日线 6%,留空=按周期自动:以日线为基准,按时间平方根换算(小时线约 1/2、15 分钟约 1/4、5 分钟约 1/7、周线约 2.2 倍);填了就按填的值。": "Minimum starting width of the triangle as a percent of price; too narrow a 'triangle' is just a tight range. Default 6% on daily. Empty = scale automatically by timeframe from the daily value by the square root of time (hourly ≈ 1/2, 15m ≈ 1/4, 5m ≈ 1/7, weekly ≈ 2.2×); if set, the given value is used.",
612
+ "幅度上限(%),留空=不限。与「形态最小幅度」一起圈定范围,例如只要震荡幅度 5%~20% 的箱体。": "Maximum height (%); empty = no limit. With the minimum height it brackets the range, e.g. only boxes of 5%–20%.",
613
+ "下降三角形": "Descending triangle",
614
+ "下降三角形是一种看跌的持续整理形态。": "A bearish continuation pattern.",
615
+ "如果价格向上突破上边线,可能演变为反转形态,死板看跌会踏空": "If price breaks above the upper line the pattern can turn into a reversal; rigid bearishness misses the move.",
616
+ "形态未完成时(如只碰了一次下边线)就入场,成功率很低": "Entering before the pattern completes (e.g. only one touch of the lower line) has a low success rate.",
617
+ "向下突破确认幅度。默认日线 1.5%(填小数 0.015),留空=按周期自动:以日线为基准,按时间平方根换算(小时线约 1/2、15 分钟约 1/4、5 分钟约 1/7、周线约 2.2 倍);填了就按填的值。": "Downside breakout confirmation size. Default 1.5% on daily (enter 0.015). Empty = scale automatically by timeframe from the daily value by the square root of time (hourly ≈ 1/2, 15m ≈ 1/4, 5m ≈ 1/7, weekly ≈ 2.2×); if set, the given value is used.",
618
+ "下降旗形(空头旗)": "Bear flag",
619
+ "下降旗形是下跌中继形态,预示价格将继续下跌。": "A continuation pattern in a decline, anticipating further declines.",
620
+ "旗形形态在震荡市中容易误判,可能演变为反转形态(如双底),导致做空被套": "In ranges flags are easily misread and can become reversals (e.g. a double bottom), trapping shorts.",
621
+ "旗杆长度要求严格,如果前期下跌幅度不够(小于2%),形态可靠性大打折扣": "The pole requirement is strict; if the prior decline is too small (under 2%) reliability drops sharply.",
622
+ "开始识别需要的最少行情根数;回溯是最大搜索窗口。留空沿用原回溯预热口径,C 端普通形态 40、三重顶底 70。旗形仍须放得下旗杆、最短旗面与确认根数。": "Minimum bars needed before recognition starts; the lookback is the maximum search window. Empty keeps the original lookback warm-up (40 for ordinary patterns in the consumer app, 70 for triple tops/bottoms). A flag still needs room for the pole, the shortest flag and the confirmation bars.",
623
+ "大于 0 时旗面从旗杆最高点(下降旗:最低点)起算,长度在「旗面最少根数」到「旗面回溯」之间自动找(长的优先);0=旧口径,旗面固定为「旗面回溯」根。": "Above 0, the flag starts at the pole's high (low for a bear flag) and its length is searched between the minimum flag bars and the flag lookback (longer first); 0 = old behaviour, the flag is fixed at the flag lookback.",
624
+ "最大回溯搜索窗口;最少行情根数未填时也作为预热门槛。": "Maximum search window; also the warm-up threshold when the minimum bars is not set.",
625
+ "旗杆段长度。": "Pole length.",
626
+ "旗面段长度。": "Flag length.",
627
+ "旗杆最小波动。默认日线 15(%),留空=按周期自动:以日线为基准,按时间平方根换算(小时线约 1/2、15 分钟约 1/4、5 分钟约 1/7、周线约 2.2 倍);填了就按填的值。": "Minimum pole move. Default 15 (%) on daily. Empty = scale automatically by timeframe from the daily value by the square root of time (hourly ≈ 1/2, 15m ≈ 1/4, 5m ≈ 1/7, weekly ≈ 2.2×); if set, the given value is used.",
628
+ "旗面通道最大绝对斜率。": "Maximum absolute slope of the flag channel.",
629
+ "突破确认幅度。默认日线 1.5%(填小数 0.015),留空=按周期自动:以日线为基准,按时间平方根换算(小时线约 1/2、15 分钟约 1/4、5 分钟约 1/7、周线约 2.2 倍);填了就按填的值。": "Breakout confirmation size. Default 1.5% on daily (enter 0.015). Empty = scale automatically by timeframe from the daily value by the square root of time (hourly ≈ 1/2, 15m ≈ 1/4, 5m ≈ 1/7, weekly ≈ 2.2×); if set, the given value is used.",
630
+ "用户语义规则要求的突破方向;命中后统一输出 +1。": "Breakout direction required by the user's rule; a match always returns +1.",
631
+ "形态质量过滤阈值;设为 0 时弱形态也允许返回信号。": "Pattern-quality threshold; 0 lets weak patterns return signals too.",
632
+ "旗面上下轨各自期望的最少触点,用于质量评分。": "Expected minimum touches on each flag boundary, used for quality scoring.",
633
+ "触点和残差评分使用的贴线容差,占价格比例。": "Line tolerance for touch and residual scoring, as a share of price.",
634
+ "旗面相对旗杆的最大回撤比例;超过该值视为旗形失效。": "Maximum retracement of the flag relative to the pole; beyond it the flag is invalid.",
635
+ "连板黄金坑": "Limit-up streak golden pit",
636
+ "3 连板高潮 → 回撤挖坑、量能保温 → 站回 MA30 企稳再起。": "3-day limit-up climax → pullback forming a pit with volume kept warm → stabilises back above MA30 and rises again.",
637
+ "日线口径标定,分钟周期不适用": "Calibrated on daily bars; not for minute timeframes.",
638
+ "头肩底(颈线突破)": "Inverse head and shoulders (neckline breakout)",
639
+ "经典反转形态,突破颈线后看涨。": "Classic reversal pattern; bullish after the neckline breaks.",
640
+ "假突破频发:颈线突破后可能回踩甚至跌破,需要等待确认(如连续站上颈线)": "False breakouts are common: price may retest or fall back below the neckline; wait for confirmation (e.g. several closes above it).",
641
+ "形态主观性强:不同人画出的肩和颈线可能不同,容易陷入「看图说话」的陷阱": "Highly subjective: different people draw different shoulders and necklines; beware of seeing what you want.",
642
+ "从第一个顶(底 / 左肩)到突破至少多少根 K 线;0=不限。形态太短噪音大,C 端默认 80。": "Minimum bars from the first top (bottom / left shoulder) to the breakout; 0 = no limit. Short patterns are noisy; the consumer app defaults to 80.",
643
+ "从第一个顶(底 / 左肩)到突破至多多少根 K 线;0=不限。一年的大形态里面会套很多别的图形,C 端默认 200。小周期做短线可以调小。": "Maximum bars from the first top (bottom / left shoulder) to the breakout; 0 = no limit. A year-long pattern contains many other patterns; the consumer app defaults to 200. Lower it for short-term trading on small timeframes.",
644
+ "底部区域匹配容差。默认日线 5%(0.05),留空=按周期自动:以日线为基准,按时间平方根换算(小时线约 1/2、15 分钟约 1/4、5 分钟约 1/7、周线约 2.2 倍);填了就按填的值。": "Tolerance for matching the bottom area. Default 5% on daily (0.05). Empty = scale automatically by timeframe from the daily value by the square root of time (hourly ≈ 1/2, 15m ≈ 1/4, 5m ≈ 1/7, weekly ≈ 2.2×); if set, the given value is used.",
645
+ "两肩价格差上限(占价格的比例,如 0.05=5%)。留空=不看价格差,只按「高低差/形态高度」判对称(大形态两肩差 6%~7% 很常见,按价格卡会漏)。": "Maximum price difference between the shoulders (share of price, e.g. 0.05 = 5%). Empty = ignore the price difference and judge symmetry by height difference / pattern height (6%–7% shoulder differences are common in large patterns and a price cap would miss them).",
646
+ "ZigZag 转折幅度:价格从一个高点(低点)反向走出这么多,才把它认作一个肩。默认日线 5%(0.05),调大只认大波段、调小连小波段也算。留空=按周期自动:以日线为基准,按时间平方根换算(小时线约 1/2、15 分钟约 1/4、5 分钟约 1/7、周线约 2.2 倍);填了就按填的值。": "ZigZag reversal size: price must move this far back from a high (low) to count it as a shoulder. Default 5% on daily (0.05); larger keeps only big swings, smaller includes small ones. Empty = scale automatically by timeframe from the daily value by the square root of time (hourly ≈ 1/2, 15m ≈ 1/4, 5m ≈ 1/7, weekly ≈ 2.2×); if set, the given value is used.",
647
+ "两肩高低差不超过形态高度(肩到颈线的距离)的这个比例;默认 0.35。按比例判,大形态、小形态口径一致。": "The shoulders' height difference must not exceed this share of the pattern height (shoulder to neckline); default 0.35. Proportional, so large and small patterns are judged alike.",
648
+ "两肩之间至少隔多少根(头肩:左肩到头、头到右肩各至少一半);默认 8,挡住两三天内的小抖动。": "Minimum bars between the shoulders (head and shoulders: at least half each from left shoulder to head and head to right shoulder); default 8, filters out wiggles within two or three days.",
649
+ "颈线有效突破幅度。默认日线 1.5%(0.015),留空=按周期自动:以日线为基准,按时间平方根换算(小时线约 1/2、15 分钟约 1/4、5 分钟约 1/7、周线约 2.2 倍);填了就按填的值。": "Neckline breakout size. Default 1.5% on daily (0.015). Empty = scale automatically by timeframe from the daily value by the square root of time (hourly ≈ 1/2, 15m ≈ 1/4, 5m ≈ 1/7, weekly ≈ 2.2×); if set, the given value is used.",
650
+ "头肩底默认要求颈线向上突破;成立后统一输出 +1。": "Inverse head and shoulders requires an upward neckline break by default; a match always returns +1.",
651
+ "头部离颈线的距离占价格的百分比下限。默认日线 8%,留空=按周期自动:以日线为基准,按时间平方根换算(小时线约 1/2、15 分钟约 1/4、5 分钟约 1/7、周线约 2.2 倍);填了就按填的值。": "Minimum distance from the head to the neckline as a percent of price. Default 8% on daily. Empty = scale automatically by timeframe from the daily value by the square root of time (hourly ≈ 1/2, 15m ≈ 1/4, 5m ≈ 1/7, weekly ≈ 2.2×); if set, the given value is used.",
652
+ "头肩顶(颈线跌破)": "Head and shoulders top (neckline break)",
653
+ "经典顶部反转形态,颈线跌破确认趋势转空。": "Classic top-reversal pattern; a neckline break confirms the turn down.",
654
+ "在牛市中假跌破很多,可能刚止损就反弹,一定要等确认根数": "In bull markets false breakdowns are common and price may rebound right after you stop out; wait for the confirmation bars.",
655
+ "形态识别主观性强,参数调不好会频繁出现假形态,胜率可能不到40%": "Recognition is subjective; poorly tuned parameters produce many false patterns, with hit rates possibly under 40%.",
656
+ "头部峰值匹配容差。默认日线 5%(0.05),留空=按周期自动:以日线为基准,按时间平方根换算(小时线约 1/2、15 分钟约 1/4、5 分钟约 1/7、周线约 2.2 倍);填了就按填的值。": "Tolerance for matching the head peaks. Default 5% on daily (0.05). Empty = scale automatically by timeframe from the daily value by the square root of time (hourly ≈ 1/2, 15m ≈ 1/4, 5m ≈ 1/7, weekly ≈ 2.2×); if set, the given value is used.",
657
+ "颈线有效跌破幅度。默认日线 1.5%(0.015),留空=按周期自动:以日线为基准,按时间平方根换算(小时线约 1/2、15 分钟约 1/4、5 分钟约 1/7、周线约 2.2 倍);填了就按填的值。": "Neckline breakdown size. Default 1.5% on daily (0.015). Empty = scale automatically by timeframe from the daily value by the square root of time (hourly ≈ 1/2, 15m ≈ 1/4, 5m ≈ 1/7, weekly ≈ 2.2×); if set, the given value is used.",
658
+ "头肩顶默认要求颈线向下跌破;成立后统一输出 +1。": "Head and shoulders top requires a downward neckline break by default; a match always returns +1.",
659
+ "机构趋势追踪": "Institutional trend pullback",
660
+ "均线多头排列,买浅回调到 MA10 并守住的趋势票(偏大市值)。": "Moving averages in bullish order; buy shallow pullbacks to MA10 that hold, in trending (mostly larger-cap) stocks.",
661
+ "低位横盘突破": "Low-level consolidation breakout",
662
+ "低位窄幅整理、均线走平纠缠,放量站上均线簇并突破整理上沿。": "Narrow consolidation at a low level with flat, tangled averages; breaks above the MA cluster and the range top on volume.",
663
+ "M 顶(回落跌破)": "Double top (breakdown)",
664
+ "经典双顶形态,跌破颈线后确认顶部反转。": "Classic double top; a neckline break confirms the reversal.",
665
+ "在震荡市中,M顶可能演变为W底或其他整理形态,频繁假突破会亏钱": "In ranges a double top can turn into a double bottom or another consolidation; frequent false breaks lose money.",
666
+ "形态识别具有主观性,不同参数设置会导致完全不同的信号,容易过度优化": "Recognition is subjective; different parameters give completely different signals and invite over-fitting.",
667
+ "中间回落低点容差。默认日线 8%(0.08),留空=按周期自动:以日线为基准,按时间平方根换算(小时线约 1/2、15 分钟约 1/4、5 分钟约 1/7、周线约 2.2 倍);填了就按填的值。": "Tolerance for the middle pullback low. Default 8% on daily (0.08). Empty = scale automatically by timeframe from the daily value by the square root of time (hourly ≈ 1/2, 15m ≈ 1/4, 5m ≈ 1/7, weekly ≈ 2.2×); if set, the given value is used.",
668
+ "两顶价格差上限(占价格的比例,如 0.05=5%)。留空=不看价格差,只按「高低差/形态高度」判对称(大形态两顶差 6%~7% 很常见,按价格卡会漏)。": "Maximum price difference between the two tops (share of price, e.g. 0.05 = 5%). Empty = ignore the price difference and judge symmetry by height difference / pattern height (6%–7% differences are common in large patterns and a price cap would miss them).",
669
+ "ZigZag 转折幅度:价格从一个高点(低点)反向走出这么多,才把它认作一个顶。默认日线 5%(0.05),调大只认大波段、调小连小波段也算。留空=按周期自动:以日线为基准,按时间平方根换算(小时线约 1/2、15 分钟约 1/4、5 分钟约 1/7、周线约 2.2 倍);填了就按填的值。": "ZigZag reversal size: price must move this far back from a high (low) to count it as a top. Default 5% on daily (0.05); larger keeps only big swings, smaller includes small ones. Empty = scale automatically by timeframe from the daily value by the square root of time (hourly ≈ 1/2, 15m ≈ 1/4, 5m ≈ 1/7, weekly ≈ 2.2×); if set, the given value is used.",
670
+ "两顶高低差不超过形态高度(顶到颈线的距离)的这个比例;默认 0.35。按比例判,大形态、小形态口径一致。": "The tops' height difference must not exceed this share of the pattern height (top to neckline); default 0.35. Proportional, so large and small patterns are judged alike.",
671
+ "两顶之间至少隔多少根(头肩:左肩到头、头到右肩各至少一半);默认 8,挡住两三天内的小抖动。": "Minimum bars between the two tops (head and shoulders: at least half each from left shoulder to head and head to right shoulder); default 8, filters out wiggles within two or three days.",
672
+ "颈线跌破确认。默认日线 1.5%(填小数 0.015),留空=按周期自动:以日线为基准,按时间平方根换算(小时线约 1/2、15 分钟约 1/4、5 分钟约 1/7、周线约 2.2 倍);填了就按填的值。": "Neckline breakdown confirmation. Default 1.5% on daily (enter 0.015). Empty = scale automatically by timeframe from the daily value by the square root of time (hourly ≈ 1/2, 15m ≈ 1/4, 5m ≈ 1/7, weekly ≈ 2.2×); if set, the given value is used.",
673
+ "M 顶默认要求中间回落低点向下跌破;成立后统一输出 +1。": "Double top requires the middle pullback low to break downward by default; a match always returns +1.",
674
+ "老鸭头": "Old duck head",
675
+ "均线多头下放量上涨(鸭脖)→ 缩量回调不破 MA60(鸭头)→ 再次金叉放量突破鸭头顶。": "Rising on volume with bullish MA order (neck) → low-volume pullback that holds MA60 (head) → another golden cross breaking above the head on volume.",
676
+ "抛物线龙头": "Parabolic leader",
677
+ "老鸭头的最强变体:鸭头浅回调守 MA10、深度 ≤15%,强势主升的接力点。": "The strongest old-duck-head variant: the head's pullback holds MA10 and is at most 15% deep; a relay point in a strong main advance.",
678
+ "矩形震荡(区间突破)": "Rectangle (range breakout)",
679
+ "识别股价横盘震荡区间,捕捉突破后的趋势行情。": "Identifies sideways ranges and captures the trend after a breakout.",
680
+ "震荡区间可能被误判,尤其在趋势中途的短暂整理中,容易把回调当区间": "Ranges can be misidentified, especially brief pauses inside trends where a pullback looks like a range.",
681
+ "假突破频繁,尤其在市场波动率低时,突破后立刻回抽打脸": "False breakouts are frequent, especially in low volatility; price snaps back right after the break.",
682
+ "突破区间确认幅度。默认日线 1.5%(填小数 0.015),留空=按周期自动:以日线为基准,按时间平方根换算(小时线约 1/2、15 分钟约 1/4、5 分钟约 1/7、周线约 2.2 倍);填了就按填的值。": "Range breakout confirmation size. Default 1.5% on daily (enter 0.015). Empty = scale automatically by timeframe from the daily value by the square root of time (hourly ≈ 1/2, 15m ≈ 1/4, 5m ≈ 1/7, weekly ≈ 2.2×); if set, the given value is used.",
683
+ "箱体高度占价格的百分比下限。默认日线 4%,留空=按周期自动:以日线为基准,按时间平方根换算(小时线约 1/2、15 分钟约 1/4、5 分钟约 1/7、周线约 2.2 倍);填了就按填的值。": "Minimum box height as a percent of price. Default 4% on daily. Empty = scale automatically by timeframe from the daily value by the square root of time (hourly ≈ 1/2, 15m ≈ 1/4, 5m ≈ 1/7, weekly ≈ 2.2×); if set, the given value is used.",
684
+ "上升旗形(多头旗)": "Bull flag",
685
+ "上升旗形是看涨持续形态,像旗杆+旗面整理后突破。": "A bullish continuation pattern: a pole followed by a flag consolidation, then a breakout.",
686
+ "旗面整理可能演变成反转(如双顶),尤其当回撤超过旗杆的60%时": "The flag can turn into a reversal (e.g. a double top), especially when the pullback exceeds 60% of the pole.",
687
+ "参数敏感:不同股票或周期需要调整旗杆长度和通道斜率,否则容易误判": "Parameter-sensitive: pole length and channel slope need tuning per stock and timeframe.",
688
+ "旗杆(急涨/跌)段长度。": "Pole (sharp move) length.",
689
+ "旗面盘整段长度。": "Flag (consolidation) length.",
690
+ "旗杆最小涨跌幅(百分比)。默认日线 15(%),留空=按周期自动:以日线为基准,按时间平方根换算(小时线约 1/2、15 分钟约 1/4、5 分钟约 1/7、周线约 2.2 倍);填了就按填的值。": "Minimum pole move (percent). Default 15 (%) on daily. Empty = scale automatically by timeframe from the daily value by the square root of time (hourly ≈ 1/2, 15m ≈ 1/4, 5m ≈ 1/7, weekly ≈ 2.2×); if set, the given value is used.",
691
+ "台阶上升": "Stair-step advance",
692
+ "小台阶温和上涨,站上 MA60、浅回调守 MA20 的启动形态。": "Gentle rise in small steps, above MA60, with shallow pullbacks holding MA20: a launch pattern.",
693
+ "对称三角形": "Symmetric triangle",
694
+ "识别价格收敛形成的对称三角形,预示突破方向。": "Identifies a symmetric triangle formed by converging price, anticipating a breakout.",
695
+ "横盘震荡市容易误判,很多看似三角形其实是无趋势的矩形": "Easily misread in ranges; many apparent triangles are trendless rectangles.",
696
+ "突破方向不确定,即使形态完美也可能向下假突破,必须等确认": "The breakout direction is uncertain; even a perfect pattern can break down falsely, so wait for confirmation.",
697
+ "上下轨收敛程度阈值。": "Convergence threshold of the upper and lower lines.",
698
+ "有效突破幅度(占价比例)。默认日线 1.5%(填小数 0.015),留空=按周期自动:以日线为基准,按时间平方根换算(小时线约 1/2、15 分钟约 1/4、5 分钟约 1/7、周线约 2.2 倍);填了就按填的值。": "Valid breakout size (share of price). Default 1.5% on daily (enter 0.015). Empty = scale automatically by timeframe from the daily value by the square root of time (hourly ≈ 1/2, 15m ≈ 1/4, 5m ≈ 1/7, weekly ≈ 2.2×); if set, the given value is used.",
699
+ "三重底(回升突破)": "Triple bottom (breakout)",
700
+ "三次下探到相近位置都没破,随后突破颈线,比 W 底更扎实的见底形态。": "Three dips to a similar level that hold, then a neckline breakout: a sturdier bottom than a double bottom.",
701
+ "三次试探才成立,形成慢、少见;形态中途别提前当成立": "Needs three tests, so it forms slowly and rarely; do not treat it as complete midway.",
702
+ "中间反弹高点容差。默认日线 8%(0.08),留空=按周期自动:以日线为基准,按时间平方根换算(小时线约 1/2、15 分钟约 1/4、5 分钟约 1/7、周线约 2.2 倍);填了就按填的值。": "Tolerance for the middle rebound highs. Default 8% on daily (0.08). Empty = scale automatically by timeframe from the daily value by the square root of time (hourly ≈ 1/2, 15m ≈ 1/4, 5m ≈ 1/7, weekly ≈ 2.2×); if set, the given value is used.",
703
+ "两底价格差上限(占价格的比例,如 0.05=5%)。留空=不看价格差,只按「高低差/形态高度」判对称(大形态两底差 6%~7% 很常见,按价格卡会漏)。": "Maximum price difference between the bottoms (share of price, e.g. 0.05 = 5%). Empty = ignore the price difference and judge symmetry by height difference / pattern height (6%–7% differences are common in large patterns and a price cap would miss them).",
704
+ "ZigZag 转折幅度:价格从一个高点(低点)反向走出这么多,才把它认作一个底。默认日线 5%(0.05),调大只认大波段、调小连小波段也算。留空=按周期自动:以日线为基准,按时间平方根换算(小时线约 1/2、15 分钟约 1/4、5 分钟约 1/7、周线约 2.2 倍);填了就按填的值。": "ZigZag reversal size: price must move this far back from a high (low) to count it as a bottom. Default 5% on daily (0.05); larger keeps only big swings, smaller includes small ones. Empty = scale automatically by timeframe from the daily value by the square root of time (hourly ≈ 1/2, 15m ≈ 1/4, 5m ≈ 1/7, weekly ≈ 2.2×); if set, the given value is used.",
705
+ "两底高低差不超过形态高度(底到颈线的距离)的这个比例;默认 0.35。按比例判,大形态、小形态口径一致。": "The bottoms' height difference must not exceed this share of the pattern height (bottom to neckline); default 0.35. Proportional, so large and small patterns are judged alike.",
706
+ "两底之间至少隔多少根(头肩:左肩到头、头到右肩各至少一半);默认 8,挡住两三天内的小抖动。": "Minimum bars between the bottoms (head and shoulders: at least half each from left shoulder to head and head to right shoulder); default 8, filters out wiggles within two or three days.",
707
+ "颈线突破确认。默认日线 1.5%(填小数 0.015),留空=按周期自动:以日线为基准,按时间平方根换算(小时线约 1/2、15 分钟约 1/4、5 分钟约 1/7、周线约 2.2 倍);填了就按填的值。": "Neckline breakout confirmation. Default 1.5% on daily (enter 0.015). Empty = scale automatically by timeframe from the daily value by the square root of time (hourly ≈ 1/2, 15m ≈ 1/4, 5m ≈ 1/7, weekly ≈ 2.2×); if set, the given value is used.",
708
+ "W 底默认要求中间反弹高点向上突破;成立后统一输出 +1。": "Double bottom requires the middle rebound high to break upward by default; a match always returns +1.",
709
+ "三重顶(跌破颈线)": "Triple top (neckline break)",
710
+ "三次冲高到相近位置都没过去,随后跌破颈线,比 M 头更强的见顶形态。": "Three rallies to a similar level that fail, then a neckline break: a stronger top than a double top.",
711
+ "W 底(回升突破)": "Double bottom (breakout)",
712
+ "W 底形态识别,经典反转看涨信号。": "Double-bottom recognition, a classic bullish reversal signal.",
713
+ "横盘震荡市中容易形成假 W 底,突破后很快又跌回来,止损一定要设": "False double bottoms form easily in ranges and fall back soon after the breakout; always set a stop.",
714
+ "形态识别有主观性,不同参数(如回溯期、容差)可能得到不同结果,别盲目信任": "Recognition is subjective; different parameters (lookback, tolerance) give different results, so do not trust it blindly.",
715
+ "百分位排名": "Percentile rank",
716
+ "当前价格在过去 N 天里的相对位置,0-100 之间。": "Where the current price sits within the past N days, 0–100.",
717
+ "横盘震荡时百分位频繁在 0-100 之间来回,容易给出假信号,必须配合趋势指标": "In ranges the percentile swings across 0–100 and gives false signals; combine with a trend indicator.",
718
+ "百分位只反映过去 N 天的相对位置,不反映绝对价格高低,牛市里长期在 80 以上很正常,盲目做空会亏惨": "It reflects only the position within the past N days, not absolute price; staying above 80 for long is normal in a bull market, and shorting on it blindly is costly.",
719
+ "窗口期太短(如 5 天)时百分位波动剧烈,信号可靠性差;窗口太长(如 100 天)则反应迟钝,错过行情": "A short window (e.g. 5 days) is jumpy and unreliable; a long one (e.g. 100 days) reacts too slowly.",
720
+ "当前值在窗口内的百分位,范围 0-100。": "Percentile of the current value within the window, 0–100.",
721
+ "盘中实时回撤深度": "Real-time intraday drawdown depth",
722
+ "分钟级衡量「从近期高点回撤了多少」,用于盘中判断是否接近目标深度(如黄金坑到位)。": "Minute-level measure of how far price has pulled back from its recent high, for judging intraday whether a target depth (e.g. a golden pit) is reached.",
723
+ "必须跑在分钟级 K 线上;用日线会失真,且 lookbackBars 含义完全不同": "Must run on minute bars; on daily bars it is distorted and lookbackBars means something else entirely.",
724
+ "lookbackBars 窗口内的「峰值」会随新 K 线刷新,盘中指标值会跳动,不宜设过窄的阈值反复触发": "The 'peak' within lookbackBars refreshes with new bars, so the value jumps intraday; avoid narrow thresholds that fire repeatedly.",
725
+ "目标回撤设太小(如 5%)在震荡市里容易频繁达标,产生大量假信号": "A small target drawdown (e.g. 5%) is reached often in ranges and gives many false signals.",
726
+ "回看多少根 K 线找峰值 high;1m K 线建议 240(4 小时)。": "Bars to look back for the peak high; 240 recommended on 1m bars (4 hours).",
727
+ "回撤到该阈值视为到位,返回值=1.0。": "Reaching this drawdown counts as in place, returning 1.0.",
728
+ "枢轴点 · PP": "Pivot point · PP",
729
+ "昨日枢轴点:中枢": "Previous-bar pivot: central pivot",
730
+ "用的是上一根 K 线,日线上就是昨日": "Uses the previous bar; on daily bars that is yesterday.",
731
+ "枢轴点 · R1": "Pivot point · R1",
732
+ "昨日枢轴点:第一压力": "Previous-bar pivot: first resistance",
733
+ "枢轴点 · R2": "Pivot point · R2",
734
+ "昨日枢轴点:第二压力": "Previous-bar pivot: second resistance",
735
+ "枢轴点 · R3": "Pivot point · R3",
736
+ "昨日枢轴点:第三压力": "Previous-bar pivot: third resistance",
737
+ "枢轴点 · S1": "Pivot point · S1",
738
+ "昨日枢轴点:第一支撑": "Previous-bar pivot: first support",
739
+ "枢轴点 · S2": "Pivot point · S2",
740
+ "昨日枢轴点:第二支撑": "Previous-bar pivot: second support",
741
+ "枢轴点 · S3": "Pivot point · S3",
742
+ "昨日枢轴点:第三支撑": "Previous-bar pivot: third support",
743
+ "平台上沿": "Platform top",
744
+ "前 N 根(不含当根)振幅 ≤ maxRangePct% 时的最高价;振幅超了不算平台(为空)。": "Highest price of the previous N bars (excluding the current one) when their range is ≤ maxRangePct%; empty if the range is larger (not a platform).",
745
+ "不含当根的回看根数。": "Lookback bars, excluding the current bar.",
746
+ "前 N 根(最高 − 最低)/ 最低 × 100 不超过它才算平台。": "Counts as a platform only if (high − low) / low × 100 over the previous N bars does not exceed this.",
747
+ "平台下沿": "Platform bottom",
748
+ "前 N 根(不含当根)振幅 ≤ maxRangePct% 时的最低价。": "Lowest price of the previous N bars (excluding the current one) when their range is ≤ maxRangePct%.",
749
+ "同平台上沿。": "Same as platform top.",
750
+ "+DI": "+DI",
751
+ "衡量上涨方向动量的指标,常与-DI配合判断趋势。": "Strength of upward movement; usually read with −DI for trend.",
752
+ "在震荡行情中,+DI 和 -DI 会频繁交叉,产生大量假信号,容易追涨杀跌": "In ranges +DI and −DI cross often and produce many false signals.",
753
+ "+DI 本身不给出具体买卖点,必须结合 -DI 和 ADX 一起用,单独看容易误判": "+DI gives no entry or exit itself; use it with −DI and ADX.",
754
+ "参数周期太短(如 7)会导致指标过于敏感,噪声多;周期太长(如 30)则反应迟钝,错过行情": "A short period (e.g. 7) is over-sensitive and noisy; a long one (e.g. 30) reacts too slowly.",
755
+ "+DI 计算周期。": "+DI period.",
756
+ "昨收": "Previous close",
757
+ "上一交易日最后一根 K 线的收盘价。": "Close of the last bar of the previous trading day.",
758
+ "昨日最高": "Previous day's high",
759
+ "上一交易日最高价。": "High of the previous trading day.",
760
+ "昨日最低": "Previous day's low",
761
+ "上一交易日最低价。": "Low of the previous trading day.",
762
+ "价格字段": "Price field",
763
+ "直接使用K线的开盘、收盘、最高、最低价作为指标。": "Uses the bar's open, close, high or low directly as an indicator.",
764
+ "单独看收盘价容易忽略盘中波动,尤其日内交易者需要结合高低价": "The close alone ignores intraday swings; intraday traders should consider highs and lows too.",
765
+ "不同股票的价格绝对值差异大,不能直接比较价格高低": "Absolute prices differ widely across stocks and are not comparable.",
766
+ "价格序列字段。CLOSE 为默认收盘价,也可取 OPEN/HIGH/LOW。": "Price field. CLOSE by default; OPEN/HIGH/LOW also available.",
767
+ "价格上破前高": "Price breaks above prior high",
768
+ "价格突破近期高点,经典追涨信号。": "Price breaks above a recent high: the classic momentum-chasing signal.",
769
+ "横盘震荡时频繁假突破,一买就套,胜率很低": "In ranges false breakouts are frequent and buyers get trapped; low hit rate.",
770
+ "突破后如果量能不足,容易冲高回落,需要配合成交量验证": "Without enough volume a breakout often fades; confirm with volume.",
771
+ "周期选太小(如 5 日)信号太多,选太大(如 60 日)信号太少,容易错过行情": "A small period (e.g. 5 days) fires too often, a large one (e.g. 60 days) too rarely.",
772
+ "用于计算突破基准的历史高点窗口,不包含确认 K 线。": "Window of past highs used as the breakout reference, excluding the confirmation bars.",
773
+ "连续多少根闭合 K 线有效上破才返回 +1。": "Number of consecutive closed bars with a valid break above before returning +1.",
774
+ "CLOSE 使用收盘确认;HIGH_LOW 使用最高价触发。": "CLOSE confirms on the close; HIGH_LOW triggers on the high.",
775
+ "相对前高的最小突破比例;0.002 表示至少上破 0.2%。": "Minimum break above the prior high; 0.002 means at least 0.2%.",
776
+ "设为 0 关闭;大于 0 时突破距离需达到 ATR 的指定倍数。": "0 disables it; above 0 the breakout distance must reach this ATR multiple.",
777
+ "价格下破前低": "Price breaks below prior low",
778
+ "价格跌破过去N根K线的最低点,经典向下突破信号。": "Price falls below the lowest low of the past N bars: the classic downside break.",
779
+ "横盘震荡时,前低频繁被突破又收回,容易反复打脸": "In ranges the prior low is broken and recovered often, causing whipsaws.",
780
+ "突破后可能假突破,价格迅速拉回,需要配合确认根数或成交量过滤": "Breaks may be false and snap back; filter with confirmation bars or volume.",
781
+ "周期选太大,信号太少;周期选太小,噪音太多": "A large period gives too few signals, a small one too much noise.",
782
+ "用于计算跌破基准的历史低点窗口,不包含确认 K 线。": "Window of past lows used as the breakdown reference, excluding the confirmation bars.",
783
+ "连续多少根闭合 K 线有效下破才返回 +1。": "Number of consecutive closed bars with a valid break below before returning +1.",
784
+ "CLOSE 使用收盘确认;HIGH_LOW 使用最低价触发。": "CLOSE confirms on the close; HIGH_LOW triggers on the low.",
785
+ "相对前低的最小跌破比例;0.002 表示至少下破 0.2%。": "Minimum break below the prior low; 0.002 means at least 0.2%.",
786
+ "设为 0 关闭;大于 0 时跌破距离需达到 ATR 的指定倍数。": "0 disables it; above 0 the breakdown distance must reach this ATR multiple.",
787
+ "前 N 根最高(不含当根)": "Highest of previous N bars (excluding current)",
788
+ "前 N 根的最高价,不含当根。「突破前高」= BREAK(level=PRIOR_HIGH)。": "Highest price of the previous N bars, excluding the current bar. 'Break above the prior high' = BREAK(level=PRIOR_HIGH).",
789
+ "要「N 日前高」就给它写 timeframe:\"1d\"(已收完的日线),或直接用 HIGHEST(timeframe=1d)。": "For the 'N-day prior high', give it timeframe:\"1d\" (completed daily bars), or use HIGHEST(timeframe=1d).",
790
+ "前 N 根最低(不含当根)": "Lowest of previous N bars (excluding current)",
791
+ "前 N 根的最低价,不含当根。": "Lowest price of the previous N bars, excluding the current bar.",
792
+ "心理线 PSY": "Psychological line PSY",
793
+ "N 日内上涨天数占比,反映市场情绪冷热。": "Share of up days within N days: how hot or cold sentiment is.",
794
+ "只数涨跌天数、不看幅度,小涨多日与大涨一日同样计 1": "Counts up and down days only, ignoring size: many small gains and one big gain each count 1.",
795
+ "QStick 阴阳量": "QStick",
796
+ "近 N 根「收盘 − 开盘」的均值,看阳线多还是阴线多。": "Average of (close − open) over the last N bars: whether up bars or down bars dominate.",
797
+ "最近N秒 撤单率 · L2": "Cancellation rate, last N seconds · L2",
798
+ "最近 N 秒的撤单额 / 委托额。": "Cancelled amount / ordered amount over the last N seconds.",
799
+ "分母是委托额,撤单本身不进分母——否则撤得越狠比值反而越低。": "The denominator is order amount; cancellations are not in it — otherwise heavier cancelling would lower the ratio.",
800
+ "向前回看多少秒。缺省 30 秒是结构性缺省,不是标定过的值。上限由行情侧秒环长度夹住。": "Seconds to look back. The default 30 is structural, not calibrated. Capped by the market-data second ring length.",
801
+ "最近N秒 大单占比 · L2": "Large-order share, last N seconds · L2",
802
+ "最近 N 秒的大单成交额 / 全部成交额。": "Large-order traded value / total traded value over the last N seconds.",
803
+ "大单线本身没标定过,占比的绝对值意义有限,先看相对高低。": "The large-order threshold is not calibrated; the absolute share means little, compare relative levels first.",
804
+ "最近N秒 主力净额 · L2": "Main-force net, last N seconds · L2",
805
+ "最近 N 秒的大单主动买额 − 大单主动卖额,单位元。": "Large-order aggressive buy value − aggressive sell value over the last N seconds, in yuan.",
806
+ "金额量级随股票市值差很多,跨标的比较要先归一。": "Magnitudes vary greatly with market cap; normalise before comparing across symbols.",
807
+ "最近N秒 主动买卖不平衡 · L2": "Order flow imbalance, last N seconds · L2",
808
+ "最近 N 秒的主动买入额与主动卖出额之差占比,取值 [-1,1]。": "Aggressive buy value minus aggressive sell value as a share of their sum over the last N seconds, in [−1, 1].",
809
+ "窗口太短会被单笔大单主导,噪声很大;太长又退化成 OFI。标定时先看分布再定。": "Too short a window is dominated by single large trades and very noisy; too long degenerates into OFI. Look at the distribution before choosing.",
810
+ "变动率": "Rate of change",
811
+ "衡量价格变动速度,发现超买超卖和背离。": "Speed of price change; finds overbought/oversold conditions and divergences.",
812
+ "ROC 在横盘震荡时频繁穿越 0 轴,会产生大量假信号,让你反复买卖亏手续费": "In ranges ROC crosses 0 often, generating many false signals and fee-draining trades.",
813
+ "ROC 只看两个时间点的价格差,容易受单日异常波动影响,比如某天突然拉涨停,ROC 会瞬间飙升,但趋势未必持续": "ROC compares two points in time only and is distorted by single-day anomalies; a sudden limit-up spikes it without the trend necessarily continuing.",
814
+ "不同股票的波动率不同,统一的阈值(如 ±20)可能完全无效,需要根据历史数据调整": "Volatility differs by stock; a fixed threshold (e.g. ±20) may be useless, tune it on history.",
815
+ "ROC 计算窗口(根数)。": "ROC window (bars).",
816
+ "上方整数关口": "Round number above",
817
+ "上一根收盘之上最近的 step 整数倍(锚在上一根,当根突破时关口不跟着跳)。step=0 按价格量级自动(9.95 → 10 元关口)。": "Nearest multiple of step above the previous close (anchored on the previous bar, so it does not jump when the current bar breaks it). step = 0 picks a step from the price magnitude (9.95 → the 10-yuan level).",
818
+ "0=按价格量级自动(个位价 1 元、十位价 10 元……)。": "0 = automatic by price magnitude (1 yuan for single-digit prices, 10 for double-digit ...).",
819
+ "下方整数关口": "Round number below",
820
+ "上一根收盘之下最近的 step 整数倍。": "Nearest multiple of step below the previous close.",
821
+ "0=按价格量级自动。": "0 = automatic by price magnitude.",
822
+ "RSI": "RSI",
823
+ "通过最近 N 期涨跌幅比衡量超买超卖,0-100 区间的震荡指标。": "Oscillator (0–100) measuring overbought/oversold from the ratio of gains to losses over N periods.",
824
+ "单边趋势市场 RSI 会长期「钝化」(持续 > 80 或 < 20),不发信号或发错信号": "In one-way trends RSI stays pinned (above 80 or below 20) and gives no or wrong signals.",
825
+ "短周期 RSI(< 7)噪声极大,假信号频繁,建议至少 9 以上": "Short-period RSI (< 7) is very noisy; use at least 9.",
826
+ "单独用 RSI 抄底,在熊市会越买越套——必须配合趋势过滤": "Bottom-fishing on RSI alone keeps buying into a bear market; add a trend filter.",
827
+ "RSI 回溯周期;后端与 Ta4j 一致会将结果钳制为至少 2。": "RSI lookback; the backend clamps it to at least 2, consistent with Ta4j.",
828
+ "封单额 · L2·tick": "Seal amount · L2·tick",
829
+ "封单额(元)=买一价×买一量。★ 仅当买一价站上涨停价时才有值,否则 NaN。": "Seal amount (yuan) = bid-1 price × bid-1 volume. ★ Has a value only when bid-1 is at or above the limit-up price, otherwise NaN.",
830
+ "封单额的绝对值对不同市值的股票不可横向比较,通常要配 SEAL_RATIO 一起用": "Absolute seal amounts are not comparable across market caps; usually pair it with SEAL_RATIO.",
831
+ "封成比 · L2·tick": "Seal-to-turnover ratio · L2·tick",
832
+ "封单额/当日累计成交额,衡量封板厚度相对换手。": "Seal amount / today's cumulative traded value: seal thickness relative to turnover.",
833
+ "分母是近似值(1m bar 汇总),不是交易所口径的累计成交额": "The denominator is approximate (aggregated 1m bars), not the exchange's cumulative turnover.",
834
+ "封单趋势 · L2·tick": "Seal trend · L2·tick",
835
+ "封单额变化率(元/秒,最小二乘斜率)。★ 负值=撤单出逃的第一信号。": "Rate of change of the seal amount (yuan per second, least-squares slope). ★ Negative = the first sign of cancellations and flight.",
836
+ "滑窗帧数是结构性缺省(约 10 秒),尚未标定": "The sliding window length (about 10 seconds) is structural and not calibrated.",
837
+ "刚封板或刚回封时样本不足,返回 NaN": "Right after sealing or resealing there are too few samples and it returns NaN.",
838
+ "板块当日强势度": "Sector intraday strength",
839
+ "看个股所属概念板块「今天强不强」,用于盘中顺势,不做逆势孤狼。": "Whether the stock's concept sectors are strong today, to trade with the sector instead of alone against it.",
840
+ "分钟主周期上它是「昨日板块强度」,不是盘中实时强度(盘中板块数据源尚未接入)。": "On a minute primary timeframe it is yesterday's sector strength, not real-time (the intraday sector feed is not connected yet).",
841
+ "依赖同花顺概念数据同步;缺数据时为空,不是「板块弱」而是「没数据」": "Depends on synced Tonghuashun concept data; empty means 'no data', not 'weak sector'.",
842
+ "个股归属多个概念,取的是最强概念 z-score,可能掩盖其他概念拖累": "A stock belongs to several concepts; the strongest concept's z-score is used, which can hide drag from the others.",
843
+ "简单移动平均": "Simple moving average",
844
+ "最近 N 根收盘价的算术平均,技术分析里最经典的均线指标。": "Arithmetic mean of the last N closes; the most classic moving average.",
845
+ "横盘震荡市场会被反复打脸,胜率可能跌到 30% 以下": "Ranging markets whipsaw it repeatedly; hit rates can fall below 30%.",
846
+ "周期越大滞后越严重——刚发出金叉时趋势往往已经走了一半": "Longer periods lag more — by the golden cross the trend is often half over.",
847
+ "单独用 SMA 容易过拟合到回测期,实盘建议配合成交量或波动率过滤": "SMA alone easily over-fits the backtest period; add volume or volatility filters for live use.",
848
+ "简单移动平均周期。用于该指标计算所回溯的 K 线根数(周期越大曲线越平滑、滞后越大)。": "SMA period: number of bars looked back (larger is smoother and lags more).",
849
+ "买卖价差 bps · L2·tick": "Bid-ask spread bps · L2·tick",
850
+ "买卖价差相对 mid 的 bps。涨停封死时没有卖盘,本就为 NaN。": "Bid-ask spread relative to mid, in bps. NaN when sealed at limit-up because there is no ask.",
851
+ "涨停/跌停封死时恒 NaN": "Always NaN when sealed at limit-up or limit-down.",
852
+ "标准差": "Standard deviation",
853
+ "输入序列(缺省收盘价)最近 N 根的标准差,衡量波动大小。": "Standard deviation of the input series (close by default) over the last N bars: size of fluctuations.",
854
+ "是价格单位,不同价位的股票不能直接比;要比用 ATR_PCT 或 BOLL 带宽": "It is in price units and not comparable across price levels; use ATR_PCT or Bollinger bandwidth to compare.",
855
+ "随机 RSI": "Stochastic RSI",
856
+ "把 RSI 再做一次随机指标,超买超卖更灵敏。": "Applies the stochastic formula to RSI; more sensitive overbought/oversold readings.",
857
+ "在单边趋势中会频繁发出假信号——比如大牛市里一直超买,你卖早了就踏空": "Gives frequent false signals in one-way trends — e.g. permanently overbought in a bull market, so selling early misses the move.",
858
+ "参数太短(如 3,3)信号极多,胜率低;参数太长(如 21,21)又失去灵敏优势": "Very short settings (e.g. 3,3) fire constantly with a low hit rate; long ones (e.g. 21,21) lose the sensitivity advantage.",
859
+ "底层 RSI 的周期;实现中至少为 2。": "Underlying RSI period; at least 2 in the implementation.",
860
+ "对 RSI 序列做随机指标时的窗口。": "Window for applying the stochastic formula to the RSI series.",
861
+ "相减 A − B": "Subtract A − B",
862
+ "两个操作数逐根相减。": "Subtracts two operands bar by bar.",
863
+ "超级趋势 SuperTrend": "SuperTrend",
864
+ "按 ATR 画出的跟踪止损线,价格在线上方为多头、下方为空头。": "An ATR-based trailing stop line: price above it is bullish, below is bearish.",
865
+ "震荡市频繁翻转": "Flips often in ranges.",
866
+ "ATR 周期": "ATR period",
867
+ "ATR 倍数": "ATR multiplier",
868
+ "摆动高点": "Swing high",
869
+ "最近一个已确认的摆动高点:左右各 strength 根都比它低;右侧 strength 根走完才确认,没有前视。": "Most recent confirmed swing high: strength bars on each side are lower; confirmed only after the right-side strength bars complete, so there is no look-ahead.",
870
+ "确认有滞后:高点出现后要再走 strength 根才会被认出来。": "Confirmation lags: a high is recognised only strength bars after it occurs.",
871
+ "左右各多少根比它低才算高点;越大越少、越显著。": "Bars on each side that must be lower for a high; larger means fewer, more significant highs.",
872
+ "超过这么多根的摆动点作废。": "Swing points older than this many bars are discarded.",
873
+ "摆动低点": "Swing low",
874
+ "最近一个已确认的摆动低点。": "Most recent confirmed swing low.",
875
+ "左右各多少根比它高才算低点。": "Bars on each side that must be higher for a low.",
876
+ "三指数移动平均": "Triple exponential moving average",
877
+ "三重平滑均线,比EMA更快更平滑,减少滞后。": "Triple-smoothed average: faster and smoother than EMA, with less lag.",
878
+ "在剧烈震荡行情中,TEMA会频繁发出假突破信号,因为它的灵敏度太高了": "In violent ranges TEMA gives frequent false breakouts because it is so sensitive.",
879
+ "TEMA的公式复杂,很多软件计算有差异,不同平台看到的TEMA可能不一样,别盲目照搬别人的参数": "TEMA's formula is complex and software differs; values vary across platforms, so do not copy others' parameters blindly.",
880
+ "它本质还是滞后指标,只是滞后比EMA小一些,但遇到V型反转依然会慢半拍": "It still lags, just less than EMA; it is still late on V-shaped reversals.",
881
+ "三指数移动平均周期。用于该指标计算所回溯的 K 线根数(周期越大曲线越平滑、滞后越大)。": "TEMA period: number of bars looked back (larger is smoother and lags more).",
882
+ "趋势健康度": "Trend health",
883
+ "综合衡量趋势方向性与价格位置合理性:斜率项(均线上升速度)减去偏离惩罚项(价格偏离均线程度)。": "Combines trend direction with how reasonable price's position is: a slope term (how fast the average rises) minus a deviation penalty (how far price is from the average).",
884
+ "该指标参数较多(4个),调参复杂,建议先用默认值验证有效性再微调": "It has four parameters and is complex to tune; validate with defaults before fine-tuning.",
885
+ "A 股停牌复牌后第一天数据可能导致 ATR 异常,建议结合停牌过滤": "The first day after an A-share halt can produce an abnormal ATR; combine with a halt filter.",
886
+ "趋势健康度对快速反转行情反应慢(均线类指标天然滞后),不适合极短线": "Reacts slowly to fast reversals (moving-average based); not for very short-term trading.",
887
+ "用于计算均线斜率的快速均线,默认 MA5。": "Fast average used for the slope, MA5 by default.",
888
+ "偏离惩罚的基准均线:价格偏离该均线越远扣分越多,默认 MA20。": "Base average for the deviation penalty: the further price is from it the larger the penalty; MA20 by default.",
889
+ "斜率 = (快线当前值 − 快线 N 根前值) / (N × ATR),默认 5。": "Slope = (fast now − fast N bars ago) / (N × ATR); 5 by default.",
890
+ "用 ATR 归一化斜率,使不同价格股票的趋势分可横向比较,默认 14。": "ATR period that normalises the slope so scores are comparable across price levels; 14 by default.",
891
+ "刚刚大单买入 · L2·tick": "Large buy just now · L2·tick",
892
+ "本次求值是不是被「大单主动买入」这条跃迁事件触发的。命中时返回该笔金额(元),于是可以直接写 TRIGGER_BIG_BUY() > 5000000;未命中为 NaN。": "Whether this evaluation was triggered by a 'large aggressive buy' transition event. Returns the trade value (yuan) when it was, so you can write TRIGGER_BIG_BUY() > 5000000; NaN otherwise.",
893
+ "★ 一次性:只对触发它的那一次求值成立,不会留到下一次。": "★ One-shot: holds only for the evaluation it triggered, not the next one.",
894
+ "未命中返回 NaN 而不是 0——0 会和「金额为 0」撞车。": "Returns NaN, not 0, when not triggered — 0 would collide with 'amount is 0'.",
895
+ "只有逐笔跃迁驱动的求值才可能命中;bar / 盘口帧驱动时恒为 NaN。": "Only evaluations driven by tick-by-tick transitions can match; under bar or order-book-frame driving it is always NaN.",
896
+ "刚刚大单卖出 · L2·tick": "Large sell just now · L2·tick",
897
+ "本次求值是不是被「大单主动卖出」这条跃迁事件触发的。命中时返回该笔金额(元),于是可以直接写 TRIGGER_BIG_SELL() > 5000000;未命中为 NaN。": "Whether this evaluation was triggered by a 'large aggressive sell' transition event. Returns the trade value (yuan) when it was, so you can write TRIGGER_BIG_SELL() > 5000000; NaN otherwise.",
898
+ "刚刚炸板 · L2·tick": "Board just broke · L2·tick",
899
+ "本次求值是不是被「炸板跃迁(买一跌破涨停价)」这条跃迁事件触发的。命中时返回 1,写成 TRIGGER_BREAK() > 0;未命中为 NaN。": "Whether this evaluation was triggered by a board-break transition (bid-1 falls below the limit-up price). Returns 1 when it was; write TRIGGER_BREAK() > 0; NaN otherwise.",
900
+ "刚刚大额撤买 · L2·tick": "Large buy cancellation just now · L2·tick",
901
+ "本次求值是不是被「大额撤买单」这条跃迁事件触发的。命中时返回该笔金额(元),于是可以直接写 TRIGGER_CANCEL_BUY() > 5000000;未命中为 NaN。": "Whether this evaluation was triggered by a 'large buy order cancelled' transition event. Returns the amount (yuan) when it was, so you can write TRIGGER_CANCEL_BUY() > 5000000; NaN otherwise.",
902
+ "刚刚大额撤卖 · L2·tick": "Large sell cancellation just now · L2·tick",
903
+ "本次求值是不是被「大额撤卖单」这条跃迁事件触发的。命中时返回该笔金额(元),于是可以直接写 TRIGGER_CANCEL_SELL() > 5000000;未命中为 NaN。": "Whether this evaluation was triggered by a 'large sell order cancelled' transition event. Returns the amount (yuan) when it was, so you can write TRIGGER_CANCEL_SELL() > 5000000; NaN otherwise.",
904
+ "刚刚回封 · L2·tick": "Board just resealed · L2·tick",
905
+ "本次求值是不是被「回封跃迁(炸板后又封回去)」这条跃迁事件触发的。命中时返回 1,写成 TRIGGER_RESEAL() > 0;未命中为 NaN。": "Whether this evaluation was triggered by a reseal transition (sealed again after breaking). Returns 1 when it was; write TRIGGER_RESEAL() > 0; NaN otherwise.",
906
+ "刚刚封板 · L2·tick": "Board just sealed · L2·tick",
907
+ "本次求值是不是被「封板跃迁(首次封上)」这条跃迁事件触发的。命中时返回 1,写成 TRIGGER_SEAL() > 0;未命中为 NaN。": "Whether this evaluation was triggered by a seal transition (first time sealed). Returns 1 when it was; write TRIGGER_SEAL() > 0; NaN otherwise.",
908
+ "TRIX 三重指数平滑": "TRIX triple exponential smoothing",
909
+ "三次平滑后的变化率,过滤短期噪音看中长期趋势。": "Rate of change after triple smoothing; filters short-term noise to show the medium/long-term trend.",
910
+ "反应慢,适合中线": "Slow to react; suited to medium-term use.",
911
+ "TRIX · MATRIX": "TRIX · MATRIX",
912
+ "TRIX 的 m 日均线(信号线)。": "m-day average of TRIX (signal line).",
913
+ "均线": "Average",
914
+ "典型价 (H+L+C)/3": "Typical price (H+L+C)/3",
915
+ "(最高 + 最低 + 收盘)÷ 3,CCI、MFI 等指标的输入。": "(high + low + close) ÷ 3; the input to CCI, MFI and others.",
916
+ "涡旋指标 · −VI": "Vortex indicator · −VI",
917
+ "下跌方向的涡旋强度。": "Strength of downward vortex movement.",
918
+ "涡旋指标 · +VI": "Vortex indicator · +VI",
919
+ "上涨方向的涡旋强度。": "Strength of upward vortex movement.",
920
+ "震荡市交叉频繁": "Crosses frequently in ranges.",
921
+ "成交密集区": "Volume-concentration zone",
922
+ "前 N 根(含当根)按价格分箱累计成交量,量最大那一箱的中点价。": "Accumulates volume into price bins over the previous N bars (including the current one); the midpoint of the bin with the most volume.",
923
+ "按 K 线高低区间均摊成交量,是近似的筹码分布。": "Spreads each bar's volume evenly over its high-low range: an approximate volume profile.",
924
+ "统计多少根。": "Number of bars counted.",
925
+ "把回看区间的价格范围分成几档。": "Number of price bins for the lookback's price range.",
926
+ "倍量比": "Volume multiple",
927
+ "当日成交量与过去N日均量的比值,判断放量或缩量程度。": "Today's volume relative to the average of the past N days: how much volume expanded or contracted.",
928
+ "突然的利好消息会导致倍量比瞬间飙升,但可能是散户跟风而非主力,次日容易回落": "Sudden good news can spike it as retail piles in rather than large players; price often fades the next day.",
929
+ "次新股或刚复牌股票的历史均量参考意义不大,倍量比容易失真": "For recent IPOs or stocks just back from a halt the historical average means little and the multiple is distorted.",
930
+ "倍量比只反映相对放量程度,不区分主动买还是主动卖,需要结合价格方向判断": "It reflects relative volume only and does not distinguish aggressive buying from selling; combine with price direction.",
931
+ "当前 K 线成交量 / 前 N 根 K 线平均成交量。2.0 表示当前量达到此前均量的 2 倍。": "Current bar volume / average volume of the previous N bars. 2.0 means twice the prior average.",
932
+ "关键位承接量": "Support volume at key levels",
933
+ "对比「近期成交量」与「更早一段均量」,判断关键价位是否有放量承接。": "Compares recent volume with an earlier average to judge whether a key price level is absorbed on volume.",
934
+ "K 线根数不足时返回 0,不是「无承接」,而是数据不够——需保证 avgPeriod + recentBars 根历史": "Returns 0 when there are not enough bars — that means insufficient data, not 'no support'; ensure avgPeriod + recentBars bars of history.",
935
+ "开盘首段均量常被竞价/集中成交扭曲,1m 策略可考虑跳过前 5–10 根": "Average volume at the open is often distorted by the auction and concentrated trading; 1m strategies may skip the first 5–10 bars.",
936
+ "单一量比不能区分「主力承接」与「恐慌抛售」,需结合价格方向和其他 Layer 2 条件": "A single volume ratio cannot tell support buying from panic selling; combine with price direction and other conditions.",
937
+ "最近多少根 K 线作为承接段。": "Number of recent bars treated as the support segment.",
938
+ "之前 N 根 K 线的成交量均值作为基准。": "Average volume of the preceding N bars, used as the baseline.",
939
+ "缩量回踩": "Low-volume pullback",
940
+ "比较「回踩段」与「冲高段」成交量,识别健康缩量回调还是放量出货。": "Compares volume in the pullback segment with the push segment: a healthy low-volume pullback versus distribution on volume.",
941
+ "两段窗口顺序固定为「先 push 后 pullback」(时间轴上较早的是 push),参数设反会完全读错": "The segment order is fixed as push then pullback (push is earlier in time); swapping the parameters reads it completely wrong.",
942
+ "总 K 线数需 ≥ pushBars + pullbackBars,否则结果不可靠": "Total bars must be ≥ pushBars + pullbackBars, otherwise the result is unreliable.",
943
+ "一字涨停或无量涨停后,均量极易失真,需人工排除极端行情": "After one-price or no-volume limit-ups the averages are easily distorted; exclude extreme cases manually.",
944
+ "较近的一段,视为回落/回踩阶段,用于计算该段均量。": "The more recent segment, treated as the pullback; its average volume is computed.",
945
+ "较早的一段,视为上涨/冲高阶段,作为量能对照基准。": "The earlier segment, treated as the push; its volume is the baseline.",
946
+ "价量趋势 VPT": "Volume Price Trend VPT",
947
+ "按涨跌幅加权的累计成交量,看量价是否配合。": "Cumulative volume weighted by percent change: whether volume confirms price.",
948
+ "累计值,只看方向和背离,不看绝对数": "Cumulative: read direction and divergences, not absolute values.",
949
+ "成交量比率 VR": "Volume ratio VR",
950
+ "上涨日成交量与下跌日成交量之比。": "Volume on up days divided by volume on down days.",
951
+ "N 日全部上涨时分母为 0,值为空": "If every day in N is up the denominator is 0 and the value is empty.",
952
+ "VWAP": "VWAP",
953
+ "成交量加权平均价,机构和大户最常用的日内成本线。": "Volume-weighted average price, the intraday cost line institutions use most.",
954
+ "VWAP 是日内指标,收盘后重置,不能用于隔夜或跨日分析": "VWAP is intraday and resets after the close; not for overnight or multi-day analysis.",
955
+ "在成交量极度萎缩的股票上,VWAP 会失真,因为少量大单就能扭曲平均值": "On very thinly traded stocks VWAP is distorted because a few large trades skew the average.",
956
+ "VWAP 本身不预测方向,只反映当前成本,单独用容易追涨杀跌": "VWAP does not predict direction, it only shows current cost; alone it invites chasing.",
957
+ "VWAP 计算的锚定/窗口类参数(实现依 Ta4j)。": "Anchor/window parameter for VWAP (implementation follows Ta4j).",
958
+ "成交量加权移动平均": "Volume-weighted moving average",
959
+ "成交量加权的移动平均,比SMA更灵敏地反映真实价格。": "Moving average weighted by volume; reflects the traded price more responsively than SMA.",
960
+ "极端放量日会严重扭曲VWMA,比如某天突然放出天量,VWMA会被瞬间拉偏,之后几天才慢慢修正": "Extreme-volume days distort VWMA badly; one huge-volume day pulls it off and it takes days to recover.",
961
+ "在成交量持续萎缩的股票上,VWMA和SMA几乎没区别,白白增加计算复杂度": "On stocks with persistently shrinking volume VWMA is almost the same as SMA, adding complexity for nothing.",
962
+ "VWMA的滞后性比SMA更严重,因为大成交量往往出现在趋势末端,导致VWMA反应更慢": "VWMA can lag more than SMA because heavy volume often comes at the end of a trend.",
963
+ "成交量加权移动平均周期。用于该指标计算所回溯的 K 线根数(周期越大曲线越平滑、滞后越大)。": "VWMA period: number of bars looked back (larger is smoother and lags more).",
964
+ "加权收盘价 (H+L+2C)/4": "Weighted close (H+L+2C)/4",
965
+ "(最高 + 最低 + 2×收盘)÷ 4,比典型价更看重收盘。": "(high + low + 2 × close) ÷ 4; weights the close more than the typical price.",
966
+ "威廉指标": "Williams %R",
967
+ "衡量价格在近期高低点中的位置,超买超卖信号。": "Where price sits within its recent high-low range: overbought/oversold signals.",
968
+ "在单边暴涨或暴跌行情中,指标会长时间停留在超买/超卖区,此时按信号反向操作会被严重打脸": "In runaway rallies or crashes it stays overbought/oversold for long; trading against it is costly.",
969
+ "周期太短(如 5 天)信号频繁,假信号多;周期太长(如 30 天)信号稀少,容易错过行情": "A short period (e.g. 5 days) fires often with many false signals; a long one (e.g. 30 days) fires rarely and misses moves.",
970
+ "单独使用威廉指标胜率不高,最好配合均线或趋势指标过滤": "Low hit rate alone; filter with moving averages or trend indicators.",
971
+ "威廉 %R 回溯长度。": "Williams %R lookback.",
972
+ "x 分钟涨速%": "x-minute speed %",
973
+ "现涨幅 − x 分钟前的涨幅(百分点,分母昨收)。": "Current change − change x minutes ago (percentage points, previous close as denominator).",
974
+ "x 分钟最高涨幅%": "x-minute highest change %",
975
+ "最近 x 分钟内最高价对应的涨幅(%)。": "Change (%) at the highest price within the last x minutes.",
976
+ "x 分钟最低涨幅%": "x-minute lowest change %",
977
+ "最近 x 分钟内最低价对应的涨幅(%)。": "Change (%) at the lowest price within the last x minutes.",
978
+ "x 分钟放量倍数": "x-minute volume multiple",
979
+ "最近 x 分钟量 ÷ 基准。": "Volume over the last x minutes ÷ baseline.",
980
+ "最近 x 分钟(交易时间)。须为主周期分钟数的整数倍。": "The last x minutes of trading time. Must be a multiple of the primary timeframe in minutes.",
981
+ "SAME_TIME=过去 N 日同一时段;PRIOR_WINDOWS=今天此前 windows 个等长窗口。": "SAME_TIME = the same time window over the past N days; PRIOR_WINDOWS = the previous `windows` equal-length windows today.",
982
+ "仅 baseline=PRIOR_WINDOWS 时生效:用今天此前几个等长窗口做基准。": "Only with baseline=PRIOR_WINDOWS: how many earlier equal-length windows today form the baseline.",
983
+ "加权移动平均": "Weighted moving average",
984
+ "给近期价格更高权重,比SMA更灵敏的均线。": "Weights recent prices more; more responsive than SMA.",
985
+ "因为反应太快,在震荡行情里会比SMA产生更多假信号,频繁被洗": "Because it reacts fast it gives more false signals than SMA in ranges and gets shaken out often.",
986
+ "WMA的滞后性虽小于SMA,但依然存在,大周期(如60日)仍会慢半拍": "WMA lags less than SMA but still lags; long periods (e.g. 60 days) are still late.",
987
+ "权重分配方式固定,不一定适合所有股票或所有行情阶段": "The weighting scheme is fixed and does not suit every stock or market phase.",
988
+ "加权移动平均周期。用于该指标计算所回溯的 K 线根数(周期越大曲线越平滑、滞后越大)。": "WMA period: number of bars looked back (larger is smoother and lags more).",
989
+ "Z-Score 标准分": "Z-Score",
990
+ "衡量价格偏离均值多少标准差,识别极端行情。": "How many standard deviations price is from its mean; spots extremes.",
991
+ "在强趋势行情里 Z-Score 会一直大于 2 或小于 -2,做均值回归会被反复打脸,亏到怀疑人生": "In strong trends the Z-Score stays above 2 or below −2; mean reversion gets punished repeatedly.",
992
+ "窗口期太短(如 5 天)Z-Score 容易剧烈跳动,信号频繁但假信号也多": "A short window (e.g. 5 days) is jumpy: frequent signals, many of them false.",
993
+ "不同股票的波动率差异大,Z-Score 绝对值 2 对某些股票可能是常态,对另一些才是极端": "Volatility differs by stock: |Z| = 2 is normal for some and extreme for others.",
994
+ "当前值相对窗口均值的标准差倍数。": "Number of standard deviations of the current value from the window mean.",
995
+ "涨停后盘中回撤线": "Post-limit-up intraday drawdown line",
996
+ "涨停后盘中回撤线:标记连板股回调的警戒位。": "Marks the warning level for pullbacks in limit-up streak stocks.",
997
+ "连板股一旦走「A 杀」(直接跌停出货),回撤线根本来不及反应,等触发时你已经亏了 20%+": "When a streak stock collapses straight to limit-down, the line cannot react in time; by the trigger you may be down 20%+.",
998
+ "这个指标只看价格回撤,不看成交量,有时候缩量回撤可能是洗盘,放量破线才是真危险": "It looks at price drawdown only, not volume; a low-volume pullback may be a shakeout, while a high-volume break is the real danger.",
999
+ "参数设置太敏感(比如回撤 10%)会频繁触发,全是假信号;太迟钝(比如 50%)又容易错过止损时机": "Too sensitive (e.g. 10% drawdown) triggers constantly with false signals; too loose (e.g. 50%) misses the stop.",
1000
+ "用于定位最近右侧连板结构的日线回看窗口。": "Daily lookback window for locating the most recent limit-up streak.",
1001
+ "窗口内需出现至少一段连续涨停日。": "At least one run of consecutive limit-up days must occur in the window.",
1002
+ "输出连板结束后至当前主周期盘中最高价 × (1 - 回撤阈值/100)。": "Outputs the intraday high on the primary timeframe since the streak ended × (1 − drawdown threshold / 100).",
1003
+ "连板结束后最多观察多少个日历日;0 表示不限制。": "Maximum calendar days to observe after the streak ends; 0 = unlimited.",
1004
+ "EXACT:恰好 N 连板;AT_LEAST:至少 N 连板,3 连板包含 4/5 连板。": "EXACT: exactly N in a row; AT_LEAST: at least N, so a 3-day match includes 4- and 5-day streaks.",
1005
+ "涨停幅度默认按标的板块自动判断(主板 10、创业板/科创板 20、北交所 30);只有「认不出标的」时才用这个值兜底。": "The limit size is detected from the symbol's board by default (main board 10, ChiNext/STAR 20, Beijing 30); this value is only a fallback when the symbol cannot be recognised.",
1006
+ "涨停板黄金坑(盘中回撤确认)": "Limit-up golden pit (intraday drawdown confirmed)",
1007
+ "捕捉连板股回调后的二次拉升机会。": "Captures the second leg up after a limit-up streak stock pulls back.",
1008
+ "连板股一旦回调,可能直接A杀,黄金坑变成无底洞,必须严格设置止损": "A pulled-back streak stock can collapse straight down and the 'golden pit' becomes bottomless; strict stops are mandatory.",
1009
+ "回撤阈值设得太小容易频繁触发假信号,设得太大可能错过最佳买点": "A small drawdown threshold fires false signals often; a large one may miss the best entry.",
1010
+ "成交量萎缩条件在极端行情下可能失效,比如一字板跌停无量,但后续继续跌停": "The volume-contraction condition can fail in extreme cases, e.g. a no-volume limit-down followed by further limit-downs.",
1011
+ "按上海时区 trade_date 对齐的日线回看窗口;数据以 md_bars_1d 为主,近期缺口可由 1m 按 trade_date 回填。与交易所精细日历可能不完全一致。": "Daily lookback aligned to trade_date in Shanghai time; data comes mainly from md_bars_1d, with recent gaps backfilled from 1m bars by trade_date. May not match the exchange calendar exactly.",
1012
+ "窗口内需出现至少一段连续涨停日(相对前一日收盘涨幅 ≥ limitPct%)。": "At least one run of consecutive limit-up days (gain vs previous close ≥ limitPct%) must occur in the window.",
1013
+ "当前主周期收盘价相对连板结束后至当前的盘中最高价回撤不低于该百分比。": "The current close on the primary timeframe must be at least this percent below the intraday high since the streak ended.",
1014
+ "默认(POST_STREAK_MEAN):最右侧连板结束日次日起至当前的日均成交量不低于窗口内日量峰值 × 该比例/100。LAST_DAY 模式下为最后一日量不低于此前各日最大日量 × 该比例/100。": "Default (POST_STREAK_MEAN): average daily volume from the day after the last streak ends until now must be at least the window's peak daily volume × this ratio / 100. In LAST_DAY mode the last day's volume must be at least the largest earlier daily volume × this ratio / 100.",
1015
+ "POST_STREAK_MEAN:涨停后区间日均量相对窗口峰值;LAST_DAY:仅比较最后一日。连板持续到当前且没有涨停后区间时 POST_STREAK_MEAN 量能不通过。": "POST_STREAK_MEAN: average daily volume after the limit-ups relative to the window peak; LAST_DAY: compare only the last day. If the streak lasts until now with no post-streak period, POST_STREAK_MEAN fails the volume check."
1016
+ }