feat(tsl-api-reference): add class and framework API lookup

This commit is contained in:
csh
2026-08-20 13:49:55 +08:00
parent 7233646398
commit 651c1f68d2
637 changed files with 25498 additions and 36673 deletions
@@ -0,0 +1,26 @@
# 系统相关函数 / 条件选择函数
## `ifThen3(left, right, r1, r2, r3)`
声明:function
比较left与Right大小,若Left大,则返回r1;若相等,返回r2;若Right大,返回r3
<!-- tags: 判断 检查 -->
| 参数 | 类型 | 说明 |
| ------- | ---- | ------ |
| `left` | real | 实数 |
| `right` | real | 实数 |
| `r1` | expr | 表达式 |
| `r2` | expr | 表达式 |
| `r3` | expr | 表达式 |
返回:expr
### 示例
```tsl
return ifThen3(1, 2, '左大', '相等', '右大');
// 输出:右大
```
@@ -0,0 +1,111 @@
# 系统相关函数 / 表达式相关函数
## `doubleVariableExecute(arr, sys_name, time_arr, exp)`
声明:function
计算指定系统参数,指定时间序列下的指标表达式的值
<!-- tags: 计算 求解 -->
| 参数 | 类型 | 说明 |
| ---------- | ----------- | ---------------------------- |
| `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)`
声明:function
表达式求值
| 参数 | 类型 | 说明 |
| ----- | ----------- | ------ |
| `exp` | texpression | 表达式 |
返回:array
### 示例
```tsl
return multipleExecute(@(1 + 2));
// 输出:array()
```
## `safeEval(exp)`
声明:function
表达式求值
| 参数 | 类型 | 说明 |
| ----- | ----------- | ---------- |
| `exp` | texpression | 表达式类型 |
返回:any
### 示例
```tsl
return safeEval(@(1 + 2));
// 输出:3
```
## `safeSetSysParam(systype, value)`
声明:function
设置系统参数。主要是将value的值转化为正确的对应于systype数据类型,再通过setsysparam进行设置setysparam(systype,value),保证系统参数设置成功
<!-- tags: 设置 修改 -->
| 参数 | 类型 | 说明 |
| --------- | ------ | ------------------------ |
| `systype` | string | 字符串,系统参数名称 |
| `value` | real | 实数或字符串,系统参数值 |
返回:integer
### 示例
```tsl
return safeSetSysParam(pn_cycle(), cy_day());
// 输出:0
```
## `singleVariableExecute(arr, sys_name, exp)`
声明:function
设置系统变量SysName的值为Arr中的元素,执行表达式exp,将表达式的值放到数组Arr中
<!-- tags: 设置 修改 -->
| 参数 | 类型 | 说明 |
| ---------- | ----------- | ------------------------ |
| `arr` | array | 数组, |
| `sys_name` | string | 字符串,指定系统参数名称 |
| `exp` | texpression | 表达式 |
返回:array
### 示例
```tsl
// Arr中存储的是代码,获取2019年3月1日,Arr中所有代码的收盘价
arr := array('SZ000001', 'SZ000002');
return singleVariableExecute(arr, pn_stock(), @close());
```
@@ -0,0 +1,68 @@
# 系统相关函数 / 数据类型转换函数
## `exportCsvne(data, csv_str, include_index, include_header)`
声明:function
将指定数组Data转换为csv格式字符串并存储在csvStr参数中。仅支持一维及二维数组的转换。和ExportCsv的区别:在处理浮点数据时,ExportCsvne的结果不会输出为1E15等格式
<!-- tags: 转换 编码 -->
| 参数 | 类型 | 说明 |
| ---------------- | ------ | ---- |
| `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
result := s;
else
result := ret;
return result;
```
范例02:二维数组转换成csv格式字符串
```tsl
data := array((2, 5, 0), (3, 2, 1), (4, 7, 2));
ret := exportCsvne(data, s);
if ret then
result := s;
else
result := ret;
return result;
```
范例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
result := s;
else
result := ret;
return result;
```
范例04:转换成csv格式字符串,结果不包含字段头部信息
```tsl
data := array((2, 5, 0), (3, 2, 1), (4, 7, 2));
ret := exportCsvne(data, s, 0, 0);
if ret then
result := s;
else
result := ret;
return result;
```