函数参考

函数名不区分大小写。周期可使用常量或函数明确支持的动态整数序列,具体以参数约束为准;行情缺失及预热规则见各函数。

持仓

POSLONGPRICE

POSLONGPRICE()

当前账户、图表合约的多头开仓均价

约束:实时持仓快照; 无多仓或账户未就绪为空; 不随 SYMBOL 切换

POSLONGPRICE()

POSSHORTPRICE

POSSHORTPRICE()

当前账户、图表合约的空头开仓均价

约束:按剩余持仓手数加权; 不是结算成本或历史持仓

POSSHORTPRICE()

POSLONGVOL

POSLONGVOL()

当前账户、图表合约的多头总持仓手数

约束:含今昨仓、冻结仓及不同投保类别; 无多仓为 0,账户未就绪为空

POSLONGVOL()

POSSHORTVOL

POSSHORTVOL()

当前账户、图表合约的空头总持仓手数

约束:多空分别统计,包含手动开仓; 不等于可平手数

POSSHORTVOL()

行情

LEG1

LEG1(X)

获取当前组合第一腿的表达式结果

约束:先在单腿当前周期计算,再对齐图表; 缺失及非组合返回空值; 不自动乘组合系数

LEG1(MA(CLOSE,5))

LEG2

LEG2(X)

获取当前组合第二腿的表达式结果

约束:支持行情字段、数值表达式和先前定义的常量; 两腿顺序按组合定义

LEG2(CLOSE)

声音

SOUND

COND,SOUND('A'..'J')

条件成立时申请声音提醒

约束:最新 K 线刷新时提醒; 首次加载及历史 K 线重算静默,同根去重

CROSS(CLOSE,OPEN),SOUND('A');

PLAYSOUND

PLAYSOUND(COND,'A'..'J')

SOUND 条件动作的兼容写法

约束:支持 A 到 J ; 编辑器声音设置中选择 WAV 音效及试听

PLAYSOUND(CROSS(CLOSE,OPEN),'A');

绘图

DRAWCOLORKLINE

DRAWCOLORKLINE(COND,COLOR,EMPTY)

按条件重绘整根 K 线及影线

约束: EMPTY =0 实心、非零空心; COLOR 支持 RGB (r,g,b)

DRAWCOLORKLINE(CLOSE>OPEN,COLORRED,1);

STICKLINE1

STICKLINE1(COND,P1,P2,WIDTH,EMPTY)

按指定宽度在两个价格间画柱体,颜色使用尾缀

约束: WIDTH =0..9 常量,0 为细线、3 为主图柱宽; EMPTY 非零空心

STICKLINE1(CLOSE>OPEN,OPEN,CLOSE,3,1),COLORRED;

PARTLINE

PARTLINE(COND,DATA,COLOR)

连接连续满足条件的相邻数据点,不跨越条件中断或空值

约束:孤立有效点画一个周期内的短横线; 支持 LINETHICK 和 DOT

PARTLINE(REF(CLOSE,1)>CLOSE,CLOSE,COLORBLUE),LINETHICK2;

DRAWNUMBER

DRAWNUMBER(COND,DATA,NUMBER,PRECISION,COLOR)

条件成立时在 DATA 位置显示 NUMBER ,默认水平居中、垂直下对齐

约束: PRECISION 为 0..8 公式常量整数; 支持 FONTSIZE8 ..72,显式 ALIGN / VALIGN 优先

DRAWNUMBER(ISLASTBAR,CLOSE,CLOSE,2,COLORGREEN);

DRAWTEXT

DRAWTEXT(COND,DATA,TEXT)

条件成立时在 DATA 位置显示文字

约束: TEXT 为单引号或双引号字符串; 支持颜色和 FONTSIZE8 ..72

DRAWTEXT(CLOSE>OPEN,LOW,'买多'),COLORYELLOW,FONTSIZE22;

DRAWLINE

DRAWLINE(C1,P1,C2,P2,COLOR)

同一根 K 线两个条件同时成立时连接 P1 、 P2

约束:独立语句,支持 DOT 、 LINETHICK1 ..7

DRAWLINE(CLOSE>OPEN,HIGH,CLOSE>OPEN,LOW,COLORRED);

STICKLINE

STICKLINE(COND,P1,P2,COLOR,EMPTY) / STICKLINE(COND,P1,P2,WIDTH,EMPTY)

条件成立时在两个价格间画柱体

约束:第四参数为颜色常量,或 0..9 常量柱宽(颜色用尾缀); EMPTY =0 实心、非零空心

STICKLINE(CLOSE>OPEN,OPEN,CLOSE,COLORRED,0);

DRAWRECT

DRAWRECT(COND,LEFTID,TOP,RIGHTID,BOTTOM,COLOR)

在指定 K 线 ID 和价格边界间画半透明矩形

约束: ID 使用 BARID 坐标; ALPHA (0..255) 默认64,可加 BORDER 、 LINETHICK 、 NOAUTOSCALE ; 零面积或空值不绘制

DRAWRECT(ISLASTBAR,BARID-10,HIGH,BARID,LOW,COLORGREEN),ALPHA(48),BORDER,NOAUTOSCALE;

DRAWSEG

DRAWSEG(COND,LEFTID,P1,RIGHTID,P2,COLOR)

按任意两个 K 线 ID 和价格画线段

约束: ID 使用 BARID 坐标; LABELPOS (0/1/2)选择标签左端/中点/右端,默认2; ALIGN 独立控制文字对齐; 不延长端点

DRAWSEG(ISLASTBAR,BARID-5,CLOSE,BARID,CLOSE,COLORRED),NOAUTOSCALE;

DRAWZONE

DRAWZONE(COND,LEFTID,TOP,RIGHTID,BOTTOM,LOWTEST,HIGHTEST,MODE,KEEP,COLOR)

保留未被击穿的矩形区域,实时检查删除与数量上限

约束: MODE =0不删除/1下穿底部/2上穿顶部/3任一; KEEP =0..2000常量; 可加 RESERVE (0..2000)保留更多候选、 CREATEFIRST 先创建后删除、 RAWBOUNDS 按原始上下沿删除、 REPLACEOVERLAP 新区域替换二维重叠旧区域; LABEL 可选, IF (条件, TEXT , NOTEXT )只控制区域标签

DRAWZONE(CLOSE>OPEN,BARID,HIGH,LASTBARID,LOW,LOW,HIGH,1,5,COLORRED),ALPHA(80),BORDER,NOAUTOSCALE;

DRAWSL

DRAWSL(COND,DATA,SLOPE,LEN,EXPAND,COLOR)

从 DATA 画每周期变化 SLOPE 的线段

约束: LEN 为 1..10000 常量; EXPAND 为 0 不延长、1 左、2 右、3 双向; 最多前后各 10000 根触发历史

DRAWSL(CLOSE>OPEN,CLOSE,0,1,0,COLORGREEN),DOT;

DRAWCOLORLINE

DRAWCOLORLINE(COND,DATA,COLOR1,COLOR2)

条件双色线

约束:当前端点条件选择线段颜色; 空值断开

DRAWCOLORLINE(CLOSE>OPEN,CLOSE,COLORRED,COLORGREEN);

统计

SUMBARS

SUMBARS(X,A)

向前累加 X 到大于等于 A ,返回包含当前的周期数

约束: A 必须为正数; 不足或空值返回空值

SUMBARS(DATE<>REF(DATE,1),5)

HV

HV(X,N)

不包含当前 K 线的前 N 周期最高值

约束: N =0..100000,可为序列; 0 为全部已加载历史,空值周期返回空值

HV(HIGH,10)

LV

LV(X,N)

不包含当前 K 线的前 N 周期最低值

约束: N =0..100000,可为序列; 0 为全部已加载历史,空值周期返回空值

LV(LOW,10)

WILDERSUM

WILDERSUM(X,N[,ALIGN])

TA -Lib 方向指标使用的 Wilder 累计平滑; 可指定首次输出所需的有效值数量

约束: N =1..100000; ALIGN >= MAX (1, N -1),默认 ALIGN = N

WILDERSUM(CLOSE,14)

SUM

SUM(X,N)

N 周期求和; N =0 时从首个有效值累计

约束: N =0..100000,必须是公式常量

SUM(VOLUME,20)

COUNT

COUNT(COND,N)

统计 N 周期内条件成立次数; N =0 时累计统计

约束: N =0..100000,必须是公式常量

COUNT(CLOSE>OPEN,10)

HHV

HHV(X,N)

N 周期最高值; N =0 时从首个有效值计算

约束: N =0..100000,支持动态整数周期; 缺失周期返回空值

HHV(HIGH,20)

LLV

LLV(X,N)

N 周期最低值; N =0 时从首个有效值计算

约束: N =0..100000,支持动态整数周期; 缺失周期返回空值

LLV(LOW,20)

HHVBARS

HHVBARS(X,N)

N 周期最高值距当前的周期数

约束: N =0..100000,必须是公式常量

HHVBARS(HIGH,20)

LLVBARS

LLVBARS(X,N)

N 周期最低值距当前的周期数

约束: N =0..100000,必须是公式常量

LLVBARS(LOW,20)

RANGEHIGHID

RANGEHIGHID(X,L,R[,FIRST])

指定 ID 闭区间内最大值所在的 K 线 ID

约束: FIRST =0默认同值取最右,1取最左,须为整数常量; 空区间或超出计算窗口返回空值; 结果可回填历史位置

RANGEHIGHID(HIGH,VIEWLEFTID,VIEWRIGHTID)

RANGELOWID

RANGELOWID(X,L,R[,FIRST])

指定 ID 闭区间内最小值所在的 K 线 ID

约束: FIRST =0默认同值取最右,1取最左,须为整数常量; 空区间或超出计算窗口返回空值; 结果可回填历史位置

RANGELOWID(LOW,VIEWLEFTID,VIEWRIGHTID)

AVEDEV

AVEDEV(X,N)

N 周期平均绝对偏差

约束: N =1..100000,必须是公式常量

AVEDEV(CLOSE,14)

VAR

VAR(X,N)

N 周期样本方差

约束: N =2..100000,分母为 N -1

VAR(CLOSE,20)

VARP

VARP(X,N)

N 周期总体方差

约束: N =1..100000,分母为 N

VARP(CLOSE,20)

STD

STD(X,N)

N 周期样本标准差

约束: N =2..100000,等于 SQRT ( VAR ( X , N ))

STD(CLOSE,20)

STDP

STDP(X,N)

N 周期总体标准差

约束: N =1..100000,等于 SQRT ( VARP ( X , N ))

STDP(CLOSE,20)

STDDEV

STDDEV(X,N)

STDP 的 Q73N 兼容名称

约束:同 STDP

STDDEV(CLOSE,20)

逻辑

IF

IF(COND,A,B)

IFELSE 的兼容别名

约束:三个参数,与 IFELSE 相同

IF(CLOSE>OPEN,HIGH,LOW)

ISNULL

ISNULL(X)

空值返回 1,否则返回 0

约束:支持 NULL 和 DRAWNULL

ISNULL(REF(CLOSE,1))

FILTER

FILTER(COND,N)

保留一次信号,将其后 N 根 K 线的信号过滤为 0

约束: N =0..10000 整数常量; 被过滤信号不延长屏蔽期; 条件缺失返回空值但仍计入周期

FILTER(CLOSE>OPEN,3)

引用

BACKSET

BACKSET(X,N)

条件成立时,将包含当前在内的前 N 根标为 1,否则为 0

约束:未来函数,会回填历史; N =0..10000 整数,可为序列,0 或缺失返回空值; 不足 N 根按已有根数

BACKSET(CLOSE>OPEN,3)

BARSLAST

BARSLAST(COND)

上一次条件成立到当前的周期数,当根成立返回 0

约束:首次触发前及条件缺失后未再触发时为空; 图表最多额外回溯 10000 根

BARSLAST(CLOSE>OPEN)

CONST

CONST(X)

将当前计算窗口最后一根的值广播到整个序列

约束:用于历史展示筛选,会改变历史显示,不用于无未来数据的交易判断

CONST(CLOSE)

REF

REF(X,N)

引用 N 个周期前的值

约束: N =0..100000,可为逐根变化的整数序列,周期或目标值缺失时返回空值

REF(CLOSE,1)

均线

MA

MA(X,N)

N 周期简单移动平均

约束: N =0..100000,必须是公式常量; 0 返回空值

MA(CLOSE,20)

EMA

EMA(X,N) / EMA(X,N,ALIGN)

指数移动平均; 三参数形式按 ALIGN 指定首个输出位置,并重新选择 N 个初始种子数据

约束: N =0..100000,0 返回空值; ALIGN >= N ; 三参数形式改变初始值及后续结果,并非只隐藏前段输出

EMA(CLOSE,12,26)

SMA

SMA(X,N,M)

权重为 M 的扩展指数移动平均

约束: N >=1,1<= M <= N , N 和 M 必须是公式常量

SMA(CLOSE,6,1)

EMA2

EMA2(X,N)

N 周期线性加权平均

约束: N =1..100000,必须是公式常量

EMA2(CLOSE,10)

HMA

HMA(X,N)

Hull 移动平均

约束: N =1..100000 整数常量; 半周期与平方根周期向下取整,最小 1; 预热 N +floor(sqrt( N ))-2

HMA(CLOSE,20)

WMA

WMA(X,N)

EMA2 的兼容别名

约束:同 EMA2

WMA(CLOSE,10)

DMA

DMA(X,A)

动态移动平均

约束: A =(0,1],必须是公式常量; 最多回看 10000 根

DMA(CLOSE,0.2)

WILDER

WILDER(X,N[,ALIGN])

Wilder 平滑,首值为前 N 个有效值的简单平均

约束: N =1..100000; ALIGN >= N ,可按较长周期对齐起点

WILDER(CLOSE,14)

KAMA

KAMA(X,N)

考夫曼自适应移动平均线

约束: N =2..100000,必须是公式常量

KAMA(CLOSE,30)

回归

LINEARREG

LINEARREG(X,N)

N 周期线性回归终点值

约束: N =2..100000,必须是公式常量

LINEARREG(CLOSE,14)

LINEARREG_ANGLE

LINEARREG_ANGLE(X,N)

N 周期线性回归斜率角度

约束: N =2..100000,单位为度

LINEARREG_ANGLE(CLOSE,14)

LINEARREG_INTERCEPT

LINEARREG_INTERCEPT(X,N)

N 周期线性回归截距

约束: N =2..100000,必须是公式常量

LINEARREG_INTERCEPT(CLOSE,14)

LINEARREG_SLOPE

LINEARREG_SLOPE(X,N)

N 周期线性回归斜率

约束: N =2..100000,必须是公式常量

LINEARREG_SLOPE(CLOSE,14)

TSF

TSF(X,N)

N 周期线性回归向前预测一个周期

约束: N =2..100000,必须是公式常量

TSF(CLOSE,14)

趋势

SUPERTREND

SUPERTREND(H,L,C,N,M)

Wilder ATR 超级趋势线,逐根继承最终上下轨

约束: N =1..100000 整数常量; M >0 且不超过 3e37,必须是公式常量; 缺口后重新预热

SUPERTREND(HIGH,LOW,CLOSE,4,1)

SUPERTREND_DIR

SUPERTREND_DIR(H,L,C,N,M)

超级趋势方向:1 上涨、-1 下跌,预热期为空

约束:与 SUPERTREND 参数相同且共用计算; 首个有效点初始化为下跌,收盘突破才反转

SUPERTREND_DIR(HIGH,LOW,CLOSE,4,1)

SAR_LONG

SAR_LONG(H,L,ACC,MAXACC)

抛物线转向指标的多头支撑点

约束: ACC 、 MAXACC =0..3e37,必须是公式常量

SAR_LONG(HIGH,LOW,0.02,0.2)

SAR_SHORT

SAR_SHORT(H,L,ACC,MAXACC)

抛物线转向指标的空头压力点

约束: ACC 、 MAXACC =0..3e37,必须是公式常量

SAR_SHORT(HIGH,LOW,0.02,0.2)

自适应

MAMA

MAMA(X,FAST,SLOW)

MESA 自适应移动平均线

约束: FAST 、 SLOW =0.01..0.99,必须是公式常量

MAMA(CLOSE,0.9,0.1)

FAMA

FAMA(X,FAST,SLOW)

MAMA 的跟随移动平均线

约束: FAST 、 SLOW =0.01..0.99,必须是公式常量

FAMA(CLOSE,0.9,0.1)

周期

HT_TRENDLINE

HT_TRENDLINE(X)

Hilbert 瞬时趋势线

约束:固定回看 63 根

HT_TRENDLINE(CLOSE)

HT_DCPERIOD

HT_DCPERIOD(X)

Hilbert 主导周期

约束:固定回看 32 根

HT_DCPERIOD(CLOSE)

HT_DCPHASE

HT_DCPHASE(X)

Hilbert 主导周期相位

约束:固定回看 63 根,单位为度

HT_DCPHASE(CLOSE)

HT_INPHASE

HT_INPHASE(X)

Hilbert 相量同相分量

约束:固定回看 32 根

HT_INPHASE(CLOSE)

HT_QUADRATURE

HT_QUADRATURE(X)

Hilbert 相量正交分量

约束:固定回看 32 根

HT_QUADRATURE(CLOSE)

HT_SINE

HT_SINE(X)

Hilbert 正弦波

约束:固定回看 63 根

HT_SINE(CLOSE)

HT_LEADSINE

HT_LEADSINE(X)

Hilbert 领先正弦波

约束:固定回看 63 根

HT_LEADSINE(CLOSE)

条件

IFELSE

IFELSE(COND,A,B)

条件成立返回 A ,否则返回 B

约束: COND 非零表示成立

IFELSE(CLOSE>OPEN,1,0)

VALUEWHEN

VALUEWHEN(COND,VALUE[,N])

获取倒数第 N +1 次条件成立时的值,省略 N 等价于 0

约束: N =0..10000 整数常量; 记录不足返回空值; 条件缺失清空记录; 图表最多额外回溯 10000 根历史

VALUEWHEN(H1>0,H1,1)

CROSS

CROSS(A,B)

A 从下方向上穿过 B

约束:交叉当根返回 1,否则返回 0

CROSS(MA(CLOSE,5),MA(CLOSE,20))

CROSSUP

CROSSUP(A,B)

CROSS 的兼容别名

约束:同 CROSS

CROSSUP(CLOSE,MA(CLOSE,20))

CROSSDOWN

CROSSDOWN(A,B)

A 从上方向下穿过 B

约束:交叉当根返回 1,否则返回 0

CROSSDOWN(CLOSE,MA(CLOSE,20))

EVERY

EVERY(COND,N)

N 周期内条件始终成立

约束: N =1..100000,必须是公式常量

EVERY(CLOSE>OPEN,3)

EXIST

EXIST(COND,N)

N 周期内至少一次条件成立

约束: N =1..100000,必须是公式常量

EXIST(CLOSE>MA(CLOSE,20),5)

BETWEEN

BETWEEN(A,B,C)

判断 A 是否位于 B 与 C 之间

约束:包含上下边界, B 和 C 可交换

BETWEEN(CLOSE,LOW,HIGH)

拐点

PIVOTHIGH

PIVOTHIGH(X,L,R) / PIVOTHIGH(L,R)

等待右侧 R 根后确认局部高点,返回确认当根对应的拐点价格

约束:简写默认 HIGH ; L / R 为 0..10000 整数常量且 L + R <=10000; 同价取最右,完整窗口内有空值则不确认

PIVOTHIGH(HIGH,3,3)

PIVOTLOW

PIVOTLOW(X,L,R) / PIVOTLOW(L,R)

等待右侧 R 根后确认局部低点,返回确认当根对应的拐点价格

约束:简写默认 LOW ; L / R 为 0..10000 整数常量且 L + R <=10000; 未确认或历史不足为空,不回填历史

PIVOTLOW(LOW,3,3)

数学

ABS

ABS(X)

绝对值

约束: X 可为数值或序列表达式

ABS(CLOSE-REF(CLOSE,1))

MAX

MAX(A,B)

A 与 B 的较大值

约束: A 、 B 可为数值或序列表达式

MAX(CLOSE-OPEN,0)

MIN

MIN(A,B)

A 与 B 的较小值

约束: A 、 B 可为数值或序列表达式

MIN(OPEN,CLOSE)

POW

POW(A,B)

A 的 B 次幂

约束:定义域外返回空值

POW(CLOSE,2)

SQRT

SQRT(X)

平方根

约束: X <0 时返回空值

SQRT(VARP(CLOSE,20))

EXP

EXP(X)

e 的 X 次幂

约束:溢出时返回空值

EXP(1)

LN

LN(X)

自然对数

约束: X <=0 时返回空值

LN(CLOSE)

LOG

LOG(X)

以 10 为底的常用对数

约束: X <=0 时返回空值

LOG(VOLUME)

CEILING

CEILING(X)

向上舍入

约束:返回不小于 X 的最小整数

CEILING(CLOSE)

ROUND

ROUND(X,N)

四舍五入到 N 位小数

约束: N 为 -12..12 的整数; 中点远离零

ROUND(CLOSE,2)

FLOOR

FLOOR(X)

向下舍入

约束:返回不大于 X 的最大整数

FLOOR(CLOSE)

INTPART

INTPART(X)

截去小数部分

约束:向零取整

INTPART(CLOSE)

MOD

MOD(A,B)

A 对 B 取模

约束: B =0 时返回空值

MOD(VOLUME,100)

SGN

SGN(X)

返回数值符号

约束:正数为 1,负数为 -1,零为 0

SGN(CLOSE-OPEN)

NOT

NOT(X)

逻辑非

约束: X =0 返回 1,否则返回 0

NOT(CLOSE>OPEN)

合约

EXPIREDATE

EXPIREDATE('')

当前可交易合约到期日期

约束:返回 YYYYMMDD ; 缺少真实到期信息时为空值,仅支持当前合约

LDATE:EXPIREDATE(''),NODRAW;

DAYSTOEXPIRED

DAYSTOEXPIRED('')

距当前合约到期的自然日数

约束:以每根 K 线交易日为基准,包含到期日,过期为 0; 仅支持当前合约

DAYS:DAYSTOEXPIRED(''),NODRAW;

成交量

OBV

OBV(X,VOLUME)

按 X 的涨跌方向累计成交量,首值为首根成交量

约束:两个参数必须是等长序列

OBV(CLOSE,VOLUME)

三参数 EMA:初始化起点对齐

EMA(X,N,ALIGN) 在每段连续有效数据中先跳过 ALIGN-N 个数据,再使用随后 N 个数据的简单平均值作为 EMA 初始值。因此第一笔结果出现在该段第 ALIGN 个数据位置,之后按 2/(N+1) 的权重继续递推。

例如 EMA(CLOSE,12,26) 会跳过前 14 个数据,以第 15~26 个数据的平均值初始化 12 周期 EMA ,并从第 26 个数据开始输出,使它与 EMA(CLOSE,26) 具有相同的首个输出位置。

注意: 三参数形式会改变初始化窗口及后续数值,不等同于计算普通 EMA(CLOSE,12) 后隐藏前段结果。它主要用于复刻 TA -Lib 中多个不同周期 EMA 共用输出起点的指标,目前用于精确复刻 MACD ; KDJ 使用普通二参数 EMA 。