13 KiB
Dotnet - 运行时 / 日期时间(AnalyseNG.NET 专有)
strtodatetime2(s)
声明:function
字符串->日期时间(包含毫秒)
| 参数 | 类型 | 说明 |
|---|---|---|
s |
string | S的格式必须为:yyyy-m-d h:m:s:z 其中日期和时间需要用空格隔开,时间分隔必须用: 如"2021-8-12 10:31:24:199" |
返回:tdatetime
示例
// 字符串2021-8-12 10:31:24:199 转换为日期时间格式(包含毫秒)
s := "2021-8-12 10:31:24:199";
return strtodatetime2(s); // 结果:44420.4384745255
strToDateExt(s, str_format)
声明:function
将字符串类型的日期按照不同的格式转换成实数型的日期。
| 参数 | 类型 | 说明 |
|---|---|---|
s |
string | 字符串类型的日期,包含3中形式,见下表。 |
str_format |
integer | 标准化的日期格式,对应的S分别用0、1、2表示 |
返回:tdatetime
示例
s := '16/1/2011';
str_format := 0;
return strToDateExt(s, str_format);
// 结果:40559
excelIntToDate(r_date)
声明:function
将报告期类型日期转化成实数型
| 参数 | 类型 | 说明 |
|---|---|---|
r_date |
integer | 整型类的报告期日期 |
返回:tdatetime
示例
// 报告期为2010年年报
r_date := 20101231;
return excelIntToDate(r_date);
// 结果:40543
excelDateToInt(r_date)
声明:function
将日期型报告期转化成整数型报告期
| 参数 | 类型 | 说明 |
|---|---|---|
r_date |
tdatetime | 日期型报告期 |
返回:integer
示例
r_date := 20101231;
return excelDateToInt(r_date);
// 结果:20101231
formatStrToDateTime2(s, format_str)
声明:function
字符串->日期时间(包含毫秒)。
| 参数 | 类型 | 说明 |
|---|---|---|
s |
string | 字符串类型,时间字符串 |
format_str |
string | 字符串类型,格式字符串 |
返回:datetime
示例
// 字符串2021-8-12 10:31:24:199 转换为日期时间格式(包含毫秒)
s := "2021.01.04T23:00:00.000";
format_str := "yyyy.mm.ddThh:nn:ss.zzz";
return formatStrToDateTime2(s, format_str); // 结果:44200.9583333333
startOfTheHalfYear(end_t)
声明:function
返回Endt所在半年的开始日期(半年的第一天)
| 参数 | 类型 | 说明 |
|---|---|---|
end_t |
tdatetime | 日期 |
返回:tdatetime
示例
end_t := 40599; // 40559表示2011年1月16号
return startOfTheHalfYear(end_t);
// 结果:40544 //40544表示2011年1月1号
startOfTheQuarter(end_t)
声明:function
返回Endt所在季度的开始日期(季度的第一天)
| 参数 | 类型 | 说明 |
|---|---|---|
end_t |
tdatetime | 日期 |
返回:tdatetime
示例
end_t := 40540; // 40540表示2010年12月28日
return startOfTheQuarter (end_t);
// 结果:40452 //40452表示2010年10月1号
endOfTheQuarter(end_t)
声明:function
返回Endt所在季度的截止日期(季度的最后一天)
| 参数 | 类型 | 说明 |
|---|---|---|
end_t |
tdatetime | 日期 |
返回:tdatetime
示例
end_t := 40540; // 40540表示2010年12月28日
return endOfTheQuarter (end_t);
// 结果:40543 //40543表示2010年12月31号
endOfTheHalfYear(end_t)
声明:function
返回Endt所在半年的截止日期(半年的最后一天)
| 参数 | 类型 | 说明 |
|---|---|---|
end_t |
tdatetime | 日期 |
返回:tdatetime
示例
end_t := 40540; // 40540表示2010年12月28日
return endOfTheHalfYear (end_t);
// 结果:40543 //40543表示2010年12月31号
incHalfYear(a_value, number)
声明:function
求Avalue的日期开始往后推移Number个半年的日期
| 参数 | 类型 | 说明 |
|---|---|---|
a_value |
tdatetime | 实数表示的日期 |
number |
integer | 向后推移的整数,负数表示向前推移 |
返回:tdatetime
示例
avalue := 40179; // 40179表示2010年1月1号
number := 2;
return incHalfYear(a_value, number);
// 结果:40544 //40544表示2011年1月1号
incQuarter(avalue, number)
声明:function
求Avalue的日期开始往后推移Number个季度的日期
| 参数 | 类型 | 说明 |
|---|---|---|
avalue |
tdatetime | 实数表示的日期 |
number |
integer | 向后推移的整数。负数表示向前推移。 |
返回:tdatetime
示例
avalue := 40179; // 40179表示2010年1月1号
number := 2;
return incQuarter(a_value, number);
// 结果:40360 //40360表示2010年7月1号
excelRDate(r_date)
声明:function
将整数报告期转换成Excel的字符串日期类型
| 参数 | 类型 | 说明 |
|---|---|---|
r_date |
integer | 报告期,一般用整型日期表示 |
返回:string
示例
r_date := 20101231;
return excelRDate(r_date);
// 结果:2010-12-31
incPrecodeCallBack(s)
声明:function
将“000002.SZ”的代码转化为“SZ000002”
| 参数 | 类型 | 说明 |
|---|---|---|
s |
string | 字符串 |
返回:string
示例
return incPrecodeCallBack('000002.SZ');
// 结果:’SZ000002’
IncomeTax_12(r_date)
声明:function
最近12个月的所得税。 (1)所得税取自合并利润分配表; (2)根据最近12个月的算法得到最近12个月的所得税【注1】。
| 参数 | 类型 | 说明 |
|---|---|---|
r_date |
datetime | 整数,报告期。 |
返回:float
IncomeTax_Year(r_date, n)
声明:function
最近N年的所得税。 (1)取向后兼容的最新年报Q1,取N-1年前同期的年报Q2; (2)在合并利润分配表取Q2报告期的所得税。
| 参数 | 类型 | 说明 |
|---|---|---|
r_date |
datetime | 整数,报告期; |
n |
any | 整数,最近N年 |
返回:float
IncomeTax_Q(r_date)
声明:function
计算指定报告期最近1季度的所得税。 根据季度数据的算法【注3】,函数从合并现金流量表中取出多个报告期的筹资活动产生的现金流,计算最近1季度的所得税。
| 参数 | 类型 | 说明 |
|---|---|---|
r_date |
datetime | 整数,报告期; |
返回:float
Time_InvFun(left_values, right_values)
声明:function
根据两个输入序列计算逆函数序列。
| 参数 | 类型 | 说明 |
|---|---|---|
left_values |
array | 左侧序列 |
right_values |
array | 右侧序列 |
返回:array
Times_Granger(y_values, x_values, lag_order, alpha)
声明:function
检验 x_values 是否为 y_values 的 Granger 原因。
| 参数 | 类型 | 说明 |
|---|---|---|
y_values |
array | 被解释序列 |
x_values |
array | 候选原因序列 |
lag_order |
any | 滞后阶数 |
alpha |
float | 显著性水平 |
返回:array
Times_Cointergration_test(y_values, x_values, diff_order, alpha, lag_order, criterion)
声明:function
执行两个序列的协整检验。
| 参数 | 类型 | 说明 |
|---|---|---|
y_values |
array | 第一条时间序列 |
x_values |
array | 第二条时间序列 |
diff_order |
any | 差分阶数 |
alpha |
float | 显著性水平 |
lag_order |
any | 滞后阶数 |
criterion |
string | 信息准则;常用 "AIC"、"SBIC" |
返回:array
Times_Cointergration(y_values, x_values, alpha)
声明:function
判断两个序列是否存在协整关系。
| 参数 | 类型 | 说明 |
|---|---|---|
y_values |
array | 第一条时间序列 |
x_values |
array | 第二条时间序列 |
alpha |
float | 显著性水平 |
返回:string
Times_ECM(y_values, x_values, residuals, alpha, p_order, q_order)
声明:function
建立误差修正模型。
| 参数 | 类型 | 说明 |
|---|---|---|
y_values |
array | 第一条时间序列 |
x_values |
array | 第二条时间序列 |
residuals |
array | 协整检验残差项 |
alpha |
float | 显著性水平 |
p_order |
any | y_values 滞后阶数 |
q_order |
any | x_values 滞后阶数 |
返回:array
Times_GrangerCausality(series_matrix, lag_order)
声明:function
对矩阵中的多个序列执行两两 Granger 因果检验。
| 参数 | 类型 | 说明 |
|---|---|---|
series_matrix |
array | 多个时间序列组成的矩阵;可由两条序列用 `left_series |
lag_order |
any | 滞后阶数 |
返回:array
Time_PACF(y)
声明:function
偏自相关系数,计算随机序列与所有滞后阶数的偏自相关系数,返回结果是一个数组。偏相关系数的计算公式如下: 是自相关系数,是偏相关系数
| 参数 | 类型 | 说明 |
|---|---|---|
y |
array | 样本序列,为一维数组类型 |
返回:array
Time_RandomTest(y, m, alpha)
声明:function
Ljung和Box提出的修正Qm统计量,用于检验序列是否为白噪声,原假设为白噪声序列,即纯随机序列。(Hypothesis为1表示接受原假设,0表示拒绝原假设) Qm统计量的计算公式如下: 其中:是自相关系数,T是样本容量,m是最大滞后长度
| 参数 | 类型 | 说明 |
|---|---|---|
y |
array | 样本序列,为一维数组类型 |
m |
any | 最大滞后长度,整数类型,一般取样本数的四分之一 |
alpha |
float | 显著性水平,实数类型,取值在0-1之间 |
返回:array
Times_ADFTest(y, diff, style, f, p, alpha)
声明:function
时间序列的平稳性ADF检验;返回结果为ADF统计量和给定显著性水平下的ADF统计量的临界值;如果ADF统计量的绝对值比临界值的绝对值大,则可在该显著性水平下,拒绝原序列存在单位根的原假设,即原序列是平稳的
| 参数 | 类型 | 说明 |
|---|---|---|
y |
array | 时间序列数据,为一维数组类型 |
diff |
any | 差分次数,整数类型,0表示不进行差分 |
style |
any | 是否存在常数或趋势项的选项,整数类型,无常数无趋势使用0、有常数无趋势1、有常数有趋势2 |
f |
string | 滞后阶数判断信息准则,字符串类型,"SBIC","AIC" |
p |
any | 滞后阶数,为整型类型,输入0则表示自动选择 |
alpha |
float | 显著性水平,实数类型,范围在0-1之间 |
返回:array
Time_GreenFun(ap, mq)
声明:function
中间函数,ARMA模型的Green函数,Green函数的递推公式如下: 式中: ,,是自回归方程系数,为移动平均系数,
| 参数 | 类型 | 说明 |
|---|---|---|
ap |
array | 自相关系数,为一维数组类型; |
mq |
array | 移动平均系数,为一维数组类型; |
返回:array
incPrecode()
声明:function
6位代码->8位代码;注意,该函数主要用于客户端结果处理,不提供给用户程序编辑
返回:array,tablearray