📦 deps(tsl): sync tsl-playbook from 49e6dadc

Source-Commit: 49e6dadc60
This commit is contained in:
ci[bot]
2026-07-20 01:42:42 +00:00
parent 713671152c
commit 9fedb2cf7f
61 changed files with 27118 additions and 25747 deletions
@@ -151,7 +151,7 @@ if not spec(isTradeDay(i), 'SH000001') then continue;
echo specDate(close(), i);
end
return 1;
// 结果:times为函数运行的次数,seconds为运行时间,op为指令的优化信息,type为函数类型。
// 输出:times为函数运行的次数,seconds为运行时间,op为指令的优化信息,type为函数类型。
```
范例02:内置对象的优化信息返回
@@ -190,98 +190,6 @@ return randomFrom(a);
返回:array
### `Logger_debug(msg)`
打印带执行节点的调试信息
| 参数 | 类型 | 说明 |
| ----- | ------ | ----------------------------------------------------------- |
| `msg` | string | 任意数据类型,如果是字符串原样打印,如果非字符串按tostn打印 |
返回:any
### `logger_info(msg)`
打印带执行节点的提示信息
| 参数 | 类型 | 说明 |
| ----- | ------ | ----------------------------------------------------------- |
| `msg` | string | 任意数据类型,如果是字符串原样打印,如果非字符串按tostn打印 |
返回:any
### `logger_warning(msg)`
打印带执行节点的调试信息
| 参数 | 类型 | 说明 |
| ----- | ---- | ----------------------------------------------------------- |
| `msg` | any | 任意数据类型,如果是字符串原样打印,如果非字符串按tostn打印 |
返回:any
### `logger_info2(p1, p2, p3, pn)`
打印带执行节点的提示信息
| 参数 | 类型 | 说明 |
| ---- | ---- | ------------------------ |
| `p1` | any | 第一个参数的内容 |
| `p2` | any | 第二个参数的内容,可省略 |
| `p3` | any | 第三个参数的内容,可省略 |
| `pn` | any | 第N个参数的内容,可省略 |
返回:any
### `sp_UserSysParam2()`
用户自定义函数教学范例,获得当前系统参数
返回:string
### `sp_SetSysParam1()`
设置系统参数教学范例,使用缺省系统参数,返回股票.基本信息
返回:any
### `sp_SetSysParam2()`
设置系统参数教学范例,指定系统参数(当前为SH600718),返回股票.基本信息
返回:any
### `ifThen3(left, right, r1, r2, r3)`
比较left与Right大小,若Left大,则返回r1;若相等,返回r2;若Right大,返回r3。
| 参数 | 类型 | 说明 |
| ------- | ---- | ------ |
| `left` | real | 实数 |
| `right` | real | 实数 |
| `r1` | expr | 表达式 |
| `r2` | expr | 表达式 |
| `r3` | expr | 表达式 |
返回:expr
#### 示例
```tsl
return ifThen3(1, 2, '左大', '相等', '右大');
// 返回:’右大’
```
### `safeEval(exp)`
表达式求值
| 参数 | 类型 | 说明 |
| ----- | ----------- | ---------- |
| `exp` | texpression | 表达式类型 |
返回:any
### `tsAppServerName()`
返回平台设置的名字,如果没有设置,默认是ip:进程路径。
@@ -292,7 +200,7 @@ return ifThen3(1, 2, '左大', '相等', '右大');
```tsl
return tsAppServerName();
// 结果192.168.101.26:z:\server\bin\exec64.exe
// 输出192.168.101.26:z:\server\bin\exec64.exe
```
### `call(func_name, p1, pn)`
@@ -360,65 +268,6 @@ return xml('<?xml version="1.0" encoding="GB2312"?>
// 仅windows中支持,Linux中暂不支持。
```
### `exportCsvne(data, csv_str, include_index, include_header)`
将指定数组Data转换为csv格式字符串并存储在csvStr参数中。仅支持一维及二维数组的转换。和ExportCsv的区别:在处理浮点数据时,ExportCsvne的结果不会输出为1E15等格式。
| 参数 | 类型 | 说明 |
| ---------------- | ------ | ---- |
| `data` | array | |
| `csv_str` | string | |
| `include_index` | | |
| `include_header` | bool | |
返回:bool
#### 示例
范例01:一维数组转换成csv格式字符串(含大数量级数据)
```tsl
data := array(1, 2, "3", "A", 9, 1E15);
ret := exportCsvne(data, s);
if ret then return s;
else return ret;
// 输出:
// 示例未提供可直接输出的返回表达式。
```
范例02:二维数组转换成csv格式字符串
```tsl
data := array((2, 5, 0), (3, 2, 1), (4, 7, 2));
ret := exportCsvne(data, s);
if ret then return s;
else return ret;
// 输出:
// 示例未提供可直接输出的返回表达式。
```
范例03:转换成csv格式字符串,结果包含数组下标信息
```tsl
data := array("A": (2, 5, 0), "B": (3, 2, 1), "C": (4, 7, 2));
ret := exportCsvne(data, s, 1);
if ret then return s;
else return ret;
// 输出:
// 示例未提供可直接输出的返回表达式。
```
范例04:转换成csv格式字符串,结果不包含字段头部信息
```tsl
data := array((2, 5, 0), (3, 2, 1), (4, 7, 2));
ret := exportCsvne(data, s, 0, 0);
if ret then return s;
else return ret;
// 输出:
// 示例未提供可直接输出的返回表达式。
```
### `callInArray(func_name, param_content)`
根据名称或者函数指针调用指定的函数,将参数放入一个数组中送入该函数,不支持变参。另外,天软的函数指针可以用thisfunction()获得。该函数与call函数功能类似,注意两个函数设置参数的区别。Call函数直接列举,CallInArray函数将调用的函数的参数放在Array中。
@@ -473,75 +322,12 @@ return b;
end;
// 调用
return callInArray("CCC", array("b": 1, "d": 4));
// 返回1
// 输出1
// 打印结果:A: <NIL> B: 1 C: <NIL> D: 40
// 解析:callINArray在通过数组传参数时,可以通过指定下标的方式给指定参数进行传参,下标对应函数定义中的变量名。
// 上面示例中,只对参数b与d进行了传参,其它两参数没有进行传值,所以是nil。
```
### `doubleVariableExecute(arr, sys_name, time_arr, exp)`
计算指定系统参数,指定时间序列下的指标表达式的值
| 参数 | 类型 | 说明 |
| ---------- | ----------- | ---------------------------- |
| `arr` | integer | 二维数组,设置的系统参数的值 |
| `sys_name` | integer | 字符串,指定的系统参数名 |
| `time_arr` | integer | 二维数组,需要计算的指定时间 |
| `exp` | texpression | 表达式,指标表达式 |
返回:array
#### 示例
```tsl
stocks := array(getBk('上证50'));
timer := marketTradeDayQk(20220101T, 20221211T);
return doubleVariableExecute(stocks, pn_Stock(), timer, @close());
// 返回: (部分结果截图)
```
### `multipleExecute(exp)`
表达式求值
| 参数 | 类型 | 说明 |
| ----- | ----------- | ------ |
| `exp` | texpression | 表达式 |
返回:array
### `singleVariableExecute(arr, sys_name, exp)`
设置系统变量SysName的值为Arr中的元素,执行表达式exp,将表达式的值放到数组Arr中。
| 参数 | 类型 | 说明 |
| ---------- | ----------- | ------------------------ |
| `arr` | array | 数组, |
| `sys_name` | string | 字符串,指定系统参数名称 |
| `exp` | texpression | 表达式 |
返回:array
#### 示例
```tsl
// Arr中存储的是代码,获取2019年3月1日,Arr中所有代码的收盘价
arr := array('SZ000001', 'SZ000002');
return singleVariableExecute(arr, pn_stock(), @close());
```
### `safeSetSysParam(systype, value)`
设置系统参数。主要是将value的值转化为正确的对应于systype数据类型,再通过setsysparam进行设置setysparam(systype,value),保证系统参数设置成功。
| 参数 | 类型 | 说明 |
| --------- | ------ | ------------------------ |
| `systype` | string | 字符串,系统参数名称 |
| `value` | real | 实数或字符串,系统参数值 |
返回:integer
### `tsAppServer()`
获得当前运行的模型所在的运算服务器的标识。
@@ -553,7 +339,7 @@ return singleVariableExecute(arr, pn_stock(), @close());
```tsl
a := rand(10, 10);
return tsAppServer();
// 结果192.168.101.45:3328(Z:\server\bin5)
// 输出192.168.101.45:3328(Z:\server\bin5)
```
### `dupValue(value)`
@@ -607,7 +393,7 @@ end;
a := 1;
b := 2;
return ifThen(a>b, a, b);
// 返回2。
// 输出2。
```
### `integer(value)`
@@ -727,24 +513,6 @@ return binary('111111'); // 返回值为二进制流。
## 错误与断言函数
### `assert(error)`
断言。若Check为假,返回出错信息
| 参数 | 类型 | 说明 |
| ------- | ------ | ---------- |
| `error` | string | 字符串类型 |
返回:string
#### 示例
```tsl
return assert(0, '无效的语段');
// 输出:
// 示例包含说明文字,未作为可执行片段运行。
```
### `getProfilerInfo(clear)`
获得记录的优化信息。