"""Synthetic loss-tail teaching example. Not market data or a backtest."""
import json
import math
from pathlib import Path

ROOT = Path(__file__).resolve().parent if "__file__" in globals() else Path.cwd()


def reproduce():
    source = json.loads((ROOT / "source.json").read_text(encoding="utf-8"))
    results = {}
    for name in ("balanced", "concentrated"):
        losses = sorted(source[name])
        count = int(len(losses) * source["tail_percent"] / 100)
        mean = sum(losses) / len(losses)
        cvar = sum(losses[-count:]) / count
        # Empirical left quantile, immediately before the selected upper tail.
        var = losses[len(losses) - count - 1]
        results[name] = {"mean": mean, "var": var, "cvar": cvar,
                         "objective": mean + source["penalty"] * cvar}
    return results


if __name__ == "__main__":
    result = reproduce()
    expected = json.loads((ROOT / "expected.json").read_text(encoding="utf-8"))
    for name, values in expected.items():
        for key, value in values.items():
            assert math.isclose(result[name][key], value, rel_tol=0, abs_tol=1e-12), (name, key)
    print(json.dumps(result, indent=2))
    print("PASS: synthetic teaching example checked; no trading policy or backtest reproduced.")
