✨ feat(tsl-api-reference): expand API and module coverage
This commit is contained in:
@@ -0,0 +1,55 @@
|
||||
# 数学函数 / 增长率与比率
|
||||
|
||||
## `outPutValueByUnit(data, data_type, data_unit)`
|
||||
|
||||
声明:function
|
||||
|
||||
按指定单位换算数值
|
||||
|
||||
<!-- tags: 数学 单位 换算 数值 conversion unit -->
|
||||
|
||||
| 参数 | 类型 | 说明 |
|
||||
| ----------- | ------ | ------------------------- |
|
||||
| `data` | real | 待换算数值 |
|
||||
| `data_type` | string | 数据类型,`Real` 表示实数 |
|
||||
| `data_unit` | real | 换算单位 |
|
||||
|
||||
返回:real
|
||||
|
||||
### 示例
|
||||
|
||||
范例01:按 10 为单位换算实数
|
||||
|
||||
```tsl
|
||||
return outPutValueByUnit(1234.5, "Real", 10);
|
||||
// 输出:123.45
|
||||
```
|
||||
|
||||
## `ytmToAccumulativeYTM(t, f_name, dw, return_type)`
|
||||
|
||||
声明:function
|
||||
|
||||
将日收益率序列转换为复合收益率或累计收益率
|
||||
|
||||
<!-- tags: 数学 收益率 复合收益率 累计收益率 yield return -->
|
||||
|
||||
| 参数 | 类型 | 说明 |
|
||||
| ------------- | ------- | -------------------------------------- |
|
||||
| `t` | array | 日收益率序列 |
|
||||
| `f_name` | string | 收益率字段名称 |
|
||||
| `dw` | integer | 输入单位和返回形式 |
|
||||
| `return_type` | any | 返回复合收益率序列或最近一日复合收益率 |
|
||||
|
||||
返回:array\|real
|
||||
|
||||
### 示例
|
||||
|
||||
范例01:把日收益率转换为复合收益率序列
|
||||
|
||||
```tsl
|
||||
value := array(
|
||||
("date": 20180801T, "yield": 0.003),
|
||||
("date": 20180802T, "yield": 0.006),
|
||||
("date": 20180803T, "yield": 0.009));
|
||||
return ytmToAccumulativeYTM(value, "yield", 2, 0);
|
||||
```
|
||||
+39
@@ -0,0 +1,39 @@
|
||||
# 数学函数 / 数值计算 / 其他
|
||||
|
||||
## `generateCombinations(list, ret, start, n, combine)`
|
||||
|
||||
声明:function
|
||||
|
||||
生成一维数组的全部非空组合
|
||||
|
||||
<!-- tags: 数学 组合 全组合 子集 combinatorics combination -->
|
||||
|
||||
| 参数 | 类型 | 说明 |
|
||||
| --------- | ------- | ---------------------------------- |
|
||||
| `list` | array | 输入的一维数组 |
|
||||
| `ret` | array | 接收生成的组合 |
|
||||
| `start` | integer | 可选。开始选取的位置,默认 0 |
|
||||
| `n` | integer | 可选。当前组合的写入位置,默认 0 |
|
||||
| `combine` | array | 可选。递归生成过程中使用的组合缓存 |
|
||||
|
||||
返回:integer
|
||||
|
||||
### 示例
|
||||
|
||||
范例01:生成三个元素的全部非空组合
|
||||
|
||||
```tsl
|
||||
list := array("a", "b", "c");
|
||||
ret := array();
|
||||
generateCombinations(list, ret);
|
||||
return ret;
|
||||
// 输出:
|
||||
// array(
|
||||
// ("a"),
|
||||
// ("a","b"),
|
||||
// ("a","b","c"),
|
||||
// ("a","c"),
|
||||
// ("b"),
|
||||
// ("b","c"),
|
||||
// ("c"))
|
||||
```
|
||||
@@ -0,0 +1,32 @@
|
||||
# 数学函数 / 优化
|
||||
|
||||
## `nonLP_fmincon(fun, x_0, a, b, aeq, beq, nonlcon)`
|
||||
|
||||
声明:function
|
||||
|
||||
使用起作用集法求解带线性约束和非线性约束的优化问题
|
||||
|
||||
<!-- tags: 数学 优化 非线性规划 约束优化 nonlinear constrained optimization -->
|
||||
|
||||
| 参数 | 类型 | 说明 |
|
||||
| --------- | ------ | ---------------------------------- |
|
||||
| `fun` | string | 目标函数名称 |
|
||||
| `x_0` | array | 初始点 |
|
||||
| `a` | array | 线性不等式约束矩阵 |
|
||||
| `b` | array | 线性不等式约束向量 |
|
||||
| `aeq` | array | 线性等式约束矩阵 |
|
||||
| `beq` | array | 线性等式约束向量 |
|
||||
| `nonlcon` | string | 非线性约束函数名称,空字符串表示无 |
|
||||
|
||||
返回:array
|
||||
|
||||
### 示例
|
||||
|
||||
范例01:调用无显式约束的目标函数
|
||||
|
||||
```tsl
|
||||
empty_matrix := array();
|
||||
return nonLP_fmincon(
|
||||
"sum", array(1.0), empty_matrix, empty_matrix,
|
||||
empty_matrix, empty_matrix, "");
|
||||
```
|
||||
+25
@@ -0,0 +1,25 @@
|
||||
# 数学函数 / 主成分分析 / 中间函数
|
||||
|
||||
## `rotatedComponentMatrix(cm)`
|
||||
|
||||
声明:function
|
||||
|
||||
对载荷矩阵执行方差最大正交旋转
|
||||
|
||||
<!-- tags: 主成分分析 因子分析 载荷矩阵 正交旋转 PCA rotation -->
|
||||
|
||||
| 参数 | 类型 | 说明 |
|
||||
| ---- | ----- | -------- |
|
||||
| `cm` | array | 载荷矩阵 |
|
||||
|
||||
返回:array
|
||||
|
||||
### 示例
|
||||
|
||||
范例01:旋转单位载荷矩阵
|
||||
|
||||
```tsl
|
||||
cm := array((1.0, 0.0), (0.0, 1.0));
|
||||
return rotatedComponentMatrix(cm);
|
||||
// 输出:array((1.0,0.0),(0.0,1.0))
|
||||
```
|
||||
@@ -0,0 +1,33 @@
|
||||
# 数学函数 / 回归 / 回归检验
|
||||
|
||||
## `regress_ridge(y, x, k, constant, alpha)`
|
||||
|
||||
声明:function
|
||||
|
||||
执行岭回归并返回回归系数、残差和统计检验结果
|
||||
|
||||
<!-- tags: 回归 岭回归 正则化 regression ridge -->
|
||||
|
||||
| 参数 | 类型 | 说明 |
|
||||
| ---------- | ------------- | ---------------------------------- |
|
||||
| `y` | array of real | 被解释变量序列 |
|
||||
| `x` | array of real | 解释变量矩阵,每列对应一个解释变量 |
|
||||
| `k` | real\|array | 可选。岭参数或岭参数序列 |
|
||||
| `constant` | boolean | 可选。是否包含常数项,默认 true |
|
||||
| `alpha` | real | 可选。显著性水平,默认 0.05 |
|
||||
|
||||
返回:array
|
||||
|
||||
### 示例
|
||||
|
||||
范例01:使用指定岭参数执行回归
|
||||
|
||||
```tsl
|
||||
y := array(49.0, 50.2, 50.5, 48.5);
|
||||
x := array(
|
||||
(1.0, 2.0),
|
||||
(2.0, 1.0),
|
||||
(3.0, 4.0),
|
||||
(4.0, 3.0));
|
||||
return regress_ridge(y, x, 0.1, true, 0.05);
|
||||
```
|
||||
@@ -0,0 +1,75 @@
|
||||
# 数学函数 / 统计分布
|
||||
|
||||
## `binofit(x, n, alpha)`
|
||||
|
||||
声明:function
|
||||
|
||||
根据二项分布样本估计成功概率及其置信区间
|
||||
|
||||
<!-- tags: 统计分布 二项分布 参数估计 置信区间 binomial fit -->
|
||||
|
||||
| 参数 | 类型 | 说明 |
|
||||
| ------- | ------------- | ----------------------- |
|
||||
| `x` | array of real | 各样本中的成功次数 |
|
||||
| `n` | integer | 每个样本的试验总量 |
|
||||
| `alpha` | real | 显著性水平,范围 0 到 1 |
|
||||
|
||||
返回:array
|
||||
|
||||
### 示例
|
||||
|
||||
范例01:估计二项分布成功概率
|
||||
|
||||
```tsl
|
||||
return binofit(array(4, 5, 6, 5), 10, 0.05);
|
||||
```
|
||||
|
||||
## `randgeo(p, row, col)`
|
||||
|
||||
声明:function
|
||||
|
||||
生成服从几何分布的随机数数组
|
||||
|
||||
<!-- tags: 统计分布 几何分布 随机数 random geometric -->
|
||||
|
||||
| 参数 | 类型 | 说明 |
|
||||
| ----- | ------------------------ | ----------------------------- |
|
||||
| `p` | real | 单次试验成功概率,范围 0 到 1 |
|
||||
| `row` | integer\|array of string | 行数或行名数组 |
|
||||
| `col` | integer\|array of string | 列数或列名数组 |
|
||||
|
||||
返回:array
|
||||
|
||||
### 示例
|
||||
|
||||
范例01:生成二维几何分布随机数组
|
||||
|
||||
```tsl
|
||||
return randgeo(0.5, 2, 3);
|
||||
```
|
||||
|
||||
## `sf_ch2Inv(y, cv, x)`
|
||||
|
||||
声明:function
|
||||
|
||||
计算卡方分布累计概率对应的分位点
|
||||
|
||||
<!-- tags: 统计分布 卡方分布 逆函数 分位点 chi-square inverse -->
|
||||
|
||||
| 参数 | 类型 | 说明 |
|
||||
| ---- | ----------- | -------------------------- |
|
||||
| `y` | real\|array | 累计概率值或累计概率数组 |
|
||||
| `cv` | real | 卡方分布自由度 |
|
||||
| `x` | real\|array | 可选。接收计算得到的分位点 |
|
||||
|
||||
返回:real\|array
|
||||
|
||||
### 示例
|
||||
|
||||
范例01:返回分位点并接收输出参数
|
||||
|
||||
```tsl
|
||||
result := sf_ch2Inv(0.5, 2, value);
|
||||
return array(result, value);
|
||||
// 输出:array(1.386294,1.386294)
|
||||
```
|
||||
@@ -0,0 +1,54 @@
|
||||
# 数学函数 / 统计推断
|
||||
|
||||
## `estimate_sp(mx, n, alpha, tail)`
|
||||
|
||||
声明:function
|
||||
|
||||
估计单个总体比率的置信区间
|
||||
|
||||
<!-- tags: 统计推断 比率 概率 置信区间 proportion confidence interval -->
|
||||
|
||||
| 参数 | 类型 | 说明 |
|
||||
| ------- | ------- | --------------------------------------------------- |
|
||||
| `mx` | real | 样本比率 |
|
||||
| `n` | integer | 样本容量 |
|
||||
| `alpha` | real | 显著性水平,范围 0 到 1 |
|
||||
| `tail` | string | 可选。区间方向,可取 both、left 或 right,默认 both |
|
||||
|
||||
返回:array
|
||||
|
||||
### 示例
|
||||
|
||||
范例01:计算双侧置信区间
|
||||
|
||||
```tsl
|
||||
return estimate_sp(0.3, 120, 0.05, "both");
|
||||
// 输出:array("Lower":0.218009,"upper":0.381991)
|
||||
```
|
||||
|
||||
## `estimate_tp(p, n, alpha, tail)`
|
||||
|
||||
声明:function
|
||||
|
||||
估计两个总体比率之差的置信区间
|
||||
|
||||
<!-- tags: 统计推断 比率差 概率 置信区间 proportion difference -->
|
||||
|
||||
| 参数 | 类型 | 说明 |
|
||||
| ------- | ------ | --------------------------------------------------- |
|
||||
| `p` | array | 两个样本的比率 |
|
||||
| `n` | array | 两个样本的容量 |
|
||||
| `alpha` | real | 显著性水平,范围 0 到 1 |
|
||||
| `tail` | string | 可选。区间方向,可取 both、left 或 right,默认 both |
|
||||
|
||||
返回:array
|
||||
|
||||
### 示例
|
||||
|
||||
范例01:计算两个总体比率差的双侧置信区间
|
||||
|
||||
```tsl
|
||||
return estimate_tp(
|
||||
array(0.478, 0.328), array(1000, 750), 0.05, "both");
|
||||
// 输出:array("Lower":0.104311,"upper":0.195689)
|
||||
```
|
||||
Reference in New Issue
Block a user