{
  "approach": "Diagnostic oracle only, no deployable candidate: replace only B constants lam_j and sig_j with each simulation's sampled jump_intensity and jump_sigma, including all uses in variance, probability transformation and quote sizing. Leave jump mean, diffusion, retail parameters, beliefs and market mechanics unchanged. Pinned simulator b244530ee2a6247b5f930830eeca9dd950da0e7e; default ChallengeConfig and ParameterVariance, 2000 steps. No finalist seeds used.",
  "tried": [
    {
      "name": "instrumentation outcome invariance",
      "method": "runner.SimulationEngine is replaced by a subclass that reads the sampled config and wraps only the strategy factory. B has no injection method; oracle has set_jump_parameters. No RNG call or config mutation. For seeds 235000..235019 compare entire asdict SimulationResult from original and instrumented engines for exact equality.",
      "n": 20,
      "all_result_fields_identical": true,
      "evidence": [
        {
          "seed": 235000,
          "all_result_fields_identical": true,
          "plain_edge": 6.1372717004,
          "instrumented_edge": 6.1372717004
        },
        {
          "seed": 235001,
          "all_result_fields_identical": true,
          "plain_edge": 14.0815586162,
          "instrumented_edge": 14.0815586162
        },
        {
          "seed": 235002,
          "all_result_fields_identical": true,
          "plain_edge": 3.6797502041,
          "instrumented_edge": 3.6797502041
        },
        {
          "seed": 235003,
          "all_result_fields_identical": true,
          "plain_edge": 134.6087846545,
          "instrumented_edge": 134.6087846545
        },
        {
          "seed": 235004,
          "all_result_fields_identical": true,
          "plain_edge": -11.5915046821,
          "instrumented_edge": -11.5915046821
        },
        {
          "seed": 235005,
          "all_result_fields_identical": true,
          "plain_edge": 29.2842372763,
          "instrumented_edge": 29.2842372763
        },
        {
          "seed": 235006,
          "all_result_fields_identical": true,
          "plain_edge": 37.8675065465,
          "instrumented_edge": 37.8675065465
        },
        {
          "seed": 235007,
          "all_result_fields_identical": true,
          "plain_edge": 16.8204512044,
          "instrumented_edge": 16.8204512044
        },
        {
          "seed": 235008,
          "all_result_fields_identical": true,
          "plain_edge": 851.682249011,
          "instrumented_edge": 851.682249011
        },
        {
          "seed": 235009,
          "all_result_fields_identical": true,
          "plain_edge": 14.5087271408,
          "instrumented_edge": 14.5087271408
        },
        {
          "seed": 235010,
          "all_result_fields_identical": true,
          "plain_edge": 31.0403507107,
          "instrumented_edge": 31.0403507107
        },
        {
          "seed": 235011,
          "all_result_fields_identical": true,
          "plain_edge": -7.3429492686,
          "instrumented_edge": -7.3429492686
        },
        {
          "seed": 235012,
          "all_result_fields_identical": true,
          "plain_edge": 105.3973619835,
          "instrumented_edge": 105.3973619835
        },
        {
          "seed": 235013,
          "all_result_fields_identical": true,
          "plain_edge": 5.9967370922,
          "instrumented_edge": 5.9967370922
        },
        {
          "seed": 235014,
          "all_result_fields_identical": true,
          "plain_edge": 721.6697982903,
          "instrumented_edge": 721.6697982903
        },
        {
          "seed": 235015,
          "all_result_fields_identical": true,
          "plain_edge": 9.5641676643,
          "instrumented_edge": 9.5641676643
        },
        {
          "seed": 235016,
          "all_result_fields_identical": true,
          "plain_edge": 10.4294580659,
          "instrumented_edge": 10.4294580659
        },
        {
          "seed": 235017,
          "all_result_fields_identical": true,
          "plain_edge": -0.2809572657,
          "instrumented_edge": -0.2809572657
        },
        {
          "seed": 235018,
          "all_result_fields_identical": true,
          "plain_edge": 365.0309216017,
          "instrumented_edge": 365.0309216017
        },
        {
          "seed": 235019,
          "all_result_fields_identical": true,
          "plain_edge": 206.1510924617,
          "instrumented_edge": 206.1510924617
        }
      ]
    },
    {
      "name": "pilot and fallback",
      "n": 20,
      "pair_seconds_mean": 2.860508368502633,
      "serial_projection_1000_pairs_minutes": 47.675139475043885,
      "decision": "Use the first 500 seeds because pilot projection for serial baseline/oracle block exceeds 30 minutes. The remaining 480 pairs ran in four separate OS processes on disjoint contiguous 120-seed ranges; every run_batch call used workers=1, no sandbox."
    },
    {
      "name": "scoreboard",
      "incumbent_code_sha256": "baef955ec10728839f7c3357016ec9eb0550e7ec689bbd5171b1cdd5c9e37273",
      "oracle_code_sha256": "371f52caf3024d86c315cc675477b191fd1ae4034fd593908f02b8b621131a4b",
      "paired": {
        "n": 500,
        "mean_diff": -1.2217662607308004,
        "se": 1.16723731739015,
        "retail_diff": 0.1370086056474002,
        "arb_diff": -1.358774866365
      },
      "promotion": "none; hidden-parameter oracle is diagnostic only"
    }
  ],
  "next": [
    {
      "change": "Keep B jump constants as the default and deprioritize a jump-parameter estimator based only on this substitution. Any later adaptive version should shrink toward these constants and must beat them on disjoint paired seeds.",
      "edge_at_stake": {
        "n": 500,
        "mean_diff": -1.2217662607308004,
        "se": 1.16723731739015,
        "retail_diff": 0.1370086056474002,
        "arb_diff": -1.358774866365
      },
      "approximate_95_percent_interval": [
        -3.509551402815495,
        1.0660188813538938
      ],
      "caveat": "No clear gain from inserting exact parameters into the current formulas; this does not rule out a better formula using the same information."
    }
  ],
  "code": "\"\"\"Run with python3 harness.py SIMULATOR_DIRECTORY SCRATCH_DIRECTORY START STOP.\nPinned simulator must be extracted locally; Python standard library only.\nThe unchanged simulator runner remains serial, in-process, workers=1.\n\"\"\"\nimport sys, json, time, hashlib\nfrom pathlib import Path\nfrom dataclasses import asdict\nsys.path.insert(0, sys.argv[1])\nfrom orderbook_pm_challenge.config import ChallengeConfig, ParameterVariance\nfrom orderbook_pm_challenge.loader import load_strategy_factory\nimport orderbook_pm_challenge.runner as runner\n\nINCUMBENT_CODE = '\"\"\"Stale-quote defence with tick probes, a sub-tick belief and cheap YES stock.\\n\\nEvery step the arbitrageur removes any order on the wrong side of p, so tiny\\ntwo-sided probes around the estimate locate p to a tick; a grid filter narrows\\nthat further.  Quotes sit one tick inside the competitor and are sized by the\\nmarginal rule: one more share is worth quoting while the chance a retail order\\nreaches it, times its edge, exceeds the expected arbitrage loss.  Near p=0 a\\nretail buy pays almost its whole notional as edge, so YES is held to cover low\\nasks.  That YES is bought when it is cheap: a large bid rests at tick 1 while p\\nis above it, so the arbitrageur fills it on the crossing for about 0.1 tick a\\nshare instead of nearly a full tick once p is near zero, and smaller bids sit on\\nwhichever tick p is within 0.15 of.  Below tick 1 the estimate of p decays with\\nthe time spent there, since no probe can see it.\\n\"\"\"\\nimport math\\nfrom orderbook_pm_challenge.strategy import BaseStrategy\\nfrom orderbook_pm_challenge.types import CancelOrder, PlaceOrder, Side\\n\\nP = dict(lam_r=0.25, m=5.0, sig_n=1.2, lam_j=0.0019, sig_j=0.35, sig=0.02,\\n         qmax=3000.0, rmin=2, kA=0.7, kL=0.15, pL=0.05,\\n         ammo=1.0, ydem=0.4, W=200.0, fy=0.6, ammo_q=60.0, ammo_pmax=0.05, ammo_maxpay=0.02,\\n         fb=0.9, fu=0.7, xu=0.1, sticky=1.0, min_ahead=2.0, keep_hi=1.5, keep_lo=0.7, Hu=300.0, bins=8.0, filt=1.0, uni=0.01, jumpinfo=1.0, dmin=0.0, kLb=0.08, kLf=0.08, pinf=1.0, pre=0.0, H1=100.0,\\n         ydf=0.6, Wf=2000.0, g_hi=0.15, g_lo=0.15, qf=400.0, pmaxf=0.05, pre_gap=1.0,\\n         ydf1=0.6, g1=5.0, f1=0.6, a1=100.0, nb1=0.0, gs=1.0, p1t=1.0, m1=1.0, zd=1.0, pfl=0.0005)\\nP.update({\\'W\\': 50, \\'ammo_pmax\\': 0.02, \\'fy\\': 0.7, \\'fu\\': 0.25, \\'Hu\\': 500})\\nC = {\\'W\\': 50, \\'ammo_pmax\\': 0.02, \\'fy\\': 0.7, \\'reserve\\': 200, \\'scar\\': 0.0025, \\'fu\\': 0.25, \\'Hu\\': 500}\\nSQ2 = math.sqrt(2.0)\\nSQ2PI = math.sqrt(2.0 * math.pi)\\ndef cdf(x): return 0.5 * (1.0 + math.erf(x / SQ2))\\ndef pdf(x): return math.exp(-0.5 * x * x) / SQ2PI\\ndef inv(p):\\n    p = min(max(p, 1e-9), 1 - 1e-9)\\n    t = math.sqrt(-2.0 * math.log(min(p, 1 - p)))\\n    x = t - (2.515517 + 0.802853 * t + 0.010328 * t * t) / (1 + 1.432788 * t + 0.189269 * t * t + 0.001308 * t ** 3)\\n    x = -x if p < 0.5 else x\\n    for _ in range(2):\\n        d = pdf(x)\\n        if d < 1e-12:\\n            break\\n        x -= (cdf(x) - p) / d\\n    return x\\ndef lpm(k):\\n    return pdf(k) + k * cdf(k)\\ndef fl(q):\\n    return math.floor(q * 100 + 1e-9) / 100\\n\\nNODES = [(-2.2, .06), (-1.3, .17), (-0.6, .27), (0.6, .27), (1.3, .17), (2.2, .06)]\\nPROBE = 0.01\\n\\n\\nclass Strategy(BaseStrategy):\\n    def __init__(self):\\n        self.n = 0\\n        self.ahead = set()     # main orders placed strictly ahead of any competitor order at their tick\\n        self.res = {}          # order id -> uncovered quantity at placement\\n        self.bc = None         # belief: sub-tick grid centres (ticks)\\n        self.bw = None         # belief: weights\\n        self.st = 0.5          # last one-step sd in ticks\\n        self.pcb = self.pca = None\\n        self.pb = set()\\n        self.pa = set()\\n        self.tb = 0\\n        self.s = None          # competitor spread parameter\\n\\n    def _oid(self, tag):\\n        self.n += 1\\n        return tag + str(self.n)\\n\\n    def on_step(self, state):\\n        H = max(1, state.steps_remaining)\\n        cb = state.competitor_best_bid_ticks or 0\\n        ca = state.competitor_best_ask_ticks or 100\\n        if self.s is None:\\n            self.s = max(1, (ca - cb + 1) // 2)\\n        lo, hi = cb, ca\\n        for o in state.own_orders:\\n            if o.side is Side.BUY:\\n                lo = max(lo, o.price_ticks)\\n            else:\\n                hi = min(hi, o.price_ticks)\\n        if P[\\'pinf\\'] > 0:\\n            sb = {o.price_ticks for o in state.own_orders if o.side is Side.BUY and o.remaining_quantity <= PROBE + 1e-9}\\n            sa = {o.price_ticks for o in state.own_orders if o.side is Side.SELL and o.remaining_quantity <= PROBE + 1e-9}\\n            ea = self.pa - sa\\n            eb = self.pb - sb\\n            if sa and ea:\\n                lo = max(lo, min(max(ea), hi))\\n            if eb and (sb or min(eb) <= P[\\'p1t\\']):\\n                hi = min(hi, max(min(eb), lo))\\n        if P[\\'jumpinfo\\'] > 0 and self.pcb is not None:\\n            if ca > self.pca + 1:\\n                lo = max(lo, ca - 1)\\n            if cb < self.pcb - 1:\\n                hi = min(hi, cb + 1)\\n        self.pcb, self.pca = cb, ca\\n        if lo > hi:\\n            lo, hi = hi, lo\\n        # sub-tick belief over p_(t-1): predict with one-step noise, truncate to [lo, hi]\\n        wid = max(hi - lo, 1e-6)\\n        nb = max(2, min(48, int(round(wid * P[\\'bins\\']))))\\n        cs = [lo + (i + 0.5) * wid / nb for i in range(nb)]\\n        if self.bc is None or P[\\'filt\\'] <= 0:\\n            ws = [1.0 / nb] * nb\\n        else:\\n            sg = max(self.st, 0.6 * wid / nb)\\n            k = -0.5 / (sg * sg)\\n            ws = []\\n            uni = P[\\'uni\\'] * sg\\n            for c in cs:\\n                t = uni\\n                for ci, wi in zip(self.bc, self.bw):\\n                    d = c - ci\\n                    d2 = d * d * k\\n                    if d2 > -12.5:\\n                        t += wi * math.exp(d2)\\n                ws.append(t)\\n            tot = sum(ws)\\n            ws = [w / tot for w in ws]\\n        self.bc, self.bw = cs, ws\\n        mean_t = sum(c * w for c, w in zip(cs, ws))\\n        var_t = max(sum(c * c * w for c, w in zip(cs, ws)) - mean_t * mean_t, 0.0)\\n        phat = min(max(mean_t / 100.0, 0.002), 0.998)\\n        var = P[\\'sig\\'] ** 2 + P[\\'lam_j\\'] * P[\\'sig_j\\'] ** 2\\n        sd = math.sqrt(H * var)\\n        self.tb = self.tb + 1 if hi <= 1 else 0\\n        if self.tb > 0 and P[\\'zd\\'] > 0:\\n            # below the last tick there is no probe: the score keeps walking away from it\\n            phat = min(phat, max(P[\\'pfl\\'], cdf(inv(0.01) - P[\\'zd\\'] * 0.02 * math.sqrt(self.tb) / sd)))\\n        z = inv(phat)\\n        Z = z * sd\\n        sp = pdf(z) / sd * P[\\'sig\\']\\n        self.st = sp * 100.0\\n        s = math.sqrt(sp * sp + var_t / 1e4 + 1e-8)\\n        sd1 = math.sqrt(max(1.0, H - 1.0) * var)\\n        jp = [(cdf((Z + n * P[\\'sig_j\\']) / sd1), w) for n, w in NODES]\\n        lj = P[\\'lam_j\\']\\n\\n        def AB(x):\\n            k = (x - phat) / s\\n            a = s * lpm(k)\\n            b = a - (x - phat)\\n            ja = sum(w * max(0.0, x - p) for p, w in jp)\\n            jb = sum(w * max(0.0, p - x) for p, w in jp)\\n            return (1 - lj) * a + lj * ja, (1 - lj) * b + lj * jb\\n\\n        if H == 1:\\n            def AB(x):\\n                return (1 - phat) * x, phat * (1 - x)\\n        rho = P[\\'lam_r\\'] * 0.5\\n        mu = math.log(P[\\'m\\']) - 0.5 * P[\\'sig_n\\'] ** 2\\n        kA = P[\\'kL\\'] if phat < P[\\'pL\\'] else P[\\'kA\\']\\n\\n        def qsize(loss, gain, px):\\n            loss *= kA\\n            if gain <= 0:\\n                return 0.0\\n            tail = loss / (rho * gain)\\n            if tail >= 1.0:\\n                return 0.0\\n            return min(P[\\'qmax\\'], math.exp(mu + P[\\'sig_n\\'] * inv(1 - max(tail, 1e-6))) / px)\\n\\n        ptk = phat * 100\\n        def qbid(t):\\n            if not 1 <= t <= 99:\\n                return 0.0\\n            a, b = AB(t / 100.0)\\n            if phat * 100 - t < P[\\'dmin\\']:\\n                return 0.0\\n            if P[\\'nb1\\'] > 0 and self.s == 1 and t == 1 and ptk < 1.0:\\n                return 0.0\\n            if phat < P[\\'pL\\']:\\n                ytg = P[\\'ydem\\'] * min(H, P[\\'W\\']) / max(ca - 1, ptk + 1) * 100.0\\n                a *= (P[\\'kLb\\'] if state.yes_inventory < ytg else P[\\'kLf\\']) / P[\\'kL\\']\\n            return qsize(a, b, max(phat, 0.05))\\n\\n        def qask(t):\\n            if not 1 <= t <= 99:\\n                return 0.0\\n            a, b = AB(t / 100.0)\\n            if t - phat * 100 < P[\\'dmin\\']:\\n                return 0.0\\n            if phat < C.get(\\'scar_p\\', .1):\\n                a = max(0.0, a - C.get(\\'scar\\', 0.0) * (1 - min(1.0, state.yes_inventory / C.get(\\'stock\\', 3000.0))))\\n            return min(C.get(\\'askcap\\', P[\\'qmax\\']), qsize(b, a, t / 100.0))\\n\\n        bids = [o for o in state.own_orders if o.side is Side.BUY and o.remaining_quantity > PROBE + 1e-9]\\n        asks = [o for o in state.own_orders if o.side is Side.SELL and o.remaining_quantity > PROBE + 1e-9]\\n        sticky = P[\\'sticky\\'] > 0\\n        def top(orders, comp, step):\\n            if sticky and sum(o.remaining_quantity for o in orders if o.price_ticks == comp and o.order_id in self.ahead) >= P[\\'min_ahead\\']:\\n                return comp\\n            return comp + step\\n        bid_t = top(bids, cb, 1)\\n        ask_t = top(asks, ca, -1)\\n        qb = min(C.get(\\'bidcap\\', 3000.0), qbid(bid_t))\\n        qa = qask(ask_t)\\n\\n        Y = state.yes_inventory\\n        if ask_t == 1 and H > P[\\'H1\\'] and P[\\'pre\\'] > 0:\\n            qa = qa if Y >= P[\\'a1\\'] > 0 else 0.0          # let the competitor\\'s 2-tick ask erode instead of fronting it for nothing\\n        # ammunition: hold YES so that low asks are covered\\n        ptick = phat * 100\\n        amt = 0\\n        qam = 0.0\\n        if P[\\'ammo\\'] > 0 and ask_t >= 2 and phat < max(P[\\'ammo_pmax\\'], P[\\'pmaxf\\']):\\n            wealth = state.cash + Y * phat\\n            x = max(ask_t, ptick + 1) / 100.0\\n            capw = P[\\'fy\\'] * wealth / max(phat, 0.005)\\n            target = min(P[\\'ydem\\'] * min(H, P[\\'W\\']) / x, capw)\\n            full = min(P[\\'ydf\\'] * min(H, P[\\'Wf\\']) / x, capw) if phat < P[\\'pmaxf\\'] else 0.0\\n            t = max(1, min(99, int(math.ceil(ptick + 1e-9))))\\n            g = t - ptick\\n            if Y < full and g <= P[\\'g_hi\\'] and bid_t <= t < ask_t:\\n                amt, qam = t, min(P[\\'qf\\'], full - Y)     # a tick p has just crossed: nearly free\\n            elif Y < target and phat < P[\\'ammo_pmax\\'] and bid_t <= t < ask_t and t / 100.0 - phat < P[\\'ammo_maxpay\\']:\\n                amt, qam = t, min(P[\\'ammo_q\\'], target - Y)\\n            elif Y < full and t >= 2 and 1.0 - g <= P[\\'g_lo\\']:\\n                amt, qam = t - 1, min(P[\\'qf\\'], full - Y)  # rest just under p: filled only on the crossing, or by retail\\n\\n        if P[\\'pre\\'] > 0 and ca == 2 and phat < 0.01 and H > P[\\'H1\\'] and Y < P[\\'pre\\'] and not qam and 1.0 - ptick < P[\\'pre_gap\\']:\\n            amt, qam = 1, min(P[\\'ammo_q\\'], P[\\'pre\\'] - Y)\\n        q1 = 0.0\\n        if P[\\'ydf1\\'] > 0 and P[\\'m1\\'] < ptick < P[\\'g1\\'] + 1.0 and amt != 1:\\n            q1 = max(0.0, P[\\'ydf1\\'] * min(H, P[\\'Wf\\']) / (self.s / 100.0) - Y)\\n        # order management\\n        actions = []\\n        free = state.free_cash - 2.0\\n        keep_ask = 0.0\\n        new_b = []\\n        new_a = []\\n        def cancel(o):\\n            nonlocal free\\n            actions.append(CancelOrder(o.order_id))\\n            x = o.price_ticks / 100.0\\n            if o.side is Side.BUY:\\n                free += x * o.remaining_quantity\\n            else:\\n                free += (1 - x) * min(self.res.get(o.order_id, 0.0), o.remaining_quantity)\\n            self.ahead.discard(o.order_id)\\n            self.res.pop(o.order_id, None)\\n        for o in state.own_orders:\\n            if o.remaining_quantity <= PROBE + 1e-9:\\n                cancel(o)\\n        kept_ids = set()\\n        def manage(orders, t, q, comp):\\n            kept = 0.0\\n            for o in orders:\\n                if not (C.get(\\'recover\\', 0) and o.side is Side.SELL and t < comp and self.res.get(o.order_id, 0.0) > 1 and state.yes_inventory > C.get(\\'recover_yes\\', 1) and state.free_cash < C.get(\\'recover_cash\\', 200)) and o.price_ticks == t and q > 0 and kept + o.remaining_quantity <= max(q * P[\\'keep_hi\\'], 1.0):\\n                    kept += o.remaining_quantity\\n                    kept_ids.add(o.order_id)\\n                else:\\n                    cancel(o)\\n            return kept\\n        kb = manage(bids, bid_t, qb, cb)\\n        ka = manage(asks, ask_t, qa, ca)\\n        add_b = (qb - kb) if (kb < qb * P[\\'keep_lo\\'] and bid_t != cb) else 0.0\\n        add_a = (qa - ka) if (ka < qa * P[\\'keep_lo\\'] and ask_t != ca) else 0.0\\n\\n        budget = P[\\'fb\\'] * max(free, 0.0)\\n        cost = add_b * bid_t / 100.0 + qam * amt / 100.0\\n        if cost > budget:\\n            f = budget / cost\\n            add_b *= f\\n            qam *= f\\n            cost = budget\\n        out = []\\n        q1 = min(q1, P[\\'f1\\'] * max(budget - cost, 0.0) * 100.0)\\n        if q1 >= 0.01:\\n            out.append(PlaceOrder(side=Side.BUY, price_ticks=1, quantity=fl(q1)))\\n            free -= fl(q1) / 100.0 + 1e-6\\n        if amt and qam >= 0.01:\\n            q = fl(qam)\\n            out.append(PlaceOrder(side=Side.BUY, price_ticks=amt, quantity=q))\\n            free -= q * amt / 100.0 + 1e-6\\n        if bid_t >= 1 and add_b >= 0.01:\\n            q = fl(add_b)\\n            oid = self._oid(\\'b\\')\\n            out.append(PlaceOrder(side=Side.BUY, price_ticks=bid_t, quantity=q, client_order_id=oid))\\n            free -= q * bid_t / 100.0 + 1e-6\\n            if bid_t > cb:\\n                self.ahead.add(oid)\\n        if ask_t <= 99 and add_a >= 0.01:\\n            x = ask_t / 100.0\\n            covk = sum(o.remaining_quantity - min(self.res.get(o.order_id, 0.0), o.remaining_quantity)\\n                       for o in asks if o.order_id in kept_ids)\\n            cov = max(0.0, Y - covk - 0.1)\\n            unc = max(0.0, add_a - cov)\\n            if unc > 0:\\n                ub = max(0.0, free - (1 - P[\\'fu\\']) * max(state.cash, 0.0)) if x >= P[\\'xu\\'] else 0.0\\n                if H < P[\\'Hu\\'] and phat < 0.05:\\n                    ub = max(0.0, free * (1 - H / P[\\'Hu\\']))\\n                ub = min(ub, max(0.0, free - C.get(\\'reserve\\', 0.0) * min(1.0, H / C.get(\\'release\\', 50.0))))\\n                unc = min(unc, ub / (1 - x))\\n            q = fl(min(add_a, cov + unc))\\n            if q >= 0.01:\\n                oid = self._oid(\\'a\\')\\n                out.append(PlaceOrder(side=Side.SELL, price_ticks=ask_t, quantity=q, client_order_id=oid))\\n                r = max(0.0, q - cov)\\n                self.res[oid] = r\\n                free -= r * (1 - x) + 1e-6\\n                if ask_t < ca:\\n                    self.ahead.add(oid)\\n\\n        # probes: tiny orders that the arbitrageur removes when p crosses them\\n        f = int(math.floor(ptick + 1e-9))\\n        r = max(int(P[\\'rmin\\']), int(math.ceil(2.0 * s * 100)))\\n        self.pb = set()\\n        self.pa = set()\\n        if free > 1.0:\\n            for t in range(f, f + r + 1):\\n                if cb < t < ca and 1 <= t <= 99:\\n                    out.append(PlaceOrder(side=Side.BUY, price_ticks=t, quantity=PROBE))\\n                    self.pb.add(t)\\n            for t in range(f + 1 - r, f + 2):\\n                if cb < t < ca and 1 <= t <= 99:\\n                    out.append(PlaceOrder(side=Side.SELL, price_ticks=t, quantity=PROBE))\\n                    self.pa.add(t)\\n        return actions + out\\n'\nORACLE_SUFFIX = '\\n    def set_jump_parameters(self, jump_intensity, jump_sigma):\\n        P[\"lam_j\"] = jump_intensity\\n        P[\"sig_j\"] = jump_sigma\\n'\nroot = Path(sys.argv[2])\nstart, stop = map(int, sys.argv[3:5])\nassert 235000 <= start < stop <= 236000\nroot.mkdir(parents=True, exist_ok=True)\n(root / 'best.py').write_text(INCUMBENT_CODE)\n(root / 'oracle.py').write_text(INCUMBENT_CODE + ORACLE_SUFFIX)\nincumbent = (root / 'best.py').read_text()\nassert hashlib.sha256(incumbent.encode()).hexdigest() == 'baef955ec10728839f7c3357016ec9eb0550e7ec689bbd5171b1cdd5c9e37273'\nbase_factory = load_strategy_factory(str(root / 'best.py'))\noracle_factory = load_strategy_factory(str(root / 'oracle.py'))\nOriginalEngine = runner.SimulationEngine\nobserved = []\nclass InstrumentedEngine(OriginalEngine):\n    def __init__(self, config, strategy_factory, *, seed):\n        # No RNG calls, no config mutation, no outcome logic changed.\n        observed.append((seed, config.process.jump_intensity, config.process.jump_sigma))\n        def injected_factory():\n            strategy = strategy_factory()\n            if hasattr(strategy, 'set_jump_parameters'):\n                strategy.set_jump_parameters(config.process.jump_intensity, config.process.jump_sigma)\n            return strategy\n        super().__init__(config, injected_factory, seed=seed)\n\ndef run(factory, seed, instrument):\n    runner.SimulationEngine = InstrumentedEngine if instrument else OriginalEngine\n    t = time.perf_counter()\n    result = runner.run_batch(factory, base_config=ChallengeConfig(), variance=ParameterVariance(),\n                              n_simulations=1, seed_start=seed, workers=1).simulation_results[0]\n    return asdict(result), time.perf_counter()-t\n\nwith (root / ('rows-%s-%s.jsonl' % (start, stop))).open('w') as output:\n    for seed in range(start, stop):\n        b, bt = run(base_factory, seed, False)\n        validation = None\n        vt = 0.0\n        if seed < 235020:\n            bi, vt = run(base_factory, seed, True)\n            assert b == bi, (seed, b, bi)\n            validation = {'all_result_fields_identical': True, 'plain_edge': b['total_edge'],\n                          'instrumented_edge': bi['total_edge']}\n        o, ot = run(oracle_factory, seed, True)\n        row = dict(seed=seed, incumbent=b, oracle=o, baseline_seconds=bt,\n                   oracle_seconds=ot, validation_seconds=vt, validation=validation)\n        output.write(json.dumps(row)+'\\n'); output.flush()\n        if (seed-start+1)%10 == 0:\n            print(json.dumps({'done': seed-start+1, 'last_seed': seed,\n                              'pair_seconds': bt+ot, 'failed': [b['failed'],o['failed']]}), flush=True)\n",
  "code_sha256": "330f8040a20ffb62dff0257206bb9113b7df4624e28d75ac5747fb3687c87c42",
  "incumbent_code_sha256": "baef955ec10728839f7c3357016ec9eb0550e7ec689bbd5171b1cdd5c9e37273",
  "tuning": null,
  "seeds": {
    "start": 235000,
    "end_inclusive": 235499,
    "requested_end_inclusive": 235999,
    "selection": "first 500, pilot timing fallback; pilot seeds included exactly once"
  },
  "n": 500,
  "complete": true,
  "incumbent": {
    "mean": 99.564405548491,
    "retail_mean": 121.377638276109,
    "arb_mean": -21.8132327276214,
    "se": 7.074809839777905
  },
  "findings": [
    {
      "name": "incumbent/all",
      "count": 500,
      "mean": 99.564405548491,
      "retail_mean": 121.377638276109,
      "arb_mean": -21.8132327276214,
      "se": 7.074809839777905,
      "paired": {
        "n": 500,
        "mean_diff": -1.2217662607308004,
        "se": 1.16723731739015,
        "retail_diff": 0.1370086056474002,
        "arb_diff": -1.358774866365
      }
    },
    {
      "name": "oracle/all",
      "count": 500,
      "mean": 98.34263928776019,
      "retail_mean": 121.5146468817564,
      "arb_mean": -23.1720075939864,
      "se": 7.1980302606514535,
      "paired": {
        "n": 500,
        "mean_diff": -1.2217662607308004,
        "se": 1.16723731739015,
        "retail_diff": 0.1370086056474002,
        "arb_diff": -1.358774866365
      }
    },
    {
      "name": "incumbent/lambda<0.0019;sigma<0.4",
      "count": 129,
      "mean": 103.75884097994573,
      "retail_mean": 124.31516033672868,
      "arb_mean": -20.556319356758138,
      "se": 14.343583035322201,
      "paired": {
        "n": 129,
        "mean_diff": -2.930324313507753,
        "se": 4.395025325080178,
        "retail_diff": -0.10752879496666547,
        "arb_diff": -2.8227955185596896
      }
    },
    {
      "name": "oracle/lambda<0.0019;sigma<0.4",
      "count": 129,
      "mean": 100.82851666643798,
      "retail_mean": 124.20763154176201,
      "arb_mean": -23.37911487531783,
      "se": 15.34128925136312,
      "paired": {
        "n": 129,
        "mean_diff": -2.930324313507753,
        "se": 4.395025325080178,
        "retail_diff": -0.10752879496666547,
        "arb_diff": -2.8227955185596896
      }
    },
    {
      "name": "incumbent/lambda<0.0019;sigma>=0.4",
      "count": 124,
      "mean": 102.46486542658549,
      "retail_mean": 121.21909966080807,
      "arb_mean": -18.75423423421129,
      "se": 15.26055770544542,
      "paired": {
        "n": 124,
        "mean_diff": 0.027713380157258338,
        "se": 0.4707270425072072,
        "retail_diff": 1.2127497591387086,
        "arb_diff": -1.1850363790169351
      }
    },
    {
      "name": "oracle/lambda<0.0019;sigma>=0.4",
      "count": 124,
      "mean": 102.49257880674274,
      "retail_mean": 122.43184941994677,
      "arb_mean": -19.939270613228224,
      "se": 15.250168214384932,
      "paired": {
        "n": 124,
        "mean_diff": 0.027713380157258338,
        "se": 0.4707270425072072,
        "retail_diff": 1.2127497591387086,
        "arb_diff": -1.1850363790169351
      }
    },
    {
      "name": "incumbent/lambda>=0.0019;sigma<0.4",
      "count": 131,
      "mean": 109.14942837343817,
      "retail_mean": 133.635919141229,
      "arb_mean": -24.48649076785038,
      "se": 13.916525358918104,
      "paired": {
        "n": 131,
        "mean_diff": -0.3198787825343523,
        "se": 0.6975452638072988,
        "retail_diff": -0.21321364960152653,
        "arb_diff": -0.1066651328610689
      }
    },
    {
      "name": "oracle/lambda>=0.0019;sigma<0.4",
      "count": 131,
      "mean": 108.82954959090381,
      "retail_mean": 133.42270549162748,
      "arb_mean": -24.59315590071145,
      "se": 14.012250278159335,
      "paired": {
        "n": 131,
        "mean_diff": -0.3198787825343523,
        "se": 0.6975452638072988,
        "retail_diff": -0.21321364960152653,
        "arb_diff": -0.1066651328610689
      }
    },
    {
      "name": "incumbent/lambda>=0.0019;sigma>=0.4",
      "count": 116,
      "mean": 80.97494705185775,
      "retail_mean": 104.43698007909741,
      "arb_mean": -23.462033027226724,
      "se": 12.799545214085764,
      "paired": {
        "n": 116,
        "mean_diff": -1.6758933840551724,
        "se": 0.803530510831718,
        "retail_diff": -0.34546952293965477,
        "arb_diff": -1.3304238610810344
      }
    },
    {
      "name": "oracle/lambda>=0.0019;sigma>=0.4",
      "count": 116,
      "mean": 79.29905366780258,
      "retail_mean": 104.09151055615776,
      "arb_mean": -24.792456888307758,
      "se": 12.518551366673151,
      "paired": {
        "n": 116,
        "mean_diff": -1.6758933840551724,
        "se": 0.803530510831718,
        "retail_diff": -0.34546952293965477,
        "arb_diff": -1.3304238610810344
      }
    }
  ],
  "paired": {
    "n": 500,
    "mean_diff": -1.2217662607308004,
    "se": 1.16723731739015,
    "retail_diff": 0.1370086056474002,
    "arb_diff": -1.358774866365
  },
  "failures": {
    "incumbent": 0,
    "oracle": 0,
    "validation": 0,
    "errors": []
  },
  "seconds_per_simulation": 1.4604053750340973,
  "timing": {
    "definition": "Arithmetic mean of measured run_batch elapsed seconds per simulation; includes scheduling contention during four-process execution. Validation reruns excluded from seconds_per_simulation.",
    "baseline_mean_seconds": 1.4592393832602246,
    "oracle_mean_seconds": 1.4615713668079697,
    "pilot_validation_seconds": 28.65736318504787
  },
  "interpretation": {
    "uncertainty": "SE is sample standard deviation (ddof=1) divided by sqrt(n); paired SE uses per-seed oracle-minus-B differences. Means include all 500 completed pairs. Bucket thresholds are fixed midpoints of the parameter variance bands, descriptive only; bucket comparisons are not independent promotions.",
    "oracle_limit": "This is the value of this exact parameter substitution in B, not the optimal value of knowing the parameters. True probability, score, future jumps, jump mean and realized jump times were not supplied. This sample is not finalist evidence."
  },
  "paired_distribution": {
    "median": 0.0083690253500001,
    "positive_count": 254,
    "negative_count": 245,
    "zero_count": 1,
    "extremes": [
      {
        "seed": 235327,
        "incumbent": 17.5818636824,
        "oracle": -545.030629627,
        "difference": -562.6124933094001,
        "retail_diff": -41.76281481950002,
        "arb_diff": -520.8496784902,
        "jump_intensity": 0.0012688347712939744,
        "jump_sigma": 0.33817119560710895
      },
      {
        "seed": 235492,
        "incumbent": -157.4672710377,
        "oracle": -240.6992828231,
        "difference": -83.2320117854,
        "retail_diff": -2.5125932266000035,
        "arb_diff": -80.7194185585,
        "jump_intensity": 0.002319007493310463,
        "jump_sigma": 0.24899680082057762
      },
      {
        "seed": 235366,
        "incumbent": 467.6264806464,
        "oracle": 431.3331714912,
        "difference": -36.293309155200006,
        "retail_diff": -44.27239184920006,
        "arb_diff": 7.979082693800002,
        "jump_intensity": 0.0027582628456935395,
        "jump_sigma": 0.5948615529310253
      },
      {
        "seed": 235359,
        "incumbent": 315.0593308043,
        "oracle": 345.782230533,
        "difference": 30.722899728700042,
        "retail_diff": 32.885670921699955,
        "arb_diff": -2.1627711923999993,
        "jump_intensity": 0.0009293666902791091,
        "jump_sigma": 0.5419524773657101
      },
      {
        "seed": 235298,
        "incumbent": 558.0594823781,
        "oracle": 589.5758021413,
        "difference": 31.51631976319993,
        "retail_diff": 26.48656255000003,
        "arb_diff": 5.029757214499998,
        "jump_intensity": 0.0008138709353111594,
        "jump_sigma": 0.2966772865012495
      },
      {
        "seed": 235246,
        "incumbent": -224.7108896177,
        "oracle": -187.4880967545,
        "difference": 37.2227928632,
        "retail_diff": -1.2447402141000055,
        "arb_diff": 38.467533077600024,
        "jump_intensity": 0.001964353361072861,
        "jump_sigma": 0.4827380471158679
      }
    ],
    "note": "All extremes retained in reported means and SE. No trimming or seed removal."
  }
}
