The same price rise can have different causes同样一次上涨,可能有不同的金融含义

An asset trades at 100 and quickly rises to 104. One explanation is better news about its future cash flows. Another is a buyer demanding more immediate execution than the available sell orders can supply near 100. In the first case, investors may revise their valuation; in the second, part of the price pressure may ease after that demand subsides. The initial upward candle does not tell us which explanation dominates.一种资产从 100 快速涨到 104。可能是未来现金流的消息变好了,也可能只是有人急于买入,而 100 附近愿意卖出的数量不够。前一种情况会改变投资者的估值,后一种情况则可能在买入压力消退后回落。最初那根上涨的 K 线,并没有告诉我们哪一种原因占主导。

Smart Money Concepts (SMC) organizes chart reading around swing structure, liquidity sweeps, fair value gaps and order blocks. Its financial question is whether these observable patterns contain useful information about subsequent prices and execution conditions. The label “smart money” does not establish who traded or whether they possessed superior information.Smart Money Concepts(SMC,常译“聪明钱概念”)围绕波段结构、流动性扫取、公允价值缺口和订单块来读图。从金融学角度看,核心问题是:这些可见形态,是否提供了关于未来价格和成交条件的有用信息。“聪明钱”这个名字,本身不能证明是谁在交易,更不能证明对方掌握了信息优势。

We will examine three linked questions: who pays for immediacy, how trades change prices, and what remains of a trading return after costs and risk exposure. Market microstructure supplies the mechanisms; the SMC patterns supply hypotheses to investigate. The calculations and charts below are constructed examples, not evidence of a profitable historical strategy.本文沿着三个相连的问题展开:谁为立即成交付费,交易怎样改变价格,以及收益扣除成本、考虑风险暴露后还剩下什么。市场微观结构理论帮助解释机制,SMC 图形则提供待检验的线索。文中的计算和图形均为构造算例,没有把它们当作历史策略盈利的证据。

Liquidity is the price of immediacy流动性:立即成交需要付出什么代价

A pension fund rebalancing an index, an exporter hedging currency exposure and a speculator responding to information can all submit a buy order. Their objectives differ. On the other side, an investor or market maker may offer a limited quantity at a quoted price. “Institutions” therefore do not form a single group with one intention; size and information advantage are different characteristics.指数调仓的养老金、对冲汇率风险的出口商、根据消息买入的投机者,都可能提交买单,但目的并不相同。另一边,投资者或做市商在某个报价上只愿意提供有限数量。因此,“机构”并不是具有统一意图的整体,资金规模大与信息更充分也是两件事。

Market liquidity describes the ability to trade a given quantity promptly with a small price concession. Three useful dimensions are spread, depth and resiliency. They can diverge: the best quotes may remain close together even as the quantity available at those quotes becomes small. The IMF study on liquidity measurement explains why one number cannot capture all of these dimensions.市场流动性描述的是:以较小的价格让步,及时完成一定数量交易的能力。价差、深度和韧性是三个有用的维度,它们并不总是同步变化:最优买卖报价可能仍然很接近,但这些报价上能够成交的数量已经很少。IMF 关于流动性测量的研究说明了为何不能只用一个数字概括流动性。

Spread买卖价差
The difference between the best ask and best bid. Buying and immediately selling a small quantity normally crosses this spread before fees, if quotes remain unchanged.最优卖价与最优买价之差。在报价不变、数量足够小的条件下,立即买入再卖出,通常先损失这段价差,还未计算手续费。
Depth市场深度
The quantity available near the current price. A larger order can consume several price levels, making its average fill worse than the first displayed quote.当前价格附近可供成交的数量。订单较大时会消耗多个档位,平均成交价因此劣于最初看到的最优报价。
Resiliency流动性韧性
How quickly quotes and depth recover after a disturbance. A depleted book can replenish quickly, or remain thin while further orders arrive.市场受冲击后,报价与深度恢复的速度。被消耗的订单簿可能很快补充,也可能在后续订单到来时仍然很薄。

In a limit-order book, a marketable buy consumes available offers. Every completed trade has both a buyer and a seller; price pressure depends on how urgently one side wants to trade relative to the supply at each price. Cancellations and replenishment change that supply too. A frozen-book example makes the quantity constraint visible:在限价订单簿里,可立即成交的买单消耗对侧卖单。每笔成交都有买卖双方;推动价格的,是一侧的成交紧迫性相对于各档供给的变化,撤单和补单同样会改变供给。下面用冻结订单簿说明数量约束:

Available sell orders可成交的卖单

100.0140 units单位
100.0230 units单位
100.0350 units单位
100.0143

Average fill for an immediate purchase of 70 units.立即买入 70 单位的平均成交价。

40 × 100.01 + 30 × 100.02 = 7,001.00
7,001.00 ÷ 70 = 100.014285…
40 × 100.01 + 30 × 100.02 = 7,001.00
7,001.00 ÷ 70 = 100.014285…

Figure 1. A frozen, invented book with no cancellations, new orders or fees. The first two ask levels are consumed; the next best offer is 100.03. This is a matching example, not reconstructed order flow behind the later candle example.图 1。冻结的自拟订单簿,不含撤单、新增订单或费用。前两档卖单被消耗后,下一档最优卖价为 100.03。这只是撮合算例,不是后文 K 线算例背后的真实订单流。

Market liquidity is also distinct from funding liquidity: access to cash or financing to maintain a position. A leveraged trader facing a margin call may have to sell precisely when market depth is poor. This is one reason a lower price need not attract enough immediate buying to produce a rebound.市场流动性还要与融资流动性区分:后者涉及能否取得现金或融资来维持头寸。一个面对追加保证金要求的杠杆交易者,可能恰好在市场深度不足时被迫卖出。这也解释了为什么价格更低,不一定立即带来足够买盘使其反弹。

Price discovery and temporary price pressure价格发现与暂时性价格压力

Why would a liquidity provider charge a spread? One reason is adverse selection: a buyer may know something that makes the asset worth more than the seller currently believes. Selling to that buyer at an unchanged quote can be costly. In Glosten and Milgrom’s model, this information asymmetry generates a positive spread even for a risk-neutral dealer making zero expected profit under competition.挂单者为什么要求价差?一个原因是逆向选择:买方可能掌握了某种信息,使资产价值高于卖方目前的判断;沿用旧报价卖给这种买方,会给卖方造成损失。在 Glosten–Milgrom 模型中,即使交易商风险中性、竞争使其预期利润为零,信息不对称仍能形成正价差。

This also explains price discovery. A buy order may prompt a quote revision because it changes what the seller infers about value, not only because it removes displayed quantity. An institution can trade for liquidity reasons, while a smaller participant can be informed. A large transaction is not sufficient evidence of an informed transaction.这也解释了价格发现:一笔买单除了消耗挂单,还可能让卖方修正对资产价值的判断,于是报价提高。机构可以因资金需求而交易,小额参与者也可能掌握信息。大额成交本身并不足以证明知情交易。

A second mechanism is inventory. A liquidity provider absorbing sales increases its net holdings. If that moves inventory away from its preferred level, it may adjust quotes to limit further accumulation. Avellaneda and Stoikov’s market-making model formalizes inventory-sensitive quotes for a risk-averse dealer under specified price and order-arrival assumptions. Inventory pressure and limited depth can affect transaction prices even without new information about cash flows.另一个机制是库存。流动性提供者承接卖单后,净持仓增加;若这使库存偏离希望持有的水平,就可能调整报价来限制进一步积累。Avellaneda–Stoikov 做市模型在给定价格过程和订单到达假设下,刻画了风险厌恶交易商的库存如何影响报价。即使没有新的现金流信息,库存压力和有限深度也能影响成交价格。

Two assumed paths after the same initial price rise: pressure fades in one; repricing persists in the other. 相同初始上涨后的两条假设路径:暂时压力消退,或重新定价持续。
Figure 2. Two deliberately simplified paths share the same initial move. The later behavior is assumed to illustrate competing mechanisms, not estimated from data. Real prices can combine information, inventory and execution effects; subsequent news can change either path.图 2。两条刻意简化的路径具有相同的初始上涨,后续走势是用来比较机制的假设,不是数据估计。真实价格可能同时包含信息、库存与执行冲击,后续消息也可能改变任一路径。

The distinction matters when reading an FVG. If a move mainly reflects transitory pressure, a later reversal is economically plausible. If investors have revised value, the previous price may no longer attract sellers or buyers on the old terms. The candle geometry alone cannot separate those components. Nor is a later reversal proof that the original move was uninformed.读 FVG 时,这个区别很关键:若运动主要来自暂时性压力,之后回落有经济上的可能;若投资者已经修正估值,旧价格未必还能吸引原来的买卖意愿。仅凭 K 线的几何形状,分不出这两部分。事后回落本身,也不能反证最初的运动一定不包含信息。

Why a large investor splits an order大资金为什么拆单

Suppose a fund has already decided to buy a large position. Sending it all at once may consume many ask levels. Spreading it over time can reduce immediate pressure, but leaves part of the purchase exposed to price rises while it waits. The economic decision is a trade-off between execution cost and uncertainty about the remaining order.假设一家基金已经决定建立较大仓位。一次全部买入,可能连续消耗多个卖价档位;分散到较长时间执行,可以减轻即时压力,却让尚未买到的部分暴露于等待期间价格上涨的风险。经济上的权衡,是成交成本与剩余订单面临的价格不确定性。

Almgren and Chriss formalize this execution problem using temporary and permanent impact and a penalty for cost variance. Their model helps choose a schedule for a specified trade. It does not determine whether buying the asset was a good investment in the first place. A low-cost execution algorithm and a return-predicting strategy solve different problems.Almgren–Chriss 模型将冲击分为暂时与永久部分,并对交易成本的不确定性施加惩罚,用来选择既定交易的执行安排。它帮助解决“已经决定买入后,怎样买得更合理”,并不判断“买入这项资产是否本来就是好投资”。降低执行成本与预测资产收益,是两个不同的问题。

This gives an order-block narrative an economic possibility: a participant may still have an unfinished order when price returns. It gives no guarantee of a defended level. The order may have completed, been cancelled, or become inappropriate after new information. Its limit price may change. An old down candle reveals none of those decisions.这给订单块叙事提供了一种经济上的可能:价格回到原处时,某个参与者也许仍有未完成的订单。但这不保证任何价位会被“守住”。订单可能已完成、被撤销,或因新信息而不再适合继续执行,限价也可能改变。一根过去的阴线,并没有记录这些决策。

Read one sequence with those mechanisms in mind把金融机制带回同一段走势

We can now interpret a failed break of a previous low as a possible change in selling pressure and available buying interest. The next step is to identify what the chart actually measures. We will use explicit conventions: SMC terminology varies, and its labels are not direct observations of an order book.现在可以把跌破前低又收回,理解为卖出压力与承接意愿发生变化的一种可能线索。接下来需要明确图形实际测量了什么。本文采用明确约定:SMC 的术语用法并不完全统一,它的标签也不是对订单簿的直接观测。

The original ICT lessons on FVG and structure shifts and order blocks provide terminology references. The definitions below are the particular research conventions used for this example.ICT 关于 FVG 与结构转变、订单块的原始课程提供术语参考,下文则明确本算例具体使用的研究定义。

The example below contains twelve invented candles, not a historical market or a profitable trade. The bars have equal duration and prices are in arbitrary units. Each candle stores its open, high, low and close (OHLC). Its body joins open to close; the wick marks the high and low. Teal bodies close higher than they open, coral bodies lower. All later sections refer to these same bars.下面是人为构造的十二根 K 线,不是历史行情,也没有展示一笔盈利交易。每根 K 线时长相同,价格使用任意单位,记录开盘、最高、最低、收盘价(OHLC):实体连接开盘与收盘,影线标出最高与最低。青绿色表示收高,珊瑚色表示收低。后文始终使用这同一组编号。

Synthetic candles with delayed swing confirmation, a sweep at bar 9, upward break at bar 11 and FVG at bar 12. 合成 K 线:拐点延后确认,第 9 根扫低,第 11 根向上突破,第 12 根确认 FVG。
Figure 3. The low at bar 3 becomes confirmed at bar 5; the high at bar 6 at bar 8. Bar 9 sweeps below 98, bar 11 closes above 107, and the FVG is only confirmed at bar 12. A completed chart contains information that was unavailable earlier.图 3。第 3 根低点到第 5 根才确认,第 6 根高点到第 8 根才确认。第 9 根扫过 98,第 11 根收于 107 上方,FVG 到第 12 根才确认。完整走势图包含当时还不知道的信息。

Market structure summarizes a price path市场结构:价格路径的压缩描述

Successively higher highs and lows summarize where transactions have occurred. They do not by themselves tell us whether the price is above or below fundamental value. A trend may reflect information arriving gradually, sustained portfolio demand, or changes in required returns. Its use as a forecast must therefore be evaluated separately from its use as a description.高点和低点连续抬升,是对历史成交路径的概括,不能直接说明价格高于或低于基本面价值。趋势可能对应逐渐进入价格的信息、持续的组合配置需求,或要求收益率的变化。因此,用它描述历史与用它预测未来,需要分别评价。

Market structure begins with selected swing highs and lows. Higher highs and higher lows describe an upward sequence; lower highs and lower lows a downward one. The selection scale matters: a pullback on an hourly chart can contain a downtrend on a five-minute chart. Changing that scale after a losing trade changes the rule being evaluated.市场结构首先来自选定的波段高低点。高点与低点逐步抬升,描述上升序列;二者逐步降低,描述下降序列。选点尺度很关键:小时图的一次回调,在五分钟图里可能是一段下降趋势。亏损后再换尺度解释,相当于更换了正在评价的规则。

For this article, let a swing low at index i be strictly lower than the lows of the two bars on each side. Equality does not count. A swing high reverses the inequality. With k bars required on the right, the swing becomes usable only after bar i + k closes.本文约定:第 i 根的最低价,严格低于左右各两根的最低价,才构成低点;相等不算。高点反过来判断。右侧需要 k 根时,必须等第 i + k 根收盘,这个拐点才能投入判断。

Thus the 98 low at bar 3 is known at bar 5, not at bar 3. The 107 high at bar 6 is known at bar 8. Drawing a marker backward to its originating candle is harmless for explanation; letting a backtest use it before confirmation creates look-ahead bias.所以,第 3 根的低点 98 到第 5 根才知道;第 6 根的高点 107 到第 8 根才知道。为了讲解,把标记画回拐点所在的 K 线没有问题;回测若在确认之前就使用它,就引入了前视偏差。

BOS结构突破
Break of Structure usually denotes a break in the direction of an established trend. Specify the swing scale and whether a wick or a close counts.通常指沿已建立趋势方向的结构突破。必须先规定波段尺度,以及影线穿过还是收盘越过才算。
CHoCH性质改变
Change of Character often denotes the first break against the prior structure. One such break is evidence of a change, not a guarantee of a new trend.常指首次逆着原有结构的突破。它提供结构变化的证据,不保证新趋势就此成立。
MSS市场结构转变
Market Structure Shift is often used with displacement, sometimes after a sweep. Its conditions overlap with CHoCH in some conventions; define yours before testing.常与明显位移结合,有时还要求此前扫过流动性。某些用法与 CHoCH 重叠,研究前应固定具体条件。

Our short sequence does not establish a complete prior trend, so bar 11 is labeled simply an upward break of the confirmed 107 high. Its close is 108.5. This is enough to explain the event without inventing a BOS or reversal classification that the available history cannot support.这段短序列没有建立完整的前置趋势,因此第 11 根只标为收盘向上突破已确认的 107 高点,其收盘价为 108.5。用现有数据就能解释这个事件,无须强行补出 BOS 或趋势反转的分类。

A liquidity sweep can reverse or reinforce a move流动性扫取:反转与延续都可能发生

SMC uses “buy-side liquidity” for potential buy orders above highs, and “sell-side liquidity” for potential sell orders below lows. These labels describe anticipated flow, not the visible bid and ask depth. Equal highs, equal lows and prior-session extremes are candidate reference levels because traders may use them for similar decisions. Their actual order quantity is a separate measurement problem.SMC 把前高上方可能触发的买单称为 buy-side liquidity,把前低下方可能触发的卖单称为 sell-side liquidity。这里指预期的订单流,不是已经观察到的买卖盘深度。等高点、等低点、上一交易时段的极值,都是可能的参考位置,因为交易者可能据此作出相似决策;真实委托数量需要另外测量。

A narrow, computable bullish sweep convention is: the low trades below a level already known before the bar, while the close finishes back above it. In Figure 3, bar 9 reaches 97 and closes at 100.5 around the known 98 low. The sweep is only confirmed at that close. A wick still forming may eventually close below the level.一个容易计算的看多扫低约定是:本根最低价跌穿此前已知的价位,收盘又回到其上方。图 3 中,第 9 根最低到 97,收盘为 100.5,跨过的是已知低点 98。必须等它收盘才确认扫低;正在形成的下影线,最终也可能变成收在低点下方的 K 线。

A buy stop above a previous high may come from a short seller closing a position or a breakout trader opening one. A sell stop below a previous low may come from a long holder exiting or a trader entering short. Once activated, some of these orders become aggressive flow. Others have limit or protection conditions. CME’s order-type documentation distinguishes these cases and states that an accepted stop does not immediately enter the book.前高上方的买入止损单,可能来自空头平仓,也可能来自追突破的新多头;前低下方的卖出止损单,可能来自多头退出,也可能来自追跌的新空头。触发后,一部分委托会变为主动成交的订单流,另一些带有限价或保护条件。CME 的委托类型文档区分了这些情况,并说明受理的 stop 不会立即进入订单簿。

Why might price reverse? Aggressive selling may subside while buy interest absorbs the flow. Why might it continue? Triggered sell orders can feed further selling. Osler’s bank-order study documents clustering in a historical FX sample; her price-cascade study supports stop-triggered positive feedback. Neither establishes that all chart extremes contain stops or that a sweep must reverse.为什么可能反弹?一种解释是主动卖出减弱,买盘承接了卖出流量。为什么也可能继续下跌?被触发的卖单可能进一步放大卖压。Osler 的银行委托研究在历史外汇样本中观察到委托聚集,价格级联研究支持止损触发后的正反馈机制。两者都没有证明所有图形极值都有止损,更没有证明扫过以后一定反转。

An FVG marks a price interval, not a valuationFVG:价格区间与资产估值的区别

Displacement describes a forceful directional move. To test that description, define a scale. One possible filter compares the candle body with the median absolute body of the previous five completed bars. At bar 11, the body is 7; the preceding five bodies are 2, 3, 3, 0.5 and 1, whose median is 2. The ratio is 3.5. A threshold such as 1.5 would accept this bar; it is an illustrative parameter, not an established optimum.Displacement 描述一段明显的单向位移。要检验“明显”,就要先给它尺度。一种可选过滤器,是把本根实体与前五根已完成 K 线的实体绝对值中位数比较。第 11 根实体为 7;前五根依次为 2、3、3、0.5、1,中位数为 2,因此比值为 3.5。设阈值 1.5 会接受这一根,但这只是示例参数,不是已知最优值。

A bullish Fair Value Gap (FVG), in the three-candle convention used here, exists when the third candle’s low is above the first candle’s high. The interval between those prices is the marked zone. The bearish version has the third high below the first low. In this example the middle candle supplies a strong upward displacement. The gap inequality alone does not guarantee that: a cross-session price jump can also create non-overlap. A body-size filter and session policy are separate conditions.按本文采用的三根 K 线约定,看多 Fair Value Gap(FVG,常译“公允价值缺口”)要求第三根最低价高于第一根最高价,二者之间就是所标区间。看空版本则是第三根最高价低于第一根最低价。本例中间一根提供了强烈的向上位移,但仅凭缺口不等式推不出这一点,跨交易时段跳空也可能造成不重叠。实体大小过滤器与时段处理,需要另外规定。

Three synthetic candles: first high102, third low105, middle body101.5 to108.5; gap102 to105. 三根合成 K 线:第一根高102,第三根低105,中间实体101.5至108.5;FVG为102至105。
Figure 4. Bars 10–12 create [102, 105]. Bar 11’s body spans that zone. The first and third wicks do not overlap; this does not show that no trades occurred in the interval. OHLC cannot resolve every intervening tick.图 4。第 10—12 根形成 [102, 105] 区间,第 11 根实体横跨该区域。第一根和第三根影线不重叠,不代表区间里没有发生交易;OHLC 也不能还原每个中间价位是否成交。

Why mark this interval? In this constructed move it marks the interval between two non-overlapping outer ranges, giving a precise zone in which to study a later pullback. That is a feature definition, not a force pulling price back. “Fair value” here is a trading label, not a discounted-cash-flow valuation or a theorem requiring the market to fill a gap.为什么要标这个区间?在本例的位移中,它标出外侧两根价格范围未重叠的区间,为研究之后的回撤提供一个确定区域。这是特征定义,不是把价格拉回来的力。这里的“公允价值”是交易术语,不是现金流估值,也不是要求市场必须回补的定理。

A touch of 105, a move to the midpoint 103.5 and a full traversal to 102 are different events. “Fill rate” has no meaning until the chosen depth and a deadline are specified. A gap that is eventually crossed after a large adverse move may be useless to the original trade. In our sequence, the earliest time to know the completed [102,105] gap is bar 12’s close; an order based on it belongs after that time.碰到 105、回到中点 103.5、完整走到 102,是三个不同事件。不规定深度和期限,“回补率”就没有明确含义。价格先大幅逆行、很久以后才穿过缺口,也可能对原来的交易毫无帮助。本例最早要到第 12 根收盘才能知道完整的 [102,105] 区间,依据它下单只能发生在这之后。

The same data also contain a bearish FVG from bars 7–9, [101,102], before the later bullish gap. The detector reports both. Opposite labels can occur in one sequence; selecting only the final attractive pattern would hide that ambiguity.同一组数据中,第 7—9 根还先形成过看空 FVG [101,102],检测器会同时报告。一个序列可以先后出现相反标签;只挑最后看起来漂亮的多头图,会隐藏这种分歧。

Order blocks and the hypothesis of remaining demand订单块:尚未完成的需求是否仍然存在

A common bullish order-block reading marks a down candle before an upward displacement that breaks structure. Implementations disagree about which candle to choose and whether to draw its body or full range. Our convention is explicit: at the upward break, look back at most five completed candles, take the most recent down candle, and mark its full high–low range. If there is none, do not manufacture a zone.常见的看多 Order Block(订单块)读法,会标记向上位移并突破结构之前的一根阴线。不同实现对选哪一根、画实体还是全幅区间并不一致。本文明确约定:向上突破发生时,最多回看此前五根已完成 K 线,取最近一根阴线,并标出它的最高—最低区间。没有符合的,就不画区域。

At bar 11, that convention selects bar 8, with a range of [99.5,104]. Bar 8 did not carry a confirmed OB label when it closed; the subsequent break gives it that role. The candidate becomes known at bar 11. A shaded zone extending back to bar 8 must not imply that a trader could already act on that future label.第 11 根发生突破时,这个约定选出第 8 根,区域为 [99.5,104]。第 8 根收盘时并没有确认的 OB 标签,是之后的突破赋予了它这个角色;候选区域到第 11 根才知道。图上色块延伸回第 8 根,不代表当时已经能使用这个来自未来的标签。

The research hypothesis is that a return toward the origin of a strong move might have a different conditional outcome from an ordinary pullback. A frequent narrative invokes unfinished institutional orders. The price pattern alone cannot verify those orders, their size, whether they remain, or whether the same participant would defend that level. OB and FVG can overlap without being the same construction: one selects a past candle; the other compares the outer candles of a three-bar pattern.值得检验的假设是:回到强位移起点附近,其条件收益分布可能不同于普通回调。常见叙事会把它解释为机构尚未完成的订单,但单靠图形无法核实订单是否存在、规模多大、是否仍未成交,以及原参与者是否愿意再次承接。OB 与 FVG 可以重叠,却不是同一种构造:前者挑一根过去的 K 线,后者比较三根 K 线的外侧两根。

Mitigation / retest回访与再测试
A later return to a marked zone is observable. Whether it represents an institution reducing inventory is not observable from candles alone.后续价格回到标记区域可以观察到;它是否代表机构调整库存,不能单靠 K 线确认。
Breaker失效后的反向区域
Some conventions reuse an invalidated OB as an opposite-side zone. Declare the invalidation and retest rule in advance; do not relabel a failed setup after seeing a favorable outcome.一些体系把失效的 OB 用作反向区域。失效与再测试条件必须预先定义,不能看到后续结果好看,才给失败形态换名。
Premium / discount区间上半部与下半部
With a frozen reference low A and high B, the midpoint is (A+B)/2. “Discount” below it means a location within that chosen range, not fundamental undervaluation.固定参考低点 A、高点 B 后,中点为 (A+B)/2。其下方称 discount,只说明处于所选区间的下半部,不说明资产被低估。

A better entry price has an execution trade-off回踩入场:较好的价格与成交风险

Placing a buy limit at an FVG midpoint offers a lower price than buying immediately after the move. But it exchanges certainty of participation for price. A strong continuation may never fill the limit; a continued decline may fill it readily and then produce a loss. The trades you obtain are not a random sample of every setup.在 FVG 中点挂买入限价单,可以争取比位移结束后立即买入更低的价格,但代价是放弃成交的确定性。强势延续时可能始终买不到;持续下跌时却可能很容易成交,随后继续亏损。真正成交的交易,并不是所有形态的随机样本。

This is why “the gap was revisited” and “the entry made money” answer different questions. Record the unfilled opportunities as well as the fills, and evaluate returns conditional on execution. A market order buys immediacy at the prevailing spread and depth; a limit order makes price explicit while accepting waiting and selection risk. Neither order type manufactures an expected return.所以,“价格回到了缺口”与“这笔入场赚到了钱”回答的是不同问题。需要同时记录未成交机会与已成交交易,并在实际成交条件下评价收益。市价单以当时的价差和深度购买及时性;限价单明确价格,承担等待与选择风险。任何一种委托类型,都不会凭空创造预期收益。

Worked example: a complete order and exit specification展开算例:完整的委托与退出约定

A recognizable setup is still incomplete as a strategy. Below is one deliberately small research specification, not a recommended trade. Use one instrument, venue and fixed bar interval; freeze these choices before collecting results. Keep only one active setup so that overlapping candidates cannot silently increase exposure.能认出形态,还不足以形成策略。下面给出一个刻意收窄的研究规格,不是交易推荐。先固定品种、交易场所和 K 线周期,再收集结果;只保留一个活动形态,避免重叠候选悄悄扩大风险敞口。

  1. Freeze the references. Use k=2 strict confirmed pivots. At a sweep close, freeze the latest confirmed low and high known before that bar. Reject a candidate if either reference is absent. Ignore further sweep candidates while it is active.固定参考位。 使用 k=2、严格不等式确认的拐点。扫低收盘时,冻结本根开始前已确认的最近低点和高点;缺任何一个就跳过。已有活动形态时,忽略新的扫低候选。

  2. Require the upward break. Within the next three bars, require the first close above the frozen high, with a bullish body at least 1.5 times the previous five-body median. Require all five prior bars and a positive median. If a low falls below the sweep low, give invalidation priority even if that bar also closes above the reference high; this is a rule priority, not an inferred intrabar path.等待向上突破。 此后三根以内,取首次收盘越过冻结高点、且阳线实体至少为此前五根实体绝对值中位数 1.5 倍的 K 线。必须已有五根历史且中位数大于零;只要本根最低价低于扫低点,按规则优先判失效,即使收盘同时满足突破条件;这是规则优先级,不是对根内路径的推断。

  3. Confirm the gap. On the immediately following candle, require a bullish FVG whose middle candle is that break candle. Otherwise expire the setup. This specific experiment uses FVG alone for entry; the OB annotation is not an extra filter.确认缺口。 紧随突破的下一根,要求形成以突破 K 线为中间根的看多 FVG,否则形态过期。本实验只用 FVG 定义入场,不把 OB 标记额外加入过滤器。

  4. Place a subsequent order. After gap confirmation, place a buy limit at its midpoint, valid for the next five bars. In this example: 103.5, active only during bars 13–17. Cancel any unfilled remainder at expiry or if the sweep low is breached. No same-close retroactive fill.之后才提交委托。 缺口确认后,在中点提交买入限价单,仅对后五根有效。本例为 103.5,最早第 13 根、最晚第 17 根。到期或跌破扫低点时撤销未成交部分,不追溯到确认收盘之前成交。

  5. Define the loss and exit. For this synthetic price scale, a stop trigger at 96.8 gives a nominal distance of 6.7 from a 103.5 fill; a 2R target is 116.9. Close any remaining position after ten completed bars from entry. Actual fills, costs, partial fills and ambiguous intrabar ordering still need an execution model.定义亏损与退出。 对本例价格尺度,止损触发价设为 96.8;若以 103.5 成交,名义止损距离为 6.7,2R 目标为 116.9。入场起满十根收盘时退出剩余仓位。真实成交价、费用、部分成交及根内顺序不明的情况,仍需成交模型处理。

The supplied price series stops at bar 12. It therefore demonstrates setup formation only: there is no observed entry, exit, win rate or strategy return. The 0.2 stop buffer is tied to an artificial price scale; a market study must express such buffers in valid ticks or a predeclared volatility scale. This specification is a starting hypothesis to reject or refine on development data, not a universal SMC recipe.给出的价格只到第 12 根,因此只演示形态的形成:没有观察到入场、退出、胜率或策略收益。0.2 的止损缓冲也只对应自拟价格尺度;实际研究应换成合法最小报价单位,或预先规定的波动率尺度。这份规格是供开发样本检验、淘汰或修订的起点,不是通用 SMC 配方。

The smallest useful code: when do labels become available?最小代码:这些标签究竟在何时可用?

The downloadable detector is a separate labeling tool. It processes completed bars in order, confirms pivots with a delay, records sweeps and breaks, and uses strict three-bar gap inequalities. It does not implement the full order specification above or simulate executions. Its prefix check verifies that adding future candles does not rewrite earlier emitted events.可下载的检测器是独立的标注工具:按顺序处理已收盘 K 线,延后确认拐点,记录扫低与突破,并以严格不等式检测三根缺口。它不实现上面的完整委托规格,也不模拟成交。前缀检查验证:追加未来 K 线,不会重写此前已经输出的事件。

# t is the index of the most recently closed candle.
# Confirm a pivot only after k bars on its right exist.
i = t - k
if i >= k:
    neighbours = bars[i-k:i] + bars[i+1:t+1]
    if all(bars[i]["low"] < b["low"] for b in neighbours):
        emit("swing_low", pivot_bar=i+1, known_at=t+1)

# A three-bar FVG is first known at the third close.
if t >= 2 and bars[t]["low"] > bars[t-2]["high"]:
    emit("bullish_fvg", known_at=t+1,
         zone=[bars[t-2]["high"], bars[t]["low"]])

This is an explanatory fragment. Download the runnable Python detector and synthetic OHLC data into the same folder, then run python3 detect-smc.py example.json. It uses only the Python standard library.上面是讲解片段。将可运行的 Python 检测器与合成 OHLC 数据下载到同一目录,执行 python3 detect-smc.py example.json。只依赖 Python 标准库。

From trade profit to risk-adjusted return从交易利润到风险调整收益

A financial assessment needs three separate answers: is the payoff positive after trading costs, what risks generated it, and is the return attractive for the capital committed? Begin with the first question. A favorable target-to-stop ratio determines possible payoffs; it does not supply their probabilities.金融上的评价需要分别回答:扣除交易成本后是否盈利,利润伴随哪些风险,以及相对于占用的资本是否值得。先看第一问。止盈与止损的距离决定可能的盈亏幅度,并不提供它们发生的概率。

Use a separate arithmetic example: entry 100, stop 98, target 104. One unit of position has a gross risk R of 2 and a gross target reward of 4, or 2R. Assume every filled trade ends at exactly one of those two prices, with no gap beyond the stop. Let the complete round-trip cost per unit be 0.10, or 0.05R, the same on wins and losses. These are assumptions, not estimated execution quality.另取一个独立算例:100 入场,98 止损,104 止盈。每单位仓位的毛风险 R 为 2,目标毛盈利为 4,即 2R。假设每笔已成交交易都恰好在其中一个价位结束,不跳空穿过止损;每单位完整往返成本为 0.10,即 0.05R,盈利与亏损交易相同。这些是算术假设,不是成交质量实测。

If p is the win probability conditional on a fill, average net profit per trade is p times the winning payoff plus (1−p) times the losing payoff. With gross reward bR and a common cost cR, the break-even win probability follows directly:若 p 是以已经成交为条件的胜率,每笔交易的平均净收益,就是盈利概率乘盈利幅度,加上亏损概率乘亏损幅度。毛奖励为 bR、统一成本为 cR 时,盈亏平衡胜率可以直接推导:

Hypothetical entry100 stop98 target104, cost0.10; netwin1.95R, netloss−1.05R, break-even35%. 假设100入场、98止损、104止盈,成本0.10;净盈利1.95R,净亏损−1.05R,盈亏平衡胜率35%。
Figure 5. Same 2R gross target, different outcomes after costs. A 30% win probability gives −0.15R per filled trade; 35% breaks even; 40% gives +0.15R. These probabilities are hypothetical, not SMC measurements.图 5。同样的 2R 毛目标,扣费后的结果并不相同。假设胜率 30%,每笔已成交交易期望为 −0.15R;35% 恰好持平;40% 为 +0.15R。这些概率是假设,不是 SMC 实测。

A 70% gap-fill rate cannot be substituted for p: price may hit the stop before reaching the fill depth, the entry may never execute, or the holding deadline may arrive first. Time exits and partial exits also create payoffs other than the binary +1.95R/−1.05R above. In that case, compute the actual distribution of net R outcomes rather than reuse the 35% threshold.不能把“70% 的缺口回补率”代入 p:价格可能先碰止损、入场委托可能根本未成交,也可能先到持有期限。按时间退出或分批退出,还会产生 +1.95R/−1.05R 之外的结果。此时应统计真实的净 R 分布,不能继续套用 35% 门槛。

Position size is another calculation. In this linear, one-unit-value example, a hypothetical loss budget B gives q ≤ B/(2+0.10). With B=100, that is 47.62 units before lot-size rounding. Futures require a contract multiplier; financing, margin and portfolio exposures impose additional constraints. This sizing controls a modeled loss, not a guaranteed worst case. The SEC order guide explains why a stop trigger does not guarantee the execution price.仓位大小是另一道计算。在这个单位价值为 1 的线性算例中,假设亏损预算为 B,则 q ≤ B/(2+0.10);B=100 时,按交易单位取整之前为 47.62 单位。期货还要乘合约乘数,融资、保证金和组合敞口也会施加限制。这只约束模型中的亏损,不保证最坏损失。SEC 委托说明解释了止损触发价为何不保证是成交价。

Positive expectancy is only the first hurdle净期望为正,只是第一道门槛

A strategy that is long during a broad market rally may earn money mainly from market exposure. A strategy that buys into stressed selling may receive compensation for holding assets when liquidity is scarce, while suffering concentrated losses when stress worsens. Pástor and Stambaugh’s stock-market research connects exposure to aggregate liquidity risk with expected returns. It does not establish that an SMC strategy earns that premium; that is a separate attribution question.大盘上涨时长期持有多头的策略,利润可能主要来自市场敞口。承接恐慌卖盘的策略,则可能因在流动性紧张时持有资产而获得补偿,也可能在压力进一步加剧时集中亏损。Pástor–Stambaugh 的股票市场研究讨论了系统性流动性风险暴露与预期收益的关系,但没有证明某个 SMC 策略赚的就是这种溢价;那需要另外做收益归因。

For a first attribution, measure the strategy’s net return on allocated capital in each equal calendar period, including periods without a trade, cash interest and actual funding or borrow costs. Let rf be the corresponding risk-free return and rm the market return. Subtract the risk-free return from each: call the strategy’s net excess return y and the market excess return x. A one-factor regression then writes:一种初步归因方式,是按相等日历周期,计算策略扣费后相对于分配资本的收益率,空仓期也保留,并计入现金利息与实际融资或借券成本。令 rf 为同期无风险收益率,rm 为市场收益率。将两者分别减去无风险收益,得到策略净超额收益 y 和市场超额收益 x。单因子回归写成:

Here β measures market exposure, α is the average component left unexplained by this chosen model, and ε is the period-specific residual. The net return and factor returns must use compatible capital, financing and time conventions. Additional trend, volatility or liquidity exposures may matter; nonlinear tail risk can remain hidden in a simple regression. A per-trade R multiple cannot be inserted as though it were a calendar-period return.β 衡量市场暴露,α 是这个选定模型未能解释的平均部分,ε 是各期残差。净收益和因子收益必须采用相容的资本、融资与时间口径;趋势、波动率或流动性暴露可能也需要纳入,简单回归还可能漏掉非线性尾部风险。每笔交易的 R 倍数,不能直接当成日历周期收益率填进去。

Fama’s asset-pricing lecture explains the joint-hypothesis problem: judging abnormal returns also tests the model of normal returns. A positive α estimate is therefore conditional evidence, not proof of informed trading. For allocation, report its uncertainty alongside drawdown, tail losses, turnover and capacity. Scaling a strategy changes its own impact costs; ten times the capital need not earn ten times the profit.Fama 关于资产定价的讲演解释了联合假设问题:判断异常收益,同时也在检验“正常收益”所用的模型。因此,估计出的正 α 是有条件的证据,不能证明识别到了知情交易。配置资本时,还要一并报告估计的不确定性、回撤、尾部损失、换手与容量。规模扩大后,自身冲击成本也会改变;十倍资金未必带来十倍利润。

What evidence would make SMC investable?怎样的证据才支持投入资本

The investment question is whether a pattern contributes incremental net return at an acceptable risk and size. First separate two hypotheses: a forecast about prices, and an explanation about the orders causing those prices. OHLC can test a specified price forecast; attributing a sweep to stop activation requires suitable order or execution data. A successful forecast would not automatically validate the institutional story.投资问题是:一个形态能否在可接受的风险与规模下,增加净收益。首先分开两个假设:对价格的预测,以及对价格背后订单成因的解释。OHLC 可以检验明确的价格预测;把扫低归因于止损触发,则需要合适的委托或成交数据。即使预测有效,也不会自动证实有关机构行为的叙事。

A fair baseline先设公平基线
Choose a common stop and holding-period rule available to every variant (for example a fixed prior-volatility stop, rather than a sweep-specific low). Then compare: a simple confirmed-high breakout; sweep plus breakout; then the FVG entry condition. Keep the instrument, session and cost model unchanged. Report trade counts and time exposure, not just the best Sharpe ratio.先设各组都能使用的统一止损与持有期规则,例如固定的前期波动率止损,不使用只有扫低组才有的低点。再依次比较:单纯突破已确认高点;扫低后突破;再加 FVG 入场。品种、时段与成本模型保持不变,报告交易次数与持仓时间,不能只挑最高夏普比率。
Executable chronology保留真实先后顺序
Use only completed higher-timeframe bars. Apply swing confirmation delays, decision latency and order submission time. A touched limit is not a guaranteed fill; model queue/volume or mark that result as an optimistic fill scenario.高周期信息只使用已收盘 K 线;加入拐点确认延迟、决策延迟与下单时刻。价格触及限价不保证成交,要考虑队列和成交量,否则将结果标为乐观成交场景。
Ambiguous candles处理根内歧义
When a candle crosses entry and invalidation, or both stop and target, OHLC does not determine the ordering. Use finer data; otherwise report conservative and optimistic bounds and the number of affected trades.同根穿过入场与失效位,或同时触及止盈止损时,OHLC 无法确定顺序。用更细数据处理;否则同时报告保守与乐观边界,以及受影响交易数。
Independent evidence留下独立证据
Develop rules on early data, validate on later blocks, then freeze them for an untouched test. Remove boundary samples whose holding periods overlap splits. Record every parameter trial and separate performance by market regime and session.用早期数据开发规则,后续时间块验证,最后冻结规则,在未查看过的测试段上检验。剔除持有期跨越划分边界的样本,记录所有参数试验,并按行情状态与交易时段拆解表现。
Costs and uncertainty加入成本与不确定性
Include spread, fees, slippage and relevant funding or borrow costs without charging the same component twice. Report net expectancy, drawdown, turnover, fill rate, tail loss and uncertainty intervals that respect time dependence, for example with block resampling. Stress wider spreads and worse fills.计入价差、手续费、滑点及适用的资金费或借券成本,同一项不要重复计入。报告净期望、回撤、换手、成交率、尾部亏损,以及保留时间依赖的不确定性区间,例如分块重采样;再测试价差扩大和成交恶化。

Trying many swing widths, gap sizes, sessions and stops until a profitable chart appears is itself a selection procedure. Bailey and coauthors’ backtest-overfitting paper explains why that search can manufacture impressive in-sample results. A fresh test loses its independence once it repeatedly guides revisions. A second untouched period or forward paper trading is then needed to assess the revised rules.不断尝试拐点宽度、缺口大小、时段与止损,直到找到盈利曲线,本身就是一次选择程序。Bailey 等人的回测过拟合论文解释了这种搜索为何能制造出漂亮的样本内结果。测试段一旦反复指导修改,就不再独立;修订后的规则需要另一段未使用数据,或向前进行的模拟交易来评价。

The opening question now has a financial answer. A rebound after a sweep can be consistent with fading sell pressure, but the same level can also precede a price cascade or a change in valuation. SMC is useful when its patterns help distinguish subsequent outcomes under realistic execution and risk constraints. Capital allocation requires that incremental evidence; a compelling name for a chart region is not enough.回到开头的问题:扫低后的反弹,可以与卖出压力消退相一致;同一个价位也可能成为价格级联或估值变化的起点。SMC 的研究价值,在于其形态能否在真实成交与风险约束下,帮助区分后续结果。投入资本需要这种增量证据,单凭一个具有说服力的图形名称还不够。

Original sources and reproducible examples原始资料与算例复现

Academic models below explain particular mechanisms under stated assumptions; they do not establish SMC profitability. ICT lessons provide the vocabulary. Exchange documentation governs specific order behavior. All figures are synthetic explanations, and no historical SMC strategy was backtested for this article.下列学术模型在各自假设下解释特定机制,并不证明 SMC 盈利。ICT 课程提供术语,交易所文档说明特定委托规则。所有图形均为构造示意,本文没有执行历史行情上的 SMC 策略回测。

  1. IMF · Measuring Liquidity in Financial Markets
    Liquidity dimensions and their measurement.流动性的不同维度及其测量。
  2. Glosten & Milgrom · Bid, Ask, and Transaction Prices
    Adverse selection and information in transaction prices.逆向选择与成交价格中的信息。
  3. Avellaneda & Stoikov · High-frequency Trading in a Limit Order Book
    Inventory-sensitive quotes for a risk-averse market maker.风险厌恶做市商的库存与报价关系。
  4. Almgren & Chriss · Optimal Execution of Portfolio Transactions
    The trade-off between execution costs and risk.执行成本与风险之间的权衡。
  5. Pástor & Stambaugh · Liquidity Risk and Expected Stock Returns
    Liquidity-risk exposure and expected stock returns.流动性风险暴露与股票预期收益。
  6. Eugene Fama · Two Pillars of Asset Pricing
    Risk adjustment, market efficiency and the joint-hypothesis problem.风险调整、市场效率与联合假设问题。
  7. The Inner Circle Trader · 2022 Mentorship Episode 6
    Original lesson on FVG and market-structure shifts.FVG 与市场结构转变的原始课程。
  8. ICT Mentorship Core Content · Month 04 · Orderblocks
    Original order-block lesson. The executable convention in this article is explicitly our own.订单块原始课程。本文可计算的筛选约定已单独明确,并非逐句复刻课程。
  9. CME · Futures Order Types
    Order types, activation and price protection in the documented futures setting.文档所述期货场景中的委托类型、触发与价格保护。
  10. SEC Investor.gov · Types of Orders
    Market, limit and stop-order execution distinctions.市价、限价与止损单的成交差异。
  11. Carol Osler · Currency Orders and Exchange-Rate Dynamics · SR125
    Historical bank FX orders and their clustering patterns.历史银行外汇委托及其聚集模式。
  12. Carol Osler · Stop-Loss Orders and Price Cascades · SR150
    Evidence for stop-related positive feedback in a historical currency sample.历史汇率样本中与止损相关的正反馈证据。
  13. Bailey et al. · The Probability of Backtest Overfitting
    Strategy selection and multiple-testing risk.策略筛选与多重试验风险。

Download the twelve OHLC bars and arithmetic assumptions and the standard-library detector. Figure generation is reproducible with python3 scripts/render-smc.py in the site repository. Checks cover candle validity, confirmation timing, gap bounds, the assumed impact paths and expectancy arithmetic; they validate this example, not a trading edge.可下载十二根 OHLC 与算术假设、标准库检测器。在站点仓库运行 python3 scripts/render-smc.py 可复现图形。检查覆盖 K 线合法性、确认时间、缺口边界、假设冲击路径与期望值计算;验证的是这个算例,不是交易优势。

For the next step, the Kronos research article asks the same financial question of a learned model: how does a forecast become an executable signal, and does it survive costs and independent evaluation?继续阅读Kronos 金融量化研究,可以把同一个问题交给学习模型:预测怎样变成可执行信号,又能否经受成本与独立评价?