Files
playbook/docs/tsl/codegen/dotnet/runtime/math_stats.md
T

78 KiB
Raw Blame History

运行时 / 数学与统计

Anova_Bartlett(y, alpha)

在1-alpha的置信水平下,Bartlett方法检验方差齐性;B-Stat为统计值,P-Value为p值,df为自由度,Hypothesis为是否接受原假设 模型表达: Bartlett检验思想来源于几何平均数小于或等于算术平均数 原假设:是水平个数 ,其中 修正的Bartlett检验:

参数 类型 说明
y array 数据矩阵,为二维数组类型,每一行表示一个水平
alpha float 显著性水平,实数或整数,在01之间

返回:array

Anova_Levene(y, alpha)

在1-Alpha的置信水平下,Levene方法检验方差齐性,和Bartlett检验不同的是,Levene检验不要求总体具有正态性。返回一个数组,F-Stat为统计值,P-Value为p值,df1df2为自由度,Hypothesis为是否接受原假设 模型表达: 原假设:是水平个数 ,其中是观察数目,是水平数目

参数 类型 说明
y array 数据矩阵,为二维数组类型,每一行表示一个水平
alpha float 显著性水平,实数或整数,在01之间

返回:array

Anova_Single(y, alpha)

在1-alpha置信水平下,在假设服从正态分布,且方差齐性,样本之间独立的基础上,判断各水平的均值是否显著相等 模型表达: , 其中:效应平方和:,误差平方和: 总离差

参数 类型 说明
y array 数据矩阵,为二维数组类型,每一行表示一个水平
alpha float 显著性水平,实数或整数,在01之间

返回:array

Anova_Twice(y, alpha)

在1-alpha的置信水平下,进行双因子方差分析,假设每一种情况都服从一个正态分布,且方差相等,数据独立,判断各水平的均值是否显著相等 模型表达: 有A,B两个因素,因素A有r个水平,B有s个水平,对于A,B每一个组合(Ai,Bj)都进行t次试验,得到结果: 因素B 因素A B1 B2 … Bs A1 X111, X112,…,X11t X121, X122,…,X12t … X1s1, X1s2,…,X1st A2 X211, X212,…, X21t X221, X222,…, X22t … X2s1, X2s2,…, X2st … … … … Ar Xr11, Xr12,…, Xr1t Xr21, Xr22,…, Xr2t … Xrs1, Xrs2,…, Xrst 设:且相互独立 ,其中,是水平Ai的效应,是水平Bj的效应,称为水平Ai和Bj的交互效应。, 原假设:,, 现构造了3个F统计量来分别检验假设,原理略

参数 类型 说明
y array 数据矩阵,为二维数组类型,每rep行,每一列表示一个交叉项
alpha float 显著性水平,实数或整数,在01之间;Rep:每一个交叉项,做rep次试验,rep=1时,没有交叉效应为0的假设

返回:array

arma(series, p, q)

自回归移动平均模型,ARMA(p,q)模型,采用逆函数去估计自回归系数和移动平均系数,返回结果有自回归系数、移动平均系数、残差方差等信息 ARMA模型: 其中:为原序列零均值化的新序列,是自回归方程系数,为移动平均系数,是零均值、方差为的平稳白噪声

参数 类型 说明
series array 样本序列,为一维数组类型,注意要零均值化
p int 自回归阶数,整数类型
q int 移动平均阶数,整数类型;返回结果:Ret["AR"]:参数估计结果,,第一项为1Ret["MA"]:参数估计结果,,第一项为1Ret["T-test"]:AR模型参数的T检验;Ret["LossFunction"]Ret["FPE"]:预测最大误差;Ret["AIC"]:模型的AIC信息准则;Ret["SC"]:模型的SC信息准则;Ret["e"]:残差信息;Ret["Inverted AR Roots"]:AR特征方程的特征根;Ret["Inverted MA Roots"]:MA特征方程的特征根;Ret["R_squared"]:AR模型的可决系数;Ret["Adjusted_R_squared "]:AR模型的修正可决系数;Ret["Sum_squared_resid"]:AR模型的离差平方和;Ret["Durbin Watson stat"]:DW统计量;Ret["Log Likelihood"]:对数极大似然值;Ret["S.E. of regression"]:回归标准差

返回:array

示例

elps:=randnorm(0,1,200);
y:=array();
y[0]:=0;
for i:=1 to 199 do
y[i]:=0.8*y[i-1]+elps[i]-0.4*elps[i-1];
arma(y,1,1);

Cluster_Kmeans(samples, class_count, options)

执行 K-means 聚类。

参数 类型 说明
samples array 样本矩阵
class_count any 聚类数量
options array 参数表;常见键包括 maxitertoldistanceout

返回:array

Cluster_ward(samples)

执行 Ward 聚类。

参数 类型 说明
samples array 样本矩阵

返回:array

correlationMatrix(a1, t)

相关系数矩阵求解

参数 类型 说明
a1 array
t float

返回:array

示例

a := rand(4,3);
correlationMatrix(a,1);

Corr_partial(x, y, z, _type)

偏相关系数,返回x和y在控制变量z下的偏相关系数,行为样本,列为指标

参数 类型 说明
x array 变量一,二维实数数组
y array 变量二,二维实数数组
z array 控制变量,二维实数数组
_type any 1:pearson偏相关;2:Spearman偏相关;tail:假设检验的三种类型,字符串,取值为both、left和right,缺省是只输出相关系数

返回:any

covariance(a)

计算协方差矩阵

参数 类型 说明
a array

返回:any

示例

a := rand(4,3);
covariance(a);

Eigen_Jacobi(matrix, eigen_values, eigen_vectors)

用 Jacobi 方法计算矩阵特征值和特征向量。

参数 类型 说明
matrix array 待分解矩阵
eigen_values any 接收特征值数组
eigen_vectors any 接收特征向量矩阵

返回:void

eye(size)

生成单位矩阵。

参数 类型 说明
size any 行数和列数;eye(3) 生成 3 x 3 单位矩阵

返回:array

factor(x, var_value)

对样本数据进行因子分析,分别采用主成分分析法估计因子载荷矩阵(因子载荷矩阵不唯一),方差最大法做载荷矩阵的正交旋转矩阵,回归方法计算因子得分

参数 类型 说明
x array 二维维实数数组,表示样本矩阵;
var_value float 实数,表示方差贡献率,控制因子个数;;返回结果:ssRet["Correlation Matrix",0]:样本数据的相关系数矩阵;Ret["kmo",0]:KMO检验值;0.9<KMO: 非常适合;0.8<KMO<0.9:适合;0.7<KMO<0.8:一般; 0.6<KMO<0.7:适合度较低;KMO<0.6:适合度很低;ret["Total Variance Explained",0]:特征值、方差贡献率、累计方差贡献率等信息;ret["Component Matrix",0]:因子载荷矩阵;ret["Communalities",0]:共同变量度,即载荷矩阵行的平方和;ret["thogonal matrix",0]:正交变换后的载荷矩阵;ret["Rotation matrix",0]:旋转矩阵;ret["Factor score",0]:因子得分

返回:array

示例

stockn:=getBk("上证A股");
vo:=BackUpSystemParameters();
setSysParam(pn_date(),today());
sto:=array();
for n_i:=0 to length(stockn)-1 do
begin
setSysParam(pn_stock(),stockn[n_i]);
if isStockGoMarket(intToDate(20011231)) then
sto[length(sto)]:=stockn[n_i];
end
st:=array2Str(sto,";");
a1:= query("",st,true,"","代码",defaultStockId(),
"主营业务利润",report(46008,20101231),
"利润总额",report(46024,20101231),
"净利润",report(46033,20101231),
"加权每股收益",report(42003,20101231),
"每股净资产",report(42006,20101231),
"加权净资产收益率",report(42013,20101231),
"资产总计",report(44059,20101231),
"股本",report(44099,20101231));
RestoreSystemParameters(vo);
a:=zeros(mrows(a1),mcols(a1));
a[:,:]:=a1[:,:];
stock:=a[:,0];
data:=a[:,1:8];
//取得纯数据矩阵
br:=factor(data,0.85); //
br;

histc(a, b)

端点定位频数,判断序列a 中各个元素在b中各个段位中的频数

参数 类型 说明
a array 一维数组
b array 一维数组

返回:array

示例

a:=rand(1000)*5;
b:=array(0,1,2,3,4,5);
histc(a,b);

Hypoth_LSUTest(mx, s, n, u, tail, alpha)

单个或两个总体大样本的均值检验,即大样本U检验,返回的结果是一个数组,第一个数为统计值,二为p值,三为原假设的值(0表示拒绝,1表示接受) 模型表达 单个总体大样本的均值原假设:tail取值both:;left:;right 两个总体大样本的均值假设:tail取值both:;left;right: 检验统计量: 或 其中:x为样本x的均值,y为样本y的均值,为正态总体x方差,为正态总本y方差,m,n分别为样本x和y的容量s

参数 类型 说明
mx array 样本均值数组,第一行为样本1,第二行为样本2,为一维数组类型
s any 样本方差数组,第一行为样本1,第二行为样本2,为一维数组类型
n array 样本容量,第一行为样本1,第二行为样本2,为一维数组类型
u float 单个总体时,为假设检验均值,两个总体时,为均值差
tail string 假设检验类型
alpha float 显著性水平,实数或整数,在01之间

返回:array

Hypoth_PSignTest(x, pi, q0, tail, alpha)

非参数检验-配对样本符号检验,配对样本的符号检验 要求样本矩阵中两个样本是配对出现的 可以按照实际需求选择双侧或单侧检验

参数 类型 说明
x array 一维数字数组,样本矩阵
pi float 实数,分位点
q0 float 实数,检验值
tail string 字符串,双侧检验 or 左侧检验 or 右侧检验
alpha float 实数,显著性水平

返回:array

Hypoth_SignTest(x, pi, q0, tail, alpha)

非参数检验-符号检验。对单样本进行符号检验 可以按照实际需求选择双侧或单侧检验 其中,检验变量服从二项分布

参数 类型 说明
x array 样本序列,为一维数字数组类型
pi float 分位点,为实数类型
q0 float 检验值,即检验分位点的值,为实数类型
tail string 假设检验的三种类型,both(双侧检验),left(左侧检验),right(右侧检验),为字符串类型
alpha float 显著性水平,在0-1之间,为实数类型

返回:array

Hypoth_SNDTest(x, d2, tail, alpha)

单个正态总体方差的卡方检验,返回的结果是一个数组,第一个数为统计值,二为p值,三为原假设的值(0表示拒绝,1表示接受) 模型表达: 原假设:tail取值both:;left:;right: 检验统计量: 其中:为假设检验的方差,n为样本容量,s为样本标准差

参数 类型 说明
x array 样本序列,为一维数组类型
d2 float 假设检验的方差,为实数类型
tail string 假设检验类型
alpha float 显著性水平,实数或整数,在01之间

返回:array

Hypoth_SNUTest(x, u, d, tail, alpha)

单个正态总体的均值检验,分为标准差未知和已知两个情况,返回结果是一个数组,第一个数为统计值,二为p值,三为原假设的值(0表示拒绝,1表示接受) 模型表达: 原假设:tail取值both:;left:;right: 检验统计量:分为两种情况 1)标准差已知时,即d有取值,为U检验: 2)标准差未知时,即d取nil,为T检验: 其中:x为样本均值,为检验均值,为正态总体标准差,n为样本容量,s为样本标准差

参数 类型 说明
x array 样本序列,为一维数组类型
u float 假设检验均值,为实数类型
d float 正态总体的标准差,为实数类型,若未知,则输入nil
tail string 假设检验的三种类型,字符串,取值为both、left和right
alpha float 显著性水平,实数或整数,在01之间

返回:array

Hypoth_TNDTest(x, tail, alpha)

两个正态总体方差比的F检验,返回的结果是一个数组,第一个数为统计值,二为p值,三为原假设的值(0表示拒绝,1表示接受) 模型表达: 原假设:tail取值both:;left:;right: 检验统计量: 其中:Sx为x的样本标准差,Sy为y的样本标准差

参数 类型 说明
x array 样本序列矩阵,第一行为样本1,第二行为样本2,为二维数组类型
tail string 假设检验类型
alpha float 显著性水平,实数或整数,在01之间

返回:array

Hypoth_TNUTest(x, uu, d, tail, alpha, isequal)

两个正态总体均值差的检验,分为标准差未知和已知两个情况,返回的结果是一个数组,第一个数为统计值,二为p值,三为是否接受原假设 模型表达: 原假设:tail取值both:;left:;right: 检验统计量: 标准差已知时,即d数组有取值,为u检验: 标准差未知时,即d取(nil,nil),为t检验:, 其中:为样本x的均值,为样本y的均值,,为正态总体x,y的方差,分别为样本x和y的容量,为联合样本标准差

参数 类型 说明
x array 样本序列矩阵,为二维数组类型,第一行为样本1,第二行为样本2
uu float 假设检验均值差,为实数类型
d float 正态总体的标准差数组,为一维数组类型,若未知,则输入(nil,nil)
tail string 假设检验的三种类型,字符串,取值为both、left和right
alpha float 显著性水平,实数或整数,在01之间
isequal bool object

返回:array

ig_Chebyshev(a, b, call_back, v)

数值计算相关函数。

参数 类型 说明
a any
b any
call_back string
v any

返回:any

ig_Gauss(a, b, call_back, v)

数值计算相关函数。

参数 类型 说明
a any
b any
call_back string
v any

返回:any

ip_Aitken_A(x, y, xv, yv)

数值计算相关函数。

参数 类型 说明
x array
y array
xv any
yv any

返回:any

ip_Aitken_B(x0, h, y, xv, yv)

数值计算相关函数。

参数 类型 说明
x0 float
h float
y array
xv any
yv any

返回:any

ip_Hermite_A(x, y, dy, xv, yv)

数值计算相关函数。

参数 类型 说明
x array
y any
dy any
xv any
yv any

返回:any

ip_Hermite_B(x0, h, y, dy, xv, yv)

数值计算相关函数。

参数 类型 说明
x0 any
h any
y array
dy array
xv float
yv any

返回:any

ip_Lagrangian_A(x, y, xv, yv)

数值计算相关函数。

参数 类型 说明
x array
y any
xv any
yv any

返回:any

ip_Lagrangian_B(x0, h, y, xv, yv)

数值计算相关函数。

参数 类型 说明
x0 float
h float
y array
xv any
yv any

返回:any

ip_Parabola_A(x, y, xv, yv)

数值计算相关函数。

参数 类型 说明
x array
y array
xv any
yv any

返回:any

ip_Parabola_B(x0, h, y, xv, yv)

数值计算相关函数。

参数 类型 说明
x0 float
h float
y array
xv any
yv any

返回:any

ip_Spline_A(x, y, dy0, dyn_1, xv, yv)

数值计算相关函数。

参数 类型 说明
x array
y array
dy0 any
dyn_1 any
xv float
yv any

返回:any

ip_Spline_B(x, y, ddy0, ddyn_1, xv, yv)

数值计算相关函数。

参数 类型 说明
x array
y array
ddy0 any
ddyn_1 any
xv float
yv any

返回:any

ip_Spline_C(x, y, xv, yv)

数值计算相关函数。

参数 类型 说明
x array
y array
xv float
yv any

返回:any

一般统计量

LeastSquares_CurveFitting(f, y)

最小二乘法进行回归

参数 类型 说明
f array 二维数字数组类型,系数矩阵
y array 一维数字数组类型,观察数据值

返回:array

mcols(value, mode)

读取矩阵样数据或 FMArray 的列数或列索引。

参数 类型 说明
value array 输入数据
mode any 省略时返回列数;传 1 时返回列索引数组

返回:array

mrows(value, mode)

读取矩阵样数据或 FMArray 的行数或行索引。

参数 类型 说明
value array 输入数据
mode any 省略时返回行数;传 1 时返回行索引数组

返回:array

msize(value, mode)

读取矩阵样数据或 FMArray 的尺寸信息。

参数 类型 说明
value array 输入数据
mode any 省略时返回各维长度;传 1 时返回索引数组

返回:array

multipleRegression(x, y, call_back)

多元回归

参数 类型 说明
x array 二维数字数组类型,观察数据点
y array 一维数字数组类型,观察数据值
call_back string 字符串类型,计算系数矩阵的回调

返回:array

示例

x:=array((0.00,0.00),(0.00,1.00),(1.00,0.00),(1.00,1.00));
y:=array(1.00,2.00,2.00,3.00);
call_back:='MultipleRegression_CallBack';
multipleRegression(x,y,call_back);
//结果:

NonLP_Fminbnd(fun, a, b, methods)

一维最小值搜索,求解模型如下: min fun(x)

参数 类型 说明
fun string 目标函数(函数名字符串)
a float 下界,实数
b float 上界,实数
methods any 方法选择0 :黄金分割法+抛物线法(默认)1 : 盲人收索法2 :黄金分割法3 :斐波那契法

返回:array

NonLP_Rosenbrock(fun, x0)

(无约束最小值求解建议统一使用NonLP_Fminsearch函数)Rosenbrock求无约束多维极值问题,返回最优点和最优值。

参数 类型 说明
fun string 目标函数表达式,为字符串类型;
x0 array 初值向量,为一维数组类型

返回:array

numberOfPeriods(rate, payment, present_value, future_value, payment_time)

返回投资的期数,也就是按照指定的收益率和每期的付款,现值PresentValue要经过多少个周期才能到达FutureValue的数值。

参数 类型 说明
rate float 实数,收益率
payment float 实数。每期付款额
present_value float 实数,现值
future_value int 实数,要达到的终值
payment_time float PaymentTime决定Payment的支付是在期初还是期末发生

返回:float

ozProg(f, a, b)

(线性规划,包括整数规划,01规划建议统一使用prog_L函数),0-1规划,解决如下0-1整数规划模型问题 返回该0-1规划模型的最小值及其对应变量的取值,其中可以转化为和;

参数 类型 说明
f array 一维实数数组,表示0-1规划模型的目标函数系数;
a array 二维实数数组,表示0-1规划模型的带“”约束方程系数矩阵,如果是带“”,则将该方程两边同乘以“-1”;
b array 一维实数数组,表示0-1规划模型带“”约束方程的约束值;

返回:array

示例

f:=array(-3,2,-5);
a:=array((1,2,-1),(1,4,1),(1,1,0),(4,0,1));
b:=array(2,4,3,6);
ozProg(f,a,b);
//结果:x1=1,x2=0,x3=1,f(x)=-8

Prog_Q(h, f, a, b, aeq, beq, lb, ub, x0, options)

二次规划问题求解(采用作用集方法) Prog_Q(H,f,A,b) 求解不等式约束 Prog_Q(H,f,A,b,Aeq,beq) 求解不等式约束、等式约束 Prog_Q(H,f,A,b,Aeq,beq,LB,UB) 求解不等式约束、等式约束、上下界限约束 Prog_Q(H,f,A,b,Aeq,beq,LB,UB,x0,options) 模型表达: min= `x* H* x /2 + sum(f*x) st. A:*x<=b Aeq :* x = Beq; lb<x<ub;

参数 类型 说明
h array 二次型,正定二次型二维数字数组,不可缺省
f array 线性目标,一维数字数组,不可缺省
a array 线性约束,二维数字数组,不可缺省
b array 线性约束,一维数字数组,不可缺省
aeq array 线性约束,二维数字数组,缺省为空
beq array 线性约束,一维数字数组,缺省为空
lb array 下界约束,一维数字数组,缺省为空
ub array 上界约束,一维数字数组,缺省为空
x0 array 初始值,一维数组
options array 选项设置,数据表类型,缺省为array('maxiter': 400 , //最大迭代次数'tolcon': 1.0e-6, //约束容忍误差'tolfun' : 1.0e-6 , //目标最小误差'tolx' : 1.0e-6 //变量最小变化)

返回:array

rand(rows, cols)

生成随机矩阵样结果。

参数 类型 说明
rows any 行数
cols any 列数

返回:array

数学函数 / FMArray 函数

randgam(a, b, row, col)

产生伽马分布的随机数

参数 类型 说明
a float 形状参数,大于0的实数
b float 尺度参数,大于0的实数
row array 行数或者行名字符串数组
col array 列数或者列名字符串数组

返回:any

示例

randgam(2,2,100,array("a","b"));

Regress_CMLS(y, x, u, constant)

线性回归方程的最小二乘法参数估计(可选择是否包含常数项),返回回归方程的系数,如果有常数项则排在第一项

参数 类型 说明
y array 被解释变量序列,为一维数组类型
x array 解释变量矩阵,为二维数组类型,每一列为一个解释变量
u array 残差序列,为一维数组类型,变参
constant bool 是否包含常数项,为布尔类型,缺省为true

返回:array

Regress_domin_formula(y, x)

相对重要性分析-R2公式分解法 功能描述: 1、相对重要性分析 2、算法:根据含常数项的多元回归的r2的分解公式,来计算 不同解释变量的相对贡献度 3、公式法: 未考虑到不同解释变量之间的相互关系, 贡献度可能为负数

参数 类型 说明
y array Array of number,因变量
x array Array of number,自变量

返回:array

Regress_DWTest(u)

德宾-沃森检验:检验随机误差项是否存在一阶自相关。结果返回DW统计量 DW统计量:(一般认为值在2附近,则随机误差项不存在自相关)

参数 类型 说明
u array 方程残差,为一维数组类型;

返回:any

Regression_OLS_NW(y, x, constant, alpha, al)

NW调整的OLS回归,此调整用于当残差或者因变量(两者等价)存在异方差性并且自相关性时,利用OLS回归后对回归系数的协方差矩阵进行NW调整计算,得到每个系数White调整后的标准误,再进行T检验。T检验部分相关公式详见Regress_TTest_NW,回归系数的OLS解如下β*=(X'X)-1X'y 其余部分定义与普通最小二乘OLS一致

参数 类型 说明
y array 一维数字数组, 因变量
x array 二维数字数组, 自变量,不需要包含全1列
constant bool object
alpha float 实数,显著性水平,应为0到1之间的值,默认0.05
al any 整数,自相关最大滞后阶数,可缺省,默认用Newey and West (1994)?提出的方法计算,至少为1

返回:array

Regress_MLS(y, x, u)

线性回归方程的最小二乘法参数估计(包含常数项),返回回归方程的系数,常数项排在第一项

参数 类型 说明
y array 被解释变量序列,为一维数组类型
x array 解释变量矩阵,为二维数组类型,每一列为一个解释变量
u array 残差序列,为一维数组类型,变参

返回:array

Regress_Ridge(y_values, x_values, k_values, trace_mode)

执行岭回归,或按 k_values 输出岭迹。

参数 类型 说明
y_values array 因变量样本
x_values array 自变量样本矩阵
k_values array 岭参数序列;省略时自动选择
trace_mode bool 是否按岭迹模式输出

返回:array

Regress_TTest_RWLS(x, a, u, k, alpha, constant, weight, restrictiveness)

T检验,在alpha的置信水平下,n元线性回归变量系数的显著性检验 原假设:回归方程系数不显著。带约束的加权最小二乘 RWLS 模型,对回归系数进行显著性检验, 适用于以下

参数 类型 说明
x array 一维数字数组,自变量矩阵,注意:含常数项的回归不需要给全1列
a array 一维数字数组,方程系数;有常数项时,a 为 常数项系数 union 自变量系数;无常数项时,a 为 自变量系数
u array 一维数字数组,残差序列
k any 整型,自变量的个数;k = length(a)-constant;有常数项回归时,k := mcols(x);;无常数项回归,k := mcols(x)-1;
alpha float 实数,显著性水平
constant bool Bool,是否为含常数项回归
weight array 数组,加权回归的权重,默认等权重
restrictiveness array 数组,线性约束,只需要给对应于回归系数个数长度的一维数组,默认无约束;例如:有5个系数,分别为x0,x1,x2,x3,x4;约束为: x1+x2+3x4=3;则所给的参数为:array(0,1,1,0,3)

返回:array

Regress_WLS(y_values, x_values, weights, residuals)

执行加权最小二乘回归并输出残差。

参数 类型 说明
y_values array 因变量样本
x_values array 自变量样本
weights array 权重序列
residuals any 接收残差序列

返回:array

sf_Beta(arg1, arg2, v)

统计分布相关函数。

参数 类型 说明
arg1 any
arg2 any
v any

返回:any

sf_betainv(y, arg2, arg3, x)

统计分布相关函数。

参数 类型 说明
y array
arg2 any
arg3 any
x any

返回:any

常用数学函数

sf_betapdf(x, a, b, v)

贝塔分布的密度函数,输入随机变量,返回随机变量对应的密度函数值

参数 类型 说明
x array :随机变量,可以使用实数,也可以是一个实数数组
a float beta分布参数1,实数,大于0
b float beta分布参数2,实数,大于0
v array 变参返回,该函数也支持直接返回,类型和x一样

返回:any

sf_CosX(arg1, v)

数值计算相关函数。

参数 类型 说明
arg1 any
v any

返回:any

sf_EllipseX_1(k, f, v)

数值计算相关函数。

参数 类型 说明
k any
f any
v any

返回:any

sf_EllipseX_2(k, f, v)

数值计算相关函数。

参数 类型 说明
k any
f any
v any

返回:any

sf_Error(arg1, v)

统计分布相关函数。

参数 类型 说明
arg1 float
v any

返回:any

sf_eX(arg1, v)

数值计算相关函数。

参数 类型 说明
arg1 any
v any

返回:any

sf_F(f, n1, n2, v)

统计分布相关函数。

参数 类型 说明
f any
n1 any
n2 any
v any

返回:any

sf_finv(arg1, arg2, arg3, v)

统计分布相关函数。

参数 类型 说明
arg1 float
arg2 any
arg3 any
v any

返回:any

sf_Gamma(arg1, v)

统计分布相关函数。

参数 类型 说明
arg1 any
v any

返回:any

sf_gammainv(arg1, arg2, v)

统计分布相关函数。

参数 类型 说明
arg1 float
arg2 any
v any

返回:any

sf_IncompleteBeta(a, b, x, v)

统计分布相关函数。

参数 类型 说明
a any
b any
x float
v any

返回:any

sf_IncompleteGamma(a, x, v)

统计分布相关函数。

参数 类型 说明
a any
x any
v any

返回:any

sf_IntegerBessel_1(n, x, v)

统计分布相关函数。

参数 类型 说明
n any
x float
v any

返回:any

sf_IntegerBessel_2(n, x, v)

统计分布相关函数。

参数 类型 说明
n any
x float
v any

返回:any

sf_Normal(x, a, d, v)

统计分布相关函数。

参数 类型 说明
x any
a any
d any
v any

返回:any

sf_normalinv(arg1, arg2, arg3, v)

统计分布相关函数。

参数 类型 说明
arg1 float
arg2 any
arg3 any
v any

返回:any

sf_normalinv2(arg1, v)

统计分布相关函数。

参数 类型 说明
arg1 float
v any

返回:any

sf_RealBessel_1(n, x, v)

统计分布相关函数。

参数 类型 说明
n any
x float
v any

返回:any

sf_RealBessel_2(n, x, v)

统计分布相关函数。

参数 类型 说明
n any
x float
v any

返回:any

sf_SinX(arg1, v)

数值微积分相关函数。

参数 类型 说明
arg1 any
v any

返回:float

sf_t(t, n, v)

统计分布相关函数。

参数 类型 说明
t float
n any
v any

返回:any

sf_tinv(arg1, arg2, v)

统计分布相关函数。

参数 类型 说明
arg1 float
arg2 any
v any

返回:any

sf_X2(x, n, v)

统计分布相关函数。

参数 类型 说明
x float
n any
v any

返回:any

sf_x2inv(arg1, arg2, v)

统计分布相关函数。

参数 类型 说明
arg1 float
arg2 any
v any

返回:any

SingleUnLineralRegression_CallBack(x)

单元非线性回归的回调函数

参数 类型 说明
x array 一维数字数组类型

返回:array

Time_ACF(y)

自相关系数,计算随机序列与所有滞后阶数的相关系数。

参数 类型 说明
y array 数组,样本序列;;p:整数,返回样本自相关系数序列的长度,默认值为3,允许缺省;

返回:array

Time_Analyse(y, model, p, q, l)

ARMA模型分析,时间序列的ARMA模型分析,可以自动的选择q与p

参数 类型 说明
y array 样本序列,为一维数组类型;
model string 模型类别为AR、MA、ARMA,为字符串类型;
p any 自回归阶数,取0则自动选择阶数,为整数类型;
q any 移动平均阶数,取0则自动选择阶数,为整数类型;
l any 预测步长,为整型类型;

返回:any

Time_ARCH(r_series, q, l)

自回归条件异方差模型,本模型的ARCH模型如下: sss 可把异方差方程进行整合,得到 用最小二乘法去估计方程的系数了,得到系数的相合估计。 或者用最大似然估计去估计参数,得到精度估计,最大似然估计的目标函数值为:

参数 类型 说明
r_series array 资产收益率,为一维数组类型;
q any 自回归阶数,为整数类型;
l any 预测步长,为整数类型

返回:array

Time_ARCHTest(u, q, alpha)

时间序列异方差的ARCH检验,原假设都为没有异方差,即不存在ARCH效应,Hypothesis为1表示接受原假设,0表示拒绝原假设 检验统计量为: 对方程进行估计,得到F统计量和T×R2统计量并进行检验;

参数 类型 说明
u array 残差序列,为一维数组类型
q any 滞后阶数,为整数类型
alpha float 1-alpha为置信水平,一般为5%,也有1%和10%,数值越小,判断越严格

返回:array

Time_ARMA(y, p, q, l)

建议使用ARMA模型替换,自回归移动平均模型,ARMA(p,q)模型,采用逆函数去估计自回归系数和移动平均系数,返回结果有自回归系数、移动平均系数、残差方差、预测值及预测波动。 估计过程如下: ,为自协方差 其中:yt为原序列零均值化的新序列,μ为原序列的均值,ρp是自相关系数,φq是自回归方程系数,θq为移动平均系数,εt是零均值、方差为σ2的平稳白噪声

参数 类型 说明
y array 样本序列,为一维数组类型;
p any 自回归阶数;
q any 移动平均阶数
l any 预测步长,整数

返回:array

Time_ARp(y, p, l)

建议使用AR模型替换,自回归模型,AR(p)模型,用Yule-Walker方程去估计p阶自回归模型的系数,返回结果有自回归系数、残差方差、预测值及预测波动。估计过程如下 AR(p)模型: 如有常数项,则 ,为自协方差 其中:为原序列零均值化的新序列,为原序列的均值,是自相关系数,是自回归方程系数,是零均值,方差为的平稳白噪声

参数 类型 说明
y array 样本序列,为一维数组类型;
p any 自回归阶数;
l any 预测步长;

返回:array

Time_AutoCov(y, l)

自协方差,求样本序列跟滞后L阶序列的协方差,即自协方差 自协方差计算公式如下: 其中:yt是样本序列,yL是滞后L阶的序列。

参数 类型 说明
y array 样本序列,为一维数组类型;
l any 滞后阶数,为整数类型;

返回:any

Time_ChoseP(y, model, f)

判断AR模型最佳的阶数,采用信息准则函数判断模型的最佳阶数 其中:T为样本容量,K为待估计参数

参数 类型 说明
y array 样本序列,为一维数组类型;
model string 模型类别为AR、MA、ARMA,为字符串类型;
f string 判断准则为SBIC和AIC,为字符串类型

返回:any

Time_DanielTest(y, alpha)

在1-alpha置信水平下,进行随机时间序列的Daniel平稳性检验。返回结果为一个数组,第一个为q值(q>0:序列有上升趋势,q<0:序列有下降趋势),第二个为T统计量,第三个为p值,第四个为是否接受原假设。原假设为x是平稳序列,所以H为1表示接受原假设,0表示拒绝原假设 其中:qs是Spearman相关系数,Rt为秩统计量,n为样本容量

参数 类型 说明
y array 随机时间序列,为一维数组类型
alpha float 显著性水平,实数类型,取值在0-1之间

返回:array

Time_Diff(y, n)

序列差分

参数 类型 说明
y array 需要做差分的数组数据
n any 差分的阶数,0阶不做处理

返回:any

Time_GARCH(rseries, model)

广义自回归条件异方差模型,包含四种模型:GARCH(1,1)、GJR(1,1)、IGARCH(1,1)和EGARCH(1,1),本模型采用了最大似然估计法去估计模型的系数,可做一步预测。 GARCH(1,1) GJR(1,1) IGARCH(1,1) EGARCH(1,1) 最大似然估计的目标函数值为:

参数 类型 说明
rseries array 资产收益率,为一维数组类型;
model string 模型类别,为字符串类型;

返回:any

Time_InvFun(ap, mq)

中间函数,模型逆函数,ARMA模型的逆函数,Green函数的递推公式如下: 式中: ,,是自回归方程系数,为移动平均系数,

参数 类型 说明
ap array 自相关系数,为一维数组类型;
mq array 移动平均系数,为一维数组类型;

返回:array

Time_MAq(y, q, l)

建议使用ARMA模型替换,移动平均模型,MA(q)模型,用条件最小二乘法去估计q阶移动平均模型的系数,返回结果有移动平均系数、残差方差、预测值及预测波动。 估计过程如下: MA(q)模型: 具有逆转形式: 用算子形式比较,可得: s 条件最小二乘法使得下列残差平方和最小: 可将上述转化为矩阵形式,先求得的取值,在利用上上式计算移动平均系数 如有常数,则常数项为原序列的均值。 ,为自协方差 其中:yt为原序列零均值化的新序列,μ为原序列的均值,θq为移动平均系数,εt是零均值,方差为σ2的平稳白噪声

参数 类型 说明
y array 样本序列,为一维数组类型;
q any 移动平均阶数;
l any 预测步长;

返回:array

Times_Cointergration(y, x, alpha)

建议使用Times_Cointergration_test函数替换本函数,协整检验—E-G两步法检验变量的协整关系,E-G法如下: 1)在因变量与自变量存在同阶单整关系的条件,进行最小二乘法回归; 2)把回归后的残差进行平稳性检验,如果残差序列是平稳的,则两者存在协整关系,否则不存在。

参数 类型 说明
y array 因变量,为一维数组类型;
x array 自变量矩阵,为二维数组类型;
alpha float 1-alpha为置信水平,一般为5%,也有1%和10%,数值越小,判断越严格;

返回:string

Times_Cointergration_test(y, x, constant, alpha_type, style, criterion)

E-G两步法协整检验变量的协整关系,E-G法基本步骤如下: 1)在因变量与自变量存在同阶单整关系的条件,进行最小二乘法回归; 2)把回归后的残差进行平稳性检验,如果残差序列是平稳的,则两者存在协整关系,否则不存在。

参数 类型 说明
y array 被解释变量,为一维数组类型
x array 解释变量,为一维数组类型
constant bool 回归方程是否含有常数项,为布尔类型
alpha_type float 显著性水平,为实数类型,一般在0-1之间
style any ADF法检验单整阶数时是否存在常数或趋势项,整数类型,无常数无趋势使用0、有常数无趋势1、有常数有趋势2
criterion string 滞后阶数判断信息准则,字符串类型,"SBIC""AIC"

返回:array

Times_ECM(y, x, resid, alpha, q, p)

两变量间的误差修正模型,准确的刻画了两序列间的短期波动特征 误差修正模型是时间序列间协整关系的主要表现形式,准确的刻画了序列间的长期均衡关系和短期波动特征。设一阶自回归分布滞后模型为: 其中,是均值为零,方差为的白噪声,进行适当的整理有: 其中若记 称为误差修正项。

参数 类型 说明
y array 被解释变量,为一维数组类型
x array 解释变量,为一维数组类型
resid array 协整检验时的残差,没有输入,使用最小二乘得到
alpha float 显著性水平
q any 整数类型,被解释变量的滞后项
p any 整数类型,解释变量的滞后项

返回:any

timeSeriesSplit()

时间序列数据处理;将时间序列数据:时间、数据、(股票)处理成为(时间股票数据)的格式。注意,该函数主要用于客户端结果处理,不提供给用户程序编辑。

返回:array

Times_Granger(y, x, q, alpha)

Granger因果检验,原假设:X不是Y的Granger原因,Hypothesis为1表示接受原假设,0表示拒绝原假设 原假设: 分别对上述两个回归方程做回归,提取残差平方和XESS跟YESS,则F统计量如下计算:

参数 类型 说明
y array 被解释变量,为一维数组类型
x array 解释变量,为一维数组类型
q any 滞后阶数,为整数类型
alpha float 显著性水平,为实数类型,一般在0-1之间

返回:array

Times_johansen(x, p, k)

进行Johansen协整检验,第一列的迹、最大特征值统计量的原假设是:没有协整关系;第二列的迹、最大特征值统计量的原假设是最多只有一个协整关系;第三列的迹、最大特征值统计量的原假设是最多只有两个协整关系……

参数 类型 说明
x array 输入多元时间序列,每一列为一指标,每行为一时间 (nobs*m)
p any 是否含时间趋势及常数项p = -1,没有时间趋势以及常数项p =0,含常数项p =1,含常数项以及一次时间项p >1,含常数项以及高次时间项
k any 滞后阶数

返回:array

zeros(size_or_rows, cols_or_fields)

生成元素为 0 的一维或二维矩阵样结果。

参数 类型 说明
size_or_rows any 一维长度或二维行数
cols_or_fields array 二维列数,或列名数组

返回:array

correlMatrix(stocks, start_date)

股票列表之间的相关系数。与当前时间有关,当前时间为区间截止日。

参数 类型 说明
stocks Array 一维字符串数组,股票列表
start_date TDateTime 日期型时间,开始计算日期

返回:TableArray

示例

//组合个股相关矩阵
setSysParam(pn_date(),20201231T);
stocks:=array("SH600718","SZ000920");
return correlMatrix(stocks,intToDate(20120926));
//结果:

symOrthogonal(data, option)

对矩阵进行正交

参数 类型 说明
data Array 二维数字数组, 二维数组 行下标为数字或字符串的二维数组
option UserDefine 用户自定义, 正交方法的选择

返回:array

示例

范例01
//求data的对称正交矩阵
data := rand(10,3);
return symOrthogonal(data,0);
//结果,随机数,每次结果不一样,仅供参考

covarianceAttenuation(a)

协方差矩阵-衰减因子。

参数 类型 说明
a array 二维数字数组

返回:any

示例

a:=array((1,2,3),(4,5,6));
return covarianceAttenuation(a);
返回:

giniCoeff(x, y, method)

计算基尼系数,其中Method决定使用的方法。

参数 类型 说明
x
y
method

返回:real

示例

x:=array(0.1,0.2,0.3,0.4,0.5,0.6);
y:=x^2;
return giniCoeff(x,y,1);
//返回:0.07

hurst(data, n_rs, options)

计算hurst指数

参数 类型 说明
data Array 一维数字数组,用于求hurst的收益率数据
n_rs Array 二维数字数组,作为变参输出回归数据n和R/S
options Array 二维数字数组,方法选项,默认方法选项 "minEle":10,"maxSur":0

返回:real

示例

data:=spec(fundNawzfQk(20240308t,20240831t,cy_day(),0,0), "OF000001");
t := sselect ["净值收益率(%)"] from data end;
return hurst(t);// 0.47

weightedMedian(x, w)

加权中位数

参数 类型 说明
x Array 一维数字数组
w Array 一维权重向量

返回:real

示例

x := array(1,2,3,4,5);
w := array(0.15,0.1,0.2,0.3,0.25);
echo median(x); //返回3
return weightedMedian(x, w); //返回4

weightedGeomean(x, w)

加权几何平均数

参数 类型 说明
x Array 一维数字数组
w Array 一维权重向量

返回:real

示例

x := array(1,2,3,4,5);
w := array(0.15,0.1,0.2,0.3,0.25);
return weightedGeomean(x,w); //3.0261

weightedHarmean(x, w)

加权调和平均数

参数 类型 说明
x Array 一维数字数组
w Array 一维权重向量

返回:real

示例

x := array(1,2,3,4,5);
w := array(0.15,0.1,0.2,0.3,0.25);
return weightedHarmean(x,w); //2.553

weightedMean(x, w)

加权平均数

参数 类型 说明
x Array 一维数字数组
w Array 一维权重向量

返回:real

示例

x := array(1,2,3,4,5);
w := array(0.15,0.1,0.2,0.3,0.25);
return weightedMean(x,w); //3.4

weightedPopnVariance(x, w)

加权总体方差

参数 类型 说明
x Array 一维数字数组
w Array 一维权重向量

返回:real

示例

x := array(1,2,3,4,5);
w := array(0.15,0.1,0.2,0.3,0.25);
return weightedPopnVariance(x,w); //1.84

weightedVariance(x, w)

可靠性权重加权样本方差

参数 类型 说明
x Array 一维数字数组
w Array 一维权重向量

返回:real

示例

x := array(1,2,3,4,5);
w := array(0.15,0.1,0.2,0.3,0.25);
return weightedVariance(x,w); //2.374

weightedPopnCov(a, b, w)

加权总体协方差

参数 类型 说明
a Array 一维数字数组
b Array 一维数字数组
w Array 一维权重向量

返回:real

示例

x := array(1,2,3,4,5);
w := array(0.15,0.1,0.2,0.3,0.25);
y := array(6,4,3,1,9);
return weightedPopnCov(x,y,w);// 0.82

weightedCov(a, b, w)

可靠性权重加权样本协方差

参数 类型 说明
a Array 一维数字数组
b Array 一维数字数组
w Array 一维权重向量

返回:real

示例

x := array(1,2,3,4,5);
w := array(0.15,0.1,0.2,0.3,0.25);
y := array(6,4,3,1,9);
return weightedCov(x,y,w); // 1.058

weightedPopnCovariance(a, w)

加权总体协方差矩阵

参数 类型 说明
a Array 待计算的矩阵,每一列为一个因子
w Array 一维权重向量

返回:Matix

示例

begt := 20190101T;
endt := 20190415T;
stocks := array('SH000001','SH000300','SH600000');
//涨幅(%)矩阵
returns := pf_GetPortfolioRate(stocks,begt,endt,1)[:,1:];
//指数函数权重
n := length(returns);
w := exp(1->n);
w /= sum(w);
return weightedPopnCovariance(returns, w);
//结果

weightedCovariance(a, w)

可靠性权重加权样本方差矩阵

参数 类型 说明
a Array 待计算的矩阵,每一列为一个因子
w Array 一维权重向量

返回:matrix

示例

begt := 20190101T;
endt := 20190415T;
stocks := array('SH000001','SH000300','SH600000');
//涨幅(%)矩阵
returns := pf_GetPortfolioRate(stocks,begt,endt,1)[:,1:];
//指数函数权重
n := length(returns);
w := exp(1->n);
w /= sum(w);
return weightedCovariance(returns, w);
//结果

weightedCorrel(a, b, w)

加权相关系数

参数 类型 说明
a Array 一维数字数组
b Array 一维数字数组
w Array 一维权重向量

返回:real

示例

x := array(1,2,3,4,5);
w := array(0.15,0.1,0.2,0.3,0.25);
y := array(6,4,3,1,9);
return weightedCorrel(x,y,w); //0.1956

weightedCorrelM(a, w)

加权相关系数矩阵

参数 类型 说明
a Array 待计算的矩阵,每一列为一个因子
w Array 一维权重向量

返回:matrix

示例

begt := 20190101T;
endt := 20190415T;
stocks := array('SH000001','SH000300','SH600000');
//涨幅(%)矩阵
returns := pf_GetPortfolioRate(stocks,begt,endt,1)[:,1:];
//指数函数权重
n := length(returns);
w := exp(1->n);
w /= sum(w);
return weightedCorrelM(returns, w);
//结果

ewmMean(x, y, alphatype, adjust, iflast)

指数加权移动平均,支持nan,为nan的值参与权重计算,但计算平均时对nan值不进行计算,即计算加权平均时把nan 值及其权重都置为0进行计算

参数 类型 说明
x Array 数组,待计算移动平均的一维数字数组
y real 实数,衰减因子,与alphatype共同决定实际的衰减因子alpha,见平滑系数的确定
alphatype Integer 用户自定义,默认为0
adjust bool 布尔型,是否调整,True、实际权重计算,False、根据无穷序列假设下的递推式计算,默认为False,见指数加权的两种递推式。
iflast bool 是否只返回最后一个数,默认为False

返回:Array

示例

sp_s(Pn_stock(),'SH000300');
sp_s(pn_date(),20190415T);
x := nDay3(50,stockZf3());
return x | ewmMean(x,10,1);
//结果

ewmStd(x, y, alphatype, adjust)

指数加权移动标准差

参数 类型 说明
x Array 待计算移动平均的一维数字数组
y real 衰减因子,与alphatype共同决定实际的衰减因子alpha,见平滑系数的确定
alphatype Integer 用户自定义,默认为0
adjust bool 是否调整,True、实际权重计算,False、根据无穷序列假设下的递推式计算,默认为False,见指数加权的两种递推式。

返回:Array

示例

sp_s(Pn_stock(),'SH000300');
sp_s(pn_date(),20190415T);
x := nDay3(50,stockZf3());
return x | ewmStd(x,10,1);
//结果

ewmVar(x, y, alphatype, adjust)

指数加权移动方差,支持nan,为nan的值参与权重计算,但计算平均时对nan值不进行计算,即计算加权平均时把nan 值及其权重都置为0进行计算,(有偏暂未实现支持nan)

参数 类型 说明
x Array 待计算移动平均的一维数字数组
y real 衰减因子,与alphatype共同决定实际的衰减因子alpha,见平滑系数的确定
alphatype Integer 用户自定义,默认为0
adjust bool 是否调整,True、实际权重计算,False、根据无穷序列假设下的递推式计算,默认为False,见指数加权的两种递推式。

返回:Array

示例

sp_s(Pn_stock(),'SH000300');
sp_s(pn_date(),20190415T);
x := nDay3(50,stockZf3());
return x | ewmVar(x,10,1);
//结果

ewmCorrel(a, b, y, alphatype, adjust, iflast)

指数加权移动相关系数

参数 类型 说明
a Array 样本a待计算的一维数字数组
b Array 样本b待计算的一维数字数组
y real 衰减因子,与alphatype共同决定实际的衰减因子alpha,见平滑系数的确定
alphatype Integer 用户自定义,默认为0
adjust bool 是否调整,True、实际权重计算,False、根据无穷序列假设下的递推式计算,默认为False,见指数加权的两种递推式。
iflast bool 是否只返回最后一个数,默认为False

返回:Array

示例

sp_s(Pn_stock(),'SH000300');
sp_s(pn_date(),20190415T);
a:=nDay3(50,stockZf3());
b:=nDay3(50,spec(stockZf3(),'SH000001'));
return a|b|ewmCorrel(a,b,10,1);
//结果

ewmCov(a, b, y, alphatype, adjust)

指数加权移动协方差

参数 类型 说明
a array 样本a待计算的一维数字数组
b Array 样本b待计算的一维数字数组
y real 衰减因子,与alphatype共同决定实际的衰减因子alpha,见平滑系数的确定
alphatype Integer 用户自定义,默认为0
adjust bool 是否调整,True、实际权重计算,False、根据无穷序列假设下的递推式计算,默认为False,见指数加权的两种递推式。

返回:array

示例

sp_s(Pn_stock(),'SH000300');
sp_s(pn_date(),20190415T);
a:=nDay3(50,stockZf3());
b:=nDay3(50,spec(stockZf3(),'SH000001'));
return a|b|ewmCov(a,b,10,1);
//结果

ewmSlope(y, x, a, alphatype, adjust)

指数加权移动回归斜率,y与x协方差/x方差(指数加权移动)

参数 类型 说明
y array 样本y待计算的一维数字数组
x array 样本x待计算的一维数字数组
a real 衰减因子,与alphatype共同决定实际的衰减因子alpha,见平滑系数的确定
alphatype Integer 用户自定义,默认为0
adjust bool 是否调整,True、实际权重计算,False、根据无穷序列假设下的递推式计算,默认为False,见指数加权的两种递推式。

返回:array

示例

sp_s(Pn_stock(),'SH000300');
sp_s(pn_date(),20190415T);
a:=nDay3(50,stockZf3());
b:=nDay3(50,spec(stockZf3(),'SH000001'));
return a|b|ewmSlope(a,b,10,1);
//结果

ewmIntercept(y, x, a, alphatype, adjust)

指数加权移动回归截据项,y平均-斜率*x平均 (指数加权移动)

参数 类型 说明
y array 样本y待计算的一维数字数组
x array 样本x待计算的一维数字数组
a real 衰减因子,与alphatype共同决定实际的衰减因子alpha,见平滑系数的确定
alphatype Integer 用户自定义,默认为0
adjust bool 是否调整,True、实际权重计算,False、根据无穷序列假设下的递推式计算,默认为False,见指数加权的两种递推式。

返回:array

示例

sp_s(Pn_stock(),'SH000300');
sp_s(pn_date(),20190415T);
a:=nDay3(50,stockZf3());
b:=nDay3(50,spec(stockZf3(),'SH000001'));
return a|b|ewmIntercept(a,b,10,1);

ewmResidual(y, x, a, alphatype, adjust)

指数加权移动回归残差,y– (截距+斜率*x)(指数加权移动)

参数 类型 说明
y array 样本y待计算的一维数字数组
x array 样本x待计算的一维数字数组
a real 衰减因子,与alphatype共同决定实际的衰减因子alpha,见平滑系数的确定
alphatype Integer 用户自定义,默认为0
adjust bool 是否调整,True、实际权重计算,False、根据无穷序列假设下的递推式计算,默认为False,见指数加权的两种递推式。

返回:array

示例

sp_s(Pn_stock(),'SH000300');
sp_s(pn_date(),20190415T);
a:=nDay3(50,stockZf3());
b:=nDay3(50,spec(stockZf3(),'SH000001'));
return a|b|ewmResidual(a,b,10,1);

auc(x, y)

计算auc,根据roc_curve计算出来的fpr和tpr序列值计算AUC值

参数 类型 说明
x Array x坐标点
y Array y坐标点

返回:real

示例

y_true := array(1,1,2,2,1,2,1,2);
y_score := array(0.1,0.4,0.35,0.8,0.5,0.7,0.45,0.6);
ret := roc_curve(y_true,y_score,2);
fpr := ret[0];
tpr := ret[1];
return auc(fpr,tpr); //0.8125