Robust API
robust.robust
RobustTest
- class RobustTest(fund, factor)
因子增量检验类,基于 Harvey & Liu (2021) “Lucky Factors”。
- Parameters:
fund – 基金/组合收益序列(pd.Series)
factor – 因子数据(pd.DataFrame)
属性
- X: pd.DataFrame
因子数据
- y: pd.Series
资产收益数据
- OX: pd.DataFrame
正交化后的因子数据
- T: pd.DataFrame
t统计量
方法
- neu()
去相关(正交化)。对每个因子进行单因子回归,得到正交化残差。
- Returns:
(OX, T) 元组
- bootstrap_once(n_bootstraps=1000)
Bootstrap检验。重复抽样计算最大统计量分布。
- Parameters:
n_bootstraps – 重采样次数
- Returns:
(eff_fct_name, modifd_P, max_statistic_pdf) 元组
- work()
完整工作流程。迭代执行去相关和Bootstrap直到收敛。
- static create_sample_dataframes()
创建示例数据集用于测试。
- Returns:
(asset_returns, factor_values) 元组
辅助函数
- panel(X, y)
面板回归,单测alpha。
- Parameters:
X – 因子数据
y – 收益数据
- Returns:
(B, OX, T, df_params) 元组
- bootstrap_fake_fund(X, B, OX, T, n_bootstraps=1000)
Bootstrap检验伪基金。
- Returns:
(modifd_P, max_statistic_pdf) 元组
- parse_name_dates(s)
解析基金经理任期字符串。
- Parameters:
s – 格式如 ‘姓名(开始日期-结束日期)’
- Returns:
包含 name, start_date, end_date 的字典
- get_interval(df, start=None, end=None)
获取DataFrame的时间区间切片。
- gen_date_pairs(start_time, end_time, interval='1Y')
生成滚动时间段对。
- Parameters:
start_time – 开始时间
end_time – 结束时间
interval – 时间间隔
- Returns:
时间戳对列表