RPS(相对价格强度)不是单只股票能计算的指标,它必须获取全市场所有股票在同一周期的涨跌幅数据进行排序。计算公式:RPS = (超越的股票数量 / 总股票数量) × 100。为了保证准确性,必须剔除新股(上市不满周期的股票)和停牌股。
RPS 的本质是一个百分位排名(Percentile Rank)。它的计算分为三个核心步骤:
假设当前 A 股市场共有 5000 只股票:
这说明贵州茅台在过去一年的表现跑赢了全市场 90% 的股票。
很多投资者尝试自己用 Excel 或通达信计算 RPS,往往会发现结果与威廉·欧奈尔的原版数据对不上。原因在于以下三个陷阱:
错误做法:把全市场所有股票直接作为分母。
正确做法:必须剔除上市时间不足 N 天的新股(次新股)。例如计算 RPS250,必须剔除上市不足 250 个交易日的股票。如果不剔除,新股的连续涨停会严重污染头部排名。
错误做法:直接使用原始收盘价计算。
正确做法:必须使用前复权(Forward Adjusted)价格。同时,对于长期停牌的股票,如果 N 日前处于停牌状态,需要向前追溯寻找最近的一个交易日价格,或者直接将其剔除出样本池。
错误做法:N 日指自然日。
正确做法:N 日必须指交易日(Trading Days)。RPS250 代表的是过去 250 个交易日(约等于 1 个自然年),而不是过去 250 个自然日。
以下是使用 Python 和 Pandas 计算全市场股票 RPS 的核心逻辑代码(伪代码):
虽然核心算法只有几行代码,但要每天准确计算全球市场的 RPS,工程量巨大:
本站公开页面中的 RPS 20、50、120、250 是不同观察窗口的相对强度分数,数值越高表示该证券在同一市场、当期可用股票池中的相对表现越靠前。它用于研究筛选,不是预测收益率、目标价或买卖信号。
实际研究时,应先选择市场与观察窗口,再把不同窗口的 RPS 与成交量、基本面和流动性一起核对。完整的范围、快照与限制见 RPS 方法论。
本站围绕相对价格强度(RPS)建立了方法论、数据档案、跨市场排名与实证案例四类研究资产。以下索引覆盖计算口径、数据边界与实操路径,便于交叉核对本页结论的数据来源与计算前提。
数据快照日期 2026-08-13。全站覆盖 21,308 只证券、14,807,564 行日线记录,各市场历史回溯至 2021-11。跨市场 RPS 数值不可直接比较,原因见数据覆盖档案。
一致。计算器与四市场排名页使用同一套口径:以指定周期(50/120/250 个交易日)的区间涨幅在全市场样本中的百分位作为 RPS 值,取值 0–99。基准样本为当日有效收盘数据,A股 5,212 只、美股 8,996 只、港股 2,787 只、日股 3,708 只(2026-08-13 快照)。因此同一标的在计算器与排名页应得到相同结果,可用于交叉验证。
RPS 是市场内百分位排名,分母是该市场的样本总数。A股样本约 5,212 只、美股约 8,996 只,样本规模与行业结构差异导致同一数值代表的相对位置不同。例如美股 RPS 90 意味着跑赢约 8,096 只标的,而 A股 RPS 90 意味着跑赢约 4,691 只。跨市场比较应改用行业内排名或绝对涨幅。
RPS50 需至少 50 个交易日,RPS120 需 120 个,RPS250 需 250 个。历史不足的新股无法计算长周期 RPS。本站四市场历史均回溯至 2021 年 11 月(约 1,140 个交易日),累计 14,807,564 行日线记录,足以支撑三个周期的完整计算。具体覆盖情况见数据覆盖档案。
威廉·欧奈尔在 CANSLIM 体系中建议筛选 RS 大于 80 的标的。市场惯例上 RPS ≥ 90 视为强势,≥ 95 视为极强。需注意 RPS 是滞后指标,反映的是已发生的相对涨幅,不预测未来走势;高 RPS 标的同时具备较高的回撤风险,应结合行业分布、成交量与止损纪律使用。
支持 A股、美股、港股、日股四个市场,覆盖 21,308 只证券;周期支持 50、120、250 个交易日。A股数据免费开放;美股、港股、日股排名数据需 Premium 会员权限。计算方法与口径详见 RPS 方法论页。
下表列出 RPS 在线计算器在四个市场的基准样本规模与可用周期。基准样本指当日具备有效收盘价、可参与百分位排名的证券数量;证券池规模包含尚无足够历史或暂停交易的标的,因此略高于基准样本。数据快照日期 2026-08-13。