コード例 #1
0
ファイル: conftest.py プロジェクト: yunbosjtu/allopy
def cvar_cubes():
    res = []
    for s in scenarios:
        data = fetch_opt_data_test_file(f"portfolio-regret-{s}-cvar")
        if data is None:
            data = _derive_main_cube(s)
        res.append(data)
    return res
コード例 #2
0
def cvar_data() -> OptData:
    data = fetch_opt_data_test_file(f"active-cvar")
    if data is None:
        data = OptData(load_monte_carlo(total=True)) \
            .cut_by_horizon(3) \
            .calibrate_data(sd=adj.Vol) \
            .alter_frequency('quarterly') \
            .aggregate_assets(agg_weights)

    return data
コード例 #3
0
ファイル: conftest.py プロジェクト: yunbosjtu/allopy
def cvar_cubes():
    data = fetch_opt_data_test_file("active-cvar")
    if data is not None:
        return [data] * len(scenarios)

    cube = load_monte_carlo(total=True)

    return [
        OptData(cube, 'monthly').cut_by_horizon(3).calibrate_data(sd=adj.Vol).
        alter_frequency('quarterly').aggregate_assets(agg_weights)
    ] * len(scenarios)
コード例 #4
0
ファイル: conftest.py プロジェクト: yunbosjtu/allopy
def main_cubes():
    res = []
    for s in scenarios:
        d = fetch_opt_data_test_file(f"active-{s}")
        if d is None:
            break
        res.append(d)
    else:
        return res

    with ProcessPoolExecutor(max(cpu_count() - 1, 1)) as P:
        res = P.map(_derive_main_cube, scenarios)

    return list(res)
コード例 #5
0
def scenario_data_map() -> Dict[str, OptData]:
    res = {}

    for s in scenarios:
        data = fetch_opt_data_test_file(f"active-{s}")
        if data is None:
            data = OptData(load_monte_carlo(total=True)) \
                .calibrate_data(adj[s], adj.Vol) \
                .alter_frequency('quarter') \
                .aggregate_assets(agg_weights) \
                .set_cov_mat(cov_mat)

        res[s] = data

    return res