量化数据源选择:实时行情、K 线、五档与资金流 API

用户头像sh_*056uc6
2026-10-05 发布

量化策略最怕两件事:数据慢半拍,字段还对不上。AI 能快速写出因子和策略,却不能替你修复错误的时间戳、缺失的成交量和不一致的复权口径。数据源的稳定性与准确性,决定了回测收益能不能在实盘重现。

这篇文章把 FXYZ(官网展示名称为“黑狼数据”)的接口按交易研究流程重新整理,重点看实时行情、K 线、盘口、竞价、资金流和涨跌停数据怎么配合使用。

按当前在线文档,FXYZ 共列出 17 个接口,覆盖基础数据、涨跌停数据和实时行情数据三大目录。

量化数据源,真正要看什么

维度 量化场景里的问题 选型时要核对
时效 信号触发时,价格是不是已经过期 更新频率、交易时段、时间戳精度
准确 成交量、价格、涨跌幅能否和基准行情对齐 单位、字段定义、异常值处理
完整 只有收盘价,无法解释盘中成交和盘口变化 行情、K 线、五档、逐笔、资金流是否齐全
可复现 回测和实盘使用了不同口径 复权参数、交易日、历史修订规则

AI 负责放大研究速度,行情数据负责决定策略能不能落地。

FXYZ 数据源一张图看懂

在这里插入图片描述

FXYZ 文档给出的 API 基础地址是 http://api.fxyz.site,接口文档见 http://www.fxyz.site/doc。所有请求都需要带 token 参数,具体权限和套餐以服务方开通结果为准。

FXYZ 覆盖哪些股票数据

数据层 代表接口 适合做什么 文档标注的更新节奏
基础数据 /wolf/list、/wolf/sector、/wolf/financemetric 股票池、板块成分、财务因子 收盘后 18:00 或 22:00 更新,财务指标以文档为准
实时行情 /wolf/time、/wolf/time/day 实时价格、成交量、估值和涨跌幅 交易时段约每 1 分钟;部分接口支持all 全市场参数
K 线与历史 /wolf/time/kline、/wolf/deal、/wolf/price 多周期回测、逐笔成交、分价统计 K 线盘中秒级;逐笔与分价盘后更新
盘口与竞价 /wolf/time/five、/wolf/time/bid 买卖盘、开盘竞价、微观结构因子 文档标注盘中毫秒级更新
情绪与事件 /wolf/zt、/wolf/dt、/wolf/zb、/wolf/qs、/wolf/cx 涨跌停、炸板、强势股、次新股 交易时段约每 1 分钟,历史数据收盘后更新
资金与复权 /wolf/money、/wolf/fq 主力分单、复权变更、事件校准 历史数据盘后更新

更新频率是文档说明,不等同于策略的成交保证。接入前要用自己的网络、账户权限和交易时段做一次实测。

实时行情接口:把价格和因子放在一起

/wolf/time 返回的字段比较适合做盘中选股和因子计算,常用字段包括:

字段 含义 常见用途
zxj 最新价 计算收益、突破和止损
zdf、zde 涨跌幅、涨跌额 动量、强弱和风控
cjl、cje 成交量、成交额 流动性过滤、量价因子
hsl、lb 换手率、量比 活跃度与异动筛选
zsz、ltsz 总市值、流通市值 市值分组、容量约束
roe、jtsyl、ttmsyl ROE、静态市盈率、TTM 市盈率 基本面与估值组合

单票策略可以传入 code。具备相应权限时,再按文档使用 all 做全市场拉取,避免一开始就把请求量打满。

K 线、五档和竞价:盘中策略的三类输入

接口 核心参数 能拿到什么
/wolf/time/kline symbol、code、period、cq、日期区间 1 分钟到年线的 OHLCV,支持不复权、前复权、后复权
/wolf/time/five symbol、code 买一到买五、卖一到卖五的价格和数量
/wolf/time/bid code 竞价价、竞价量、未匹配量、未匹配金额和买卖方向

做盘口策略时,建议把行情时间统一到同一时区,再用 (code, timestamp) 去重。五档快照和逐笔成交不要直接混成一张表,否则会把不同时间粒度的信号误当成同一时刻。

逐笔、分价和资金流:解释信号为什么出现

/wolf/deal 提供成交价、成交量、成交额和主动买卖方向,可用于拆解冲击成本与成交结构。/wolf/money 进一步区分主买、主卖以及特大单、大单、中单、小单的金额和数量。

这类数据很适合做“信号解释层”:模型触发买入后,可以检查成交是否由大单推动,或用主动性买卖判断信号是否正在衰减。接口文档显示这些历史数据在盘后更新,不能把它们当作盘中实时流。

涨跌停数据:A 股情绪因子的现成入口

接口 数据重点 可构建的因子
/wolf/zt 首次封板、最后封板、封板资金、连板数 封板强度、连板梯队
/wolf/dt 连续跌停、封单资金、开板次数 极端风险、流动性压力
/wolf/zb 炸板次数、首次封板、振幅 炸板率、封板稳定度
/wolf/qs 入选理由、是否新高、量比 强势延续、突破过滤
/wolf/cx 上市日期、开板日期、是否新高 次新股生命周期

涨跌停接口的字段已经包含不少交易员常用指标,适合做情绪温度计,也适合给 AI 模型提供事件标签。

FXYZ API 的最小接入方式

接口采用 URL 参数传递 token。下面示例只读取单只股票,Token 放在环境变量里,避免写进代码仓库。

import os
import requests

BASE_URL = "//api.fxyz.site"
TOKEN = os.environ["FXYZ_TOKEN"]


def get_realtime_quote(code: str) -> dict:
    params = {
        "symbol": "stock",
        "code": code,
        "token": TOKEN,
    }
    response = requests.get(
        f"{BASE_URL}/wolf/time",
        params=params,
        timeout=10,
    )
    response.raise_for_status()
    payload = response.json()
    if isinstance(payload, dict):
        if payload.get("code") != 200:
            raise RuntimeError(payload.get("message", "FXYZ 请求失败"))
        rows = payload.get("data") or []
    else:
        rows = payload
    if not isinstance(rows, list) or not rows:
        raise ValueError("接口没有返回有效行情")

    row = rows[0]
    return {
        "code": row.get("code"),
        "price": row.get("zxj"),
        "change_pct": row.get("zdf"),
        "volume": row.get("cjl"),
        "turnover": row.get("hsl"),
        "timestamp": row.get("tradeDate"),
    }


print(get_realtime_quote("000001"))

K 线接口的参数可以这样组织:

params = {
    "symbol": "stock",
    "code": "000001",
    "period": "1d",
    "cq": 1,  # 1 不复权,2 前复权,3 后复权
    "startDate": "YYYY-MM-DD",
    "endDate": "YYYY-MM-DD",
    "token": TOKEN,
}
rows = requests.get(
    f"{BASE_URL}/wolf/time/kline",
    params=params,
    timeout=10,
).json()

接入后,数据管线要这样做

  1. 原始层:按接口、请求时间和响应体落盘,保留原始 JSON,方便追溯。
  2. 标准层:统一代码格式、时区、价格单位和成交量单位,保留字段字典。
  3. 校验层:检查重复时间戳、空数组、价格越界、成交量倒退和交易日错位。
  4. 特征层:再计算收益率、盘口不平衡、量价指标和情绪因子。
  5. 服务层:给回测和实盘使用同一套字段,配上重试、限流、断点续拉和监控。

先把数据管线做成可追溯的,再让 AI 去优化策略,效率会更高。

一份实盘前的核对清单

检查项 需要确认
时间戳 是否统一到交易所时间,盘前、午间和盘后如何标记
复权口径 回测使用的cq 是否与信号和收益计算一致
字段单位 成交量是手还是股,金额是元还是万元
数据缺口 空数组、停牌、涨跌停和网络超时如何区分
更新频率 文档频率与实测频率是否一致,是否存在延迟尖峰
权限与限流 单票、全市场、all 参数和调用次数是否在套餐范围
安全 文档示例使用 HTTP,生产环境要向服务方确认 HTTPS、Token 保护和白名单方案

/wolf/price 的字段说明在文档中与竞价字段较接近,接入时建议用样本响应核对语义,再写入统一字段字典。

FXYZ 适合怎样的量化项目

项目阶段 推荐组合
股票池构建 /wolf/list + /wolf/sector + /wolf/financemetric
盘中选股 /wolf/time + /wolf/time/kline
开盘竞价 /wolf/time/bid + /wolf/time/five
微观结构 /wolf/time/five + /wolf/deal
情绪策略 /wolf/zt + /wolf/dt + /wolf/zb + /wolf/qs
盘后归因 /wolf/money + /wolf/fq + K 线历史

FXYZ 的价值在于接口覆盖面比较完整:一个数据源就能把股票池、实时行情、盘口、事件和盘后研究串起来。真正决定策略质量的,仍然是字段核验、时间对齐、权限边界和异常监控。

结语

AI 让量化研究从“写代码”进入“快速试错”,可靠的数据源让试错结果能够被复现。把行情接入、字段字典和质量监控先搭好,模型复杂度才有意义。

Github开源项目:https://github.com/fxyzsite/FxyzSkill

评论