API

run_backtest

run_backtest(signal, prices, *, kind, config=None)

根据 kind 分发到对应评估路径:

由于最低交易费用需要 initial_capital,实际使用时需要提供 config

run_weight_backtest

run_weight_backtest(weights, prices, *, config)

把 DataFrame 解释为组合权重并执行回测,返回 BacktestResult

重要字段包括 weightsasset_returnsgross_returnsnet_returns、累计收益、组合价值、换手、交易成本和 summary

run_factor_evaluation

run_factor_evaluation(factor, prices, *, config)

把 DataFrame 解释为因子分数并执行评估,返回 FactorEvaluationResult

重要字段包括 factorforward_returnsicic_meanic_stdicir、分位数组合收益、top-minus-bottom、TOP N 权重和 TOP N 回测结果。

Config

BacktestConfig(
    initial_capital=1_000_000,
    transaction_cost=TransactionCostConfig(rate=0.00015, min_fee=5.0),
    annualization=252,
    ic_method="spearman",
    quantiles=5,
    top_n=50,
)

initial_capital 必须为正数。ic_method 可以是 "spearman""pearson"

DataFrame 边界

第一个参数必须是数值型 pandas.DataFrame。行是日期,列是资产,值是权重或因子分数。