# 策略评价 / 交叉验证

## `tsBacktestOverfitProb`

声明：class

基于收益率的回测过拟合概率计算框架

<!-- tags: 回报率 投资收益 历史模拟 策略验证 过拟合 交叉验证 策略检验 -->

### `FData`

声明：field

收益率数据

可见性：`public`

类型：array

### `FnSub`

声明：field

划分子集个数

可见性：`public`

类型：integer

### `FEvalIndex`

声明：field

评价指标

可见性：`public`

类型：integer

### `FSubData`

声明：field

划分出来的子集

可见性：`public`

类型：array

### `FCombinations`

声明：field

生成的子集组合

可见性：`public`

类型：array

### `FRelaRank`

声明：field

相对排名

可见性：`public`

类型：array

### `FEvaluateIS`

声明：field

训练集评价指标

可见性：`public`

类型：array

### `FEvaluateOOS`

声明：field

测试集评价指标

可见性：`public`

类型：array

### `FisMaxOOS`

声明：field

训练集最优策略在训练集和测试集的评价指标

可见性：`public`

类型：array

### `FRetOOS`

声明：field

训练集最优策略在测试集的累计收益率

可见性：`public`

类型：array

### `create()`

声明：function

初始化属性并设置默认值

<!-- tags: 配置 创建 -->

可见性：`public`

### `Main()`

声明：function

执行主流程并计算回测过拟合概率

<!-- tags: 调用 历史模拟 策略验证 -->

可见性：`public`

返回：real

### `UserDefined_Eval(data)`

声明：function

计算用户自定义评价指标

<!-- tags: 计算 自定义指标 策略评价 -->

可见性：`public`

| 参数   | 类型  | 说明                         |
| ------ | ----- | ---------------------------- |
| `data` | array | 待评价的收益率或策略表现数据 |

返回：array

### `GetTrainTest(comb)`

声明：function

根据子集索引组合获取训练集和测试集

<!-- tags: 查询 训练集 测试集 子集组合 交叉验证 -->

可见性：`public`

| 参数   | 类型  | 说明                         |
| ------ | ----- | ---------------------------- |
| `comb` | array | 训练集与测试集的子集索引组合 |

返回：array

### `GetPerformDown()`

声明：function

获取性能下降程度系数及相关数据

<!-- tags: 查询 性能下降 过拟合 回归结果 -->

可见性：`public`

返回：array

### `GetLossProb()`

声明：function

获取损失概率

<!-- tags: 查询 损失概率 过拟合 -->

可见性：`public`

返回：real

### `GetSD()`

声明：function

获取随机优势及相关数据

<!-- tags: 查询 随机优势 策略比较 -->

可见性：`public`

返回：array
