# 基金 / 基金评估

## `fundCalmarRatio(beg_t, end_t, data_select, cycle)`

基金Calmar。与系统股票pn_stock()、当前时间pn_date()相关。

| 参数          | 类型     | 说明                           |
| ------------- | -------- | ------------------------------ |
| `beg_t`       | datetime | 日期类型，开始日期；           |
| `end_t`       | datetime | 日期类型，截止日期；           |
| `data_select` | int      | 用户自定义类型，所选取的数据； |
| `cycle`       | string   | 周期类型，周期                 |

返回：float

### 示例

```tsl
setsysparam(pn_stock(),"OF162714");
Return FundCalmarRatio(20160101T,20180903T,0,cy_day());
```

## `fundOmega(index_id, beg_t, end_t, data_select, cycle)`

基金Omega比率。与系统股票pn_stock()、当前时间pn_date()相关。

| 参数          | 类型     | 说明                           |
| ------------- | -------- | ------------------------------ |
| `index_id`    | string   | 指数类型，指数代码；           |
| `beg_t`       | datetime | 日期类型，开始日期；           |
| `end_t`       | datetime | 日期类型，截止日期；           |
| `data_select` | int      | 用户自定义类型，所选取的数据； |
| `cycle`       | string   | 周期类型，周期                 |

返回：float

## `fundRachev(beg_t, end_t, rf, data_select, cycle)`

基金Rachev比率。与系统股票pn_stock()、当前时间pn_date()相关。

| 参数          | 类型     | 说明                           |
| ------------- | -------- | ------------------------------ |
| `beg_t`       | datetime | 日期类型，开始日期；           |
| `end_t`       | datetime | 日期类型，截止日期；           |
| `rf`          | float    | 实数类型，无风险年收益率(%)；  |
| `data_select` | int      | 用户自定义类型，所选取的数据； |
| `cycle`       | string   | 周期类型，周期                 |

返回：float

### 示例

```tsl
setsysparam(pn_stock(),"OF162714");
Return FundRachev(20160101T,20180903T,3,0,cy_day());
```

## `fundSortinoRatio(beg_t, end_t, rf, data_select, annual, cycle)`

基金索丁诺比率。与系统股票pn_stock()、当前时间pn_date()相关。

| 参数          | 类型     | 说明                           |
| ------------- | -------- | ------------------------------ |
| `beg_t`       | DateTime | 日期类型，开始日期；           |
| `end_t`       | DateTime | 日期类型，截止日期；           |
| `rf`          | Real     | 实数类型，无风险年收益率(%)；  |
| `data_select` | Integer  | 用户自定义类型，所选取的数据； |
| `annual`      | Boolean  | 真假类型，是否年化；           |
| `cycle`       | String   | 周期类型，周期                 |

返回：Real

### 示例

```tsl
//OF162714，2016年1月1日到2018年9月3日，无风险年收益率为3，年化的日线净值数据的索丁诺比率。
setSysParam(pn_stock(),"OF162714");
return fundSortinoRatio(20160101T,20180903T,3,0,1,cy_day());
//结果：-0.31887
```

## `fundAppraisalRatio(index_id, beg_t, end_t, data_select)`

估价比率(估价比率=α系数/残差)，也即为信息比率，与系统证券pn_stock()相关。

| 参数          | 类型    | 说明         |
| ------------- | ------- | ------------ |
| `index_id`    | String  | 指数代码     |
| `beg_t`       | Date    | 开始日期     |
| `end_t`       | Date    | 截止日期     |
| `data_select` | Integer | 所选取的数据 |

返回：Real

### 示例

```tsl
//取华安创新2003年10月10日到2012年10月19日之间的估价比率
setSysParam(pn_stock(),'OF040001');
ReturnFundAppraisalRatio("SH000001",intToDate(20031010),intToDate(20121022),0);
//结果：0.03157
```

## `fundJensenMeasure(index_id, beg_t, end_t, rf, data_select)`

返回Jense指数(与系统股票pn_stock()相关)

| 参数          | 类型    | 说明              |
| ------------- | ------- | ----------------- |
| `index_id`    | String  | 指数代码          |
| `beg_t`       | Date    | 开始日期          |
| `end_t`       | Date    | 截止日期          |
| `rf`          | Real    | 无风险年收益率(%) |
| `data_select` | Integer | 所选取的数据      |

返回：Real

### 示例

```tsl
//取华安创新2003年03月14日到2012年10月19日之间的Jense指数
setSysParam(pn_stock(),'OF040001');
return fundJensenMeasure("SH000001",intToDate(20030314),intToDate(20121019),1.98,0);
//结果：0.03575
```

## `fundSharpMeasure(beg_t, end_t, rf, data_select)`

返回Sharp指数(与系统证券pn_stock()相关)

| 参数          | 类型    | 说明              |
| ------------- | ------- | ----------------- |
| `beg_t`       | Date    | 开始日期          |
| `end_t`       | Date    | 截止日期          |
| `rf`          | Real    | 无风险年收益率(%) |
| `data_select` | Integer | 所选取的数据      |

返回：Real

### 示例

```tsl
//取华安创新2003年3月14日到2012年10月19日之间的Sharp指数
setSysParam(pn_stock(),'OF040001');
ReturnFundSharpMeasure(intToDate(20030314),intToDate(20121019),2,0);
//结果：0.04014
```

## `fundTreynorMeasure(index_id, beg_t, end_t, rf, data_select)`

返回Treynor指数(与系统股票pn_stock()相关)

| 参数          | 类型    | 说明              |
| ------------- | ------- | ----------------- |
| `index_id`    | String  | 指数代码          |
| `beg_t`       | Date    | 开始日期          |
| `end_t`       | Date    | 截止日期          |
| `rf`          | Real    | 无风险年收益率(%) |
| `data_select` | Integer | 所选取的数据      |

返回：Real

### 示例

```tsl
//取华安创新2003年03月14日到2012年10月19日之间的Treynor指数
setSysParam(pn_stock(),'OF040001');
return fundTreynorMeasure("SH000001",intToDate(20030314),intToDate(20121019),1.98,0);
//结果：0.07722
```

## `fundMeasure(index_id, beg_t, end_t, rf, data_select)`

返回基金评估常用的指标。只支持日线与周线，若当前基金净值是按周公布的，计算指标包括以下等：(Rp,Rm,Alpha,Beta,Std,SharpMeasure,JensenMeasure,TreynorMeasure,AppraisalRatio,Corr,…)

| 参数          | 类型    | 说明              |
| ------------- | ------- | ----------------- |
| `index_id`    | String  | 指数代码          |
| `beg_t`       | Date    | 开始日期          |
| `end_t`       | Date    | 截止日期          |
| `rf`          | Real    | 无风险年收益率(%) |
| `data_select` | Integer | 所选取的数据      |

返回：Array

### 示例

```tsl
//取华安创新2012年1月21日到2012年5月21日之间的常用指标
setSysParam(pn_stock(),'OF040001');
setSysParam(pn_cycle(),cy_day());//设置当前周期为日线
return fundMeasure("SH000001",intToDate(20120121),intToDate(20120521),14,0);
//结果：
//取东方红睿元三年定期开放2021年1月21日到2021年5月21日之间的常用指标
setSysParam(pn_stock(),'OF000970'); //净值按周线公布
setSysParam(pn_cycle(),cy_week()); //设置当前周期为周线
return fundMeasure("SH000001",intToDate(20210121),intToDate(20210521),14,0);
返回（不完整截图）：
```

## `userDefineIndex(stock_arr, beg_t, end_t, rf, use_rf)`

用户自定义指数的收益率序列，与系统周期pn_cycle()相关。

| 参数        | 类型    | 说明                  |
| ----------- | ------- | --------------------- |
| `stock_arr` | Array   | 指数加权数据,例子如下 |
| `beg_t`     | Date    | 开始日期              |
| `end_t`     | Date    | 截止日期              |
| `rf`        | Real    | 无风险年收益率(%)     |
| `use_rf`    | Boolean | 考虑无风险收益率      |

返回：Array

### 示例

```tsl
//取2012年10月10日到2012年10月19日的自定义指数收益率序列
setSysParam(pn_cycle(),cy_day());
return userDefineIndex(
array(
("代码":"SH600000","名称":"浦发银行","比例(%)":55.00),
("代码":"SH600001","名称":"邯郸钢铁","比例(%)":35.00),
("代码":"SZ000002","名称":"万科A","比例(%)":10.00)),
intToDate(20121010),intToDate(20121019),2,false);
结果：
```

## `zsRfRatio(rf)`

无风险收益率(折算)，与系统周期有关

| 参数 | 类型 | 说明              |
| ---- | ---- | ----------------- |
| `rf` | Real | 无风险年收益率(%) |

返回：Real

### 示例

```tsl
//获得折算后的无风险收益率
setSysParam(pn_cycle(),cy_day());
return zsRfRatio(2);
//结果：0.00833
```
