# 指数研究 / 指数应用

## `tsindexs_getbascinfobyendt(index_arr, filter_cond)`

声明：function

天软指数最新基本信息

<!-- tags: 基准指数 指数产品 指数分析 成分股 指数应用 -->

| 参数          | 类型   | 说明                                                                                   |
| ------------- | ------ | -------------------------------------------------------------------------------------- |
| `index_arr`   | string | 字符串,指数池，支持单个指数（字符串） ，多个指数（数组形式）                           |
| `filter_cond` | string | 指数筛选条件；支持按指数板块名、常用指数板块编号或字段条件筛选，空字符串表示不额外筛选 |

返回：array

### 示例

范例01：调用示例

```tsl
indexArr := 'TSI010001';
   filterCond := '';
   return tsindexs_getbascinfobyendt(indexArr,filterCond);
```

## `tsindexs_getvalueinfobyendt(index_arr, filter_cond)`

声明：function

天软指数最新估值分析 (股票指数专用)

<!-- tags: 统计 证券 个股 基准指数 指数产品 指数分析 成分股 指数应用 -->

| 参数          | 类型   | 说明                  |
| ------------- | ------ | --------------------- |
| `index_arr`   | array  | 一维字符串数组,指数池 |
| `filter_cond` | string | 字符串,筛选条件       |

返回：array

### 示例

范例01：调用示例

```tsl
indexArr := 'TSI010001';
   filterCond := '';
   return tsindexs_getvalueinfobyendt(indexArr,filterCond);
```

## `tsindexs_getprofitinfobyendt(index_arr, r_type, filter_cond)`

声明：function

股票指数盈利分析：行业名称、总市值、ROE、营收、营收+/-、净利润、净利润+/-、现金流、

<!-- tags: 统计 证券 个股 基准指数 指数产品 行业分类 板块 指数分析 -->

| 参数          | 类型        | 说明                                             |
| ------------- | ----------- | ------------------------------------------------ |
| `index_arr`   | array       | 一维字符串数组,指数池                            |
| `r_type`      | user_define | 用户自定义,财报数据类型 显示名 取值 TTM 0 年报 1 |
| `filter_cond` | string      | 字符串,筛选条件                                  |

返回：array

### 示例

范例01：调用示例

```tsl
indexArr := 'TSI010001';
   filterCond := '';
   return tsindexs_getprofitinfobyendt(indexArr,0,filterCond);
```

## `tsindexs_getPeriodReturnReport(index_arr, endt, filter_cond)`

声明：function

自定义区间内天软指数阶段涨幅、阶段收益率统计

<!-- tags: 查询 汇总 回报率 投资收益 基准指数 指数产品 指数分析 成分股 -->

| 参数          | 类型   | 说明                |
| ------------- | ------ | ------------------- |
| `index_arr`   | string | 字符串,指数池       |
| `endt`        | date   | 日期,截止日         |
| `filter_cond` | string | 字符串,指数过滤条件 |

返回：array

### 示例

范例01：调用示例

```tsl
indexArr := 'TSI010001';
   endt := 20260525t;
   filterCond := '';
   return tsindexs_getPeriodReturnReport(indexArr,endt,filterCond);
```

## `tsindexs_getRollReturnReport(index_arr, begt, endt, cycle, filter_cond)`

声明：function

天软指数业绩查询

<!-- tags: 绩效 业绩表现 基准指数 指数产品 指数分析 成分股 指数应用 -->

| 参数          | 类型       | 说明                  |
| ------------- | ---------- | --------------------- |
| `index_arr`   | array      | 一维字符串数组,指数池 |
| `begt`        | date       | 日期,开始日           |
| `endt`        | date       | 日期,截止日           |
| `cycle`       | cycle_list | 周期,周期             |
| `filter_cond` | string     | 字符串,指数过滤条件   |

返回：array

### 示例

范例01：调用示例

```tsl
indexArr := 'TSI010001';
   begt := 20240525t;
   endt := 20260525t;
   filterCond := '';
   return tsindexs_getRollReturnReport(indexArr,begt,endt,'年线
',filterCond);
```

范例02：调用示例

```tsl
indexArr := 'TSI010001';
   begt := 20240525t;
   endt := 20260525t;
   filterCond := '';
   return
tsindexs_getRiskFeatureReport(indexArr,begt,endt,1,'SH000300',filterCond)
;
```

## `tsindex_getReturnAndRisk(index_id, begt, endt, qk_type, cycle)`

声明：function

天软指数收益风险特征

<!-- tags: 查询 风险管理 风控 基准指数 指数产品 指数分析 成分股 指数应用 -->

| 参数       | 类型        | 说明                            |
| ---------- | ----------- | ------------------------------- |
| `index_id` | string      | 字符串,指数 ID                  |
| `begt`     | date        | 日期,开始日                     |
| `endt`     | date        | 日期,截止日                     |
| `qk_type`  | user_define | 用户自定义,采样类型 显示名 取值 |
| `cycle`    | cycle_list  | 周期,周期                       |

返回：array

### 示例

范例01：调用示例

```tsl
indexID := 'TSI010001';
   begt := 20240525t;
   endt := 20260525t;
   cycle := '年线';
   return tsindex_getReturnAndRisk(indexID,begt,endt,0,cycle);
```

## `index_getbkweight(indexid, endt)`

声明：function

指数最新权重

<!-- tags: 组合权重 资产配置 基准指数 指数产品 指数分析 成分股 指数应用 -->

| 参数      | 类型   | 说明            |
| --------- | ------ | --------------- |
| `indexid` | string | 字符串,指数代码 |
| `endt`    | date   | 日期,截止日     |

返回：array

### 示例

范例01：调用示例

```tsl
indexID := 'TSI010001';
   endt := 20260525t;
   return Index_getbkweight(indexid,endt);
```

## `index_getbkweightstat(indexid, endt, label)`

声明：function

指数成分统计

<!-- tags: 汇总 基准指数 指数产品 指数分析 成分股 指数应用 -->

| 参数      | 类型        | 说明                                                                                          |
| --------- | ----------- | --------------------------------------------------------------------------------------------- |
| `indexid` | string      | 字符串,指数代码                                                                               |
| `endt`    | date        | 日期,截止日 label_：用户自定义,分类类型 显示名 取值 申万一级 1 中证一级 2 证监会一级 3 板块 4 |
| `label`   | user_define | 指数成分统计结果中用于分组或标记的字段标签                                                    |

返回：array

### 示例

范例01：调用示例

```tsl
indexID := 'TSI010001';
   endt := 20260525t;
   return Index_getbkweightstat(indexid,endt,1);
```

范例02：调用示例

```tsl
indexid := 'TSI010001';
   begt := 20100201t;
   endt := 20100228t;
   return index_getValuationTimeSeries(indexid,begt,endt,nil,1,-1);
```

范例03：调用示例

```tsl
indexArr := 'TSI010001';
   endt := 20260525t;
   return Index_getCorrAnalysis(indexArr,begt,endt,1,1,nil,'');
```

范例04：调用示例

```tsl
indexid := 'TSI010001';
   endt := 20260525t;
   return index_getHistoricalPerformance(indexid,nil,endt,1,'月线
',1,'SH000300');
```

## `cal_indexDecompMetric02_endt(index_id, endt, begt, cal_method)`

声明：function

指数指定日收益分解，相对起始日，单期

<!-- tags: 基准指数 指数产品 指数分析 成分股 指数应用 指数 -->

| 参数         | 类型     | 说明                                                                                  |
| ------------ | -------- | ------------------------------------------------------------------------------------- |
| `index_id`   | string   | 指数 ID                                                                               |
| `endt`       | datetime | 截止日期                                                                              |
| `begt`       | datetime | 起始日期                                                                              |
| `cal_method` | any      | 计算选项,取值如下： 0：指数-博格法 1：指数-博格-残差 2：个股-残差 3：个股-残差-奇异值 |

返回：any

### 示例

范例01：沪深 300 在 2026/3/31 的季度收益分解

```tsl
IndexID:="SH000300";
Setsysparam(Pn_Stock(),IndexID);
Endt:=20260331T;
Begt:=20260101T;
Cycle:=cy_Quarter();
obj:=New tsf_Index2_ProfitDecompTest();
t:= obj.Cal_IndexDecompMetric02_Endt(IndexID,Endt,begt,0);
return t;
```

## `cal_indexDecompMetric_endt(index_id_endt, cycle, cal_method)`

声明：function

指定日周期下的指数收益分解，单期

<!-- tags: 基准指数 指数产品 指数分析 成分股 指数应用 指数 -->

| 参数            | 类型     | 说明                                                                                  |
| --------------- | -------- | ------------------------------------------------------------------------------------- |
| `index_id_endt` | datetime | 计算或查询区间的结束日期                                                              |
| `cycle`         | string   | 周期                                                                                  |
| `cal_method`    | any      | 计算选项,取值如下： 0：指数-博格法 1：指数-博格-残差 2：个股-残差 3：个股-残差-奇异值 |

返回：any

### 示例

范例01：沪深 300 在 2026/3/31 的季度收益分解

```tsl
IndexID:="SH000300";
Setsysparam(Pn_Stock(),IndexID);
Endt:=20260331T;
Cycle:=cy_Quarter();
obj:=New tsf_Index2_ProfitDecompTest();
t:= obj.Cal_IndexDecompMetric_Endt(IndexID,Endt,Cycle,0);
return t;
```

## `cal_indexDecompMetric_qk(index_id, begt, endt, cycle, cal_method)`

声明：function

区间周期下的指数收益分解

<!-- tags: 基准指数 指数产品 指数分析 成分股 指数应用 指数 -->

| 参数         | 类型     | 说明                                                                                  |
| ------------ | -------- | ------------------------------------------------------------------------------------- |
| `index_id`   | string   | 指数 ID                                                                               |
| `begt`       | datetime | 起始日期                                                                              |
| `endt`       | datetime | 截止日期                                                                              |
| `cycle`      | string   | 周期                                                                                  |
| `cal_method` | any      | 计算选项,取值如下： 0：指数-博格法 1：指数-博格-残差 2：个股-残差 3：个股-残差-奇异值 |

返回：any

### 示例

范例01：沪深 300 在 2010/1/1~2026/3/31 的季度收益分解

```tsl
IndexID:="SH000300";
Setsysparam(Pn_Stock(),IndexID);
begt:=20100101T;
Endt:=20260331T;
Cycle:=cy_Quarter();
obj:=New tsf_Index2_ProfitDecompTest();
t:= obj.Cal_IndexDecompMetric_QK(IndexID,begt,Endt,Cycle,0);
return t;
```

## `cal_indexQKZF(index_id, begt, endt)`

声明：function

指数区间涨幅(%)。配置模型

<!-- tags: 基准指数 指数产品 指数分析 成分股 指数应用 指数 -->

| 参数       | 类型     | 说明           |
| ---------- | -------- | -------------- |
| `index_id` | string   | 指数 ID,字符串 |
| `begt`     | datetime | 起始日，日期型 |
| `endt`     | datetime | 截止日，日期型 |

返回：any

## `cal_portfolioProfitMetric(wt, endt, metric_field)`

声明：function

指定日成分权重指标数据，配置模型

<!-- tags: 组合权重 资产配置 投资组合 资产组合 指数分析 成分股 指数应用 指数 -->

| 参数           | 类型     | 说明                                                      |
| -------------- | -------- | --------------------------------------------------------- |
| `wt`           | array    | 指定日股票权重，二维数组。包含字段：截止日、代码、比例(%) |
| `endt`         | datetime | 截止日，日期型                                            |
| `metric_field` | string   | 指标字段标识码，字符串                                    |

返回：any

## `get_indexStockWeight(index_id, endt)`

声明：function

指定日指数权重，配置模型

<!-- tags: 查询 组合权重 资产配置 证券 个股 基准指数 指数产品 指数分析 -->

| 参数       | 类型     | 说明            |
| ---------- | -------- | --------------- |
| `index_id` | string   | 指数 ID，字符串 |
| `endt`     | datetime | 截止日，日期型  |

返回：any

## `rt_indexIndicData(begt, endt)`

声明：function

区间指数指标信息返回

<!-- tags: 基准指数 指数产品 指数分析 成分股 指数应用 指数 -->

| 参数   | 类型     | 说明                       |
| ------ | -------- | -------------------------- |
| `begt` | datetime | 起始日期，日期型，支持缺省 |
| `endt` | datetime | 截止日期，日期型，支持缺省 |

返回：any

## `rt_stockIndicData(begt, endt)`

声明：function

区间个券指标信息返回

<!-- tags: 证券 个股 指数分析 成分股 指数应用 指数 -->

| 参数   | 类型     | 说明                       |
| ------ | -------- | -------------------------- |
| `begt` | datetime | 起始日期，日期型，支持缺省 |
| `endt` | datetime | 截止日期，日期型，支持缺省 |

返回：any

## `sat_indexDecompMetric_qk(index_id, begt, endt, cycle, cal_method, attr_type)`

声明：function

区间收益分解统计

<!-- tags: 汇总 指数分析 成分股 指数应用 指数 -->

| 参数         | 类型     | 说明                                                                                                         |
| ------------ | -------- | ------------------------------------------------------------------------------------------------------------ |
| `index_id`   | string   | 指数代码                                                                                                     |
| `begt`       | datetime | 开始日期                                                                                                     |
| `endt`       | datetime | 截止日期 Cycle Strting 周期                                                                                  |
| `cycle`      | string   | 计算或行情数据使用的周期                                                                                     |
| `cal_method` | any      | 指数计算选项： 0：指数指标-不引入残差(缺省) 1：指数指标-引入残差 2：个券指标-不引入残差 3：个券指标-引入残差 |
| `attr_type`  | any      | 多期收益分解算法: 0：收益贡献法(缺省) 1：算术几何法                                                          |

返回：any

### 示例

范例01：调用示例

```tsl
IndexID:="SH000300";
Endt:=20260630T;
begt:=20240101T;
CalMethod:=1;
Cycle:=cy_quarter();
AttrType:=0;
obj:=New tsf_Index2_ProfitDecompTest();
return
obj.Sat_IndexDecompMetric_QK(IndexID,begt,Endt,Cycle,CalMethod,AttrType);
```

## `tfm_indexDeCompMetric_qk(index_id, begt, endt, cycle, cal_method, attr_type)`

声明：function

指数区间收益分解,指定周期

<!-- tags: 基准指数 指数产品 指数分析 成分股 指数应用 指数 -->

| 参数         | 类型     | 说明                                                                                                         |
| ------------ | -------- | ------------------------------------------------------------------------------------------------------------ |
| `index_id`   | string   | 指数代码                                                                                                     |
| `begt`       | datetime | 开始日期                                                                                                     |
| `endt`       | datetime | 截止日期 Cycle Strting 周期                                                                                  |
| `cycle`      | string   | 计算或行情数据使用的周期                                                                                     |
| `cal_method` | any      | 指数计算选项： 0：指数指标-不引入残差(缺省) 1：指数指标-引入残差 2：个券指标-不引入残差 3：个券指标-引入残差 |
| `attr_type`  | any      | 多期收益分解算法: 0：收益贡献法(缺省)                                                                        |

返回：any

### 示例

范例01：调用示例

```tsl
IndexID:="SH000300";
Endt:=20260630T;
begt:=20240101T;
CalMethod:=1;
Cycle:=cy_quarter();
AttrType:=0;
return TFM_IndexDeCompMetric_QK(IndexID,begt,Endt,Cycle,CalMethod,
AttrType);
```
