Files
csh 13be5ea0aa feat(tsl-api-reference): index class and unit APIs
Migrate reference pages to declaration-line storage and rebuild the
13-column index.

Add qualified member lookup plus regression and end-to-end coverage.
2026-07-29 15:47:46 +08:00

499 lines
12 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Builtin - 外部交互 / COM
## `cverrget(v)`
声明:function
获取NAN数据的错误号,出来的结果仅应使用低32位,也就是需要用 .& 0xFFFFFFFF,因为高字的数据是无法确定的。
| 参数 | 类型 | 说明 |
| ---- | ------ | ---- |
| `v` | double | |
返回:int64
## `cverr(v)`
声明:function
将错误号转为包含错误号的特殊的NAN数据。
| 参数 | 类型 | 说明 |
| ---- | ----- | ---- |
| `v` | int64 | |
返回:real
### 示例
```tsl
return cverr(0x800A07E7); // 返回结果NAN
```
## `coInitialize()`
声明:function
Ole初始化。
返回:any
## `coUnInitialize()`
声明:function
Ole结束。
返回:any
## `pyPutVar(var_name, var_value)`
声明:function
送入python变量
| 参数 | 类型 | 说明 |
| ----------- | ------ | ---- |
| `var_name` | string | |
| `var_value` | any | |
返回:integer
## `pyGetVar(var_name)`
声明:function
从python 获得变量
| 参数 | 类型 | 说明 |
| ---------- | ------ | ---- |
| `var_name` | string | |
返回:any
## `pyRun(python_code, flag)`
声明:function
简单运行Python的代码
| 参数 | 类型 | 说明 |
| ------------- | ------- | ------------------------------------------------------------------------------------------------------------------------- |
| `python_code` | string | 字符串类型,Python代码串,可执行多行代码。注意,使用空格对齐来确定逻辑层级,相同空格数代表同一层级,一般推荐使用4个空格。 |
| `flag` | integer | 整型,可选参数,默认不被指定,该含义由PyCompileFlags指定组合的状态,处理UTF-8源代码等问题。具体请参考Python手册。 |
返回:integer
### 示例
```tsl
s := "a=1
b=1
if a==1:
b=2
";
pyRun(s);
return array("a": pyGetVar("a"), "b": pyGetVar("b"));
// 本地执行返回结果:
```
## `pyCall(call_flag)`
声明:function
调用python 模块中的函数
| 参数 | 类型 | 说明 |
| ----------- | ------- | --------------------------------------------------------------------------------------------------------------------- |
| `call_flag` | integer | 结果输出方式与参数输入方式的设置,是一个按位(2位二进制)的状态组合值,即取值为二进制的00,01,10,11组合,具体含义如下: |
返回:any
### 示例
```tsl
rdo2 pyRun("import numpy");
// 不给状态值,默认方式下调用python的randint函数
return rdo2 pyCall('numpy.random', 'randint', 6, 9);
// 参数通过数组方式传入
return pyCall(2, 'numpy.random', 'randint', array('high': 9, 'low': 6));
// 一个个指定参数方式传入
return pyCall('numpy.random', 'randint', high: 9, low: 6);
```
## `pyRelease()`
声明:function
释放python资源,多线程的时候可以提高效率
返回:bool
## `pyEnsure()`
声明:function
锁定python资源;由于pyrun和pyPutVar,pyGetVar会智能锁定,所以用户一般来说不需要调用该函数。
返回:bool
## `pyError()`
声明:function
获取当前运行 Python 语句时的报错信息
返回:string
### 示例
```tsl
// 本地执行以下脚本
pyRun("a=math.pi"); // 此处会报错因为没有 import math
return pyError();
// 输出: name 'math' is not defined
```
## `rEval(eval_string, code)`
声明:function
执行R的字符串。
| 参数 | 类型 | 说明 |
| ------------- | ------- | ----------------------------------------- |
| `eval_string` | string | 执行的串,例如”a=b+1”。 |
| `code` | integer | 返回是否成功,为0表示成功过,否则为错误码 |
返回:any
## `rGetVar(var_name)`
声明:function
获得一个R的变量的值。
| 参数 | 类型 | 说明 |
| ---------- | ------ | ----------------------- |
| `var_name` | string | 设置的变量名,例如”a”。 |
返回:any
## `rPutVar(var_name, value)`
声明:function
设置一个R的变量的值。
| 参数 | 类型 | 说明 |
| ---------- | ------ | ----------------------- |
| `var_name` | string | 设置的变量名,例如”a”。 |
| `value` | any | 设置的变量的值 |
返回:any
## `rEnsure()`
声明:function
锁定R资源;由于REval和RPutVar,RGetVar会智能锁定,所以用户一般来说不需要调用该函数。
返回:bool
## `rRelease()`
声明:function
释放R资源,多线程的时候可以提高效率
返回:bool
## `mEval(eval_string)`
声明:function
执行MatLab的字符串。
| 参数 | 类型 | 说明 |
| ------------- | ------ | ----------------------- |
| `eval_string` | string | 执行的串,例如”a=b+1”。 |
返回:integer
## `mPutVar(var_name, value)`
声明:function
设置一个MATLAB的变量的值。
| 参数 | 类型 | 说明 |
| ---------- | ------ | ----------------------- |
| `var_name` | string | 设置的变量名,例如”a”。 |
| `value` | any | 设置的变量的值 |
返回:integer
## `mGetVar(var_name)`
声明:function
获得一个MATLAB的变量的值。
| 参数 | 类型 | 说明 |
| ---------- | ------ | ----------------------- |
| `var_name` | string | 要获得变量名,例如”a”。 |
返回:any
## `mGetBuf()`
声明:function
返回MATLAB引擎的警告或者错误信息。
返回:string
## `mClose()`
声明:function
关闭MATLAB引擎。
返回:any
## `mSetVisible(visible)`
声明:function
设置MATLAB引擎是否可视。
| 参数 | 类型 | 说明 |
| --------- | ---- | ------------------------------ |
| `visible` | bool | 如果为真,则显示,为假则隐藏。 |
返回:integer
## `stock()`
声明:function
字符串类型,当前证券代码系统参数,读写。
返回:any
## `cycle()`
声明:function
字符串类型,当前周期系统参数,读写。
返回:any
## `rate()`
声明:function
整数类型,当前复权类型系统参数,读写。
返回:any
## `rateDay()`
声明:function
日期类型,复权基准日系统参数,读写。
返回:any
## `precision()`
声明:function
整数类型,保留小数位数系统参数,读写。
返回:any
## `bk()`
声明:function
字符串类型,默认板块系统参数,读写。
返回:any
## `stocks()`
声明:function
股票组参数,如果调用REMOTECALLFUNC需要一次性调用多个股票进行返回,则设置该参数为数组,取消则设置Stock属性。主要用于EXCEL的表格提取数据。
返回:any
## `times()`
声明:function
时间组参数,如果调用REMOTECALLFUNC需要一次性调用多个时间进行返回,则设置该参数为数组,取消则设置Time属性。主要用于EXCEL的表格提取数据。
返回:any
## `bks()`
声明:function
板块组参数,如果调用REMOTECALLFUNC需要一次性调用多个板块进行返回,则设置该参数为数组,取消则设置BK属性。主要用于EXCEL的表格提取数据。
返回:any
## `nilTrans()`
声明:function
设置TSL语言的NIL和COM转换的规则。
返回:any
## `i64Trans()`
声明:function
设置TSL语言的Int64和COM转换的规则。
返回:any
## `keepRawData()`
声明:function
由于在EXCEL单元格中以及MATLAB中送入数据的时候,均为二维数据,但TSL很多函数的参数需要一维的参数,因此需要有一个转换的原则。数据转换规则如下:
返回:any
## `standardArray()`
声明:function
TSL返回的数组是一种array of olevariant结构,允许混合数据类型,可以将字符串,整数浮点混合在一个数组中,这样在某些其他系统中,会存在处理上的难度,为了兼容这些系统,允许指定返回的结果集为一个标准的数组。当使用这个设置的时候,必需保障返回的数据结果集是规范的类型一致的结果集,否则可能会出现错误。可设置的值定义为:
返回:any
## `textResult()`
声明:function
某些系统无法处理复杂的结果集,在这种情况下,可以使用文本来返回的结果集,文本格式是TSL可解析的数据结构文本串。设置为1则任意类型均以文本串的模式返回。
返回:any
## `resultFileName()`
声明:function
某些系统无法处理COM返回的复杂的结果集,在这种情况下,可以指定一个文件来返回结果集,调用完成后再由该系统从文件中读取数据。设置该文件名为非空的串则打开该模式,如果文件名以.csv或.xml结尾,会以CSV或XMLXML为TSL语言的标准XML格式)格式写入文件,否则,会写入EXCEL格式结构的文件。
返回:any
## `computebitsoption()`
声明:function
计算的位数选项。0:自动选择,1:32位服务器计算,2:64位服务器计算。
返回:any
## `computeservice()`
声明:function
计算的服务群组选择。空字符串为默认,’auto’为自动选择,否则为指定的服务群组名。
返回:any
## `remoteCallFunc(func_name, params)`
声明:function
利用平台执行一个函数。
| 参数 | 类型 | 说明 |
| ----------- | ---------- | ---------------------------------------------------- |
| `func_name` | widestring | 字符串类型,需要调用的函数名。 |
| `params` | olevariant | Array of Variant的数组类型。用于存贮调用函数的参数。 |
返回:any
## `localCallFunc(func_name, params)`
声明:function
利用本地解释器执行一个函数。
| 参数 | 类型 | 说明 |
| ----------- | ---------- | ---------------------------------------------------- |
| `func_name` | widestring | 字符串类型,需要调用的函数名。 |
| `params` | olevariant | Array of Variant的数组类型。用于存贮调用函数的参数。 |
返回:any
## `remoteExecute(execute_str)`
声明:function
利用平台执行一段TSL脚本。
| 参数 | 类型 | 说明 |
| ------------- | ---------- | ------------------------------ |
| `execute_str` | widestring | 字符串类型,需要执行的脚本串。 |
返回:any
## `localExecute(execute_str)`
声明:function
利用本地解释器执行一段TSL脚本。
| 参数 | 类型 | 说明 |
| ------------- | ---------- | ------------------------------ |
| `execute_str` | widestring | 字符串类型,需要执行的脚本串。 |
返回:any
## `resetSysParam()`
声明:function
重置系统参数。时间设置为当前时间,证券为上证指数,周期为日线,设置为不复权,复权基准日为0,返回保留小数点位数为4,股票列表为空,时间列表为空。
返回:any
## `adminCommand(command, time_out, recv_string, broad_string, err_msg)`
声明:function
提交管理员命令。
| 参数 | 类型 | 说明 |
| -------------- | ---------- | -------------------------------- |
| `command` | widestring | 字符串类型,提交的管理员命令串。 |
| `time_out` | integer | 整数类型,命令超时的毫秒数。 |
| `recv_string` | | 返回的命令结果串。 |
| `broad_string` | | 返回的广播消息串。 |
| `err_msg` | | 如果发生错误,返回的错误信息。 |
返回:olevariant
## `simplyAdminCommand(command, time_out, no_data_time_out)`
声明:function
提交管理员命令。
| 参数 | 类型 | 说明 |
| ------------------ | ---------- | ------------------------------------------------ |
| `command` | widestring | 字符串类型,提交的管理员命令串。 |
| `time_out` | integer | 整数类型,命令超时的毫秒数。 |
| `no_data_time_out` | integer | 整数类型,收到第一个数据开始多久没有数据则返回。 |
返回:olevariant