第八讲:融资利差模型——资金成本计算、期限结构匹配、杠杆率与融资成本关系
做市商这行,说白了就是赚两头的钱。一头是买卖价差,另一头就是我今天要讲的——融资利差。
我刚开始做结构化产品那会儿,总觉得策略对就能赚钱。后来发现,融资成本没算清楚,再好的策略也是白搭。有一次我设计了一个看起来很美的套利组合,回测收益高得吓人。结果一算实际融资成本,嗯,利润直接腰斩。从那以后,我对融资利差模型就格外上心。
资金成本计算:做市商的命门
做市商不是用自己的钱在玩。我们借钱,然后拿这些钱去持仓。资金成本就是借钱的利息。
资金成本怎么算?我习惯用这个公式:
资金成本 = 融资金额 × 融资利率 × 融资天数 / 365
看起来简单对吧?但坑就在融资利率上。
融资利率不是固定的。它取决于几个因素:
- 你的信用等级——大投行和小机构的利率能差几十个基点
- 抵押品质量——国债抵押和垃圾债抵押,利率天差地别
- 市场流动性——钱紧的时候,利率能飙到吓人
我个人习惯把资金成本拆成三块:
| 成本项 | 说明 | 典型范围 |
|---|---|---|
| 基准利率 | 比如SOFR、HIBOR | 取决于市场 |
| 信用利差 | 你的信用评级溢价 | 10-100 bps |
| 抵押品折扣 | 抵押品不足时的额外成本 | 5-50 bps |
你想想看,这三项加起来,一年可能就是100多个基点的成本。对于高频做市来说,这可不是小数目。
关键点:资金成本不是静态的。市场波动时,你的融资利率可能一天变好几次。我见过最极端的情况,2008年雷曼倒闭那会儿,有些机构的融资成本一夜之间从50bps飙到500bps。
期限结构匹配:别让期限错配坑了你
做市商最大的风险之一,就是期限错配。
什么意思?你借的是短期资金(比如隔夜),但持仓的是长期产品(比如一年期的结构化票据)。短期利率一涨,你的融资成本就跟着涨,但产品的收益是锁死的。这就是典型的「赚小钱、亏大钱」。
我建议用这个框架来匹配期限:
资产久期 ≤ 负债久期 + 容忍偏差
容忍偏差取决于你的风险偏好。保守的做市商可能设成0,激进的可能会放到30天。
期限匹配有几种常见策略:
- 完全匹配——借同样期限的资金,成本高但安全
- 滚动融资——借短期资金,不断续期,成本低但有风险
- 混合策略——部分长期、部分短期,平衡成本和风险
我在项目中遇到过一家做市商,他们专门做利率互换的做市。为了省成本,一直用隔夜融资来支撑半年期的互换头寸。结果美联储突然加息,隔夜利率三天涨了150bps。他们那一个月的利润全被融资成本吃掉了,还倒贴了不少。
避坑指南:我曾经犯过一个错误——只看平均融资成本,忽略了期限结构。后来发现,短期利率波动对利润的影响远大于长期利率。现在我做模型时,一定会把不同期限的融资成本分开算,再按头寸的久期加权。
杠杆率与融资成本的关系
杠杆率越高,融资成本就越贵。这个道理你想想就明白——借钱越多,风险越大,资金方自然要收更高的利息。
但具体怎么量化?我常用的模型是这样的:
融资利率 = 基准利率 + α × 杠杆率 + β × 波动率
其中α和β是经验参数。α通常在0.5到2之间,取决于市场环境和你的信用状况。
举个例子:
- 基准利率 5%
- α = 1.2
- 杠杆率 10倍
- 波动率项忽略
那么融资利率 = 5% + 1.2 × 10% = 17%
看到没?10倍杠杆就把融资成本从5%推到了17%。如果你的策略年化收益只有15%,那你就亏了。
这就是为什么很多做市商把杠杆率控制在5倍以内。不是不能加杠杆,而是加了杠杆后,融资成本会吃掉大部分收益。
核心公式:净收益 = 策略收益 - 融资成本 - 交易成本。融资成本 = 融资金额 × (基准利率 + 杠杆溢价)。杠杆溢价随杠杆率非线性增长。
融资利差模型的核心逻辑
好了,我们把上面三块串起来,就是融资利差模型的核心逻辑。
我习惯用这张图来理解整个体系:
这张图把三个核心模块串起来了。资金成本是输入,期限匹配是策略,杠杆率是放大器。三者共同决定了最终的融资利差。
实战中的融资利差模型
说了这么多理论,来点实际的。我常用的融资利差模型长这样:
def calc_funding_spread(position, leverage, tenor):
# 基准利率
base_rate = get_benchmark_rate(tenor)
# 杠杆溢价
leverage_premium = 0.5 * (leverage - 1) ** 1.5
# 期限溢价
tenor_premium = 0.1 * (tenor / 365) ** 0.5
# 总融资成本
funding_cost = base_rate + leverage_premium + tenor_premium
# 资产收益
asset_yield = position.expected_yield()
# 融资利差
funding_spread = asset_yield - funding_cost
return funding_spread
这个模型虽然简单,但抓住了核心。杠杆溢价用了1.5次方,模拟了非线性增长。期限溢价用了平方根,因为长期融资的成本增长会逐渐放缓。
小技巧:我建议你在实际模型中加入压力测试。比如,假设融资利率突然上升200bps,你的组合还能不能扛住?我每次做新策略前,都会跑一遍压力测试。宁可多花点时间,也不要在市场突变时手忙脚乱。
最后说一句,融资利差模型不是一成不变的。市场在变,你的信用状况在变,监管政策也在变。我每季度都会重新校准一次模型参数。嗯,这习惯帮我躲过了好几次坑。