# 金融 / 板块 / 估值指标

## `bk_pb5(end_t, right_type, stype, sample_select, eps_criterion, right_method)`

声明：function

计算板块指定日市净率(复合)

<!-- tags: 金融 板块 估值指标 计算 求解 -->

| 参数            | 类型     | 说明                                   |
| --------------- | -------- | -------------------------------------- |
| `end_t`         | datetime | 指定日期                               |
| `right_type`    | int      | 加权方式，具体取值如下:                |
| `stype`         | int      | 股票类型，具体取值如下:                |
| `sample_select` | int      | 样本股选择，具体取值如下:              |
| `eps_criterion` | float    | 绩差股标准，和参数SampleSelect结合使用 |
| `right_method`  | float    | 加权系数取值方式，具体取值如下:        |

返回：float

### 示例

范例01：假设构建了用户板块mybk（此处以沪深300的成分股代替）

```tsl
// 假设构建了用户板块mybk（此处以沪深300的成分股代替）
// 计算mybk板块2011年3月15日的按总股本加权的市净率
EndT := inttodate(20110315);
setsysparam(pn_date(), EndT);
stockArr := getbkbydate('SH000300', EndT);
savebk('mybk', '新建分类', stockArr);
SetSysParam(pn_bk(), 'mybk');
return BK_PB5(EndT, 0, 0, 0, 0, 0);
// 输出：2.36
```

## `bk_pcf(end_t, right_type, stype, sample_select, eps_criterion)`

声明：function

计算板块指定日市现率(上年末财务数据)

<!-- tags: 金融 板块 估值指标 计算 求解 -->

| 参数            | 类型     | 说明                                   |
| --------------- | -------- | -------------------------------------- |
| `end_t`         | datetime | 指定日期                               |
| `right_type`    | int      | 加权方式，具体取值如下:                |
| `stype`         | int      | 股票类型，具体取值如下:                |
| `sample_select` | int      | 样本股选择，具体取值如下:              |
| `eps_criterion` | float    | 绩差股标准，和参数SampleSelect结合使用 |

返回：float

### 示例

范例01：返回用户板块mybk中剔除期初报告期每股收益小于0.2的按流通股本加权PCF

```tsl
EndT := inttodate(20091231);
stockArr := getbkbydate('SH000300', EndT);
savebk('mybk', '新建分类', stockArr);
SetSysParam(pn_bk(), 'mybk');
return BK_PCF(inttodate(20101231), 1, 1, 2, 0.2);
// 输出：7.7
```

## `bk_pcf12(end_t, right_type, stype, sample_select, eps_criterion)`

声明：function

计算板块指定日市现率(最近12个月)

<!-- tags: 金融 板块 估值指标 计算 求解 -->

| 参数            | 类型     | 说明                                   |
| --------------- | -------- | -------------------------------------- |
| `end_t`         | datetime | 指定日期                               |
| `right_type`    | int      | 加权方式，具体取值如下:                |
| `stype`         | int      | 股票类型，具体取值如下:                |
| `sample_select` | int      | 样本股选择，具体取值如下:              |
| `eps_criterion` | float    | 绩差股标准，和参数SampleSelect结合使用 |

返回：float

### 示例

范例01：假设构建了用户板块mybk（此处以沪深300的成分股代替）

```tsl
// 假设构建了用户板块mybk（此处以沪深300的成分股代替）
// 计算mybk板块2011年3月15日的按总股本加权的市现率
EndT := inttodate(20110315);
setsysparam(pn_date(), EndT);
stockArr := getbkbydate('SH000300', EndT);
savebk('mybk', '新建分类', stockArr);
SetSysParam(pn_bk(), 'mybk');
return BK_PCF12(EndT, 0, 0, 0, 0);
// 输出：6.58
```

## `bk_pcf5(end_t, right_type, stype, sample_select, eps_criterion, right_method)`

声明：function

计算板块指定日市现率(复合)

<!-- tags: 金融 板块 估值指标 计算 求解 -->

| 参数            | 类型     | 说明                                   |
| --------------- | -------- | -------------------------------------- |
| `end_t`         | datetime | 指定日期                               |
| `right_type`    | int      | 加权方式，具体取值如下:                |
| `stype`         | int      | 股票类型，具体取值如下:                |
| `sample_select` | int      | 样本股选择，具体取值如下:              |
| `eps_criterion` | float    | 绩差股标准，和参数SampleSelect结合使用 |
| `right_method`  | float    | 加权系数取值方式，具体取值如下:        |

返回：float

### 示例

范例01：假设构建了用户板块mybk（此处以沪深300的成分股代替）

```tsl
// 假设构建了用户板块mybk（此处以沪深300的成分股代替）
// 计算mybk板块2011年3月15日的按总股本加权的市现率
EndT := inttodate(20110315);
setsysparam(pn_date(), EndT);
stockArr := getbkbydate('SH000300', EndT);
savebk('mybk', '新建分类', stockArr);
SetSysParam(pn_bk(), 'mybk');
return BK_PCF5(EndT, 0, 0, 0, 0, 0);
// 输出：8.87
```

## `bk_pe(end_t, right_type, stype, sample_select, eps_criterion)`

声明：function

计算板块指定日市盈率(上年末财务数据)

<!-- tags: 金融 板块 估值指标 计算 求解 -->

| 参数            | 类型     | 说明                                   |
| --------------- | -------- | -------------------------------------- |
| `end_t`         | datetime | 指定日期                               |
| `right_type`    | int      | 加权方式，具体取值如下:                |
| `stype`         | int      | 股票类型，具体取值如下:                |
| `sample_select` | int      | 样本股选择，具体取值如下:              |
| `eps_criterion` | float    | 绩差股标准，和参数SampleSelect结合使用 |

返回：float

### 示例

范例01：返回用户板块mybk于2011年3月15日的PE，按流通股本加权

```tsl
EndT := inttodate(20110315);
setsysparam(pn_date(), endt);
stockArr := getbkbydate('SH000300', EndT);
savebk('mybk', '新建分类', stockArr);
SetSysParam(pn_bk(), 'mybk');
return BK_PE(endt, 1, 0, 0, 0);
// 输出：20.61
```

## `bk_pe12(end_t, right_type, stype, sample_select, eps_criterion)`

声明：function

计算板块指定日市盈率(最近12个月)

<!-- tags: 金融 板块 估值指标 计算 求解 -->

| 参数            | 类型     | 说明                                   |
| --------------- | -------- | -------------------------------------- |
| `end_t`         | datetime | 指定日期                               |
| `right_type`    | int      | 加权方式，具体取值如下:                |
| `stype`         | int      | 股票类型，具体取值如下:                |
| `sample_select` | int      | 样本股选择，具体取值如下:              |
| `eps_criterion` | float    | 绩差股标准，和参数SampleSelect结合使用 |

返回：float

### 示例

范例01：假设构建了用户板块mybk（此处以沪深300的成分股代替）

```tsl
// 假设构建了用户板块mybk（此处以沪深300的成分股代替）
// 计算mybk板块2011年3月15日的按总股本加权的市盈率
EndT := inttodate(20110315);
setsysparam(pn_date(), EndT);
stockArr := getbkbydate('SH000300', EndT);
savebk('mybk', '新建分类', stockArr);
SetSysParam(pn_bk(), 'mybk');
return BK_PE12(EndT, 0, 0, 0, 0);
// 输出：16.04
```

## `bk_pe2(end_t, r_date, right_type, stype, sample_select, eps_criterion)`

声明：function

计算板块指定日市盈率(指定财务数据加权)

<!-- tags: 金融 板块 估值指标 计算 求解 -->

| 参数            | 类型     | 说明                                                                                           |
| --------------- | -------- | ---------------------------------------------------------------------------------------------- |
| `end_t`         | datetime | 指定日期                                                                                       |
| `r_date`        | int      | 指定报告期，决定加权系数的值；如果是一季报，则加权系数是4，即计算PE的分母是一季报的净利润\*4； |
| `right_type`    | int      | 加权方式，具体取值如下:                                                                        |
| `stype`         | int      | 股票类型，具体取值如下:                                                                        |
| `sample_select` | int      | 样本股选择，具体取值如下:                                                                      |
| `eps_criterion` | float    | 绩差股标准，和参数SampleSelect结合使用                                                         |

返回：float

### 示例

范例01：假设构建了用户板块mybk（此处以沪深300的成分股代替）

```tsl
// 假设构建了用户板块mybk（此处以沪深300的成分股代替）
// 计算mybk板块2011年3月15日的按总股本加权的市盈率
EndT := inttodate(20110315);
setsysparam(pn_date(), EndT);
stockArr := getbkbydate('SH000300', EndT);
savebk('mybk', '新建分类', stockArr);
SetSysParam(pn_bk(), 'mybk');
return BK_PE2(EndT, 20101231, 0, 0, 0, 0);
// 输出：14.87
```

## `bk_pe5(end_t, right_type, stype, sample_select, eps_criterion, right_method)`

声明：function

计算板块指定日市盈率(复合)

<!-- tags: 金融 板块 估值指标 计算 求解 -->

| 参数            | 类型     | 说明                                   |
| --------------- | -------- | -------------------------------------- |
| `end_t`         | datetime | 指定日期                               |
| `right_type`    | int      | 加权方式，具体取值如下:                |
| `stype`         | int      | 股票类型，具体取值如下:                |
| `sample_select` | int      | 样本股选择，具体取值如下:              |
| `eps_criterion` | float    | 绩差股标准，和参数SampleSelect结合使用 |
| `right_method`  | float    | 加权系数取值方式，具体取值如下:        |

返回：float

### 示例

范例01：假设构建了用户板块mybk（此处以沪深300的成分股代替）

```tsl
// 假设构建了用户板块mybk（此处以沪深300的成分股代替）
// 计算mybk板块2011年3月15日的按总股本加权的市盈率
EndT := inttodate(20110315);
setsysparam(pn_date(), EndT);
stockArr := getbkbydate('SH000300', EndT);
savebk('mybk', '新建分类', stockArr);
SetSysParam(pn_bk(), 'mybk');
return BK_PE5(EndT, 0, 0, 0, 0, 0);
// 输出：14.87
```

## `bk_pmi(end_t, right_type, stype, sample_select, eps_criterion)`

声明：function

计算板块指定日市销率(上年末财务数据)

<!-- tags: 金融 板块 估值指标 计算 求解 -->

| 参数            | 类型     | 说明                                   |
| --------------- | -------- | -------------------------------------- |
| `end_t`         | datetime | 指定日期                               |
| `right_type`    | int      | 加权方式，具体取值如下:                |
| `stype`         | int      | 股票类型，具体取值如下:                |
| `sample_select` | int      | 样本股选择，具体取值如下:              |
| `eps_criterion` | float    | 绩差股标准，和参数SampleSelect结合使用 |

返回：float

### 示例

范例01：返回用户板块mybk于2011年3月15日的市销率，按流通股本加权

```tsl
EndT := inttodate(20110315);
setsysparam(pn_date(), EndT);
stockArr := getbkbydate('SH000300', EndT);
savebk('mybk', '新建分类', stockArr);
SetSysParam(pn_bk(), 'mybk');
return BK_PMI(EndT, 1, 0, 0, 0);
// 输出：2.01
```

## `bk_pmi12(end_t, right_type, stype, sample_select, eps_criterion)`

声明：function

计算板块指定日市销率(最近12个月)

<!-- tags: 金融 板块 估值指标 计算 求解 -->

| 参数            | 类型     | 说明                                   |
| --------------- | -------- | -------------------------------------- |
| `end_t`         | datetime | 指定日期                               |
| `right_type`    | int      | 加权方式，具体取值如下:                |
| `stype`         | int      | 股票类型，具体取值如下:                |
| `sample_select` | int      | 样本股选择，具体取值如下:              |
| `eps_criterion` | float    | 绩差股标准，和参数SampleSelect结合使用 |

返回：float

### 示例

范例01：假设构建了用户板块mybk（此处以沪深300的成分股代替）

```tsl
// 假设构建了用户板块mybk（此处以沪深300的成分股代替）
// 计算mybk板块2011年3月15日的按总股本加权的市净率
EndT := inttodate(20110315);
setsysparam(pn_date(), EndT);
stockArr := getbkbydate('SH000300', EndT);
savebk('mybk', '新建分类', stockArr);
SetSysParam(pn_bk(), 'mybk');
return BK_PMI12(EndT, 0, 0, 0, 0);
// 输出：1.72
```

## `bk_pmi2(end_t, r_date, right_type, stype, sample_select, eps_criterion)`

声明：function

计算板块指定日市销率(指定财务数据加权)

<!-- tags: 金融 板块 估值指标 计算 求解 -->

| 参数            | 类型     | 说明                                                                                                 |
| --------------- | -------- | ---------------------------------------------------------------------------------------------------- |
| `end_t`         | datetime | 指定日期                                                                                             |
| `r_date`        | int      | 指定报告期，决定加权系数的值；如果是一季报，则加权系数是4，即计算市销率的分母是一季报的主营收入\*4； |
| `right_type`    | int      | 加权方式，具体取值如下:                                                                              |
| `stype`         | int      | 股票类型，具体取值如下:                                                                              |
| `sample_select` | int      | 样本股选择，具体取值如下:                                                                            |
| `eps_criterion` | float    | 绩差股标准，和参数SampleSelect结合使用                                                               |

返回：float

### 示例

范例01：假设构建了用户板块mybk（此处以沪深300的成分股代替）

```tsl
// 假设构建了用户板块mybk（此处以沪深300的成分股代替）
// 计算mybk板块2011年3月15日的按总股本加权的市销率
EndT := inttodate(20110315);
setsysparam(pn_date(), EndT);
stockArr := getbkbydate('SH000300', EndT);
savebk('mybk', '新建分类', stockArr);
SetSysParam(pn_bk(), 'mybk');
return BK_PMI2(EndT, 20101231, 0, 0, 0, 0);
// 输出：1.62
```

## `bk_pmi5(end_t, right_type, stype, sample_select, eps_criterion, right_method)`

声明：function

计算板块指定日市销率(复合)

<!-- tags: 金融 板块 估值指标 计算 求解 -->

| 参数            | 类型     | 说明                                   |
| --------------- | -------- | -------------------------------------- |
| `end_t`         | datetime | 指定日期                               |
| `right_type`    | int      | 加权方式，具体取值如下:                |
| `stype`         | int      | 股票类型，具体取值如下:                |
| `sample_select` | int      | 样本股选择，具体取值如下:              |
| `eps_criterion` | float    | 绩差股标准，和参数SampleSelect结合使用 |
| `right_method`  | float    | 加权系数取值方式，具体取值如下:        |

返回：float

### 示例

范例01：假设构建了用户板块mybk（此处以沪深300的成分股代替）

```tsl
// 假设构建了用户板块mybk（此处以沪深300的成分股代替）
// 计算mybk板块2011年3月15日的按总股本加权的市销率
EndT := inttodate(20110315);
setsysparam(pn_date(), EndT);
stockArr := getbkbydate('SH000300', EndT);
savebk('mybk', '新建分类', stockArr);
SetSysParam(pn_bk(), 'mybk');
return BK_PMI5(EndT, 0, 0, 0, 0, 0);
// 输出：1.62
```

## `bk_pna(end_t, right_type, stype, sample_select, eps_criterion)`

声明：function

计算板块指定日市净率(上年末财务数据)

<!-- tags: 金融 板块 估值指标 计算 求解 -->

| 参数            | 类型     | 说明                                   |
| --------------- | -------- | -------------------------------------- |
| `end_t`         | datetime | 指定日期                               |
| `right_type`    | int      | 加权方式，具体取值如下:                |
| `stype`         | int      | 股票类型，具体取值如下:                |
| `sample_select` | int      | 样本股选择，具体取值如下:              |
| `eps_criterion` | float    | 绩差股标准，和参数SampleSelect结合使用 |

返回：float

### 示例

范例01：返回用户板块’mybk’于2011年3月15日按总股本加权的市净率

```tsl
EndT := inttodate(20110315);
setsysparam(pn_date(), EndT);
stockArr := getbkbydate('SH000300', EndT);
savebk('mybk', '新建分类', stockArr);
SetSysParam(pn_bk(), 'mybk');
return Bk_PNA(EndT, 0, 1, 0, 0);
// 输出：2.87
```

## `bk_pna12(end_t, right_type, stype, sample_select, eps_criterion)`

声明：function

计算板块指定日市净率(最近12个月)

<!-- tags: 金融 板块 估值指标 计算 求解 -->

| 参数            | 类型     | 说明                                   |
| --------------- | -------- | -------------------------------------- |
| `end_t`         | datetime | 指定日期                               |
| `right_type`    | int      | 加权方式，具体取值如下:                |
| `stype`         | int      | 股票类型，具体取值如下:                |
| `sample_select` | int      | 样本股选择，具体取值如下:              |
| `eps_criterion` | float    | 绩差股标准，和参数SampleSelect结合使用 |

返回：float

### 示例

范例01：假设构建了用户板块mybk（此处以沪深300的成分股代替）

```tsl
// 假设构建了用户板块mybk（此处以沪深300的成分股代替）
// 计算mybk板块2011年3月15日的按总股本加权的市净率
EndT := inttodate(20110315);
setsysparam(pn_date(), EndT);
stockArr := getbkbydate('SH000300', EndT);
savebk('mybk', '新建分类', stockArr);
SetSysParam(pn_bk(), 'mybk');
return BK_PNA12(EndT, 0, 0, 0, 0);
// 输出：2.52
```

## `bk_pna2(end_t, r_date, right_type, stype, sample_select, eps_criterion)`

声明：function

计算板块指定日市净率(指定财务数据)

<!-- tags: 金融 板块 估值指标 计算 求解 -->

| 参数            | 类型     | 说明                                   |
| --------------- | -------- | -------------------------------------- |
| `end_t`         | datetime | 指定日期                               |
| `r_date`        | int      | 指定报告期                             |
| `right_type`    | int      | 加权方式，具体取值如下:                |
| `stype`         | int      | 股票类型，具体取值如下:                |
| `sample_select` | int      | 样本股选择，具体取值如下:              |
| `eps_criterion` | float    | 绩差股标准，和参数SampleSelect结合使用 |

返回：float

### 示例

范例01：假设构建了用户板块mybk（此处以沪深300的成分股代替）

```tsl
// 假设构建了用户板块mybk（此处以沪深300的成分股代替）
// 计算mybk板块2011年3月15日的按总股本加权的市净率
EndT := inttodate(20110315);
setsysparam(pn_date(), EndT);
stockArr := getbkbydate('SH000300', EndT);
savebk('mybk', '新建分类', stockArr);
SetSysParam(pn_bk(), 'mybk');
return BK_PNA2(EndT, 20101231, 0, 0, 0, 0);
// 输出：2.36
```

## `stocksPCF2(stock_arr, end_t, r_date, right_type, stype, sample_select, eps_criterion)`

声明：function

计算一组股票指定日市现率

<!-- tags: 金融 板块 估值指标 计算 求解 -->

| 参数            | 类型     | 说明                                   |
| --------------- | -------- | -------------------------------------- |
| `stock_arr`     | array    | 一组股票                               |
| `end_t`         | datetime | 指定日期                               |
| `r_date`        | int      | 指定报告期，决定加权系数的值           |
| `right_type`    | int      | 加权方式，具体取值如下:                |
| `stype`         | int      | 股票类型，具体取值如下:                |
| `sample_select` | int      | 样本股选择，具体取值如下:              |
| `eps_criterion` | float    | 绩差股标准，和参数SampleSelect结合使用 |

返回：float

### 示例

范例01：调用函数

```tsl
EndT := inttodate(20110315);
setsysparam(pn_date(), EndT);
Stks := getbkbydate('SH000300', EndT);
return StocksPCF2(stks, EndT, 20101231, 4, 1, 0, 0);
```

## `stocksPe2(end_t, r_date, right_type, stype, sample_select, eps_criterion)`

声明：function

计算一组股票指定日市盈率(指定财务数据加权)

<!-- tags: 金融 板块 估值指标 计算 求解 -->

| 参数            | 类型     | 说明                                   |
| --------------- | -------- | -------------------------------------- |
| `end_t`         | datetime | 指定日期                               |
| `r_date`        | int      | 指定报告期，决定加权系数的值           |
| `right_type`    | int      | 加权方式，具体取值如下:                |
| `stype`         | int      | 股票类型，具体取值如下:                |
| `sample_select` | int      | 样本股选择，具体取值如下:              |
| `eps_criterion` | float    | 绩差股标准，和参数SampleSelect结合使用 |

返回：float

### 示例

范例01：调用函数

```tsl
EndT := inttodate(20110315);
setsysparam(pn_date(), EndT);
Stks := getbkbydate('SH000300', EndT);
return StocksPE2(Stks, EndT, 20101231, 0, 0, 0, 0);
```

## `stocksPePbPmipcf_call(stock_arr, end_t, right_type, stype, sample_select, eps_criterion, type)`

声明：function

计算一组股票指定日市盈率、市净率、市销率、市现率(上年末财务数据)

<!-- tags: 金融 板块 估值指标 计算 求解 -->

| 参数            | 类型     | 说明                                   |
| --------------- | -------- | -------------------------------------- |
| `stock_arr`     | array    | 一组股票                               |
| `end_t`         | datetime | 指定日期                               |
| `right_type`    | int      | 加权方式，具体取值如下:                |
| `stype`         | int      | 股票类型，具体取值如下:                |
| `sample_select` | int      | 样本股选择，具体取值如下:              |
| `eps_criterion` | float    | 绩差股标准，和参数SampleSelect结合使用 |
| `type`          | int      | 指标类型，具体取值如下:                |

返回：float

### 示例

范例01：返回沪深3002010年3月15日的按总股本加权市盈率

```tsl
EndT := inttodate(20110315);
setsysparam(pn_date(), EndT);
Stks := getbkbydate('SH000300', EndT);
Return StocksPEPBPMIPCF_Call(Stks, EndT, 0, 0, 0, 0, 0);
// 输出：14.87
```

## `stocksPePbPmipna2_call(stock_arr, end_t, r_date, right_type, stype, sample_select, eps_criterion, type)`

声明：function

计算一组股票指定日市盈率、市净率、市销率、市现率(指定财务数据加权)

<!-- tags: 金融 板块 估值指标 计算 求解 -->

| 参数            | 类型     | 说明                                   |
| --------------- | -------- | -------------------------------------- |
| `stock_arr`     | array    | 一组股票                               |
| `end_t`         | datetime | 指定日期                               |
| `r_date`        | int      | 指定报告期，决定加权系数的值           |
| `right_type`    | int      | 加权方式，具体取值如下:                |
| `stype`         | int      | 股票类型，具体取值如下:                |
| `sample_select` | int      | 样本股选择，具体取值如下:              |
| `eps_criterion` | float    | 绩差股标准，和参数SampleSelect结合使用 |
| `type`          | int      | 指标类型，具体取值如下:                |

返回：float

### 示例

范例01：返回沪深300成分股的市销率，个股按总股本加权

```tsl
EndT := inttodate(20110315);
setsysparam(pn_date(), EndT);
Stks := getbkbydate('SH000300', EndT);
Return StocksPEPBPMIPNA2_Call(Stks, EndT, 20101231, 0, 0, 0, 0, 2);
// 输出：1.62
```

## `stocksPePbPmipna5_call(stock_arr, end_t, right_type, stype, sample_select, eps_criterion, type, right_method)`

声明：function

计算一组股票在指定日的市盈率、市净率、市销率或市现率，并按报告期规则返回六种加权样本结果

<!-- tags: 金融 板块 估值 市盈率 市净率 市销率 市现率 加权 -->

| 参数            | 类型     | 说明                                                     |
| --------------- | -------- | -------------------------------------------------------- |
| `stock_arr`     | array    | 证券代码数组                                             |
| `end_t`         | datetime | 指定日期                                                 |
| `right_type`    | integer  | 加权方式占位参数，结果同时包含总股本和流通股本加权数据   |
| `stype`         | integer  | 股票类型，`0` 全部、`1` A 股、`2` B 股                   |
| `sample_select` | integer  | 样本选择，`0` 全部、`1` 剔除亏损、`2` 剔除绩差           |
| `eps_criterion` | real     | 绩差股每股收益阈值                                       |
| `type`          | integer  | 指标类型，`0` 市盈率、`1` 市净率、`2` 市销率、`3` 市现率 |
| `right_method`  | integer  | 报告期规则，`0` 上年度、`1` 最新、`2` 中报后使用最新     |

返回：array

### 示例

范例01：计算沪深 300 成分股的加权市盈率

```tsl
end_t := 20110315T;
setSysParam(pn_date(), end_t);
stocks := getBkByDate("SH000300", end_t);
return stocksPePbPmipna5_call(
    stocks, end_t, 0, 0, 0, 0, 2, 0);
// 输出：array(1.62,1.61,1.61,1.58,1.58,1.58)
```

## `stocksPMI2(stock_arr, end_t, r_date, right_type, stype, sample_select, eps_criterion)`

声明：function

计算一组股票指定日市销率(指定财务数据加权)，个股市销率是EndT时点的总市值/(RDate点的主营收入\*加权系数)，再对个股市销率加权得到板块市销率

<!-- tags: 金融 板块 估值指标 计算 求解 -->

| 参数            | 类型     | 说明                                   |
| --------------- | -------- | -------------------------------------- |
| `stock_arr`     | array    | 一组股票                               |
| `end_t`         | datetime | 指定日期                               |
| `r_date`        | int      | 指定报告期，决定加权系数的值           |
| `right_type`    | int      | 加权方式，具体取值如下:                |
| `stype`         | int      | 股票类型，具体取值如下:                |
| `sample_select` | int      | 样本股选择，具体取值如下:              |
| `eps_criterion` | float    | 绩差股标准，和参数SampleSelect结合使用 |

返回：float

### 示例

范例01：调用函数

```tsl
EndT := inttodate(20110315);
setsysparam(pn_date(), EndT);
Stks := getbkbydate('SH000300', EndT);
return StocksPMI2(Stks, EndT, 20101231, 0, 0, 0, 0);
```

## `stocksPNA2(stock_arr, end_t, r_date, right_type, stype, sample_select, eps_criterion)`

声明：function

计算一组股票指定日市净率

<!-- tags: 金融 板块 估值指标 计算 求解 -->

| 参数            | 类型     | 说明                                   |
| --------------- | -------- | -------------------------------------- |
| `stock_arr`     | array    | 一组股票                               |
| `end_t`         | datetime | 指定日期                               |
| `r_date`        | int      | 指定报告期                             |
| `right_type`    | int      | 加权方式，具体取值如下:                |
| `stype`         | int      | 股票类型，具体取值如下:                |
| `sample_select` | int      | 样本股选择，具体取值如下:              |
| `eps_criterion` | float    | 绩差股标准，和参数SampleSelect结合使用 |

返回：float

### 示例

范例01：调用函数

```tsl
EndT := inttodate(20110315);
setsysparam(pn_date(), EndT);
Stks := getbkbydate('SH000300', EndT);
return StocksPNA2(Stks, EndT, 20101231, 0, 0, 0, 0);
```
