import sys; sys.path.insert(0, "/root/fwa1")
from sim import *
days = ["2026-09-30"] + ["2026-10-0%d" % d for d in range(1, 5)]
E = load_edge(days)
lab = {x["pool"]: x for x in load_labels()}
res = collections.defaultdict(list)
for p, r in E.items():
    if lab.get(p, {}).get("crew_root") not in (A, BC): continue
    c = prep(r)
    if not c: continue
    p0, e = entry(c)
    if not p0: continue
    for name, extra in (("as backtested", None), ("pulled 15s after our buy", 150), ("pulled 30s after our buy", 300)):
        cc = dict(c)
        if extra is not None:
            fp = e + 20 + extra
            if cc["pull"] is None or cc["pull"] > fp: cc["pull"] = fp
        for k in ("all2x", "all3x", "half3_10", "all10x", "t30s"):
            v = run(cc, PLANS[k])
            if v: res[(name, k)].append(v[0])
for k, v in sorted(res.items()): print(k, len(v), "%+.0f%%" % (100 * sum(v) / len(v)))
