QuantOL 入门指南

RANK - 横截面排名

函数定义

RANK(field)

参数说明

参数类型说明
fieldstring字段名,如 close、volume、high 等

描述

计算当前股票的 field 值在所有股票中的横截面排名。 返回整数排名(1=最高值,2=第二高,...),无数据时返回 0。

使用示例

// 基本排名
// 买入今天收盘价排名前10的股票
RANK(close) <= 10

// 加仓成交量排名前一半的股票
RANK(volume) > len / 2

// 卖出收盘价排名后20的股票
RANK(close) >= 20

// 时间维度配合REF
// 持续排名前10(今天和5天前都在前10)
RANK(close) <= 10 and REF(RANK(close), 5) <= 10

// 排名上升趋势
RANK(close) < REF(RANK(close), 5)

// 逻辑组合
// 综合条件:排名前10且价格高于均线
(RANK(close) <= 10) and (close > SMA(close, 20))

典型应用

  • 因子选股:基于横截面排名选择表现最好的股票
  • 动量策略:选择排名上升趋势的股票
  • 相对强弱:买入相对表现强势的股票
  • 多因子组合:结合多个排名指标进行筛选

注意事项

  • RANK函数需要在多标模式下使用
  • 排名规则:值越大排名越前(降序排列)
  • 时间维度通过REF函数实现,RANK本身只计算当前时间点的横截面排名
  • 无横截面数据时返回 0
  • 建议配合其他条件使用,避免在数据不足时产生错误信号
QuantOL - 专业级量化交易平台