# 应用专题 / 衍生品分析 / 期权品种指标与筛选

## `ts_Options_Screening`

声明：class

按期权品种、类型、到期月份和价值状态筛选同一品种的期权合约

<!-- tags: 期权筛选 期权合约 衍生品 -->

### `FEndT`

声明：field

筛选日期，默认 `today()`

可见性：`public`

类型：date

### `FOptionArr`

声明：field

初始期权列表；可直接设置或通过重写 `GetOptionArr` 提供

可见性：`public`

类型：array

### `FOPPZID`

声明：field

期权品种或标的代码；空字符串表示不按品种筛选

可见性：`public`

类型：string

### `FOPType`

声明：field

期权类型；0 为全部，1 为认购，2 为认沽

可见性：`public`

类型：integer

### `FOPMaturityDate`

声明：field

到期月份序号；0 为全部，1 为近月，2 为次近月，依次类推

可见性：`public`

类型：integer

### `FOPValueState`

声明：field

期权价值状态或价值状态区间，定义为行权价与标的资产价格之比

可见性：`public`

类型：real\|array

### `FValueStateMethod`

声明：field

价值状态邻近选择方式；0 为整体最邻近，1 为前后邻近

可见性：`public`

类型：integer

### `GetOptionArr()`

声明：function

返回初始期权列表；可重写以替代 `FOptionArr`

可见性：`public`

返回：array

### `Main()`

声明：function

按照当前字段配置执行期权筛选

可见性：`public`

返回：nil

### `GetScreenedOptionArr()`

声明：function

返回筛选后的期权代码列表

可见性：`public`

返回：array

### `GetOptionData(if_screened)`

声明：function

返回期权类型、到期日和价值状态等详情

可见性：`public`

| 参数          | 类型    | 说明                                        |
| ------------- | ------- | ------------------------------------------- |
| `if_screened` | boolean | true 返回筛选后数据，false 返回初始期权数据 |

返回：array

## `op_underlying_hv(n)`

声明：function

计算期权标的资产的历史波动率

<!-- tags: 期权 标的资产 历史波动率 -->

| 参数 | 类型    | 说明         |
| ---- | ------- | ------------ |
| `n`  | integer | 历史计算天数 |

返回：real
