Step 1:市场与基础
1. 核心概念通俗解(类比法)
A. 债券价格 vs. 收益率:那个“永远的跷跷板”
小白直觉:
你不要把债券当成“借条”,把它想象成一张**“面值 100 元的现金券”**,这张券在未来(比如一年后)一定能兑换成 100 元。
-
场景一: 你今天花 90元(价格)买下这张券。一年后你拿回 100 元。
-
你赚了 10 元,你的收益率大概是 11%。
-
场景二: 大家都来抢这张券,价格被炒高到了 99元。你还是只能拿回 100 元。
-
你只赚了 1 元,你的收益率只有 1%。
结论:
- 价格越贵(买入成本高),你锁定的收益率就越低。
- 价格越便宜(打折买),你锁定的收益率就越高。
这就是为什么 价格涨 = 收益率跌。在交易室里,听到“收益率下了”,意思就是“债券牛市来了,价格涨了”。
B. 久期 (Duration):对利率的敏感度
小白直觉:
想象你在玩跷跷板。
- 利率是跷跷板的支点。
- 债券价格是坐在跷跷板一头的人。
久期 = 跷跷板的长度。
- 短久期(比如 1 年期债券): 板子很短。支点(利率)稍微动一下,你(价格)晃动的幅度很小。风险低,波动小。
- 长久期(比如 30 年期债券): 板子极长。支点(利率)只要轻轻动一下,你(价格)就会被抛上天或者重重摔在地上。风险高,波动极大。
HFT 考点: 高频交易员喜欢波动,所以有时候会利用长久期债券的剧烈波动来赚钱,或者用它来对冲风险。
2. 战场在哪里:银行间 vs. 交易所
固收高频交易(HFT)主要涉及两个“平行世界”,它们通过套利连接在一起。
A. 银行间市场 (CIB – China Interbank Bond Market)
- 形象比喻: 批发市场 (Costco)。
- 谁在玩: 银行、保险、大基金。都是大佬。
- 怎么玩: 主要是 OTC (场外交易)。以前是打电话/QQ谈价格,现在越来越多通过电子平台(如 X-Bond, QB 等)点击成交。
- 特点: 量巨大(一笔几个亿),但是成交速度相对慢(相比股票)。
- HFT 现状: 正在崛起。现在有很多算法在银行间市场自动“扫货”或做市。
B. 交易所市场 (Exchange – SSE/SZSE/CFFEX)
- 形象比喻: 股票市场/超市。
- 谁在玩: 券商、私募、高频交易公司、散户(少部分)。
- 怎么玩: LOB (限价订单薄)。就像买卖股票一样,大家把单子挂在系统里,系统自动撮合。
- 特点: 标准化,速度极快,数据透明。
- HFT 核心战场: 国债期货 (Treasury Futures) 就在这里(中金所)。这是 HFT 最活跃的地方,因为它可以加杠杆,且T+0,流动性极好。
⚡️ HFT 的终极密码:
HFT 经常盯着交易所的“期货”和银行间的“现货”。如果期货涨了,现货还没动,机器就会瞬间买入现货,卖出期货,赚取那个微小的时间差。
3. 面试模拟:经典基础题 (含答案)
现在,深呼吸,假设我正看着你的简历,随口问了你两个问题。
面试题 Q1:宏观逻辑题
面试官: “如果明天央行突然宣布降息(降低基准利率),你手里的长久期国债和短久期国债,哪个赚得更多?为什么?”
- 你的思考逻辑:
- 参考回答(小白进阶版):
“长久期国债赚得更多。
因为降息意味着收益率下行,进而推高债券价格。根据久期的定义,久期是衡量价格对利率变动敏感度的指标。长久期债券的敏感度更高,同样的利率下降幅度,长债的价格涨幅会显著大于短债。”
面试题 Q2:快速估算题
面试官: “一个债券的久期是 5。如果市场收益率瞬间上行了 10 个基点 (10bps),债券价格大概怎么变?给我一个具体的数字。”
- 你的思考逻辑:
- 参考回答:
“价格大约会下跌 0.5%。
计算逻辑是:久期 5 意味着收益率每变化 1%,价格反向变化 5%。现在收益率上升 0.1%(10bps),所以价格下跌 5 * 0.1% = 0.5%。”
Step 2:微观结构 (Microstructure)**。
这是 HFT 交易员每天盯着看的东西。这一关的目标是让你拥有一双“透视眼”,看懂数字背后的博弈。
1. 解剖订单薄 (LOB)与核心术语
LOB (Limit Order Book,限价订单薄) 就是一个排队系统。所有的买单和卖单都按照价格优先、时间优先的原则在这里排队。
文字图示:你的战场
想象你面前的屏幕上是这样一串数字(这叫“盘口”):
价格 (Price) 数量 (Qty) 角色
————————————
100.05 50 卖五
100.04 100 卖四
100.03 200 卖三
100.02 500 卖二
100.01 1000 卖一 (Best Ask/Offer) -> 最便宜的卖家
————————————
(这里是真空地带)
————————————
100.00 800 买一 (Best Bid) -> 最出价最高的买家
99.99 600 买二
99.98 200 买三
…
- Ask (卖价/Offer): 楼上的数字。卖家希望卖出的价格。越低越好(对于买家来说)。
- Bid (买价): 楼下的数字。买家愿意支付的价格。越高越好(对于卖家来说)。
- Spread (价差): 卖一 (100.01) 和 买一 (100.00) 之间的缝隙。
- 计算:100.01 – 100.00 = 0.01。
- 这个 0.01 就是Spread。
- 小白直觉: Spread 就是摩擦成本,也是做市商的利润来源。
2. Taker (吃单) vs Maker (挂单)
这是面试中最容易混淆但最重要的概念。
A. Maker (做市商/挂单者)
- 动作: 也就是把单子挂在 LOB 里排队(比如你在 100.00 挂单买入),等待别人来撞你。
- 心态: “我就坐在这儿等,谁急谁就输。”
- 比喻: 像是路边摆摊的小卖部。商品摆在那,等客人来买。
- 为什么 HFT 喜欢做 Maker?
- 赚价差 (Earn the Spread): 如果你在 100.00 买入,在 100.01 卖出,你就赚了 0.01 的无风险利润(假设价格没剧烈波动)。
- 被动收入: 你不需要预测未来是涨是跌,只要有人不停地买卖,你就能不停地从中间“剥头皮” (Scalping)。
- 交易所奖励: 很多交易所为了鼓励流动性,会给 Maker 返佣 (Rebate)(这在股票/期货中常见,即交易不花手续费,交易所反而给你钱)。
B. Taker (吃单者)
- 动作: 看到 100.01 有人卖,直接冲过去把它买下来。不排队,立即成交。
- 心态: “我不管价格稍微贵点,我现在立刻就要!”
- 比喻: 像是冲进小卖部扫货的顾客。
- 成本: 你要支付 Spread(买得贵,卖得便宜)和更高的手续费。
总结: 高频交易员(HFT)大部分时间在做 Maker (提供流动性赚差价),但在发现极好的机会(比如套利空间出现)时,会瞬间切换成 Taker (抢单)。
3. 场景模拟与面试题 (含答案)
现在,让我们模拟交易室里可能会发生的突发状况。
场景:盘口变宽了
正常情况下,国债期货的 Spread 只有 1 个跳动点 (Tick),比如 0.005。突然,你发现 Spread 变成了 0.05 (宽了 10 倍),中间空空荡荡,没人挂单。
Tick 是金融市场中 价格变动的最小单位。
面试题 Q1:市场直觉题
面试官: “如果你看到盘口 Spread 突然从 1 个 tick 变成了 5 个 ticks,这通常意味着什么?如果你是做市商 (Maker),你会怎么调整你的策略?”
- 你的思考逻辑:
- 参考回答:
“Spread 变宽意味着流动性枯竭和不确定性剧增。
这通常发生在重大数据发布前,或者市场出现剧烈单边波动时。
作为做市商,我的反应是:
面试题 Q2:博弈题
面试官: “在高频交易中,如果你作为 Maker 挂了一个买单在 ‘买一’ 的位置,结果瞬间被 Taker 吃掉了。下一秒价格迅速下跌。请问这里发生了什么?这在术语里叫什么?”
- 你的思考逻辑:
- 参考回答:
“这叫逆向选择 (Adverse Selection)。
意味着拥有更多信息或更快速度的 Taker 判定当前价格偏高,因此向我抛售。我作为 Maker 接了’有毒’的流(Toxic Flow),接到了‘飞刀’。这说明我的做市模型没有及时识别出即将到来的价格下跌趋势。”
Step 3:核心策略逻辑**。
这就是高频交易员每天都在思考的本质:“哪里有免费的午餐?” 和 “烫手的山芋扔给谁?”。
1. 期现套利 (Cash-Futures Arbitrage):最经典的搬砖
小白直觉:
想象国债现货是“真苹果”,国债期货是“苹果提货券”。
理论上,这两者的价格应该是非常接近的(扣除一点仓储费/资金成本)。
但有时候,市场疯了。
场景:期货涨得比现货快(期货贵,现货便宜)
- 现象: 提货券(期货)被炒到了 105 元,而真苹果(现货)还在 100 元。
- 操作(正向套利):
- 利润: 105 – 100 = 5元(无风险利润,扣除资金成本后即为纯利)。
HFT 里的玩法:
机器不会等到交割。机器利用的是毫秒级的价差。一旦发现两者偏离了“正常轨道”,立刻 Buy Spot + Sell Future。等到两者价差缩小时,再反向平仓,瞬间落袋为安。
2. 做市策略的“库存风险” (Inventory Risk)
小白直觉:
做市商 (Maker) 就像一个倒卖二手房的中介。你的目标是“早上收房,下午卖掉”,只赚中介费。
什么是库存风险?
就是**“房子砸手里了”**。
- 场景: 你刚刚接了某人抛售的一套房(买入成交),手里现在有 1 套库存。
- 理想情况: 下一秒有个买家来,你加价卖给他,库存清零 (Flat),赚了差价。
- 库存风险爆发: 突然楼市崩盘(利空消息)。没人来买房了,或者买家出价极低。你手里这套房的价值在飞速下跌。
- HFT 应对:
为了不让库存砸手里,你会疯狂调整你的报价: - 疯狂降价卖出 (Skew to Ask): 拼命把卖价挂低,只求有人把这“烫手山芋”接走。
- 拒绝买入: 把买价撤掉或者挂得极低,绝不进新货。
结论: 高频交易员最怕的不是赚得少,而是库存并不为零时的单边行情。
3. 面试逻辑推理题 (Logic Puzzle)
这道题不考复杂的公式,考的是你对价格关系的直觉。面试官非常喜欢问这种三角关系题。
题目:不可能的三角形
面试官: “假设市场上有三种国债产品,它们几乎完全一样(风险、期限都相同),我们可以把它们看作 A、B、C。
现在的市场报价是:
- A 比 B 贵 (A > B)
- B 比 C 贵 (B > C)
- C 比 A 贵 (C > A)
你的思考逻辑 (Cheat Sheet)
- A 比 B 贵 -> 卖 A 买 B(赚差价)。
- B 比 C 贵 -> 卖 B 买 C(赚差价)。
- C 比 A 贵 -> 卖 C 买 A(赚差价)。
参考回答
回答 1: “在有效市场理论中这是不可能的,因为它违反了传递性。但在现实的高频微观结构中,由于流动性差异或系统延迟,这种短暂的‘价格错乱’是有可能出现的。”
回答 2(高分操作):
“我会执行一个三角套利 (Triangular Arbitrage) 策略:
最终结果:
- 我的 A、B、C 仓位全部抵消了(买卖各一次,净头寸为零)。
- 但我转了一圈,把三个价差全部装进了口袋。”
Step 4:技术与风控。
这是面试官判断你是否“靠谱”的关键。策略再好,如果风控不行,公司明天就倒闭了。技术方面,小白只需要懂原理,不需要懂代码。
1. 物理距离与 Colocation (托管/同位)
小白直觉:
想象你在抢周杰伦演唱会的门票。
售票窗口 8:00 开门。
- 你 A: 坐在售票处隔壁的网吧,连着售票处局域网。
- 对手 B: 在美国,通过跨洋电话线拨号。
谁能抢到?当然是你。不是你手速快,是物理距离近。
HFT 的核心逻辑:
- 光速是有限的(约 30万公里/秒)。
- 数据在光纤里跑,每多跑 100 公里,就会产生约 1 毫秒 (ms) 的延迟。
- 对于 HFT,1 毫秒 = 1 个世纪。在这一瞬间,价格可能已经变了。
Colocation (Co-lo) 是什么?
就是把你的交易服务器,直接搬进交易所的机房大楼里,放在交易所撮合引擎的隔壁。
- 这样你的网线只有几米长。
- 既然大家都在拼速度,最后拼的就是谁的网线短。
2. 算法疯了怎么办?(The Kill Switch)
场景:
你写了一个策略,原本设计是“跌了就买”。结果代码有个 Bug,写成了“跌了就加倍买”。市场大跌,你的程序在一秒钟内下了 1000 个买单,亏损在疯狂跳动。
Q: 第一步做什么?
- 错误答案: 赶紧打开代码看哪里写错了(Debug)。
- 错误答案: 喊老板来看。
- 正确答案: 拔网线 / 按下红色按钮 (Kill Switch)。
核心原则:先止血,再查病。
HFT 交易速度极快,几秒钟就能亏光一个亿。你必须有一个物理或软件层面的“紧急停止”开关,切断所有交易,撤销所有未成交订单 (Cancel All)。
3. 情景面试题 (含答案)
这道题考察你的职业操守和危机处理能力。
题目:胖手指 (Fat Finger) 危机
面试官: “假设你是个交易员,刚才本来想买 10 手国债期货,结果手抖多按了几个零,敲成了买 10,000 手(胖手指)。这个巨额买单瞬间成交了,把市场价格拉高了一大截,但随后价格迅速回落,你现在账面浮亏巨大(几十万)。
此时没人发现。你会怎么做?
A. 赶紧偷偷反向操作,慢慢把仓位平掉,祈祷能把亏损赚回来。
B. 立刻向风控主管报告。
C. 假装没事,等价格涨回来。”
你的思考逻辑
参考回答 (高情商版)
“我会立刻向主管和风控部门报告,并同时请求交易室授权,协助我以最小的市场冲击成本平掉这 10,000 手错误仓位。
理由是:
以下是知识点拓展:
既然你要挑战深水区,那我们就撕掉“新手保护膜”。接下来的内容是交易员面试中区分“小白”和“半专业人士”的分水岭。
如果说刚才学的是“怎么开车”,现在我们要学的是“引擎原理”和“空气动力学”。
进阶模块一:隐形订单与微观博弈 (Advanced Order Types)
在 LOB(订单薄)上看到的数字,并不全是真实的。有些大玩家会“藏”牌。
1. 核心知识点:冰山订单 (Iceberg Orders)
- 原理: 大机构想买 10,000 手,但如果直接挂出来,会把卖方吓跑(价格瞬间上涨)。所以他使用算法,只显示 100 手(露在水面上的冰山一角)。每当这 100 手被吃掉,系统自动毫秒级补单 100 手,直到买完 10,000 手。
- HFT 猎手视角: 高频策略会去探测冰山。
- 探测方法: 如果你在 100.00 价位看到 100 手卖单,被人吃掉了,结果瞬间又冒出来 100 手,反复多次,价格却打不下去。这就说明这里藏着一个巨大的冰山。
- 策略: 立刻停止做空,甚至反手做多,因为这个大买家在托底。
2. 核心知识点:IOC 与 FOK
- IOC (Immediate or Cancel): “这就吃掉,吃不完剩下的撤单”。防止因为流动性不足,吃到了价格很差的单子。
- FOK (Fill or Kill): “要么全给我,要么拉倒”。
🔥 进阶面试题 (Level 2)
面试官: “在观察 LOB 时,你发现买一档位(Best Bid)的挂单量一直维持在 50 手,但成交明细(Trade Log)显示在这个价位已经成交了 2000 手。这说明了什么?你会如何利用这个信息构建策略?”
参考答案:
“这说明该价位存在冰山订单 (Iceberg Order) 或刷新算法 (Reload Algorithm)。大资金在隐藏真实的买入意图。
策略上: 这是一个强烈的支撑信号。
进阶模块二:信号挖掘之源——OFI (Order Flow Imbalance)
刚才我们看了价格,现在我们要看“流”(Flow)。这是 HFT 最核心的短期预测指标。
1. 核心知识点:OFI (订单流不平衡)
-
直觉: 价格为什么会动?因为买卖力量不平衡。
-
定义:
-
如果买单(Bid)的量增加了,或者卖单(Ask)撤单了 -> 买压增强 (Positive OFI)。
-
如果卖单(Ask)的量增加了,或者买单(Bid)撤单了 -> 卖压增强 (Negative OFI)。
-
公式(简化版): OFI = (当前买一量 – 上一刻买一量) – (当前卖一量 – 上一刻卖一量)。
-
结论: OFI 和未来几秒的价格变化有极强的正相关性。
🔥 进阶面试题 (Level 2)
面试官: “很多人看 MACD 或 KDJ 做交易,为什么高频交易不看这些指标,而是看 OFI?它们本质的区别是什么?”
MACD:指数平滑移动平均线。跟踪趋势的指标,用来判断趋势的强度和转折点。
KDJ:随机指标。衡量价格在近期波动区间内的相对位置,主要用于判断超买超卖。
参考答案:
“本质区别在于滞后性和微观驱动力。
HFT 需要预测未来几毫秒的微小变动,必须观察成因层(LOB Dynamics),而不是结果层(Price History)。”
进阶模块三:债券特有的非线性——凸性 (Convexity)
刚才如果你只懂“久期”,面试官会觉得你合格;如果你懂“凸性”,面试官会觉得你有潜力。
1. 核心知识点:久期不够用了
- 回顾: 久期是线性的(直线)。它假设利率变动和价格变动是直来直去的。
- 现实: 债券价格曲线其实是弯曲的 (Curved),像一个碗一样。
- 凸性 (Convexity): 就是这个弯曲的程度。
- 涨多跌少属性: 对于正凸性的债券,当利率下跌(利好)时,价格涨得比久期预测的多;当利率上涨(利空)时,价格跌得比久期预测的少。
- HFT 意义: 在剧烈波动市场中,凸性大的债券更值钱。如果你在做对冲,只对冲久期(Delta)是不够的,你还得对冲凸性(Gamma)。
🔥 进阶面试题 (Level 2)
面试官: “我在做期现套利时,已经把期货和现货的久期(DV01)完全对冲成 0 了。这是否意味着我在利率变动时绝对安全,没有任何风险了?”
参考答案:
“不是,仍然存在凸性风险 (Convexity Risk) 和 基差风险 (Basis Risk)。
CTD切换:CTD(Cheapest To Deliver) 就是计算后 对空头最划算、成本最低的那一只国债。
进阶模块四:执行与回测的陷阱 (Execution & Backtesting)
这一部分考察你是不是“纸上谈兵”。
1. 核心知识点:滑点 (Slippage) 与 市场冲击 (Market Impact)
- 滑点: 你想在 100.00 买,但你下单太慢,或者单子太大,最后实际成交均价是 100.05。这 0.05 就是滑点。
- 市场冲击: 你的单子太大了,把你买入方向的流动性全部吃光了,导致是你自己把价格买上去了。HFT 非常忌讳这个,因为这意味着你在“花钱买高价”。
2. 核心知识点:前视偏差 (Look-ahead Bias)
- 小白错误: 回测时,用今天的收盘价去决定今天早上的开仓。这就好比拿着彩票中奖号码去买彩票。
- HFT 版的前视偏差: 使用了当前时刻还未到达的数据。比如,你的策略在 T 时刻下单,利用了 T 时刻的 Close Price,但在真实世界中,T 时刻你只能看到 Bid/Ask,还没成交出 Close Price。
🔥 进阶面试题 (Level 2)
面试官: “我看你的回测报告,夏普比率 (Sharpe Ratio) 高达 10,年化收益 200%。但我为什么觉得这个模型在实盘中一定会亏钱?你觉得新手回测最容易忽略什么成本?”
参考答案:
“高夏普通常意味着过拟合或忽略了交易成本。
新手最容易忽略:
这就对了。既然前面你已经展示了很好的吸收能力,我们要进入**“深水区”。这部分内容通常是量化研究员 (Quant Researcher)** 或 资深交易员 才会涉及的领域。
如果你能在面试中抛出这些概念,面试官会认为你不仅懂“怎么做”,还懂“为什么这么做”。
进阶模块五:基差交易与 CTD (Basis Trading & CTD)
这是国债期货最核心、最复杂的定价逻辑,也是套利策略的**“圣杯”**。
1. 核心知识点:最便宜可交割券 (CTD – Cheapest to Deliver)
- 痛点: 国债期货(比如 TF2403)虽然对应的是“5年期国债”,但市面上5年期的国债有很多只(230018, 230022 等等)。到了交割日,空头(卖方)有权选择任何一只符合标准的债券给多头。
- 人性: 既然我可以随便选,我肯定选最便宜的那只给你。这只券就叫 CTD。
- HFT 影响: 国债期货的价格,实际上是 CTD 券的价格 / 转换因子。
- 风险点(CTD Switch): 随着行情波动,原本最便宜的券A,可能突然变贵了,券B 变成了新的 CTD。这时候期货价格的定价逻辑会瞬间“跳变”。
2. 核心知识点:基差 (Basis)
-
公式:
-
也就是:现货价格 – 期货调整后的价格。
-
收敛逻辑: 随着交割日临近,基差必须归零(或者趋向于持有成本)。如果不归零,就存在巨大的无风险套利机会。
-
交易策略:
-
买入基差 (Long Basis): 买现货 + 卖期货。赌基差变大(或者赚取持有收益)。
-
卖出基差 (Short Basis): 卖现货 + 买期货。赌基差缩小。
🔥 深度面试题 (Level 3)
面试官: “如果在交割月前夕,你发现国债期货的基差(Basis)长期维持在负数(即期货价格 > 现货价格),这种现象叫什么?通常是什么原因导致的?”
参考答案:
“这叫做基差倒挂 (Negative Basis) 或 期货升水 (Contango)。
在国债市场,这通常意味着融资成本极低(Repo Rate 很低)。
逻辑是: 理论上期货价格 = 现货价格 + 资金成本(Cost of Carry)。如果资金成本极低,甚至低于债券的票息收入(Carry is positive),持有现货比持有期货更划算,大家都会买现货抛期货,导致期货价格相对现货偏低(正常情况)。
但如果倒挂,往往是因为空头交割意愿极低或者现货券极其稀缺(借券困难),导致期货被逼仓推高。”
进阶模块六:微观特征工程 (Microstructure Features)
HFT 既然是机器做,机器需要“吃”特征。除了 OFI,还有更细腻的指标。
1. 核心知识点:加权中间价 (WMP – Weighted Mid Price)
- 普通中间价:
。
-
缺点: 哪怕 Bid 只有 1 手,Ask 有 1000 手,中间价还是在正中间。这不合理,价格明显倾向于跌。
-
加权中间价: 考虑了挂单量的重心。
-
注意: 十字交叉相乘。如果 Ask 量巨大,WMP 会被压向 Bid 侧。
-
用途: HFT 预测价格时,用 WMP 替代 Mid Price 会更准确,能捕捉到压单 (Order Book Pressure) 的信息。
2. 核心知识点:队列位置估计 (Queue Position Estimation)
-
问题: 你在 100.00 挂了 10 手买单(Maker)。你前面已经排了 500 手。
-
信息盲区: 交易所通常不告诉你“你在第几名”。
-
算法: 你需要写一个算法记录 FIFO(先进先出)。
-
看到屏幕上成交了 200 手 -> 你估算自己前面还有 300 手。
-
看到有人撤单了 50 手 -> 你很难判断这 50 手是在你前面撤的(你好事)还是在你后面撤的(和你无关)。
-
HFT 决断: 如果你估算自己在队尾,而市场变得对你不利,赶紧撤单,别傻等。
🔥 深度面试题 (Level 3)
面试官: “构建高频预测模型时,我发现 WMP(加权中间价)虽然好,但在买一卖一量级差异巨大时(比如 Bid 1手,Ask 1000手),会产生严重的虚假信号。你会怎么处理这种数据噪音?”
参考答案:
“这种情况会导致 WMP 剧烈跳动,产生‘伪趋势’。我会引入平滑处理或阈值限制:
超过一定比例(如 1:100)时,认为流动性失真,降低该特征的权重。
2. 多档位加权: 不只看 Level 1,而是计算 Level 1-5 的综合加权价格。因为 Level 1 可能被 HFT 操控(Spoofing),但操控 5 档深度的成本太高,所以多档位数据更真实。”
进阶模块七:融资与回购 (Repo & Funding)
做债如果不谈钱(融资成本),就是耍流氓。
1. 核心知识点:R001 / GC001
- 概念: 债券交易大部分是加杠杆的。你只有 1 亿本金,通过回购(把买来的债抵押出去借钱),可以买 5 亿的债。
- R001: 银行间市场的“隔夜回购利率”(大户用的)。
- GC001: 交易所的“国债逆回购”(散户/小机构用的)。
- HFT 影响:
- 资金紧(利率飙升): 大家借不到钱,只能抛售债券换现金 -> 债市大跌。
- 资金松(利率地板): 大家借钱太便宜,疯狂借钱买债套利 -> 债市大涨。
🔥 深度面试题 (Level 3)
面试官: “如果在下午 14:30,交易所的 GC001(一天期回购利率)突然从 2% 飙升到 10%。作为国债期货的高频交易员,你会预期接下来的几分钟期货价格怎么走?为什么?”
参考答案:
“我会预期国债期货价格快速下跌。
逻辑链条:
ML 在债市 HFT 中的核心应用场景及针对性面试题。
场景一:微观价格预测 (Short-term Alpha Prediction)
这是最直接的应用:预测未来 100毫秒、1秒 或 1分钟后的价格变动方向(上、下、不动)。
1. 核心逻辑:从线性到非线性
-
线性模型 (Linear Models): OLS, Lasso, Ridge。
-
应用: 极高频(纳秒/微秒级)。因为计算极快,可以直接烧在 FPGA 芯片里。
-
特征: OFI, 过去5个 tick 的回报率。
-
树模型 (GBDT/LightGBM/XGBoost):
-
应用: 中高频(毫秒级)。目前业界的主力军。
-
优势: 能捕捉特征之间的非线性交互(比如:当 Spread 很大 且 卖一量很小时,价格才会跌)。
-
深度学习 (Deep Learning – LSTM/Transformer/CNN):
-
应用: 相对低频(秒级/分钟级)或作为离线特征提取器。
-
痛点: 推断延迟 (Inference Latency) 太高。HFT 等不起几毫秒的矩阵运算。通常需要模型蒸馏 (Distillation) 或者量化 (Quantization)。
2. 债市特有特征 (Features)
- Yield Curve Shape: 国债特有的收益率曲线形态作为特征。
- 跨品种价差: 比如 10年期国债 (T) 和 5年期国债 (TF) 的盘口数据同时输入模型,预测 T 的走势。
🔥 面试必考题 (ML + HFT)
面试官: “你训练了一个 LightGBM 模型预测下一个 tick 的中间价涨跌,AUC 达到了 0.6(很高了)。但是上线后发现不仅不赚钱,还因为延迟亏损。
问题: 在高频场景下,你会如何权衡模型复杂度与推断速度?如果必须使用这个复杂的模型,你在工程上有什么优化手段?”
参考答案:
“这是一个经典的 Latency vs. Accuracy 权衡。
- 特征预计算 (Pre-computation): 很多特征(如移动平均)可以在数据进来时增量计算,不要等到预测时再算。
- 剪枝与量化: 限制树的深度,或者将浮点数运算转化为整数运算。
- C++ 重写: 不要用 Python 的 predict,将训练好的树结构导出为 C++ 代码(如 switch-case 结构)直接编译进交易系统。”
场景二:智能执行算法 (Algorithmic Execution / SOR)
如果你不想做预测(Alpha),你可以做执行(Execution)。即:大资金要买 1000 手,怎么买冲击成本最小?
1. 核心应用:强化学习 (Reinforcement Learning – RL)
- Agent (智能体): 交易算法。
- Environment (环境): 订单薄 (LOB)。
- Action (动作): 挂单(Maker)还是吃单(Taker)?挂在买一还是买二?
- Reward (奖励): 成交均价优于 VWAP (成交量加权平均价) 的程度 – 惩罚项 (未成交的风险)。
- 应用场景: 用 RL 训练出一个“老交易员”,让它学会自己在盘口里拆单、挂单、撤单。
2. 监督学习应用:成交概率预测 (Fill Probability)
- 问题: 我挂在“买三”的位置,未来 10 秒内成交的概率是多少?
- 模型: Logistic Regression 或 Survival Analysis (生存分析)。
- 用途: 如果模型预测成交概率极低,我就应该取消挂单,直接去吃单 (Taker),防止踏空。
🔥 面试必考题 (ML + HFT)
面试官: “我们想用强化学习 (RL) 来做订单执行。请问在设计 Reward Function(奖励函数)时,除了考虑‘买得便宜’,还必须加入什么惩罚项?如果不加,Agent 可能会学出什么‘作弊’或‘极度危险’的行为?”
参考答案:
“必须加入 库存惩罚 (Inventory Penalty) 和 时间紧迫度惩罚 (Time Urgency)。
如果只奖励‘买得便宜’:
修正: Reward = (基准价格 – 执行价格) – |当前库存| – 剩余时间反比。”
场景三:噪音过滤与特征工程 (Signal Processing & Feature Eng)
债市的数据信噪比 (Signal-to-Noise Ratio) 极低。ML 的核心工作往往不是调参,而是造特征。
1. 核心应用:LOB 截面数据挖掘
-
CNN (卷积神经网络) 的应用:
-
把 LOB (10档买卖量) 看作一张 2D 图片 (价格 x 时间)。
-
用 CNN 自动提取盘口的“形状特征”(比如:买单突然堆积形成的一堵墙)。
-
自编码器 (Autoencoder):
-
用于降维。把 100 维的盘口数据压缩成 5 维的“隐状态”,作为其他策略的输入,去除噪音。
2. 标签工程 (Label Engineering)
- 三分类问题: 涨、跌、平。
- 难点: 什么是“平”?如果涨了 1 个 tick 算涨吗?涨了 1 个 tick 马上跌回来算涨吗?
- 技巧: 使用 Horizon-agnostic 的标签,或者加入交易成本过滤。只有涨幅 > 手续费 + 滑点,才打标为“涨”。
🔥 面试必考题 (ML + HFT)
面试官: “在处理高频金融时间序列时,传统的 K-Fold 交叉验证 (Cross Validation) 有什么致命问题?你应该怎么做模型评估?”
参考答案:
“致命问题是 数据泄露 (Data Leakage) 和 破坏时序依赖。
正确做法: 使用 Walk-forward Validation (滚动窗口验证)。
训练 [1月-3月] -> 测 [4月]
训练 [2月-4月] -> 测 [5月]
严格保证 训练集时间 < 测试集时间。”
场景四:异常检测 (Anomaly Detection) – 风控侧
ML 不止用来赚钱,还用来保命。
1. 核心应用:胖手指与算法暴走检测
-
无监督学习 (Isolation Forest / One-class SVM):
-
学习“正常的市场状态”是什么样的。
-
当某只债券的流动性突然枯竭,或者你的策略下单频率突然偏离正态分布 3 倍标准差,模型立刻报警或熔断。
-
应用: 防止前面提到的“算法死循环”或“胖手指”把公司亏光。



