| 本篇位置 | 全课第一篇。后面所有内容都建立在这里讲清楚的几件事上 |
| 用到的数据 | Binance BTCUSDT 现货:日线(2017-08-17 至 2026-08-31)、1 分钟线(2020-03、2021-02、2021-05、2025 全年);Binance BTCUSDT 永续合约 1 分钟线(2021-05) |
| 读完你能 | 说清一张价格图记录了什么、没记录什么;说清技术分析建立在哪三个前提上,每个前提在什么条件下成立;说清技术分析能回答和不能回答的问题 |
一、先做一个决定
下面是比特币 2021 年 2 月 7 日中午到 8 日中午的 1 小时 K 线图。每根 K 线代表一个小时,时间是 UTC(比北京时间晚 8 小时)。

图停在最后那根 K 线上。它是 2 月 8 日 12:00 到 13:00 这一个小时:
| 数值 | |
|---|---|
| 开盘价 | 39,423.08 |
| 最高价 | 43,231.10 |
| 最低价 | 39,094.01 |
| 收盘价 | 42,984.07 |
| 涨幅 | +9.03% |
| 成交量 | 13,971 BTC,前面 12 个小时平均每小时只有 2,642 BTC,这一小时是平时的 5 倍多 |
在这之前,价格在 38,000 到 39,500 之间磨了整整一天。然后,一个小时拉升 9%,成交量放大 5 倍。
你看着这根 K 线,脑子里大概会冒出一句话:有人在大量买入。
现在你手上没有仓位。你会怎么做?
- A. 马上追进去,这么大的买盘,后面还会涨
- B. 等回调再买
- C. 不碰,涨太多了
- D. 其他想法
先把你的选择和理由写下来,写在纸上或者备忘录里都行。这一篇结束之前会揭晓后面发生了什么。
不过这一篇真正想让你想清楚的,不是「该不该追」,而是你刚才脑子里那句话:「有人在大量买入」。这句话听起来理所当然,但它其实有问题。
二、一个几乎所有人都忽略的事实
每一笔成交,都是一买一卖
先想一个最简单的问题:那 13,971 个比特币,是谁买的?
是某些人买的。那又是谁卖的?
也是某些人卖的,而且卖出的数量,正好也是 13,971 个。
这不是巧合,是交易的定义。一笔成交必须有一个买家和一个卖家:你买进 1 个比特币,就一定有人卖出了这 1 个比特币。不存在「只有买、没有卖」的成交。
所以,在这一个小时里:
买入的总量 = 卖出的总量 = 13,971 BTC
放到任何一根 K 线、任何一个时间段、任何一个市场都一样。「买的人比卖的人多,所以涨了」,如果「多」指的是成交数量,这句话在字面上就不可能成立。
⚠️ 这里第一次读会觉得别扭:可价格明明涨了 9%,总得有个原因吧?如果买卖数量永远相等,那价格是被什么推上去的?
这个问题问得对。要回答它,得先换个角度看市场。
打个比方:二手车市场里的价格牌
想象一个很大的二手车交易场。
场子里停着几百辆同一型号的车,每辆车的挡风玻璃上都贴着一张价格牌:「10 万」「10.05 万」「10.1 万」……这些是卖家贴的,意思是「谁愿意出这个价,车就是谁的」。卖家贴完价格牌就去喝茶了,他们不着急,愿意等。
场子里也有一些买家在门口的告示板上留了话:「9.95 万收一辆」「9.9 万收一辆」。这些买家也不着急。
这时候,来了一个着急的买家。他明天就要用车,没时间讲价。他走进场子,直接找贴价最低的那辆,10 万,付钱开走。
如果他要买 3 辆呢?10 万那辆只有 2 辆,他买走之后,场里最便宜的就变成了 10.05 万。他只好按 10.05 万再买 1 辆。
注意发生了什么:
- 每一辆车都是一个买家、一个卖家,成交数量两边相等
- 但成交价格从 10 万变成了 10.05 万
- 推高价格的,不是「买家比卖家多」,而是一个着急的买家,把耐心卖家贴出来的便宜价格一个个买光了
这就是价格变动的真正机制。这个二手车场,我们整篇都会用到。
三、价格为什么会动:挂单的人和吃单的人
两种参与者
回到交易所。交易所里也有两种人,和二手车场一模一样。
挂单的人(maker):他们提前把「我愿意在什么价格买多少、卖多少」挂出来,然后等别人来成交。这就是贴价格牌的卖家,和在告示板上留话的买家。
吃单的人(taker):他们不等,直接和别人已经挂着的单子成交。这就是那个着急的买家。
所有挂着的单子放在一起,叫订单簿(order book)。卖单那一侧按价格从低到高排,买单那一侧按价格从高到低排。
每一笔成交,都一定是一个吃单的人撞上一个挂着的单子。所以虽然每笔成交都是一买一卖,但每笔成交都有一个「主动方」:
- 吃单的人是买方,这笔成交就叫主动买入(taker buy)
- 吃单的人是卖方,这笔成交就叫主动卖出(taker sell)
一步一步算一遍
我们用一个很小的订单簿,完整走一遍价格是怎么动起来的。
假设某一刻,订单簿是这样的(价格单位:美元,数量单位:个):
| 卖单(按价格从低到高) | 买单(按价格从高到低) | ||
|---|---|---|---|
| 价格 | 数量 | 价格 | 数量 |
| 100.00 | 2 | 99.50 | 4 |
| 100.50 | 3 | 99.00 | 6 |
| 101.00 | 5 |
此刻,最低的卖价是 100.00,最高的买价是 99.50。上一笔成交价是 100.00。
第一步:来了一个着急的买家,要立刻买 6 个。
他不挂单,直接吃掉卖单。从最便宜的开始:
| 成交顺序 | 价格 | 数量 | 金额 |
|---|---|---|---|
| 1 | 100.00 | 2 | 200.00 |
| 2 | 100.50 | 3 | 301.50 |
| 3 | 101.00 | 1 | 101.00 |
| 合计 | 6 | 602.50 |
这 6 个的平均成交价是 602.50 ÷ 6 ≈ 100.42。
最后一笔成交价变成了 101.00,比开始时的 100.00 涨了 1%。
现在订单簿变成:卖单只剩 101.00 × 4;买单没动,还是 99.50 × 4 和 99.00 × 6。
在这一步里:主动买入 6 个。每一个都有对应的卖家,被动卖出也是 6 个。买卖数量相等,价格涨了 1%。
第二步:接着来了一个着急的卖家,要立刻卖 4 个。
他直接吃掉买单,从出价最高的开始:99.50 那一档正好有 4 个,全部成交。
最后一笔成交价变成 99.50。
把这两步合成一根 K 线。
假设这两步刚好发生在同一分钟里。这一分钟的 K 线是:
| 数值 | 来自 | |
|---|---|---|
| 开盘价 | 100.00 | 第一笔成交 |
| 最高价 | 101.00 | 第一步的最后一笔 |
| 最低价 | 99.50 | 第二步 |
| 收盘价 | 99.50 | 最后一笔成交 |
| 成交量 | 10 | 6 + 4 |
| 主动买入 | 6,占 60% | |
| 主动卖出 | 4,占 40% |
⚠️ 这是整篇最容易读反的地方,值得停下来多看一眼:主动买入占了 60%,这根 K 线却是一根阴线,收盘价比开盘价低。
为什么?因为价格动多少,不只看吃单的量有多大,还要看被吃掉的那一侧挂了多厚。
- 买家吃 6 个,要穿过三档卖单(100.00、100.50、101.00),价格被推高 1.00
- 卖家只吃 4 个,但买单最高那一档正好挂着 4 个,而且 99.50 离 101.00 本来就有 1.50 的距离,所以价格一下子掉到 99.50
回到二手车场:着急的买家在「贴价很密」的那一侧买,价格只涨一点;着急的卖家碰上「出价很稀」的那一侧,一卖就要降很多。
还有一种不需要成交的价格变化
还有一件事,K 线完全看不到。
回到最初的订单簿。假设没有任何人成交,但 100.00 那个卖家改主意了:他把价格牌撕掉,改贴 100.80。
现在最低的卖价从 100.00 变成了 100.50。一笔成交都没发生,但下一个着急的买家,最低只能买到 100.50 了。
在二手车场里,这就是卖家听到风声,悄悄把价格牌改高了。成交记录上什么都没有,但价格已经变了。
K 线只记录成交,不记录挂单和撤单。挂单的变化,要到下一笔成交发生时,才会反映在价格上。
✋ 小检查
某一小时里,主动买入 8,000 个,主动卖出 2,000 个。请问:这一小时的成交量是多少?被动卖出(也就是挂着卖单、被别人吃掉的)是多少?这根 K 线一定是阳线吗?
答案在本篇最后。
四、用真实数据核对
上面是一个编出来的小例子。现在用真实数据看看,它说的是不是真的。
Binance 的 K 线数据里,除了开高低收和成交量,还有一个字段叫 taker_buy_base:这根 K 线里,主动买入的数量。用它除以成交量,就是主动买入占比。
(数据怎么下载、怎么加载,第 3 篇会完整讲。这一篇先直接看结果。)
开头那根 K 线
2021 年 2 月 8 日 12:00 这一小时:
| 数量(BTC) | 占比 | |
|---|---|---|
| 成交量 | 13,971.3 | 100% |
| 主动买入 | 8,934.8 | 64.0% |
| 主动卖出 | 5,036.5 | 36.0% |
这一小时一共发生了 281,022 笔成交。主动买入明显多于主动卖出,和「价格大涨」的直觉一致。
但紧接着的下一个小时(13:00),情况就变了:
| 数值 | |
|---|---|
| 开盘价 → 收盘价 | 42,984.07 → 42,897.12,跌了 0.20% |
| 成交量 | 21,921 BTC,比上一小时还大 |
| 主动买入占比 | 53.9% |
主动买入还是超过一半,这根 K 线却收了阴线。和我们小例子里的第二步一模一样。
全部历史:上涨的日子里,主动买入一定更多吗?
一两根 K 线可能是巧合。我们看 BTC 在 Binance 上的全部日线,从 2017 年 8 月到 2026 年 8 月,一共 3,302 天。
d["ret"] = d["close"] / d["open"] - 1 # 当天涨跌幅
d["buy_ratio"] = d["taker_buy_base"] / d["volume"] # 主动买入量占比
up = d[d["ret"] > 0]
print("统计区间:", d.index[0].date(), "至", d.index[-1].date())
print("上涨的天数:", len(up))
print("其中主动买入占比不到一半的:", (up["buy_ratio"] < 0.5).sum())
print("比例:", round((up["buy_ratio"] < 0.5).mean(), 3))
big = d[d["ret"] > 0.05]
print("涨幅超过 5% 的天数:", len(big))
print("其中主动买入占比不到一半的:", (big["buy_ratio"] < 0.5).sum())
输出:
统计区间: 2017-08-17 至 2026-08-31
上涨的天数: 1690
其中主动买入占比不到一半的: 711
比例: 0.421
涨幅超过 5% 的天数: 206
其中主动买入占比不到一半的: 39
1,690 个上涨日里,有 711 天(42.1%)主动买入不到一半。 就算只看涨幅超过 5% 的大涨日,206 天里也有 39 天是主动卖出更多。
主动买卖的方向和价格方向有关系,但远远不是「主动买入多就涨」这么简单。拿 2025 年全年的数据算,K 线涨跌幅和主动买卖不平衡程度之间的相关系数,从 1 分钟线到日线都在 0.41 到 0.49 之间:有明显的关系,但只能解释一部分。剩下的部分,就是上一节讲的两件事:被吃掉的那一侧挂得有多厚,以及没有成交的挂单和撤单。
一个极端的例子:2020 年 3 月 13 日
这一天 BTC 日线涨了 16.2%,是 Binance 上 BTC 历史涨幅第五大的一天。按直觉,这天应该充满了主动买入。
实际上,这天的主动买入占比是 49.1%,不到一半。
把这一天拆成小时看,就明白了:
| 时间(UTC) | 开盘 | 收盘 | 涨跌 | 主动买入占比 |
|---|---|---|---|---|
| 00:00 | 4,800.01 | 4,654.72 | −3.0% | 41.0% |
| 01:00 | 4,656.71 | 4,130.64 | −11.3% | 42.2% |
| 02:00 | 4,131.23 | 4,848.71 | +17.4% | 49.8% |
| 03:00 | 4,848.70 | 5,167.26 | +6.6% | 51.6% |
| … | … | … | … | … |
| 23:00 | 5,603.36 | 5,578.60 | −0.4% | 50.4% |
这是 3 月 12 日暴跌的第二天。凌晨头两个小时,大量主动卖出继续把价格砸到了 3,782.13(02:16);随后价格在一个小时里反弹 17%,全天收在 5,578.60。
日线把「先暴跌、后暴涨」这两段合成了一根大阳线。从日线上,你完全看不出当天凌晨发生过一次 −21% 的下跌(从开盘 4,800 到最低 3,782)。K 线会丢掉哪些信息,第 6 篇会专门讲。
五、揭晓:后面发生了什么
现在回到开头那个决定。这是图后面的走势:

- 13:00 这一小时:价格最高冲到 44,918,最低砸到 41,906.70,一个小时里上下来回 3,000 多美元,最后收在 42,897.12,比上一根的收盘价还低一点
- 之后几个小时在 42,500 到 44,300 之间反复
- 当天收盘:46,374.87。日线从 38,795.69 开盘,全天涨了 19.5%
如果你选了 A,在 43,000 附近追进去,接下来一个小时里你会看到价格跌到 41,906,浮亏大约 2.5%;如果你扛住了,当天收盘时浮盈大约 7.8%。如果你的止损设在 41,906 以上,这一小时里你已经被止损出局了。
哪个选择对?光凭这根 K 线,回答不了。 要回答它,需要这门课后面的东西:这个位置在整体结构里意味着什么(第二部分)、正常的波动有多大、止损该放在哪里(第 15、23 篇)、这样一次突破在历史上后续表现如何(第六部分)。
这一篇要说的是另一件事。
那个「在大量买入的人」
这一天发生了什么?
2021 年 2 月 8 日,特斯拉向美国证券交易委员会(SEC)提交了年度报告。报告里写道:公司在 2021 年 1 月更新了投资政策,之后已经买入了总计 15 亿美元的比特币。这个消息一出,市场迅速做出了反应。
注意时态:已经买入了。特斯拉这笔 15 亿美元的买入,发生在报告公布之前。
所以,那根大阳线里交易的,并不是特斯拉。那一个小时里主动买入的 8,934.8 个比特币,是看到消息后涌进来的人买的。这一小时一共卖出了 13,971 个比特币:其中 8,934.8 个是挂着卖单、被这些人吃掉的,另外 5,036.5 个是有人主动卖出的。
回到二手车场:有个大车队老板早在上个月就悄悄买走了一批车。今天报纸登出了这条新闻,门口涌进来一群着急的买家。场里的价格被他们一路买高,而那个车队老板,今天根本没来。
你在 K 线上看到的「大量买入」,是这一小时里着急的人和耐心的人成交的结果。它不告诉你谁在买、为什么买,也不告诉你那个真正的大买家是谁、什么时候买的。
六、价格不是价值
同一分钟,两个价格
2021 年 5 月 19 日,加密市场暴跌。我们看 UTC 13:10 这一分钟,Binance 上两个 BTC 市场的最低价:
| 市场 | 13:10 这一分钟的最低价 |
|---|---|
| BTCUSDT 现货 | 30,000.00 |
| BTCUSDT 永续合约 | 28,688.00 |
| 差距 | 1,312 美元,约 4.4% |
同一个交易所,同一个资产,同一分钟,最低成交价差了 1,312 美元。同一天 13:44 这一分钟,两个市场的收盘价也差了 1,506 美元(现货 37,406.48,合约 35,900.00)。而这一整天 1,440 分钟里,两个市场每分钟收盘价之差的中位数只有 27 美元。
那么,这一分钟里,一个比特币到底值多少钱?30,000 还是 28,688?
哪个都不是。这两个数字都不是「比特币值多少」,它们只是在各自那个市场里,那一分钟里,最低的一笔成交是在什么价格发生的。
回到二手车场:同一个型号的车,在两个不同的车场里卖。其中一个车场里,有个急着用钱的卖家被逼得低价甩卖了一辆。这辆车的成交价,不代表这个型号的车就只值这么多;它只说明,在那个车场、那个时刻,有一个着急的卖家碰上了一个出价很低的买家。
两个定义
现在可以准确地说了:
价格:某个市场里,某一时刻,一笔实际发生的成交的价格。它是一个事实,发生了就不会变。
价值:一个资产「应该」值多少的估计。不同的人用不同的方法,会估计出不同的数字。它没有唯一答案,也不会直接出现在任何一张图上。
一张价格图画的,是一连串「价格」,也就是一连串已经发生的成交。它记录的是交易行为的结果,不是资产的价值。
⚠️ 这个区分听起来像文字游戏,但它直接决定了技术分析在研究什么。技术分析研究的是成交留下的记录,也就是市场参与者在各个价格上实际做了什么。它不去估计资产值多少。
一张价格图,记录了什么、没记录什么
把前面几节合在一起:
| 价格图记录了 | 价格图没有记录 |
|---|---|
| 每个时间段内的开盘价、最高价、最低价、收盘价 | 这些成交是谁做的 |
| 每个时间段内的成交量 | 他们为什么交易 |
| (部分数据源)主动买入和主动卖出的数量 | 时间段内部,价格是按什么路径走的 |
| 订单簿里挂着、但还没成交的单子,以及撤单 | |
| 其他市场同一时刻的价格 | |
| 资产的价值 |
后面讲的每一个工具,都只能从左边这一列里提取信息。右边那一列里的东西,任何指标都算不出来。 这一点记住,后面会反复用到。
七、技术分析的三个前提
技术分析在做什么
有了上面的准备,可以给技术分析一个准确的描述了:
技术分析:研究市场交易行为留下的记录(价格、成交量,以及由它们衍生出来的数据),来判断当前的市场状态、关键价位,以及在什么条件下应该怎样交易。
教科书上说,技术分析建立在三个前提上。这三句话被引用得非常多,但很少有人讲清楚它们在什么条件下成立、在什么条件下不成立。下面一个一个看。
前提一:市场行为包含一切信息
原来的说法:影响价格的所有因素,包括基本面、政策、情绪,最终都会反映在价格上。所以只研究价格就够了。
用开头的例子看:特斯拉买入比特币这件事,在报告公开之前,市场上几乎没人知道。那时候价格里没有这个信息。报告公开之后,价格在一个小时里涨了 9%,这个信息进入了价格。
更准确的说法:
已经公开的、并且有人据此交易的信息,会进入价格。
这个前提成立有三个条件,缺一个就会打折扣:
- 信息要公开。只有少数人知道的信息,价格里没有,或者只有一部分。
- 要有人据此交易。信息公开了,但如果没人关注、没人下单,价格就不会动。流动性差、关注度低的品种,价格反映信息的速度会很慢。
- 价格反映的是交易者的「看法」,不是事实本身。一条消息公开后,大家可能过度反应,也可能反应不足。价格包含了这条信息,不等于价格对这条信息的解读是对的。
前提二:价格以趋势方式运动
原来的说法:价格一旦开始往一个方向走,更可能继续往这个方向走,而不是随机乱跳。
先用数据检验一个最朴素的版本:「今天涨,明天也更可能涨;今天跌,明天也更可能跌。」
在 BTC 的 3,301 对相邻交易日里,第二天和前一天方向相同的比例是 46.7%,比抛硬币的 50% 还低。就算只看前一天涨跌超过 5% 的日子,第二天同方向的比例也只有 46.2%。按年份看,2018 年是 44.5%,2021 年是 43.7%,2024 年是 45.8%,2025 年是 49.2%。
所以,「明天会延续今天的方向」这个版本,在 BTC 日线上是不成立的。
这是不是说趋势不存在?不是。它说明「趋势」不能简单地理解成「明天和今天一样」。
更准确的说法:
在某些时间尺度上、在某些时期里,价格变化存在一定的持续性。
它是一个需要检验的假设,不是一个可以直接拿来用的公理。在什么时间尺度上有持续性、持续性有多强、什么时期强什么时期弱,需要用数据去测。第 5 篇会讲怎么用统计方法测量这种持续性,第 8 篇会讲怎么把「趋势」写成一个能计算的定义。
前提三:历史会重演
原来的说法:市场参与者的心理和行为模式是稳定的,所以过去出现过的价格模式,未来还会出现。
这个前提背后的逻辑,比前两个更扎实:价格是人交易出来的,而人的某些习惯非常稳定。
一个可以检验的例子:整数价位。
第六节提到,2021 年 5 月 19 日现货的最低价正好是 30,000.00。这是巧合吗?
我们来算。BTC 在 Binance 现货上的最小价格单位是 0.01 美元。如果价格的最低点落在哪里完全随机,那么它恰好落在 1,000 的整数倍上(比如 30,000.00、45,000.00)的概率,大约是 0.01 ÷ 1,000 = 十万分之一。
我们只看日最低价不低于 10,000 美元的交易日(价格太低时,1,000 的整数倍太少,不好比较),一共 2,349 天。按十万分之一的概率,我们预期每天的最低价恰好是 1,000 整数倍的情况,总共出现 0.023 次,也就是基本不会出现。
实际出现了多少次?
| 实际次数 | 随机情况下的预期次数 | |
|---|---|---|
| 日最低价恰好是 1,000 的整数倍 | 31 | 0.023 |
| 日最高价恰好是 1,000 的整数倍 | 30 | 0.023 |
| 日最低价恰好是 100 的整数倍 | 174 | 0.235 |
| 日最高价恰好是 100 的整数倍 | 197 | 0.235 |
实际次数是随机预期的一千多倍。
原因不难想:很多人喜欢把买单挂在 30,000、把卖单挂在 50,000,把止损放在 29,900。这些单子在整数价位上堆成一堵墙,价格走到这里,就更容易被挡住。这个习惯,今年有,去年有,明年大概率也还有。 这就是「历史会重演」最扎实的形式:不是图形在重演,是人的行为在重演。 整数价位和支撑阻力的关系,第 9 篇会展开。
更准确的说法:
产生某种价格模式的行为原因如果还在,这个模式就可能继续出现。
所以它会在两种情况下失效:
- 参与者的结构变了。比如 2024 年 1 月美国批准比特币现货 ETF 之后,大量通过 ETF 买入的机构和长期投资者进入市场,交易行为和过去以散户为主时不一样了。以前的某些模式,可能因此变弱或消失。
- 一个模式被太多人发现和利用。如果所有人都知道「价格到了 30,000 会反弹」,就会有人提前在 30,100 买,再有人在 30,200 买,结果反弹提前发生在别处,30,000 本身反而失去了意义。
✋ 小检查
有人说:「这个形态在过去十年里出现了 20 次,每次后面都涨了,历史会重演,所以这次也会涨。」按照这一节的说法,你至少应该追问他哪两个问题?
八、三种分析方法,各自回答什么问题
在交易里,常听到三种说法:基本面分析、技术分析、量化交易。它们经常被说成是互相竞争的「流派」。但更准确的理解是:它们回答的是不同的问题。
还是用 2021 年 2 月 8 日这一天,看三种方法各自会问什么:
| 核心问题 | 在 2021-02-08 这一天会问 | 主要用的数据 | |
|---|---|---|---|
| 基本面分析 | 这个资产值多少? | 一家上市公司把现金换成比特币,会不会带动更多公司这么做?这对比特币的长期需求意味着什么? | 财报、宏观数据、行业数据、链上数据 |
| 技术分析 | 市场参与者正在怎么交易?价格在哪些位置会有反应? | 价格在 38,000 到 39,500 之间横了一天,现在放量突破,新的关键位置在哪?如果判断错了,在哪里认错? | 价格、成交量及其衍生数据 |
| 量化交易 | 一个规律在统计上是否可靠?能不能系统地执行? | 「横盘后放量突破」这种情况,历史上出现过多少次?之后的收益分布是什么样?扣掉成本还剩多少? | 任何可以量化的数据 |
几点说明:
这三种方法不互相排斥。 一个交易者完全可以用基本面判断「长期看好」,用技术分析决定「在哪里买、止损放哪」,再用量化方法检验「这套买卖规则过去是否有效」。
这门课是技术分析,但会大量用到量化的方法。 原因很简单:技术分析里有大量说法,比如「放量突破可靠」「顶背离要跌」,它们听起来都有道理,但到底可不可靠,必须用数据检验。只有技术分析的判断,没有量化的检验,你就分不清哪些说法是真的。
技术分析不回答「值多少」。 这不是它的缺点,是它的分工。就像第六节说的,价格图上根本没有「价值」这个信息。
九、时间尺度改变一切
同一个方法,放在不同周期上
假设你有一条规则:「价格从下方穿过 20 根 K 线的均线时买入。」
同样这条规则,放到 2025 年全年的 BTC 数据上:
| K 线周期 | 这一年里触发的次数 |
|---|---|
| 1 分钟线 | 30,832 次 |
| 1 小时线 | 523 次 |
| 日线 | 20 次 |
同一条规则,触发次数差了一千五百倍。这已经不是「同一个方法」了。
波动和成本的比例
次数不同,只是表面。更根本的差别在于:每根 K 线的波动大小,和你每次交易要付的成本,比例完全不同。
每次交易都有成本。假设你用吃单的方式交易,单边手续费是 0.05%,一买一卖两次,就是 0.1%。(这还没有算买卖价差和滑点,第 28 篇会完整讲成本。)
下面统计 2025 年 BTC 在不同周期上,每根 K 线从开盘到收盘的涨跌幅度(取绝对值),看它和 0.1% 的成本比起来怎么样:
m = load("data/1m/BTCUSDT-1m-2025-*.zip") # 2025 年全年 1 分钟 K 线
agg = {"open": "first", "high": "max", "low": "min", "close": "last", "volume": "sum"}
fee = 0.001 # 一买一卖两次吃单,每次 0.05%
for tf in ["1min", "5min", "15min", "1h", "4h", "1D"]:
bars = m.resample(tf).agg(agg).dropna() # 把 1 分钟线合成更长的周期
move = (bars["close"] / bars["open"] - 1).abs() # 每根 K 线的涨跌幅绝对值
print(f"{tf:>5} K线数 {len(bars):>6} 波动中位数 {move.median():.4%} "
f"不够付手续费的比例 {(move < fee).mean():.1%}")
输出:
1min K线数 525600 波动中位数 0.0246% 不够付手续费的比例 92.1%
5min K线数 105120 波动中位数 0.0585% 不够付手续费的比例 70.2%
15min K线数 35040 波动中位数 0.1037% 不够付手续费的比例 48.5%
1h K线数 8760 波动中位数 0.2003% 不够付手续费的比例 27.6%
4h K线数 2190 波动中位数 0.4098% 不够付手续费的比例 14.6%
1D K线数 365 波动中位数 1.1332% 不够付手续费的比例 7.7%
(resample 是把短周期 K 线合成长周期 K 线的方法,第 6 篇会详细讲。)
读一下这张表:
- 1 分钟线:一根 K 线从开盘到收盘,波动的中位数只有 0.0246%,是手续费的四分之一。92.1% 的 1 分钟 K 线,整根走完都不够付一次往返手续费。
- 1 小时线:波动中位数 0.2%,大约是手续费的 2 倍,有 27.6% 的 K 线不够付手续费。
- 日线:波动中位数 1.13%,是手续费的 11 倍,只有 7.7% 的 K 线不够付。
⚠️ 这里有一个很常见的误解:「短周期就是长周期的缩小版,在日线上管用的方法,放到 5 分钟线上也一样管用,只是节奏快一点。」
这张表说明不是这样。成本是按次数收的,固定不变;波动却会随着周期变短而变小。 周期越短,成本在每次波动里吃掉的比例越大。同一个方法,在日线上可能扣完成本还有得赚,放到 1 分钟线上,成本就已经吃掉了全部的波动。
再回到二手车场想一想:每次买卖一辆车,都要付给车场一笔固定的中介费。如果你打算今天买、下个月卖,车价的涨跌通常远远大于这笔中介费。如果你打算上午买、下午卖,车价在半天里几乎不动,中介费就成了你最大的开销。
所以,谈论任何一个技术分析方法,都必须先说清楚:在什么时间尺度上?
这门课的主线用日线和 4 小时线。原因就在这张表里:在这个尺度上,波动足够覆盖成本,交易次数也足够多,可以做有意义的统计。
十、技术分析能回答什么,不能回答什么
把这一篇讲过的东西合起来,可以画出技术分析的边界了。
| 技术分析能回答 | 技术分析不能回答 |
|---|---|
| 当前的市场处在什么状态:趋势、震荡,还是在转换中 | 价格一定会去哪里 |
| 哪些价位是关键位置,可能聚集了大量订单 | 这个资产值多少 |
| 在某个位置上,可能有哪些人的订单(止损、强平、挂单) | 价格为什么涨或跌(具体是哪条消息、哪个人) |
| 如果判断错了,应该在哪个价位认错离场 | 在某个时刻,具体是谁在买、谁在卖 |
| 当前的波动有多大,一笔交易应该下多少 | 图上没有的信息:未公开的消息、其他市场的情况 |
| 一条交易规则在历史上的表现如何(配合量化检验) |
左边这一列,就是这门课接下来要一项一项教的东西。
右边这一列,对应的就是第六节那张表里「价格图没有记录」的内容。一张图上没有的信息,再精巧的工具也算不出来。 学技术分析,就是学怎么把左边这一列做到最好。
十一、小结
-
每一笔成交都是一买一卖,任何时间段里,买入的总量永远等于卖出的总量。「买的比卖的多所以涨」,在数量上不可能成立。
-
价格变动的真正机制,是吃单的人和挂单的人之间的相互作用。 着急的一方吃掉耐心一方的挂单,把价格推向一边。价格动多少,取决于吃单的量有多大,也取决于被吃的那一侧挂得有多厚。挂单和撤单本身也会改变价格,但 K 线看不到它们。
-
主动买入多,不一定收阳线。 BTC 全部历史里,42.1% 的上涨日主动买入不到一半。
-
价格不是价值。 价格是某个市场、某个时刻的一笔成交;同一分钟里,现货和合约的最低价可以差 1,312 美元。价格图记录的是交易行为的结果。
-
技术分析的三个前提,每一个都有成立的条件:
- 市场行为包含信息:只包含已公开、并且有人据此交易的信息
- 价格以趋势方式运动:「明天延续今天」在 BTC 日线上不成立(46.7%),趋势是一个需要在特定时间尺度上检验的假设
- 历史会重演:重演的是人的行为,比如在整数价位挂单(实际出现次数是随机预期的一千多倍);行为原因消失,模式就会失效
-
基本面、技术、量化回答不同的问题:值多少、正在怎么交易、规律是否可靠。
-
时间尺度改变一切。 成本按次收,波动随周期变短而变小。2025 年 BTC 的 1 分钟 K 线有 92.1% 不够付一次往返手续费,日线只有 7.7%。
最后再回到二手车场一次。你站在场子门口,看到今天成交价一路走高,成交记录一页比一页长。这份记录告诉你今天发生了什么:多少辆车在什么价格成交了。它不告诉你是谁、为什么,也不告诉你这车到底值多少钱。
技术分析,就是一门认真读这份成交记录的学问。下一篇,我们换一个问题:你每做一笔交易,钱是从谁的口袋里来的?
练习
练习 1(概念) 某个 1 小时 K 线的成交量是 5,000 个,主动买入占比 30%。请问主动卖出多少个?这一小时里被动买入(挂着买单、被别人吃掉的)一共是多少个?
练习 2(计算) 使用第三节的初始订单簿(卖单 100.00 × 2、100.50 × 3、101.00 × 5;买单 99.50 × 4、99.00 × 6)。一个着急的卖家要立刻卖出 7 个。请算出:每一笔的成交价格和数量、平均成交价、最后一笔成交价。
练习 3(计算) 接练习 2。卖家成交之后,一个着急的买家立刻买入 2 个。把练习 2 和练习 3 的全部成交合成一根 K 线,写出开盘价、最高价、最低价、收盘价、成交量、主动买入占比。它是阳线还是阴线?
练习 4(思考) 第九节的表格里,15 分钟线「不够付手续费的比例」是 48.5%。如果手续费从单边 0.05% 降到单边 0.02%(往返 0.04%),你认为这个比例会怎么变化?1 分钟线的比例会降到 50% 以下吗?(提示:看「波动中位数」那一列。)
练习 5(思考) 第七节说「历史会重演」在「参与者结构变了」的时候会失效。请再举一个例子:某种市场参与者的进入或退出,可能让过去的某个价格模式失效。说明你认为是哪种行为原因消失了。
小检查答案
第三节小检查
- 成交量 = 主动买入 + 主动卖出 = 8,000 + 2,000 = 10,000。
- 被动卖出:每一笔主动买入,对面都是一个挂着的卖单,所以被动卖出 = 主动买入 = 8,000。(同理,被动买入 = 主动卖出 = 2,000。总的买入量 = 8,000 + 2,000 = 10,000,总的卖出量 = 8,000 + 2,000 = 10,000,两边相等。)
- 不一定是阳线。价格怎么动,还取决于买卖两侧各自挂了多厚,以及这些成交发生的先后顺序。第三节的例子里,主动买入占 60%,K 线却收阴。
第七节小检查
至少应该追问:
- 产生这个形态的行为原因是什么? 如果说不出是哪些人、出于什么原因在这里交易,就无法判断这个原因现在是否还在。
- 这 20 次是怎么选出来的? 是事先定好规则、在全部历史里机械地找出来的全部 20 次,还是人工看图挑出来的 20 次?人看图时,很容易只记住「后面涨了」的那些。另外,20 次本身是一个很小的样本(第 29 篇会讲多少次才够)。