融资融券余额:融资余额变化如何反映市场看多/看空情绪
融资融券,说白了就是券商借给你钱买股票(融资),或者借给你股票卖掉(融券)。这个数据我盯了快十年了。它最大的价值在于——真金白银堆出来的情绪,比任何分析师喊话都靠谱。
我个人习惯把融资余额看作市场的"杠杆温度计"。温度高了,说明大家借钱也要冲进去;温度低了,说明连老手都在撤退。今天咱们就把它拆开揉碎了讲清楚。
一、融资余额的本质:借钱买涨的意愿
融资余额,就是市场上所有融资买入尚未偿还的总金额。你想想看,一个人愿意借钱买股票,说明他对后市极度看好。反过来,如果大家都在还钱(融资余额下降),说明看空情绪在蔓延。
我在2020年做过一个回测,发现一个有意思的规律:
- 融资余额连续3日增长 → 短期看多情绪强烈,但要注意过热风险
- 融资余额单日暴增超过5% → 往往是阶段性顶部信号
- 融资余额持续下降超过10个交易日 → 市场进入冰点,反而可能是机会
核心逻辑:融资余额是"聪明钱"的杠杆行为。他们敢加杠杆,说明信心足;他们去杠杆,说明嗅到了风险。
二、数据获取:从哪儿拿?怎么拿?
融资融券数据每天收盘后公布,大概下午4点到5点之间。我常用的数据源有两个:
| 数据源 | 特点 | 获取方式 |
|---|---|---|
| 东方财富Choice | 数据全,历史长 | API接口 / Excel插件 |
| 聚宽/米筐 | 量化友好,Python直接调 | jqdata / rqdatac |
| 上交所/深交所官网 | 免费,但需要自己爬 | requests + BeautifulSoup |
我个人最常用的是聚宽,因为可以直接在策略里调用。下面给一段获取融资余额的代码:
import jqdata
import pandas as pd
from datetime import datetime, timedelta
# 获取最近60个交易日的融资余额
def get_margin_balance(end_date=None):
if end_date is None:
end_date = datetime.now().strftime('%Y-%m-%d')
# 融资余额指标代码:'margin_balance'
df = get_factor(
['margin_balance'],
end_date=end_date,
count=60
)
# 计算日变化率
df['change_pct'] = df['margin_balance'].pct_change() * 100
return df
# 调用示例
data = get_margin_balance('2024-01-15')
print(data.tail(5))
小技巧:我习惯把融资余额和沪深300指数叠加在一起看。如果融资余额创新高但指数没跟上,这叫"量价背离",往往是危险信号。
三、实战应用:三个核心场景
场景1:判断市场情绪极端值
融资余额有个特点——它会在一个区间内波动。我统计过2015年到2023年的数据,发现:
- 融资余额占流通市值比例 低于2% → 极度悲观,适合左侧布局
- 融资余额占流通市值比例 高于4% → 极度乐观,需要警惕
嗯,这里要注意。这个比例不是固定的,得根据市场环境动态调整。比如2015年牛市时,这个比例冲到过5.5%,但那是极端情况。
场景2:融资余额与指数背离
我曾经在2022年4月遇到过一个经典案例:
- 上证指数跌到2863点,创年内新低
- 但融资余额没有跟着创新低,反而开始企稳
- 这说明最恐慌的时候已经过去了,聪明钱在悄悄加杠杆
结果呢?后面两个月反弹了将近20%。这就是融资余额的领先指标作用。
场景3:个股融资余额变化
做个股择时的时候,我特别关注融资余额的突变:
# 筛选融资余额异常增长的个股
def find_abnormal_stocks(date, top_n=20):
# 获取全市场融资余额数据
all_stocks = get_all_securities(['stock']).index.tolist()
# 计算每个股票融资余额的5日变化率
df = get_factor(
['margin_balance'],
security=all_stocks,
end_date=date,
count=5
)
# 计算5日变化率
df['5d_change'] = df.groupby('code')['margin_balance'] \
.transform(lambda x: x.pct_change(4))
# 筛选变化率最大的前20只
result = df[df['date'] == date].nlargest(top_n, '5d_change')
return result[['code', '5d_change']]
避坑指南:我曾经踩过一个坑——看到某只股票融资余额暴增就追进去,结果第二天就跌停了。后来发现是游资在利用融资做短线,根本不是长期看好。所以一定要结合股价位置来看:低位放量融资是好事,高位放量融资要小心。
四、构建情绪指标:融资余额比率
光看绝对值不够直观,我习惯把它加工成一个比率指标:
融资余额比率 = 融资余额 / (融资余额 + 融券余额)
这个指标的好处是:
- 数值在0到1之间,方便比较
- 大于0.9说明极度看多
- 小于0.7说明看空情绪占上风
我自己的策略里,会用这个比率配合20日均线来做信号:
def margin_signal(df, lookback=20):
# 计算融资余额比率
df['ratio'] = df['margin_balance'] / (df['margin_balance'] + df['short_balance'])
# 计算20日均线
df['ratio_ma'] = df['ratio'].rolling(lookback).mean()
# 生成信号
df['signal'] = 0
df.loc[df['ratio'] > df['ratio_ma'] * 1.05, 'signal'] = 1 # 看多
df.loc[df['ratio'] < df['ratio_ma'] * 0.95, 'signal'] = -1 # 看空
return df
个人经验:这个信号不能单独用,最好和成交量、波动率指标配合。我一般会再加一个条件——当融资余额比率突破0.95且成交量放大时,才真正开仓。
五、知识体系总览
下面这张图是我自己整理的知识框架,把融资融券余额的核心逻辑串起来了:
这张图把整个知识体系分成了三层:底层是数据获取,中间是情绪判断方法,顶层是实战应用。我建议你按照这个结构来学习,先解决数据问题,再理解指标含义,最后才是实战。
融资融券余额这个指标,说白了就是市场的"杠杆温度计"。它不会骗人,因为每一分钱都是真金白银。但要注意,它也不是万能的——极端行情下,融资盘爆仓会引发连锁反应,这时候指标会失真。
我个人习惯把它作为辅助判断工具,和成交量、波动率、北向资金放在一起看。多个维度交叉验证,胜率会高很多。