# Builtin - 待复核

## `pn_StockArr()`

当前成分股。

返回：string

## `InfoTest_()`

获得国海基金-常用的财务数据

返回：array

## `PN_ActualDate()`

系统当前日期。

返回：string|datetime

## `Pn_IndexID()`

市场指数代码。

返回：string

## `qkfilterCC_createDateTreeIndex(data_cc, datefield, if_sort)`

持仓类数据 根据日期构建索引；持仓类数据，要求已按日期 排序，从小到大，相同日期放一起

| 参数        | 类型   | 说明                        |
| ----------- | ------ | --------------------------- |
| `data_cc`   | array  | 二维字符串数组,区间每期持仓 |
| `datefield` | string | 字符串,日期字段             |
| `if_sort`   | bool   | object                      |

返回：array

## `qkfilterMJZ_createDateCodeTreeIndex(data_mjz, datefiled, codefiled)`

多净值类数据，根据日期、代码构建索引 截止日、代码 是唯一的

| 参数        | 类型   | 说明                                  |
| ----------- | ------ | ------------------------------------- |
| `data_mjz`  | array  | 二维字符串数组,区间多组合净值，立体表 |
| `datefiled` | string | 字符串,截止日字段                     |
| `codefiled` | string | 字符串,组合代码字段                   |

返回：array

## `TSB_Data1(bk_names, beg_t, end_t, buy_cond, top_n, holding)`

买卖记录

| 参数       | 类型     | 说明                             |
| ---------- | -------- | -------------------------------- |
| `bk_names` | string   | 字符串，以分号分割，板块名称列表 |
| `beg_t`    | datetime | 日期型时间，开始时间             |
| `end_t`    | datetime | 日期型时间，截止日期             |
| `buy_cond` | any      | 表达式，买入条件                 |
| `top_n`    | any      | 整数，返回个数                   |
| `holding`  | any      | 整数，持有天数                   |

返回：array

## `TSB_Data2(bk_names, beg_t, end_t)`

返回板块的指数涨幅，采用总股本加权

| 参数       | 类型     | 说明                             |
| ---------- | -------- | -------------------------------- |
| `bk_names` | string   | 字符串，以分号分割，板块名称列表 |
| `beg_t`    | datetime | 日期型时间，验证开始时间         |
| `end_t`    | datetime | 日期型时间，验证截止日期         |

返回：array

## `TE_ExtremeSummary(subtotals, cycle)`

组合/单券极端交易情况统计,功能： 对交易小计数据，按累计收益率进行极端情况统计，包括以下几个方面 最大连盈次数、最大连亏次数， 最大连盈幅度(%)、最大连亏幅度(%)， 最大单次盈利(%)、最大单次亏损(%)， 最大连盈时间、最大连亏时间 详细说明见下述文档的极端评价： 《深圳天软科技-应用专题-策略评价01：天软交易策略评价框架TSTradingEvaluation》

| 参数        | 类型 | 说明                                                                                                             |
| ----------- | ---- | ---------------------------------------------------------------------------------------------------------------- |
| `subtotals` | any  | 数组,交易小计数据；字段必须包含；开仓时间:(datetime)；平仓时间:(datetime)；持仓时间:(real)；累计收益率(%):(real) |
| `cycle`     | any  | 周期，用于计算持续时间                                                                                           |

返回：array

## `TE_MatchOCTradeData(talltradedata, flag, returntype, pfinfodata)`

每笔交易的开平仓匹配,功能： 对交易明细按券&交易方向进行开平仓自动匹配处理（以开仓数据为基准） 匹配规则：提供先建先平及先建后平方式 详细说明请见文末FAQ： 《深圳天软科技-应用专题-策略评价01：天软交易策略评价框架TSTradingEvaluation》

| 参数            | 类型 | 说明                                                                                                                                                                                         |
| --------------- | ---- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `talltradedata` | any  | 数组,交易明细数据；字段必须包含标准的回测中交易明细字段；字段包含:截止日,代码,名称,方向,动作,乘数,保证金比例(%),；成交价,成交量,费率(%),成交金额（税前）,费用,成交金额,备注                  |
| `flag`          | any  | 整型,平仓方式; 0:先建先平（默认）；1:后建先平                                                                                                                                                |
| `returntype`    | any  | 整型,返回匹配结果类型;；1:全部匹配结果（包含不完整）（默认）；2:仅含完整匹配的结果                                                                                                           |
| `pfinfodata`    | any  | 数组,回测初始化信息，重新获取交易明细时设置回测属性；1)分红再投资:0:不参与；1:参与再投资（默认）；2)自动参与配股:0:不参与；1:参与（默认）；3)货币基金自动分红再投资:0:不参与；1:参与（默认） |

返回：array

## `TSTrade_CalCC(end_t, tp_gp, tjy)`

TSTrade_CalCC 相关函数。

| 参数    | 类型     | 说明                   |
| ------- | -------- | ---------------------- |
| `end_t` | datetime | 日期型时间，截止日     |
| `tp_gp` | array    | 数据表类型，昨持仓     |
| `tjy`   | array    | 数据表类型，今交易数据 |

返回：array

## `Ts_sampevalutelib(return_value)`

中间函数，测试数据示例

| 参数           | 类型  | 说明             |
| -------------- | ----- | ---------------- |
| `return_value` | array | 返回一个数据示例 |

返回：array

## `CheckInPutData_UP(t)`

自定义权重字段完整性检查

| 参数 | 类型  | 说明   |
| ---- | ----- | ------ |
| `t`  | array | 数据表 |

返回：bool

## `ZxCompareReturn_Pgm(beg_year, end_year, _type, info_id_arr)`

返回区间财务指标纵比值，数据类型为数据表

| 参数          | 类型  | 说明                   |
| ------------- | ----- | ---------------------- |
| `beg_year`    | any   | 整数，起止年限         |
| `end_year`    | any   | 整数，截止年限         |
| `_type`       | any   | 用户自定义，报告期类型 |
| `info_id_arr` | array | 基本面数据，基本面内容 |

返回：any

## `EBIDAvsMainIncome_12(r_date)`

返回最近12个月的税息折旧及摊销前利润。 （1）最近12个月的税息折旧及摊销前利润=EBITDA/最近12个月的主营收入。 （2）EBITDA=EBIT+新增折旧。 （3）计算报告期RDate的EBIT（三种计算方法，参考EBIT_12）v1； （4）从合并资产负债表中取报告期Rdate和去年同期的累计折旧v2、v3； （5）EBITDA=v1+v2-v3。

| 参数     | 类型     | 说明                                    |
| -------- | -------- | --------------------------------------- |
| `r_date` | datetime | 整数，报告期；；Type:整数，EBIT计算方法 |

返回：float

## `pmstand_array(v)`

参数转化为一维数组，参数格式兼容

| 参数 | 类型 | 说明                                   |
| ---- | ---- | -------------------------------------- |
| `v`  | any  | 转化参数，字符串或者实数，一维数组亦可 |

返回：array

## `GetSWHYBKbydate_IPO(indexid, endt)`

GetSWHYBKbydate_IPO 相关函数。

| 参数      | 类型     | 说明                                   |
| --------- | -------- | -------------------------------------- |
| `indexid` | string   | 字符串，指数代码（仅针对申万行业指数） |
| `endt`    | datetime | 日期，截止日                           |

返回：array

## `down(rsp_cycle, n)`

高频下行波动率(%)

| 参数        | 类型 | 说明                                                                                                                                        |
| ----------- | ---- | ------------------------------------------------------------------------------------------------------------------------------------------- |
| `rsp_cycle` | any  | 采样小周期                                                                                                                                  |
| `n`         | any  | 整型，当前时间向历史推移N个周期长度作为采样的时间区间(大区间)，与当前时间，周期相关。默认为 1，与市场周期对齐；N为0时，返回最后一个高频时刻 |

返回：float

## `invoicePrice(bond_id)`

返回指定期货相对于指定债券标的发票价格，与系统证券代码时间周期相关。

| 参数      | 类型   | 说明             |
| --------- | ------ | ---------------- |
| `bond_id` | string | 字符串，债券代码 |

返回：float

## `_v12(index_id, endt, qk_type, eg, detail_t)`

通过预测指数成分股的分红时间和分红金额，从而预测分红点数。

| 参数       | 类型     | 说明                                                                                                                                                                        |
| ---------- | -------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `index_id` | string   | 字符串型，指数ID                                                                                                                                                            |
| `endt`     | datetime | 日期类型，截止日                                                                                                                                                            |
| `qk_type`  | any      | 整型，返回分红区间                                                                                                                                                          |
| `eg`       | any      | 假设当前时间为20240301，截止日为20230523时:当QKType=0时，返回20230101到20231231之间的全部交易日的分红预测，当QKType=1时，返回20230101到20241231之间的全部交易日的分红预测。 |
| `detail_t` | array    | 返回成分股分红点数预测详情                                                                                                                                                  |

返回：array

## `QueryTopNByField_II(stock_arr, beg_t, end_t, sort_by, sort_order, return_number)`

指标前N名（区间）。

| 参数            | 类型     | 说明                                   |
| --------------- | -------- | -------------------------------------- |
| `stock_arr`     | array    | 数组。股票列表。                       |
| `beg_t`         | datetime | 日期。开始日期。                       |
| `end_t`         | datetime | 日期。截止日期。                       |
| `sort_by`       | any      | 整数。排序字段，取值如下:              |
| `sort_order`    | any      | 整数。排序方法，1表示正序，0表示逆序。 |
| `return_number` | any      | 整数。返回个数。                       |

返回：array

## `S_3(beg_y, end_y, r_date_type)`

返回指定证券列表指定年份区间的现金流指标数据。

| 参数          | 类型 | 说明             |
| ------------- | ---- | ---------------- |
| `beg_y`       | any  | 整型，起始年份   |
| `end_y`       | any  | 整型，截止年份   |
| `r_date_type` | any  | 整型，报告期类型 |

返回：array

## `pg_1(t)`

数据表指标得分详情。

| 参数 | 类型  | 说明           |
| ---- | ----- | -------------- |
| `t`  | array | 数组。数据表。 |

返回：array

## `ZBCompare_Call(stock_arr, beg_year, end_year, r_date_type, info_id_arr, show_style, three_dim_type, unit_type)`

股票列表报告期主要财务数据对比（纵比）。

| 参数             | 类型  | 说明                              |
| ---------------- | ----- | --------------------------------- |
| `stock_arr`      | array | 数组。股票列表。                  |
| `beg_year`       | any   | 整数。起始年限。                  |
| `end_year`       | any   | 整数。截止年限。                  |
| `r_date_type`    | any   | 整数。报告期类型，取值如下:       |
| `info_id_arr`    | array | 数组。基本面数组。                |
| `show_style`     | any   | 整数。显示设置，取值如下:         |
| `three_dim_type` | any   | 整数。三维表格显示格式，取值如下: |
| `unit_type`      | any   | 整数。显示单位，取值如下:         |

返回：array

## `HxCompare_Call(stock_arr, r_date, info_id_arr, show_style, two_dim_type, unit_type)`

股票列表报告期主要财务数据对比（横向）。

| 参数           | 类型     | 说明                      |
| -------------- | -------- | ------------------------- |
| `stock_arr`    | array    | 数组。股票列表。          |
| `r_date`       | datetime | 整数。报告期。            |
| `info_id_arr`  | array    | 数组。基本面数组。        |
| `show_style`   | any      | 整数。显示设置，取值如下: |
| `two_dim_type` | any      | 整数。显示格式，取值如下: |
| `unit_type`    | any      | 整数。显示单位，取值如下: |

返回：array

## `hd_Public(b_kname, begt, endt)`

采用公用函数中的行情提取函数教学函数，提取板块Bkname中的证券代码，返回每个证券由开始日Begt到截止日Endt的相关行情数据。与系统参数(周期、复权等相关)。

| 参数      | 类型 | 说明                 |
| --------- | ---- | -------------------- |
| `b_kname` | any  | 市场和板块，板块名称 |
| `begt`    | any  | 日期,开始日期        |
| `endt`    | any  | 日期,截止日期        |

返回：any

## `od_GetBkList()`

GetBKList()函数教学函数。得到板块名称为‘指数’的列表。

返回：array

## `oD_GetBkStocks(bkname)`

GetBK()函数教学函数。得到Bkname板块下的股票列表。

| 参数     | 类型   | 说明 |
| -------- | ------ | ---- |
| `bkname` | string |      |

返回：array

## `od_RealData(bkname)`

RD()函数教学函数。得到Bkname板块下的股票的24项实时数据。

| 参数     | 类型   | 说明 |
| -------- | ------ | ---- |
| `bkname` | string |      |

返回：array

## `es_Operator()`

TSL语法基本教学函数。函数本身介绍了算术运算、关系运算、逻辑运算、自加(减)。

返回：any

## `es_FuncCall()`

TSL语法基本教学函数。函数本身定义了一个数组a,返回a的字段个数。

返回：array

## `es_return()`

return()函数教学函数。函数本身介绍了返回实数、布尔类型、数组的三种返回。

返回：array

## `for_Downto()`

for循环语句教学函数。对nI自100向0循环，对所有的奇数累积求和。

返回：any

## `Demo_na_Error()`

na_errormsg ()函数教学函数。依据se_Gauss()函数传递的插值错误代码，返回数值分析插值错误信息。

返回：string

## `tsExpertClientConfig()`

客户端行为控制函数相关函数。

返回：any

## `roundTo5(v)`

.5处理

| 参数 | 类型 | 说明 |
| ---- | ---- | ---- |
| `v`  | real | 实数 |

返回：real

### 示例

```tsl
return roundTo5(0.35);
// 结果：0.5
```

## `divValue(v1, v2)`

除法运算。

| 参数 | 类型 | 说明         |
| ---- | ---- | ------------ |
| `v1` | real | 实数，被除数 |
| `v2` | real | 实数，除数   |

返回：real

### 示例

```tsl
return divValue(8, 2);
// 返回：4
```

## `LeastSquares_CurveFitting(factors, y_values)`

执行最小二乘曲线拟合；当 `y_values` 中存在 `nil` 或 `nan` 时，跳过对应位置后计算。

| 参数       | 类型  | 说明         |
| ---------- | ----- | ------------ |
| `factors`  | array | 拟合因子矩阵 |
| `y_values` | array | 目标值序列   |

返回：array

## `hexToString(str)`

stm用户数据名称转码(十六进制)。

| 参数  | 类型   | 说明                       |
| ----- | ------ | -------------------------- |
| `str` | string | 字符串类型，十六进制字符串 |

返回：string

### 示例

```tsl
// 将用户数据名转化为可读串
str := 'hex_74657374646174613031.stm';
return hexToString(str); // 返回testdata01
```

## `dumies_decode(dumiesdata)`

虚拟变量矩阵解构，根据所给的虚拟变量矩阵返回分类变量结果

| 参数         | 类型  | 说明                       |
| ------------ | ----- | -------------------------- |
| `dumiesdata` | array | 二维数字数组，虚拟变量矩阵 |

返回：array

## `get_dummies(a, uniques)`

1、根据指定的分类变量，生成虚拟变量/指示变量（dummy/indicator）虚设变量/名义变量/哑 变量，也有称之为one_hot编码，离散特征值二值化 2、如果a中含Nan值，排到uniques的末尾

| 参数      | 类型  | 说明                                      |
| --------- | ----- | ----------------------------------------- |
| `a`       | array | 一维数组，指定的分类变量                  |
| `uniques` | array | 一维数组，中间结果:输出各列对应的分类变量 |

返回：array

## `get_dummies2(a)`

1、根据指定的分类变量，生成虚拟变量/指示变量（dummy/indicator）虚设变量/名义变量/哑 变量，也有称之为one_hot编码，离散特征值二值化 2、a中的元素必须都可以做为数组下标，否则请使用get_dummies

| 参数 | 类型  | 说明                     |
| ---- | ----- | ------------------------ |
| `a`  | array | 一维数组，指定的分类变量 |

返回：array

## `TwoRDateCompare_M1(t1, t2, r_date, r_date2, key_field, from_col, to_col, show_g_value, show_g_percent)`

返回2个数据同比比较的结果。

| 参数             | 类型     | 说明                       |
| ---------------- | -------- | -------------------------- |
| `t1`             | array    | 数组类型，数据1            |
| `t2`             | array    | 数组类型，数据2            |
| `r_date`         | datetime | 报告期类型，报告期         |
| `r_date2`        | any      | 报告期类型，同比报告期     |
| `key_field`      | string   | 字符串类型，关键字         |
| `from_col`       | any      | 整型，要显示变比的开始列号 |
| `to_col`         | any      | 整型，要显示变比的截止列号 |
| `show_g_value`   | bool     | 布尔类型，显示变动         |
| `show_g_percent` | bool     | 布尔类型，显示变比(%)      |

返回：array

## `Pivot_table(t, index, vals, aggfunc, aggfuncnames)`

分组、透视、汇总 1、vals 未指定时，代表对所有除index、columns 指定字段之外的所有字段计算 2、aggfunc 不同含义及设定方法： a、所有字段，统一函数 aggfunc := "avg" 注：代表对vals中所有字段进行计算 b、所有字段，多个函数 aggfunc := array("avg","max"); c、指定字段，指定函数 aggfunc := array("fielda":"avg","filedb":("avg","max")); 注：指定字段时，必须是vals的子集，否则报错。 3、支持匿名函数、与函数指针，其中: a、匿名函数默认命名为"匿名" b、函数指针通过functioninfo得到函数名称 4、aggfunc中支持 a、所有 TS_SQL 聚合函数：e.g:"avg"(avgof),"sum"(sumof) b、内置函数： "\_details": 分组详情 "\_first": 第一个 "\_last": 最后一个 c、自定义函数中使用关键字thisgroup 得到当前分组数据。 5、index/columns中字段值含有nill等不可设为索引。 6、aggfuncnames：给aggfunc定义名称。

| 参数           | 类型   | 说明                           |
| -------------- | ------ | ------------------------------ |
| `t`            | array  | 数组，数据表                   |
| `index`        | string | array                          |
| `vals`         | string | array                          |
| `aggfunc`      | string | string 值汇总函数              |
| `aggfuncnames` | array  | 数组，自定义汇总函数名称对照表 |

返回：string

## `table(t)`

依据数组类型返回不同的值。

| 参数 | 类型  | 说明             |
| ---- | ----- | ---------------- |
| `t`  | array | 数据表类型，数组 |

返回：array

## `Standarize_II(sample, leib)`

数据预处理，对二维数字数组进行标准化化处理；行：样本个数;列：因子个数.

| 参数     | 类型  | 说明              |
| -------- | ----- | ----------------- |
| `sample` | array | 二维数字数组 样本 |
| `leib`   | any   | Int 标准化类型    |

返回：array

## `NW_Adjustment_Simplification(y, alpha, al)`

在单因子有效性的检验中，进行检验的往往是组合收益率序列或者因子收益率序列在 时序上是否显著异于零，这一过程本身并不涉及回归过程，因此无法直接使用上一节中介绍的调整方法。然而，我们知道组合收益或者因子收益在时序上极有可能存在异方差和自相关特性，因此在计算序列标准误时，必须对其进行 Newey-West 调整，从而得到其标准差的一致性估计，进而得到更稳健的 t 值。 关于这个问题Bali et al(2016)指出对于单个因子收益率序列的显著性检验，我们可以将其转换为一个简单的线性回归模型：将 1 作为自变量，将因子收益率作为因变量，进行回归得到残差变量。此时残差项即为因子收益率减去它在时间序列上的均值。把残差项和X=1代入即可得到简化的结果，对Q的估计形式如下：QNW-Simple=1Tt=1Tet2+l=1Lt=l+1Twletet-l 其中，wl=1-l1+L 这里的Q实际上不是矩阵，只是一个数。 将Q代入Cov\[β\*\]中就可以求出收益率方差的估计，之后就可以进行T检验了。σ2=QNW-Simple/T

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

返回：array

## `Robustfit_M(y, x, alpha, constant, wfun, tune, options)`

基于M估计的稳健回归及其检验

| 参数       | 类型   | 说明                                                                                                                                                                                                                                                                                                                                                                             |
| ---------- | ------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `y`        | array  | 一维数字数组，因变量                                                                                                                                                                                                                                                                                                                                                             |
| `x`        | array  | 二维数字数组，自变量                                                                                                                                                                                                                                                                                                                                                             |
| `alpha`    | float  | 实数，显著性水平                                                                                                                                                                                                                                                                                                                                                                 |
| `constant` | bool   | object                                                                                                                                                                                                                                                                                                                                                                           |
| `wfun`     | string | 字符串，权重函数                                                                                                                                                                                                                                                                                                                                                                 |
| `tune`     | float  | 实数，调节常数                                                                                                                                                                                                                                                                                                                                                                   |
| `options`  | array  | 可选项，数组类型，格式为array( 'maxiter':最大迭代次数, 'tol':标准误差, 'ifregtest':是否返回回归检验)，默认值为array('maxiter':50, 'tol':1e-6, 'ifregtest':True)。其中'maxiter'、'tol'与迭代优化相关，分别表示最大迭代次数与相邻两次迭代的标准误差；'ifregtest'是布尔类型，控制输出结果是否返回回归检验，若为真，其回归检验指标使用加权最小二乘的回归检验，可参考Regression_WLS。 |

返回：array

## `LnRegression_CallBack(x)`

Ln(x)回归回调函数

| 参数 | 类型  | 说明             |
| ---- | ----- | ---------------- |
| `x`  | array | 二维数字数组类型 |

返回：array

## `MultipleRegression_CallBack(x)`

多元线性回归的回调函数

| 参数 | 类型  | 说明             |
| ---- | ----- | ---------------- |
| `x`  | array | 二维数字数组类型 |

返回：array

## `PolynomialRegression_Pgm(x, y, m)`

多项式回归测试

| 参数 | 类型  | 说明                   |
| ---- | ----- | ---------------------- |
| `x`  | array | 一维数字数组类型       |
| `y`  | array | 一维数字数组类型       |
| `m`  | any   | 整数类型，拟合最大阶数 |

返回：array

## `MultipleRegression_Pgm(x, y)`

多元线性回归测试

| 参数 | 类型  | 说明             |
| ---- | ----- | ---------------- |
| `x`  | array | 二维数字数组类型 |
| `y`  | array | 一维数字数组类型 |

返回：array

## `MultipleUnLinearRegression_Pgm(x, y, call_back)`

多元非线性回归测试

| 参数        | 类型   | 说明                         |
| ----------- | ------ | ---------------------------- |
| `x`         | array  | 二维数字数组类型，观察数据点 |
| `y`         | array  | 一维数字数组类型，观察数据值 |
| `call_back` | string | 字符串类型                   |

返回：array

## `MultiUnLineralRegression_CallBack(x)`

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

| 参数 | 类型  | 说明             |
| ---- | ----- | ---------------- |
| `x`  | array | 二维数字数组类型 |

返回：array

## `H_J_CallBack(x, r)`

H_J算法回调

| 参数 | 类型  | 说明             |
| ---- | ----- | ---------------- |
| `x`  | array | 一维数字数组类型 |
| `r`  | float | 实数类型         |

返回：float

## `RatioValue_Math(v1, v2)`

比率（数学分析）。针对除法计算处理，主要是对除0情况的考虑。

| 参数 | 类型  | 说明         |
| ---- | ----- | ------------ |
| `v1` | float | 实数。期末值 |
| `v2` | float | 实数。期初值 |

返回：float

## `Norm_LinearTransform(mu, sigma, a, b)`

正态分布线性变换，得到变换后的均值、协方差或方差

| 参数    | 类型  | 说明                                   |
| ------- | ----- | -------------------------------------- |
| `mu`    | array | 实数或二维数组（n\*1），原正态分布均值 |
| `sigma` | array | 实数或二维数组（n\*1），原正态分布方差 |
| `a`     | array | 实数或二维数组（n\*1），线性变换常数项 |
| `b`     | array | 实数或二维数组（n\*1），线性变换系数项 |

返回：array

## `mdo(function_name, in1, in_n)`

单返回值的MATLAB函数调用。

| 参数            | 类型   | 说明                                                       |
| --------------- | ------ | ---------------------------------------------------------- |
| `function_name` | string | 函数名称。                                                 |
| `in1`           | any    | MatLab函数所需的第一个参数，与MATLAB的函数定义相同，可省略 |
| `in_n`          | any    | MatLab函数所需的第N个参数，与MATLAB的函数定义相同，可省略  |

返回：any

## `mdo2(function_name, n, out1, out_n, in1, in_n)`

多个返回值的MATLAB函数调用。

| 参数            | 类型    | 说明                                                       |
| --------------- | ------- | ---------------------------------------------------------- |
| `function_name` | string  | 函数名称。                                                 |
| `n`             | integer | 返回值的个数。                                             |
| `out1`          | any     | 返回值存贮的第一个参数，可省略。                           |
| `out_n`         | any     | 返回值存贮的第N个参数，可省略。                            |
| `in1`           | any     | MatLab函数所需的第一个参数，与MATLAB的函数定义相同，可省略 |
| `in_n`          | any     | MatLab函数所需的第N个参数，与MATLAB的函数定义相同，可省略  |

返回：any

## `menablefmarray(level)`

设置Matlab数据转换成天软fmarray的模式

| 参数    | 类型    | 说明                                |
| ------- | ------- | ----------------------------------- |
| `level` | integer | 可选参数，转换模式等级，缺省值为1。 |

返回：any

### 示例

范例代码：

```tsl
t := createMatrix(3, 4, array('s', 'd', 'f'), 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12);
rdo2 mPutVar("A", t);
rdo2 mPutVar("B", 2);
rdo2 mEval("C=A+B");
return rdo2 mGetVar("C");
// 场景一：不设置Menablefmarray
// 不修改上述范例代码，结果如下：
// 场景二：设置Menablefmarray值为0
上述范例代码前加上"rdo2 Menablefmarray(0);"，结果如下：
// 场景三：设置Menablefmarray值为1
上述范例代码前加上"rdo2 Menablefmarray(1);"，结果如下：
```

## `blpCall(options, svc_url, request, call_back)`

需要安装了彭博API

| 参数        | 类型   | 说明                                                                                                      |
| ----------- | ------ | --------------------------------------------------------------------------------------------------------- |
| `options`   | array  | 字符串下标的数组，会话的选项，下标值定义如下:                                                             |
| `svc_url`   | string | 服务URL串,一般以//blp/开头，具体含义请参照BLP的手册或者文档。                                             |
| `request`   | string | 请求的名字，"subscription"特指订阅，其他请看服务支持创建的request种类。                                   |
| `call_back` | string | 可选，如果设置为字符串，则是指定的回调函数。目前仅支持同步模式，也就是说在BLPCall函数执行过程中进行回调。 |

返回：any

## `tenantCall(session_key, call_name, param, timeout)`

平台中通过租户方式调用指定功能

| 参数          | 类型             | 说明 |
| ------------- | ---------------- | ---- |
| `session_key` | string           |      |
| `call_name`   | string           |      |
| `param`       | array,tablearray |      |
| `timeout`     | integer          |      |

返回：any

### 示例

```tsl
// 租户设置如下：
// 注：以下示例仅供参考，不可直接复制使用；用户需结合自身信息进行对应修改
session_key := "{58DC***DF58}";
call_name := "HQData";
param := array("SH000001", 20260325T, cy_day());
return tenantCall(session_key, call_name, param);
// 输出：
// Execute script error at Line:6
// function:__main__:line 6:instruction:usercall: function:tenantCall compile error or not found
// function:__main__:line 6:instruction:usercall: function execute error
```

## `fu()`

字符串，用户名

返回：any

## `fs()`

字符串，租户Session Key；使用特殊租户（调用功能列表为\*）替代用户时指定。

返回：any

## `waitMessage(timeout)`

注册OPS服务，通过分段模式接收天软远端转发的请求数据

| 参数      | 类型    | 说明           |
| --------- | ------- | -------------- |
| `timeout` | integer | 请求超时毫秒数 |

返回：bool

## `doOnMessage(id, event, data)`

虚方法，根据event类型，对事件进行处理；若未指定FonMessage，需重写该方法

| 参数    | 类型    | 说明                                                                                               |
| ------- | ------- | -------------------------------------------------------------------------------------------------- |
| `id`    | integer | 事件id，当事件类型为connect、cancel时，id为nil                                                     |
| `event` | string  | 事件类型；主要事件类型：connect、call、subscription、cancel                                        |
| `data`  | string  | Json格式数据；当事件类型为connect时，仅包括opsid，为call、subscription时，包括name、params等信息。 |

返回：any

## `doMessage(value)`

解析接收到的天软远端转发的请求数据

| 参数    | 类型   | 说明                                                         |
| ------- | ------ | ------------------------------------------------------------ |
| `value` | string | 接收到的天软远端转发的请求数据，包括id、event、data、retry等 |

返回：any

## `fopsList()`

字符串，要注册的OPS服务列表，多个服务之间用逗号分隔

返回：any

## `fopsName()`

字符串，注册的TS-OPS服务名称，用于标识，可为空字符串

返回：any

## `fSubCallBack()`

字符串或函数指针，subscription事件回调函数；未指定时，必须重写WaitSubscription方法

返回：any

## `fReturnRuntimeError()`

布尔值，默认值为False；调用回调函数出错时，是否返回详细的报错信息

返回：any

## `fDebug()`

布尔值，默认值为True；是否打印调试信息

返回：any

## `waitSubscription(name, param, realdata)`

虚方法，TS-OPS服务端subscription事件处理函数；若未指定FSubCallBack，则必须重写该方法

| 参数       | 类型              | 说明 |
| ---------- | ----------------- | ---- |
| `name`     | string\|tfunction |      |
| `param`    | array             |      |
| `realdata` | array             |      |

返回：array,tablearray

## `asyncCall(durl, id, opsid, realdata, u, p, s, runerror, debug, sub, cb, caller)`

call、subscription事件类型处理方法。根据参数sub判断是call还是subscription事件类型，并调用ops服务端的事件处理方法，调用完成后将结果上传至服务器，最终返回给请求方

| 参数       | 类型              | 说明 |
| ---------- | ----------------- | ---- |
| `durl`     | string            |      |
| `id`       | integer           |      |
| `opsid`    | string            |      |
| `realdata` | array             |      |
| `u`        | string            |      |
| `p`        | string            |      |
| `s`        | string            |      |
| `runerror` | bool              |      |
| `debug`    | bool              |      |
| `sub`      | bool              |      |
| `cb`       | string\|tfunction |      |
| `caller`   | string            |      |

返回：bool

## `tsCanGrid()`

获得当前用户是否具备网格计算的权限。

返回：bool

## `isBackGround()`

获得当前运行的模型是否以委托执行的后台模式运行。

返回：bool

## `testTable(name, table_type)`

检查数据是否存在，测试是否存在指定name的数据，如果TableType为真则为测试系统数据表，即测试系统账号system是否存在name指定的数据；TableType缺省或为0

| 参数         | 类型   | 说明                                                                         |
| ------------ | ------ | ---------------------------------------------------------------------------- |
| `name`       | string | 字符串，数据存储位置的名称；                                                 |
| `table_type` | bool   | BOOL类型，可省略，当为假或者省略的时候，装入的为当前用户表，否则装入系统表。 |

返回：bool

### 示例

```tsl
return testTable('testA'); // 测试用户数据"testA"是否存在。返回值为1，即存在，0即不存在。
```

## `userDataUpLoad(filedir, if_tanscode)`

上传用户数据，输入本地用户数据的路径及名称，通过该函数可上传至服务器。

| 参数          | 类型    | 说明                           |
| ------------- | ------- | ------------------------------ |
| `filedir`     | string  | 字符串类型，用户数据路径及名称 |
| `if_tanscode` | integer | 整型，用户名称是否转码         |

返回：string

### 示例

```tsl
// dir为用户本地用户数据的存贮目录
filedir := 'C:\\Users\\xxxx\\Tinysoft\\Analyse.NET\\D254A848\\xxx\\UserDB\\hex_74657374646174613031.stm';
return userDataUpLoad(filedir); // 返回上传结果提示信息。
```

## `transFileName(dir, if_tanscode)`

获取本地用户数据列表(仅用于自动存储在本地的STM数据)。

| 参数          | 类型    | 说明                   |
| ------------- | ------- | ---------------------- |
| `dir`         | string  | 字符串类型，路径       |
| `if_tanscode` | integer | 整型，用户名称是否转码 |

返回：array

### 示例

```tsl
// 获取本地用户数据列表
dir := 'C:\\Users\\xxxx\\Tinysoft\\Analyse.NET\\D254A848\\xxx\\UserDB';
return transFileName(dir); // 返回用户数据列表
```

## `delPrecode()`

将第一列的8位标准代码转为6位标准代码。注意，该函数主要用于客户端结果处理，不提供给用户程序编辑。

返回：array,tablearray

## `twoDimFormat2()`

指标为主（二维表）。注意，该函数主要用于客户端结果处理，不提供给用户程序编辑。

返回：array,tablearray

## `isTwoDim(t)`

是否为二维表。注意，该函数主要用于客户端结果处理，不提供给用户程序编辑。

| 参数 | 类型  | 说明           |
| ---- | ----- | -------------- |
| `t`  | array | 任意类型的数据 |

返回：bool

## `transForm(data)`

数组转置。注意，该函数主要用于客户端结果处理，不提供给用户程序编辑。

| 参数   | 类型  | 说明           |
| ------ | ----- | -------------- |
| `data` | array | 数据表类型数据 |

返回：integer

## `delPrecodeCallBack(s)`

去除证券代码前面的“SH”、“SZ”、“OF”、“BK”标识

| 参数 | 类型   | 说明   |
| ---- | ------ | ------ |
| `s`  | string | 字符串 |

返回：string

### 示例

```tsl
return delPrecodeCallBack('SH600000');
// 结果：’ 600000’
```

## `checkDataCanBeExtract(data)`

检查是否存在可展开的数据。

| 参数   | 类型  | 说明           |
| ------ | ----- | -------------- |
| `data` | array | 数据表类型数据 |

返回：integer

## `Gu_SimpleDataTransform(mtype, nodatecol)`

时序数据简单处理变形，譬如：累加、累乘、单期转多期。基于列名（含截止日、日期、date），跳过日期列 注意：该函数主要用于客户端结果处理，不提供给用户程序编辑。

| 参数        | 类型 | 说明                |
| ----------- | ---- | ------------------- |
| `mtype`     | any  | 用户自定义,处理方式 |
| `nodatecol` | bool | object              |

返回：array

## `getDefaultFuncNameByStock(stock_id)`

默认函数名，对于不同类型的证券代码，返回的默认函数名称不一致；

| 参数       | 类型   | 说明     |
| ---------- | ------ | -------- |
| `stock_id` | string | 证券代码 |

返回：string

## `getTypeOfStock(stock_id)`

证券品种

| 参数       | 类型   | 说明     |
| ---------- | ------ | -------- |
| `stock_id` | string | 证券代码 |

返回：integer

### 示例

```tsl
return getTypeOfStock('OF000001');
// 结果：4
```

## `Gu_ExtractResultData()`

穿透展示数组，用于展示<量化分析>结果专用嵌套数组结构的分析结果，结构为「键名:数组值」的键值对格式，支持一维/二维数组嵌套 注意：该函数主要用于客户端结果处理，不提供给用户程序编辑。

返回：array

## `thisFuncUnderConstruction()`

返回"本模型正在维护中.....请稍候再使用"出错信息

返回：string

## `thisFunOnlyForIndex()`

返回'本模型只适用于指数!'字符串

返回：string

## `Demo_framestyle_constyle_dotweb(endt, cy, n)`

范例-格式化图表-005-条件格式，热门行业（dotWeb用） 在dotweb中的使用方式一致， 要想解析看到效果 需两步操作 （1）Web_Html_Table将带样式的数据表转为html【去掉此步骤，即可在dotweb 中使用】 （2）设置模型结果类型为【网页内容】

| 参数   | 类型     | 说明         |
| ------ | -------- | ------------ |
| `endt` | datetime | Date,截止日  |
| `cy`   | any      | Cycle,周期   |
| `n`    | any      | Integer,个数 |

返回：array

## `Demo_framestyle_constyle_net(endt, cy, n)`

范例-格式化图表-004-条件格式，热门行业（平台用） 平台端展示格式化图表用 在dotweb中的使用方式一致， 要想解析看到效果，需两步操作 （1）Web_Html_Table将带样式的数据表转为html【去掉此步骤，即可在dotweb 中使用】 (2)设置模型结果类型为【网页内容】

| 参数   | 类型     | 说明         |
| ------ | -------- | ------------ |
| `endt` | datetime | Date,截止日  |
| `cy`   | any      | Cycle,周期   |
| `n`    | any      | Integer,个数 |

返回：string

## `Demo_framestyle_heatmaptb_net(endt)`

范例-格式化图表-003-色阶映射(平台用) 平台端展示格式化图表用 在dotweb中的使用方式一致， 要想解析看到效果、需两步操作 （1）Web_Html_Table将带样式的数据表转为html【去掉此步骤，即可在dotweb 中使用】 (2)设置模型结果类型为【网页内容】

| 参数   | 类型     | 说明        |
| ------ | -------- | ----------- |
| `endt` | datetime | Date,截止日 |

返回：string

## `Demo_framestyle_net(endt)`

范例-格式化图表-002-平台用 与在dotweb中的使用方式一致， 要想解析看到效果，需两步操作 （1）Web_Html_Table将带样式的数据表转为html (2)设置模型结果类型为【网页内容】

| 参数   | 类型     | 说明        |
| ------ | -------- | ----------- |
| `endt` | datetime | Date,截止日 |

返回：string

## `Demo_framestyle_web(endt)`

范例-格式化图表-001-dotWeb用 自带css样式，在dotweb中直接使用此模型的返回即可

| 参数   | 类型     | 说明        |
| ------ | -------- | ----------- |
| `endt` | datetime | Date,截止日 |

返回：array

## `Demo_framestyle_data(endt, n, ifyearnamecol)`

格式化图图表使用的数据 返回上证50 历年 Roe

| 参数            | 类型     | 说明                  |
| --------------- | -------- | --------------------- |
| `endt`          | datetime | Date,截止日           |
| `n`             | any      | Integer,年份          |
| `ifyearnamecol` | bool     | Bool,是否以年份做列名 |

返回：array

## `kerneldensityestimator(data, kernel, h, eps)`

核密度估计

| 参数     | 类型            | 说明                                                              |
| -------- | --------------- | ----------------------------------------------------------------- |
| `data`   | array of number | Array of number,样本数据                                          |
| `kernel` | integer         | Integer,核函数类型，可取0,1,2。                                   |
| `h`      | real            | Real,带宽，可以理解为数据点的影响范围，越小则表示数据点附近越陡峭 |
| `eps`    | number          | Number,精确度                                                     |

返回：any

## `tsplot_PerformanceSummary(rt_data, tmplate, fname_endt, fname_pfname, fname_bmname, otherconfig)`

根据单期净值收益率数据表绘制策略报告

| 参数           | 类型   | 说明                                                                                                             |
| -------------- | ------ | ---------------------------------------------------------------------------------------------------------------- |
| `rt_data`      | array  | 二维字符串数组,收益率(%)序列                                                                                     |
| `tmplate`      | string | 字符串,模板编号；nil,默认: ABSG1_BM(两图:组合+基准+回撤)；absg2: ABSG2_BM(三图:组合/基准/超额+超额回撤+超额月度) |
| `fname_endt`   | string | 字符串,字段名\_截止日                                                                                            |
| `fname_pfname` | string | 字符串,字段名\_组合                                                                                              |
| `fname_bmname` | string | 字符串,字段名\_基准                                                                                              |
| `otherconfig`  | string | 字符串,预留参数                                                                                                  |

返回：array

## `tssubplot_lines(data, fname_subplots, fname_date, fname_infos, dict_indicator)`

时序数据多子图折线图批量绘制函数，按分组配置自动生成多组折线子图，自动处理时间格式化、数据列重命名、信息列合并，适用于多指标可视化对比 注意：如果数值窗口 遮挡，可以 设为浮点，任意放大，再固定，即可（2026-04-09 xqx 应为bug.） 增加右侧展示字段后，首图会缺失一个图例 （2026-04-13 xqx 应为bug.）

| 参数             | 类型     | 说明                 |
| ---------------- | -------- | -------------------- |
| `data`           | array    | 整数,                |
| `fname_subplots` | any      | 整数,                |
| `fname_date`     | datetime | 整数,                |
| `fname_infos`    | any      | 整数,                |
| `dict_indicator` | any      | 整数,Metrics概览指标 |

返回：array
