免费股票涨幅榜 API
数据源、字段与 Python股票涨幅榜 API
数据与 Python
比较交易时段、基准收盘价、虚假异动、字段、限额和 JSON,再用 Python 接入涨幅榜。

免费股票涨幅榜 API 应完成哪些任务
本页聚焦正向动量发现。真正有用的输出不只是按涨幅降序排列,而是一个理解交易时段、说明比较基准价、验证流动性、识别拆股扭曲,并能关联财报、指引、审批、分析师行动或并购等催化因素的候选集合。它服务于突破扫描和研究队列,不是自动买入建议。
对多数产品而言,更稳妥的默认口径是:限定美股常规交易时段,并用复权后的上一交易日收盘价独立重算收益率。盘前与盘后榜单应单独展示,因为这些时段成交更稀疏、点差更宽、参考时间也不同;若混在一起,同一只股票可能出现彼此冲突的涨幅。
排名定义:应保存当前价格、上一常规时段收盘、交易时段、复权状态、成交量和入选规则。盘前大涨、未复权拆股和常规盘中高流动性突破,即使百分比相同,也属于三类不同事件。
股票涨幅榜 API 应返回哪些字段
使用正确的正收益分母
要求返回当前价、上一常规收盘、涨跌额、涨幅、复权标记和交易时段,并自行重算百分比,不要直接相信格式化字符串。
筛选可操作流动性
保存成交量、相对成交量、价格、市值、交易所、证券类型和可用时的点差。单笔成交造成的 300% 上涨不等于广泛参与。
识别拆股、IPO 基准和陈旧收盘
排名前检查公司行动和上市日期。新股可能没有有效前收盘,复权时点错误也会制造虚假涨幅。
关联催化因素与延续背景
关联财报、申报、新闻、跳空、盘中最高和距开盘价变化,区分仍在突破的股票与早盘冲高后已经回落的股票。
区分交易时段与报价状态
明确标注盘前、常规盘和盘后数据,并保留最新成交、买价、卖价、报价时间、市场状态与停牌状态,避免把陈旧成交误当成当前可执行的上涨。
控制低价股与单笔成交失真
设置可调整的最低价格、最低成交额、成交笔数门槛和最大点差。极低价证券只变动几分钱就可能产生惊人涨幅,却未必形成持续或可交易的信号。
可评估的免费股票涨幅榜接口
下面这些服务商都提供市场异动或涨幅榜相关文档,但各自榜单不能直接互换。下表只用于确定验证起点,并不代表推荐,因为接口权限和条款可能变化。比较供应商时不要只看返回条数,应先写清应用所需的市场、证券类型、交易时段、基准价格、最低流动性、刷新频率和许可条件,再用同一组事件日样本逐一验证。
| 来源 | 可用信号 | 使用前核对 |
|---|---|---|
| Alpha Vantage | 官方文档列出 TOP_GAINERS_LOSERS,可返回美股涨幅榜、跌幅榜和最活跃股票。 | 免费 Key 配额、默认数据时效、交易所授权和生产用途条款。 |
| Massive | Top Market Movers 文档说明可返回美股前 20 名上涨或下跌股票,并设有最低成交量过滤。 | 当前套餐权限、快照时间、行情延迟和再分发权利。 |
| Financial Modeling Prep | Market Top Gainers 页面提供涨幅榜端点,并展示代码、名称、价格和涨跌等字段。 | 当前端点路径、免费权限、额度、时效和纳入的证券类型。 |
| Webull | 官方文档支持按周期、市场类别、排序字段和方向获取涨跌幅排名。 | 应用凭证、沙箱与生产环境、支持市场、签名流程和接入权限。 |
股票涨幅榜 API Python 示例与验证
不要直接采用供应商格式化后的百分比,而应从归一化原始记录重建榜单。下面的示例创建常规交易时段涨幅榜,并明确最低价格、最低成交额、比较基准和复权要求。
from decimal import Decimal, InvalidOperation
def build_top_gainers(
rows: list[dict],
minimum_price: Decimal = Decimal("1"),
minimum_dollar_volume: Decimal = Decimal("1000000"),
limit: int = 20,
) -> list[dict]:
eligible = []
for row in rows:
if row.get("session") != "regular" or row.get("market_status") != "open":
continue
if row.get("security_type") != "common_stock":
continue
if row.get("prior_close_adjusted") is not True:
continue
if row.get("corporate_action_status") not in {None, "resolved"}:
continue
try:
current = Decimal(str(row["current_price"]))
prior_close = Decimal(str(row["prior_regular_close"]))
volume = Decimal(str(row["volume"]))
except (KeyError, InvalidOperation):
continue
if current < minimum_price or prior_close <= 0 or volume < 0:
continue
dollar_volume = current * volume
if dollar_volume < minimum_dollar_volume:
continue
change_pct = ((current / prior_close) - Decimal("1")) * Decimal("100")
if change_pct <= 0:
continue
eligible.append({
"symbol": row["symbol"],
"exchange": row["exchange"],
"current_price": current,
"prior_regular_close": prior_close,
"change_pct": change_pct,
"dollar_volume": dollar_volume,
"source_timestamp": row["source_timestamp"],
"rule_version": "regular-gainers-v1",
})
eligible.sort(key=lambda item: (-item["change_pct"], item["symbol"]))
for rank, item in enumerate(eligible[:limit], start=1):
item["rank"] = rank
return eligible[:limit]
筛选条件本身就是排名定义的一部分。最低价格、成交额门槛、证券类型、交易时段或复权政策发生变化,候选证券池和全部名次都会随之改变。每个快照都应保存规则版本及记录被排除的原因,才能在之后复现榜单。
1. 重新计算正收益
把当前价与上一常规收盘解析为高精度数值,应用供应商拆股调整规则,并计算 (当前价 / 前收盘 - 1) × 100;没有有效分母的记录应排除。
2. 应用动量入选规则
排序前按交易所、证券类型、最低价格、市值、成交额、相对成交量和点差过滤,并把规则版本与榜单一起保存。
3. 增加突破与催化字段
为候选补充开盘跳空、盘中高点、距高点距离、相对成交量、财报或申报事件及相关新闻,让百分比排名成为研究队列而不是盲目信号。
4. 跟踪入榜、持续与退出
保存代码首次入榜时间、最高排名、连续出现次数和退出时间,从而判断动量是否持续,还是只由早盘一笔成交造成。
5. 用原始 K 线复核排名
选取普通交易日、财报跳空、拆股、IPO、停牌和复牌样本,获取对应收盘价与盘中 K 线,重新计算涨幅并检查被排除证券,记录差异究竟来自时间、复权、证券池还是陈旧数据。
6. 保存时点快照
保存供应商时间戳、抓取时间、排名、原始值、规范化值和过滤规则版本。回测必须使用当时实际可见的榜单,不能拿包含事后信息的最终收盘榜单替代。
QVeris 如何连接股票涨跌幅榜能力
QVeris 不发布股票排名、不授予交易所行情许可,也不保证供应商数据。它帮助开发者与 Agent 发现金融数据能力、检查接口,并通过一致流程连接选定的外部工具。
- 打开 Alpha Vantage 涨跌幅榜工具详情,检查这项具体市场异动能力。
- 连接前检查输入、输出、鉴权、支持市场、供应商文档、时间戳、交易时段定义与复权规则。
- 把市场、时段、证券池、流动性门槛、时效容忍度和目标输出结构写成明确的工具要求,不要让 Agent 自行猜测。
- 通过 QVeris 能力地图探索相邻数据工具;连接能力和涨幅排名不构成投资建议。
免费股票涨幅榜 API 常见问题
有免费的股票涨幅榜 API 吗?
有些供应商提供免费 Key 或试用。应核对市场、延迟、额度、字段、许可,以及当前套餐是否仍包含该端点。
哪个 API 同时返回涨幅榜和跌幅榜?
Alpha Vantage、Massive、FMP 和 Webull 均有相关文档,但鉴权方式和访问权限不同。
能免费获取实时股票涨幅榜吗?
有时可以,但免费返回可能延迟或仅为收盘数据。必须检查结果时间戳和行情授权说明。
如何用 Python 调用涨幅榜接口?
按文档发送 GET 请求,处理 HTTP 错误并解析 JSON,再规范涨跌幅并确认最大的有效涨幅排在前面。
股票涨幅榜 API 返回哪些字段?
应关注代码、名称、价格、涨跌额、涨跌幅、成交量、市场、时间戳,以及明确的错误或状态字段。
为什么有些涨幅榜总被低价股占据?
起始价格很低时,只上涨一两分钱也会产生很大的百分比。应增加最低价格、成交额、成交笔数和点差过滤,并检查原始成交后再判断异动是否有意义。
拆股和 IPO 应该怎样处理?
受拆股影响的证券应使用复权前收盘;没有可比基准的新股则应排除或单独标注,不要强行套用同一收益率公式。
为什么两个涨幅榜 API 的结果不同?
它们可能采用不同快照时间、交易时段、证券池、基准收盘、复权规则、流动性过滤或行情权限。应先比较原始输入与口径定义,再判断哪一方存在问题。
