表达式算子

适用位置:数据处理节点的因子表达式、策略节点的条件表达式、AI模型的标签定义

基础算子

逐元素计算,对每个数据点独立运算

算子名称语法说明返回类型示例
absabs(x)绝对值数值abs(close - open)
loglog(x)自然对数数值log(volume)
expexp(x)指数函数 e^x数值exp(returns)
sqrtsqrt(x)平方根数值sqrt(variance)
signsign(x)符号函数 (返回 -1, 0, 1)-1/0/1sign(returns)
roundround(x, decimals)四舍五入到指定小数位数值round(price, 2)
maxmax(x, y)逐元素取较大值数值max(open, close)
minmin(x, y)逐元素取较小值数值min(open, close)
meanmean([cols])多列逐元素平均数值mean([open, high, low, close])
ifif(cond, x, y)条件选择x或yif(close > open, 1, -1)
clipclip(x, lower, upper)截断到区间 [lower, upper]数值clip(returns, -0.1, 0.1)
qclipqclip(x, q)按分位数对称截断到 [q, 1-q]数值qclip(returns, 0.01)

时序算子

按标的分组,在时间维度上进行滚动窗口计算

算子名称语法说明返回类型示例
shiftshift(x, n)向前移动n期 (n>0取历史)数值shift(close, 1)
deltadelta(x, n)n期差分: x - shift(x, n)数值delta(close, 1)
pctpct(x, n)n期变化率: delta(x,n) / shift(x,n)数值pct(close, 1)
argmaxargmax(x, n)n期内最大值的位置 (1-n)整数argmax(high, 20)
argminargmin(x, n)n期内最小值的位置 (1-n)整数argmin(low, 20)
t_meant_mean(x, n)n期移动平均数值t_mean(close, 20)
t_sumt_sum(x, n)n期累加数值t_sum(volume, 5)
t_maxt_max(x, n)n期最大值数值t_max(high, 20)
t_mint_min(x, n)n期最小值数值t_min(low, 20)
t_stdt_std(x, n)n期标准差数值t_std(returns, 20)
t_vart_var(x, n)n期方差数值t_var(returns, 20)
t_prodt_prod(x, n)n期累乘数值t_prod(1 + returns, 20)
t_mediant_median(x, n)n期中位数数值t_median(close, 20)
t_quantilet_quantile(x, n, q)n期q分位数数值t_quantile(close, 20, 0.75)
t_skewt_skew(x, n)n期偏度数值t_skew(returns, 20)
t_kurtt_kurt(x, n)n期峰度数值t_kurt(returns, 20)
t_rankt_rank(x, n)n期内排名 (最大值=1)整数t_rank(close, 20)
t_pctrankt_pctrank(x, n)n期内百分位排名 (0-1)数值t_pctrank(close, 20)
t_countt_count(cond, n)n期内条件为真的次数整数t_count(close > open, 20)
t_allt_all(cond, n)n期内是否全部为真布尔t_all(close > ma20, 5)
t_anyt_any(cond, n)n期内是否存在为真布尔t_any(volume > avg_vol * 2, 5)
t_corrt_corr(x, y, n)n期滚动相关系数数值t_corr(close, volume, 20)
t_covt_cov(x, y, n)n期滚动协方差数值t_cov(returns, market_returns, 60)
t_betat_beta(y, x, n)n期回归斜率β数值t_beta(returns, market_returns, 60)
t_alphat_alpha(y, x, n)n期回归截距α数值t_alpha(returns, market_returns, 60)
t_residualt_residual(y, x, n)n期回归残差数值t_residual(returns, market_returns, 60)
t_zscoret_zscore(x, n)n期时序Z-Score标准化数值t_zscore(close, 20)
t_scalet_scale(x, n)n期时序Min-Max标准化到[0,1]数值t_scale(rsi, 20)

横截面算子

按时间点分组,在所有标的之间进行截面计算

算子名称语法说明返回类型示例
c_meanc_mean(x)截面平均值数值c_mean(returns)
c_sumc_sum(x)截面求和数值c_sum(volume)
c_maxc_max(x)截面最大值数值c_max(returns)
c_minc_min(x)截面最小值数值c_min(returns)
c_stdc_std(x)截面标准差数值c_std(returns)
c_medianc_median(x)截面中位数数值c_median(pe_ratio)
c_rankc_rank(x)截面排名 (最大值=1)整数c_rank(returns)
c_pctrankc_pctrank(x)截面百分位排名 (0-1)数值c_pctrank(momentum)
c_percentilec_percentile(x, q)截面分位数值数值c_percentile(volume, 0.9)
c_topc_top(x, n)截面前N名标记布尔c_top(momentum, 10)
c_bottomc_bottom(x, n)截面后N名标记布尔c_bottom(momentum, 10)
c_zscorec_zscore(x)截面Z-Score标准化数值c_zscore(pe_ratio)
c_scalec_scale(x)截面Min-Max标准化到[0,1]数值c_scale(volume)
c_mad_zscorec_mad_zscore(x)截面MAD Z-Score(稳健标准化)数值c_mad_zscore(returns)
c_clipc_clip(x, lower, upper)截面内截断到指定区间数值c_clip(zscore, -3, 3)
c_qclipc_qclip(x, q)截面内按分位数截断数值c_qclip(returns, 0.01)
c_residualc_residual(y, x)截面回归残差(中性化)数值c_residual(returns, market_cap)
c_absunitc_absunit(x, a?)截面绝对值归一化数值c_absunit(alpha)

技术指标

经典技术分析指标,按标的分组计算

算子名称语法说明返回类型示例
ta_mata_ma(x, n)简单移动平均线 (SMA)数值ta_ma(close, 20)
ta_emata_ema(x, n)指数移动平均线 (EMA)数值ta_ema(close, 12)
ta_wmata_wma(x, n)加权移动平均线 (WMA)数值ta_wma(close, 20)
ta_rsita_rsi(x, n)相对强弱指数 (RSI)0-100ta_rsi(close, 14)
ta_rocta_roc(x, n)变化率 (ROC)数值ta_roc(close, 10)
ta_momta_mom(x, n)动量 (Momentum)数值ta_mom(close, 10)
ta_ccita_cci(high, low, close, n)商品通道指数 (CCI)数值ta_cci(high, low, close, 20)
ta_willrta_willr(high, low, close, n)威廉指标 (Williams %R)数值ta_willr(high, low, close, 14)
ta_mfita_mfi(high, low, close, volume, n)资金流量指数 (MFI)0-100ta_mfi(high, low, close, volume, 14)
ta_biasta_bias(x, n)乖离率 (BIAS)数值ta_bias(close, 20)
ta_ultimateta_ultimate(high, low, close, n1, n2, n3)终极振荡器数值ta_ultimate(high, low, close, 7, 14, 28)
ta_atrta_atr(high, low, close, n)平均真实波幅 (ATR)数值ta_atr(high, low, close, 14)
ta_natrta_natr(high, low, close, n)标准化平均真实波幅 (NATR)百分比ta_natr(high, low, close, 14)
ta_bbands_upperta_bbands_upper(x, n, k?)布林带上轨数值ta_bbands_upper(close, 20, 2)
ta_bbands_midta_bbands_mid(x, n)布林带中轨(即MA)数值ta_bbands_mid(close, 20)
ta_bbands_lowerta_bbands_lower(x, n, k?)布林带下轨数值ta_bbands_lower(close, 20, 2)
ta_bbands_widthta_bbands_width(x, n, k?)布林带宽度数值ta_bbands_width(close, 20, 2)
ta_kc_upperta_kc_upper(high, low, close, n, k?)Keltner通道上轨数值ta_kc_upper(high, low, close, 20, 2)
ta_kc_lowerta_kc_lower(high, low, close, n, k?)Keltner通道下轨数值ta_kc_lower(high, low, close, 20, 2)
ta_obvta_obv(close, volume)能量潮指标 (OBV)数值ta_obv(close, volume)
ta_cmfta_cmf(high, low, close, volume, n)Chaikin资金流量 (CMF)数值ta_cmf(high, low, close, volume, 20)
ta_adoscta_adosc(high, low, close, volume, fast, slow)Chaikin A/D振荡器数值ta_adosc(high, low, close, volume, 3, 10)
ta_vwmata_vwma(close, volume, n)成交量加权移动平均 (VWMA)数值ta_vwma(close, volume, 20)
ta_adxta_adx(high, low, close, n)平均趋向指数 (ADX)数值ta_adx(high, low, close, 14)
ta_dmi_plusta_dmi_plus(high, low, close, n)正向动向指标 (+DI)数值ta_dmi_plus(high, low, close, 14)
ta_dmi_minusta_dmi_minus(high, low, close, n)负向动向指标 (-DI)数值ta_dmi_minus(high, low, close, 14)
ta_aroon_upta_aroon_up(high, n)Aroon上线数值ta_aroon_up(high, 25)
ta_aroon_downta_aroon_down(low, n)Aroon下线数值ta_aroon_down(low, 25)
ta_macd_difta_macd_dif(x, fast, slow)MACD DIF线(快线-慢线)数值ta_macd_dif(close, 12, 26)
ta_macd_deata_macd_dea(x, fast, slow, signal)MACD DEA线(DIF的EMA)数值ta_macd_dea(close, 12, 26, 9)
ta_macd_histta_macd_hist(x, fast, slow, signal)MACD柱状图(DIF-DEA)数值ta_macd_hist(close, 12, 26, 9)
ta_kdj_kta_kdj_k(high, low, close, n, k_smooth)KDJ指标K线数值ta_kdj_k(high, low, close, 9, 3)
ta_kdj_dta_kdj_d(high, low, close, n, k_smooth, d_smooth)KDJ指标D线数值ta_kdj_d(high, low, close, 9, 3, 3)
ta_kdj_jta_kdj_j(high, low, close, n, k_smooth, d_smooth)KDJ指标J线数值ta_kdj_j(high, low, close, 9, 3, 3)
ta_stoch_kta_stoch_k(high, low, close, n)随机指标K线 (%K)数值ta_stoch_k(high, low, close, 14)
ta_stoch_dta_stoch_d(high, low, close, n, d_smooth)随机指标D线 (%D)数值ta_stoch_d(high, low, close, 14, 3)
ta_cross_overta_cross_over(x, y)上穿信号 (x从下方穿越y)布尔ta_cross_over(ma5, ma20)
ta_cross_underta_cross_under(x, y)下穿信号 (x从上方穿越y)布尔ta_cross_under(ma5, ma20)
ta_breakout_highta_breakout_high(high, n)突破N期最高价信号布尔ta_breakout_high(high, 20)
ta_breakout_lowta_breakout_low(low, n)跌破N期最低价信号布尔ta_breakout_low(low, 20)

K线形态

经典K线形态识别

算子名称语法说明返回类型示例
ta_marubozu_bullta_marubozu_bull(open, close, high, low)光头光脚阳线布尔ta_marubozu_bull(open, close, high, low)
ta_marubozu_bearta_marubozu_bear(open, close, high, low)光头光脚阴线布尔ta_marubozu_bear(open, close, high, low)
ta_dojita_doji(open, close, high, low)十字星布尔ta_doji(open, close, high, low)
ta_pin_bar_longta_pin_bar_long(open, close, high, low)看涨Pin Bar(长下影线)布尔ta_pin_bar_long(open, close, high, low)
ta_pin_bar_shortta_pin_bar_short(open, close, high, low)看跌Pin Bar(长上影线)布尔ta_pin_bar_short(open, close, high, low)
ta_inside_bar_bullta_inside_bar_bull(high, low, close)看涨内包线布尔ta_inside_bar_bull(high, low, close)
ta_inside_bar_bearta_inside_bar_bear(high, low, close)看跌内包线布尔ta_inside_bar_bear(high, low, close)
ta_engulfing_bullta_engulfing_bull(open, close)看涨吞没形态布尔ta_engulfing_bull(open, close)
ta_engulfing_bearta_engulfing_bear(open, close)看跌吞没形态布尔ta_engulfing_bear(open, close)
ta_three_risingta_three_rising(close)三连涨布尔ta_three_rising(close)
ta_three_fallingta_three_falling(close)三连跌布尔ta_three_falling(close)
ta_hammerta_hammer(open, close, high, low)锤子线布尔ta_hammer(open, close, high, low)
ta_shooting_starta_shooting_star(open, close, high, low)射击之星布尔ta_shooting_star(open, close, high, low)
ta_morning_starta_morning_star(open, close, high, low)早晨之星布尔ta_morning_star(open, close, high, low)
ta_evening_starta_evening_star(open, close, high, low)黄昏之星布尔ta_evening_star(open, close, high, low)
ta_top_divergenceta_top_divergence(price, indicator, n)顶背离信号布尔ta_top_divergence(close, rsi, 20)
ta_bottom_divergenceta_bottom_divergence(price, indicator, n)底背离信号布尔ta_bottom_divergence(close, rsi, 20)