Files
playbook/skills/tsl-api-reference/references/codegen/module/tsbf-regression-analysis.md
T

321 lines
12 KiB
Markdown

# 净值归因 / 因素回归
## `TSBF_RegressionAnalysis`
声明:class
基于收益率的因素回归分析框架
<!-- tags: 统计 回报率 投资收益 拟合 净值分析 因素回归 收益分解 -->
### `fifConstant`
声明:field
是否包含常数项,true 表示包含 true
可见性:`public`
类型:bool
### `fAlpha`
声明:field
显著性水平 0.05
可见性:`public`
类型:real
### `fifPrincomp`
声明:field
是否主成分回归,true 表示主成分回归 false
可见性:`public`
类型:bool
### `fifLimit`
声明:field
是否约束系数,true 表示约束系数 false
可见性:`public`
类型:bool
### `fa`
声明:field
nil 表示无不等式约束,空数组表示空的不等式约束,如果有不等
可见性:`public`
类型:array
### `main()`
声明:function
回归主函数,得到回归结果,用于后续的分析
<!-- tags: 执行 因素回归 回归分析 -->
可见性:`public`
返回:array
### `rarSquare()`
声明:function
获取回归的 R 方,必须要在运行 Main 函数后调用
<!-- tags: 查询 执行 拟合 拟合优度 决定系数 -->
可见性:`public`
返回:real
### `ravif()`
声明:function
获取原始自变量的方差膨胀系数
<!-- tags: 查询 方差膨胀因子 多重共线性 回归诊断 -->
可见性:`public`
返回:array
### `raLeverReturnAttri(if_tree_id)`
声明:function
区间分层收益归因统计,包含上层总收益分解与下层因子收益贡献分解
<!-- tags: 汇总 回报率 投资收益 贡献分析 影响度 因子分析 因子指标 -->
可见性:`public`
| 参数 | 类型 | 说明 |
| ------------ | ---- | ----------------------------------------------------------------------------------------- |
| `if_tree_id` | bool | 是否显示树形 ID,布尔类型,默认为否,包含字段"层级"、"id"、"pid",常用于 web 做树形分解图 |
返回:array
### `raSummaryReturnDetail(r_type)`
声明:function
每期总收益分解详情
<!-- tags: 查询 总收益分解 每期详情 -->
可见性:`public`
| 参数 | 类型 | 说明 |
| -------- | ------- | -------------------------------------------------------------------------------- |
| `r_type` | integer | 返回类型,整型 取值 含义 0(默认) 返回每期收益贡献(%) 1 返回每期累计收益贡献(%) |
返回:array
### `raSummaryReturnAttri()`
声明:function
区间总收益归因统计,多期收益归因,统计每个分解项对区间累计总收益的贡献
<!-- tags: 汇总 收益分解 贡献分析 影响度 -->
可见性:`public`
返回:array
### `raFactorContriDetail(factor_lever, r_type)`
声明:function
每期因子贡献详情,因子贡献=回归系数*因子收益
<!-- tags: 回报率 投资收益 影响度 收益分解 因子分析 因子指标 拟合 -->
可见性:`public`
| 参数 | 类型 | 说明 |
| -------------- | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `factor_lever` | integer | 因子层级,整型,取值如下,FactorLever 也可以为一维数组,如 array(1,2),表示 返回一级和二级大类因子 取值 含义 返回字段 备注 -1 返回所有层级因子 所有不同层级因子名称 0(默认) 返回小类因子 小类因子名称 FX 列名 1 返回一级大类因子 一级大类因子名称 FFactorConfig 设置相关, 见"大类因子"或"因子分类"字段 2 返回二级大类因子 二级大类因子名称 …… |
| `r_type` | integer | 返回类型,0 表示返回每期收益贡献(%),1 表示返回每期累计收益贡献(%) |
返回:array
### `raFactorContriAttri(factor_lever)`
声明:function
区间因子贡献统计,各小类或大类因子对区间累计总收益的收益贡献
<!-- tags: 汇总 收益分解 贡献分析 影响度 因子分析 因子指标 -->
可见性:`public`
| 参数 | 类型 | 说明 |
| -------------- | ------- | -------------------------------------------------- |
| `factor_lever` | integer | 因子层级,整型,详见 RAFactorContriDetail 参数说明 |
返回:array
### `raLeverRiskAttri(if_tree_id)`
声明:function
区间分层风险归因统计,包含上层总风险分解与下层因子风险分解
<!-- tags: 汇总 收益分解 贡献分析 因子分析 因子指标 风险管理 风控 -->
可见性:`public`
| 参数 | 类型 | 说明 |
| ------------ | ---- | ----------------------------------------------------------------------------------------- |
| `if_tree_id` | bool | 是否显示树形 ID,布尔类型,默认为否,包含字段"层级"、"id"、"pid",常用于 web 做树形分解图 |
返回:array
### `raSummaryRiskAttri()`
声明:function
区间总风险归因统计,统计各分解项对总风险的风险贡献
<!-- tags: 汇总 收益分解 贡献分析 影响度 风险管理 风控 -->
可见性:`public`
返回:array
### `raFactorRiskAttri(factor_lever)`
声明:function
区间因子风险归因统计,统计小类或大类因子对总风险的风险贡献
<!-- tags: 汇总 收益分解 贡献分析 影响度 因子分析 因子指标 风险管理 风控 -->
可见性:`public`
| 参数 | 类型 | 说明 |
| -------------- | ------- | -------------------------------------------------- |
| `factor_lever` | integer | 因子层级,整型,详见 RAFactorContriDetail 参数说明 |
返回:array
### `raRelativeImportance(method, option)`
声明:function
相对重要性分析,检验各自变量对回归 R 方的贡献度
<!-- tags: 检查 判定 验证 统计 影响度 收益分解 拟合 拟合优度 -->
可见性:`public`
| 参数 | 类型 | 说明 |
| -------- | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `method` | integer | Integer,整数,表示相对重要性分析的算法类别  0:表示边际 R2 法,调用公用函数 Regress_Domin_Marginal(默认)  1:表示 R2 公式分解法,调用公用函数 Regress_Domin_Marginal |
| `option` | integer | 可选。Integer,整数,在 method=0 时有用,是 Regress_Domin_Marginal 的可选参数  0:利用完整回归中剔除其他变量的贡献度计算(默认)  1:利用包含指定变量回归中贡献度的均值计算 |
返回:array
### `raReturnCorrel(if_y)`
声明:function
收益相关系数
<!-- tags: 查询 收益相关系数 相关性 -->
可见性:`public`
| 参数 | 类型 | 说明 |
| ------ | ---- | --------------------------------------------------------------------------------------------------------------------------------------------------- |
| `if_y` | bool | 是否包含因变量 Y,布尔类型,为真表示计算 Y 以及各自变量因子收益间的相关系数(因 变量 Y 的名称为"总收益"),为假表示仅计算自变量因子收益间的相关系数 |
返回:array
### `raSelectAlphaDetail()`
声明:function
获取每期选股 Alpha 详情
<!-- tags: 查询 选择 筛选 超额收益 主动收益 -->
可见性:`public`
返回:array
### `raStyleReturnDetail()`
声明:function
获取每期风格收益详情
<!-- tags: 查询 风格因子 投资风格 -->
可见性:`public`
返回:array
### `raReturnContribute(dtype)`
声明:function
获取风格因子收益贡献分解结果;必须在 Main 执行后调用
<!-- tags: 查询 回报率 投资收益 影响度 收益分解 因子分析 因子指标 投资风格 -->
可见性:`public`
| 参数 | 类型 | 说明 |
| ------- | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `dtype` | integer | Integer,代表返回的数据类型 取值 结果说明 算法说明 0(默认) 最后一天的收益贡献分解结果 最后一天各风格收益与所对应的回归系数相乘 1 区间每一天的收益贡献分解结果 区间每一天的各风格收益与对应的回归系数相乘 2 区间累计收益率的收益贡献分解结果 区间各累计风格收益率与对应的回归系数相乘 |
返回:array
### `raRiskContribute()`
声明:function
按边际风险法获取风格因子风险贡献分解结果;必须在 Main 执行后调用
<!-- tags: 查询 影响度 收益分解 因子分析 因子指标 风险管理 风控 投资风格 -->
可见性:`public`
返回:array
### `raRelaImportance(x, y, method, option)`
声明:function
获取相对重要性分析结果
<!-- tags: 查询 相对重要性 变量贡献 回归分析 -->
可见性:`public`
| 参数 | 类型 | 说明 |
| -------- | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `x` | array | Array,二维数组,自变量数据,即风格收益数据 |
| `y` | array | Array,一维数组,因变量数据,即收益率数据 |
| `method` | integer | Integer,整数,表示相对重要性分析的算法类别  0:表示边际 R2 法,调用公用函数 Regress_Domin_Marginal(默认)  1:表示 R2 公式分解法,调用公用函数 Regress_Domin_Marginal |
| `option` | integer | 可选。Integer,整数,在 method=0 时有用,是 Regress_Domin_Marginal 的可选参数  0:利用完整回归中剔除其他变量的贡献度计算(默认)  1:利用包含指定变量回归中贡献度的均值计算 |
返回:array