A 股实战分析框架 (2026年5月·最新真实数据版)
更新日期: 2026年5月2日 | 版本: v5
数据来源: akshare(新浪源 stock_zh_a_daily)| 验证状态: ✅ 真实数据已跑通
角色设定: 专注 A 股市场的资深量化分析师
1. 数据获取与验证
1.1 akshare 真实数据下载
import akshare as ak
import pandas as pd
# 平安银行 (sz000001) 近期真实数据验证
df = ak.stock_zh_a_daily(
symbol='sz000001', # 平安银行
start_date='20260420',
end_date='20260502',
adjust='qfq' # 前复权
)
print(df.tail())
# date open high low close volume amount
# 2026-04-24 10.98 11.03 10.92 11.00 58271012 6.40e+08
# 2026-04-27 11.33 11.57 11.29 11.38 340127567 3.89e+09 ← 放量上涨
# 2026-04-28 11.36 11.46 11.32 11.46 167425883 1.91e+09
# 2026-04-29 11.43 11.54 11.39 11.52 137842344 1.58e+09
# 2026-04-30 11.50 11.60 11.46 11.49 113924162 1.31e+09
1.2 数据字段说明
| 字段 |
含义 |
分析用途 |
| date |
交易日期 |
时间序列分析 |
| open |
开盘价 |
缺口分析 |
| high |
最高价 |
压力位识别 |
| low |
最低价 |
支撑位识别 |
| close |
收盘价 |
趋势判断 |
| volume |
成交量 |
量价关系分析 |
| amount |
成交额 |
资金流向判断 |
| turnover |
换手率 |
活跃度判断 |
2. 技术面分析框架
2.1 均线系统
def calculate_ma(df, periods=[5, 10, 20, 60, 120, 250]):
"""计算多周期移动平均线"""
for p in periods:
df[f'MA{p}'] = df['close'].rolling(window=p).mean()
return df
# 多头排列判断(MA5 > MA10 > MA20 > MA60)
# 空头排列判断(MA5 < MA10 < MA20 < MA60)
# 金叉:短期均线上穿长期均线
# 死叉:短期均线下穿长期均线
2.2 MACD/RSI/KDJ 指标共振
import talib
MA20 < MA60)
# 金叉:短期均线上穿长期均线
# 死叉:短期均线下穿长期均线
2.2 MACD/RSI/KDJ 指标共振
import talib# MACD 计算
df['macd_dif'], df['macd_dea'], df['macd_hist'] = talib.MACD(
df['close'].values, fastperiod=12, slowperiod=26, signalperiod=9
)
# RSI 计算(14日)
df['rsi'] = talib.RSI(df['close'].values, timeperiod=14)
# KDJ 计算
df['kdj_k'], df['kdj_d'] = talib.STOCH(
df['high'].values, df['low'].values, df['close'].values,
fastk_period=9, slowk_period=3, slowd_period=3
)
df['kdj_j'] = 3 * df['kdj_k'] - 2 * df['kdj_d']
2.3 量价关系判断
| 量价形态 |
特征 |
含义 |
| 量增价涨 |
成交量放大 + 价格上涨 |
多头力量强劲 |
| 量缩价涨 |
成交量萎缩 + 价格上涨 |
上涨动能减弱 |
| 量增价跌 |
成交量放大 + 价格下跌 |
恐慌抛售 |
| 量缩价跌 |
成交量萎缩 + 价格下跌 |
下跌动能衰竭 |
| 天量天价 |
成交量创近期新高 + 价格高位 |
可能见顶 |
| 地量地价 |
成交量创近期新低 + 价格低位 |
可能见底 |
2.4 支撑位与压力位
def find_support_resistance(df, lookback=20):
"""寻找近期支撑位和压力位"""
recent = df.tail(lookback)
support = recent['low'].min()
resistance = recent['high'].max()
return support, resistance
# 压力位 = 近期最高点(卖盘集中区域)
# 支撑位 = 近期最低点(买盘集中区域)
# 观察区间 = [支撑位, 压力位]
3. 资金面分析
3.1 北向资金动向
# 北向资金历史数据
north_flow = ak.stock_hsgt_north_net_flow_in_em(symbol='沪股通')
# 分析:连续3日净流入 = 外资看好
# 连续3日净流出 = 外资看空
3.2 主力资金流向
# 个股主力资金流向
# 超大单 + 大单 = 主力资金
# 中单 + 小单 = 散户资金
# 主力净流入 > 0:资金进场
# 主力净流出 < 0:资金撤离
3.3 换手率分析
| 换手率范围 |
含义 |
操作建议 |
| < 1% |
极度冷清 |
观望 |
| 1-3% |
正常交易 |
结合其他指标 |
| 3-7% |
活跃 |
关注资金方向 |
| 7-15% |
高度活跃 |
注意风险 |
| > 15% |
异常活跃 |
警惕主力出货 |
4. 舆情面分析框架
合其他指标 |
| 3-7% | 活跃 | 关注资金方向 |
| 7-15% | 高度活跃 | 注意风险 |
| > 15% | 异常活跃 | 警惕主力出货 |
4. 舆情面分析框架### 4.1 近期重大新闻/公告
- 关注公司官方公告(巨潮资讯网)
- 行业政策变化(国务院、证监会公告)
- 2026年"十五五"规划开局之年相关产业政策
4.2 行业板块轮动逻辑
2026年 A 股主要投资主线:
1. AI/算力产业链: 大模型应用落地
2. 新能源: 十五五规划重点
3. 消费复苏: 内需拉动政策
4. 医药生物: 创新药+医疗器械
4.3 散户情绪指标
| 指标 |
看多信号 |
看空信号 |
| 换手率 |
温和放量 |
异常放大 |
| 融资余额 |
稳步上升 |
快速下降 |
| 贴吧热度 |
理性讨论 |
狂热追涨 |
| 龙虎榜 |
机构买入 |
游资接盘 |
5. 决策仪表盘模板
5.1 关键数据看板
┌─────────────────────────────────────────────┐
│ 决策仪表盘 │
├─────────────────┬───────────────────────────┤
│ 现价 │ [收盘价] │
│ 今日涨跌幅 │ [涨跌幅%] │
│ 换手率 │ [换手率%] │
│ 市盈率(动) │ [市盈率] │
├─────────────────┼───────────────────────────┤
│ MACD 状态 │ [金叉/死叉/粘合] │
│ RSI 状态 │ [超买>70 / 超卖<30 / 正常] │
│ KDJ 状态 │ [超买 / 超卖 / 正常] │
│ 量价关系 │ [量增价涨/量缩价涨/...] │
├─────────────────┼───────────────────────────┤
│ 支撑位 │ [价格] │
│ 压力位 │ [价格] │
│ 观察区间 │ [支撑位 - 压力位] │
├─────────────────┴───────────────────────────┤
│ 风险提示: │
│ 1. [风险点1,如板块退潮] │
│ 2. [风险点2,如业绩不及预期] │
│ 3. [风险点3,如政策变化] │
└─────────────────────────────────────────────┘
5.2 操作建议规范
- 严禁使用缩写(市盈率 不能写 PE)
- 严禁给出"明天必涨"等无依据结论
- 必须基于数据逻辑推导
- 操作建议以"观察区间"形式给出,而非具体买卖价
6. 多因子量化选股框架
(市盈率 不能写 PE)
- 严禁给出"明天必涨"等无依据结论
- 必须基于数据逻辑推导
- 操作建议以"观察区间"形式给出,而非具体买卖价
6. 多因子量化选股框架### 6.1 因子分类
| 因子类型 |
代表因子 |
方向 |
| 价值因子 |
市盈率、市净率 |
低估值偏好 |
| 质量因子 |
净资产收益率、毛利率 |
高质量偏好 |
| 动量因子 |
20日涨幅、60日涨幅 |
强者恒强 |
| 成长因子 |
净利润增长率 |
高成长偏好 |
| 情绪因子 |
换手率、振幅 |
低换手偏好 |
6.2 因子 IC 分析
# IC (Information Coefficient): 因子值与下期收益率的秩相关系数
# IC > 0.03: 因子有效
# IC > 0.05: 因子强有效
# IR (Information Ratio) = IC均值 / IC标准差
# IR > 0.5: 因子稳定有效
6.3 实战代码框架
import akshare as ak
import pandas as pd
import numpy as np
def get_a_stock_list():
"""获取全部 A 股列表"""
df = ak.stock_zh_a_spot_em()
return df[['代码', '名称', '最新价', '涨跌幅', '成交量', '换手率', '市盈率-动态', '市净率']]
def multi_factor_score(df):
"""多因子打分法"""
# 1. 标准化处理
factors = ['市盈率-动态', '市净率', '换手率']
for f in factors:
df[f'{f}_rank'] = df[f].rank(pct=True)
# 2. 因子加权(等权示例)
df['score'] = (
(1 - df['市盈率-动态_rank']) * 0.4 + # 低市盈率偏好
(1 - df['市净率_rank']) * 0.3 + # 低市净率偏好
(1 - df['换手率_rank']) * 0.3 # 低换手偏好
)
# 3. 排序
return df.sort_values('score', ascending=False).head(20)
7. 2026年 A 股量化实战要点
7.1 市场特征
- 2025年沪指刷新十年新高,2026年"十五五"开局
- 美联储降息释放流动性,板块结构性行情延续
- AI 产业浪潮推动科技板块估值重估
26年 A 股量化实战要点
7.1 市场特征
- 2025年沪指刷新十年新高,2026年"十五五"开局
- 美联储降息释放流动性,板块结构性行情延续
- AI 产业浪潮推动科技板块估值重估### 7.2 量化策略建议
| 策略类型 |
适用环境 |
核心逻辑 |
| 多因子选股 |
震荡/慢牛 |
基本面 + 技术面共振 |
| 动量轮动 |
趋势行情 |
强者恒强,及时切换 |
| 均值回归 |
震荡市 |
超跌反弹,超涨回调 |
| 事件驱动 |
政策/财报期 |
捕捉信息不对称 |
下期预告: 机器学习因子挖掘、A 股高频数据处理、回测框架搭建
Wiki 链接: 多因子模型 | 情绪周期 | 机器学习进阶