Skip to main content

概述

量化分析 API 提供专业的量化投资工具,支持技术指标计算、因子选股、行情数据查询和策略回测。

接口列表

接口方法描述
/v1/quant/indicatorsGET获取可用技术指标列表
/v1/quant/indicators/computePOST计算技术指标数据
/v1/quant/factorsGET获取可用因子列表
/v1/quant/factors/computePOST计算因子数据
/v1/quant/factors/screenPOST因子选股筛选
/v1/quant/quotes/ohlcvGET获取单只股票 OHLCV 数据
/v1/quant/quotes/ohlcv/batchPOST批量获取 OHLCV 数据
/v1/quant/backtestPOST策略回测

公式语法

量化 API 使用类似通达信/同花顺的 Mai 语言公式语法。

支持的变量

变量别名描述
CLOSEC收盘价
OPENO开盘价
HIGHH最高价
LOWL最低价
VOLUMEV, VOL成交量

支持的运算符

类型运算符示例
比较>, <, >=, <=, ==, !=CLOSE > MA(CLOSE, 20)
逻辑与&(RSI(14) < 30) & (CLOSE > MA(CLOSE, 20))
逻辑或|(RSI(14) < 30) | (RSI(14) > 70)
算术+, -, *, /(CLOSE - MA(CLOSE, 20)) / MA(CLOSE, 20) * 100

支持的函数

函数描述示例
MA(X, N)N 日简单移动平均MA(CLOSE, 20)
EMA(X, N)N 日指数移动平均EMA(CLOSE, 12)
SMA(X, N, M)平滑移动平均SMA(CLOSE, 9, 1)
REF(X, N)引用 N 天前的值REF(CLOSE, 1)
HHV(X, N)N 周期最高值HHV(HIGH, 20)
LLV(X, N)N 周期最低值LLV(LOW, 20)
STD(X, N)N 周期标准差STD(CLOSE, 20)
SUM(X, N)N 周期求和SUM(VOLUME, 5)
ABS(X)绝对值ABS(CLOSE - OPEN)
MAX(X, Y)取最大值MAX(CLOSE, OPEN)
MIN(X, Y)取最小值MIN(CLOSE, OPEN)
IF(C, A, B)条件选择IF(CLOSE > OPEN, 1, 0)
函数描述示例
CROSS(A, B)A 上穿 BCROSS(MA(CLOSE, 5), MA(CLOSE, 10))
CROSSDOWN(A, B)A 下穿 BCROSSDOWN(MA(CLOSE, 5), MA(CLOSE, 10))
COUNT(X, N)N 周期内满足条件的天数COUNT(CLOSE > OPEN, 10)
EVERY(X, N)N 周期内全部满足条件EVERY(CLOSE > MA(CLOSE, 20), 5)
EXIST(X, N)N 周期内存在满足条件EXIST(CLOSE > HHV(HIGH, 60), 5)
BARSLAST(X)上次满足条件到现在的周期数BARSLAST(CROSS(MA(CLOSE, 5), MA(CLOSE, 10)))
函数描述返回字段
RSI(N)相对强弱指数rsi
MACD(S, L, M)MACD 指标dif, dea, macd
KDJ(N, M1, M2)KDJ 随机指标k, d, j
BOLL(N, P)布林带upper, mid, lower
WR(N)威廉指标wr
ATR(N)平均真实波幅atr
CCI(N)商品通道指数cci
BIAS(N)乖离率bias
PSY(N)心理线psy
DMI(N, M)趋向指标pdi, mdi, adx, adxr
OBV()能量潮obv
财务报表(通过 . 访问字段):
报表描述示例
INCOME利润表INCOME.net_profit
BALANCESHEET资产负债表BALANCESHEET.total_assets
CASHFLOW现金流量表CASHFLOW.operating_cashflow
估值因子
因子描述
PE(), PE_TTM()市盈率
PB()市净率
PS()市销率
PEG()PEG 比率
盈利能力
因子描述
ROE()净资产收益率
ROA()总资产收益率
GPM()毛利率
NPM()净利率
成长能力
因子描述
REVENUE_GROWTH_RATE()营收增长率
NET_PROFIT_GROWTH_RATE()净利润增长率
EPS_GROWTH_RATE()EPS 增长率
每股指标
因子描述
EPS()每股收益
BPS()每股净资产

股票代码格式

市场market 参数股票代码示例
A 股cn000001, 600519, 688001
港股hk00700, 09988
美股usAAPL, TSLA, NVDA
市场参数默认为 cn(A 股市场)。股票代码不需要带市场前缀,通过 market 参数指定市场。

公式示例

技术面公式

# RSI 超卖
"RSI(14) < 30"

# 金叉
"CROSS(MA(CLOSE, 5), MA(CLOSE, 10))"

# MACD DIF 线
"MACD().dif"

# 收盘价偏离 20 日均线的百分比
"(CLOSE - MA(CLOSE, 20)) / MA(CLOSE, 20) * 100"

# RSI 超卖且价格在 20 日均线上方
"(RSI(14) < 30) & (CLOSE > MA(CLOSE, 20))"

# 价格突破布林带上轨
"CLOSE > BOLL(20, 2).upper"

# 多头排列:5日线 > 10日线 > 20日线
"(MA(CLOSE, 5) > MA(CLOSE, 10)) & (MA(CLOSE, 10) > MA(CLOSE, 20))"

基本面公式

# 低市盈率
"PE() < 15"

# 市盈率(TTM)低于 20
"PE_TTM() < 20"

# 高 ROE
"ROE() > 0.15"

# 价值 + 质量
"(PE() < 20) & (ROE() > 0.1)"

# 多因子价值筛选
"(PE_TTM() < 15) & (PB() < 2) & (ROE() > 0.12)"

# 营收增长率大于 20%
"REVENUE_GROWTH_RATE() > 0.2"

技术面 + 基本面组合

# 便宜 + 超卖
"(PE() < 20) & (RSI(14) < 40)"

# 质量 + 上涨趋势
"(ROE() > 0.12) & (CLOSE > MA(CLOSE, 20))"

# 价值 + 金叉
"(PB() < 1.5) & (CROSS(MA(CLOSE, 5), MA(CLOSE, 20)))"

回测策略公式

回测接口支持 entry_formula(买入公式)和 exit_formula(卖出公式):
{
  "entry_formula": "CROSS(MA(CLOSE, 5), MA(CLOSE, 10))",
  "exit_formula": "CROSS(MA(CLOSE, 10), MA(CLOSE, 5))",
  "symbol": "000001",
  "start_date": "2024-01-01",
  "end_date": "2025-01-01",
  "labels": {
    "ma5": "MA(CLOSE, 5)",
    "ma10": "MA(CLOSE, 10)",
    "rsi": "RSI(14)"
  }
}
参数描述
entry_formula买入/开仓公式,结果 > 0 时触发买入
exit_formula卖出/平仓公式,结果 > 0 时触发卖出(可选)
labels标签字典,用于返回每日额外的指标值(可选)
labels 参数可以在回测时同时返回每日的指标计算值,方便分析:
{
  "labels": {
    "ma5": "MA(CLOSE, 5)",
    "ma10": "MA(CLOSE, 10)",
    "rsi": "RSI(14)"
  }
}

快速开始

1

获取指标列表

调用 GET /v1/quant/indicators 获取所有可用的技术指标定义
2

计算指标数据

调用 POST /v1/quant/indicators/compute 计算指定股票的指标数据
3

因子选股

调用 POST /v1/quant/factors/screen 筛选符合条件的股票
4

策略回测

调用 POST /v1/quant/backtest 验证策略历史表现

错误码

状态码描述
200成功
400请求参数错误
401认证失败
422参数验证失败
429请求频率超限
500服务器内部错误