{"key":"f6-retreat-both-sides","mechanism":"On an initial rival spread of 1 or 4, detect a one-tick retreat (best bid falls one tick or best ask rises one tick) relative to the prior callback; cancel all own orders and submit nothing for one callback only when the retreated side has no own orders.","spreads_acted":[1,4],"approach":"Latch s from the rival best bid/ask on the first callback. Track those rival quotes across callbacks. On a qualifying one-tick retreat, the selected overlay returns CancelAll() if there are no own BUY orders for a bid retreat or no own SELL orders for an ask retreat; otherwise it returns MA actions unchanged.","tried":"Screened one_callback, two_callbacks, and empty_retreated_side on paired tuning seeds 340200..340399. Selection used pooled mean paired difference on s=1 and s=4.","next":"Do not promote based on this screen: all three variants had negative mean paired difference on the target spreads. Consider a mechanism that discriminates genuine informative retreats before canceling.","overlay_code":"\n\nfrom orderbook_pm_challenge.types import CancelAll\n\n_IncumbentStrategy = Strategy\nclass Strategy(_IncumbentStrategy):\n    RETREAT_CALLBACKS = 1\n    REQUIRE_EMPTY_RETREATED_SIDE = True\n\n    def __init__(self):\n        super().__init__()\n        self._retreat_prev_bid = None\n        self._retreat_prev_ask = None\n        self._retreat_spread = None\n        self._retreat_remaining = 0\n\n    def on_step(self, state):\n        actions = super().on_step(state)\n        bid = state.competitor_best_bid_ticks\n        ask = state.competitor_best_ask_ticks\n        if self._retreat_spread is None and bid is not None and ask is not None:\n            self._retreat_spread = max(1, (ask - bid + 1) // 2)\n\n        target = self._retreat_spread in (1, 4)\n        bid_retreat = (bid is not None and self._retreat_prev_bid is not None\n                       and bid == self._retreat_prev_bid - 1)\n        ask_retreat = (ask is not None and self._retreat_prev_ask is not None\n                       and ask == self._retreat_prev_ask + 1)\n        trigger = bid_retreat or ask_retreat\n        if self.REQUIRE_EMPTY_RETREATED_SIDE and trigger:\n            empty_bid = bid_retreat and not any(o.side.value == \"BUY\" for o in state.own_orders)\n            empty_ask = ask_retreat and not any(o.side.value == \"SELL\" for o in state.own_orders)\n            trigger = empty_bid or empty_ask\n\n        if bid is not None:\n            self._retreat_prev_bid = bid\n        if ask is not None:\n            self._retreat_prev_ask = ask\n\n        if not target:\n            self._retreat_remaining = 0\n            return actions\n        if trigger:\n            self._retreat_remaining = max(self._retreat_remaining, self.RETREAT_CALLBACKS)\n        if self._retreat_remaining > 0:\n            self._retreat_remaining -= 1\n            return [CancelAll()]\n        return actions\n","overlay_sha256":"ed3c868bdb0e47a309cf5b522b4a8a5fec224c95e0d39713ed1a07fcadb0c60e","code_sha256":"399ce6f4db9ad8f12885771d988995082506c1cf73e983ce00dbd0ffba7a575d","base_sha256":"5d1bd5272884f513b19f0e66a7c235f6c188a08e4f7787ac9346f1614dda3ed3","check_values":{"expected":{"310000":17.116002,"310001":23.820392,"310002":2.376144,"310003":243.87214},"actual":{"310000":17.116002,"310001":23.820392,"310002":2.376144,"310003":243.87214},"matches":{"310000":true,"310001":true,"310002":true,"310003":true}},"python_version":"3.12.3","tuning":{"seeds":[340200,340399],"variants":[{"name":"one_callback","code_sha256":"85ae07c3edaeaaf38fe1f09f4e3a8f559a203ce9659688e0d4fc6fa0dafd1c55","mean_diff":-13.121565056681446,"se":2.017157666540072,"by_spread":{"1":{"n":54,"sum_d":-348.3262893055,"sum_d2":20867.35787612711,"mean_diff":-6.450486838990741,"se":2.550707533368985},"2":{"n":55,"sum_d":0.0,"sum_d2":0.0,"mean_diff":0.0,"se":0.0},"3":{"n":48,"sum_d":0.0,"sum_d2":0.0,"mean_diff":0.0,"se":0.0},"4":{"n":43,"sum_d":-924.4655211926004,"sum_d2":33723.49275019216,"mean_diff":-21.499198167269775,"se":2.7690971170123944}}},{"name":"two_callbacks","code_sha256":"ccda143c0e9ba12b7a3b08bee98edc2fdde1b32b1fa85adbe6bba1447a9d186f","mean_diff":-15.08436978099897,"se":2.1425465002112936,"by_spread":{"1":{"n":54,"sum_d":-354.01271456459995,"sum_d2":18217.907371026136,"mean_diff":-6.555791010455555,"se":2.3568057181968025},"2":{"n":55,"sum_d":0.0,"sum_d2":0.0,"mean_diff":0.0,"se":0.0},"3":{"n":48,"sum_d":0.0,"sum_d2":0.0,"mean_diff":0.0,"se":0.0},"4":{"n":43,"sum_d":-1109.1711541923,"sum_d2":46600.08643074167,"mean_diff":-25.794678004472093,"se":3.156088322197235}}},{"name":"empty_retreated_side","code_sha256":"399ce6f4db9ad8f12885771d988995082506c1cf73e983ce00dbd0ffba7a575d","mean_diff":-8.985482526750515,"se":1.3881670607796082,"by_spread":{"1":{"n":54,"sum_d":-75.25750915789997,"sum_d2":2245.4101153149086,"mean_diff":-1.3936575769981476,"se":0.86481961648684},"2":{"n":55,"sum_d":0.0,"sum_d2":0.0,"mean_diff":0.0,"se":0.0},"3":{"n":48,"sum_d":0.0,"sum_d2":0.0,"mean_diff":0.0,"se":0.0},"4":{"n":43,"sum_d":-796.3342959369,"sum_d2":23530.559347578474,"mean_diff":-18.519402231090698,"se":2.2052645420181967}}}],"selected":"empty_retreated_side"},"paired":{"seeds":[450000,450499],"n":500,"complete":true,"missing_seeds":[],"failures":[],"overall":{"n":500,"sum_d":-1946.6716625860001,"sum_d2":67644.38402529535,"mean_diff":-3.893343325172,"se":0.4906554566701353,"base_mean":106.77992531608679,"retail_diff":-2.4382392107376,"arb_diff":-1.455104114444},"by_spread":{"1":{"n":124,"sum_d":-459.02859370799996,"sum_d2":20059.608034401834,"mean_diff":-3.701843497645161,"se":1.0971781516132957,"base_mean":52.178154051575,"retail_diff":-2.6694919797209677,"arb_diff":-1.0323515179322575},"2":{"n":143,"sum_d":0.0,"sum_d2":0.0,"mean_diff":0.0,"se":0.0,"base_mean":88.61320954304685,"retail_diff":0.0,"arb_diff":0.0},"3":{"n":111,"sum_d":0.0,"sum_d2":0.0,"mean_diff":0.0,"se":0.0,"base_mean":135.04550905697928,"retail_diff":0.0,"arb_diff":0.0},"4":{"n":122,"sum_d":-1487.6430688780001,"sum_d2":47584.77599089352,"mean_diff":-12.193795646540984,"se":1.41231448045702,"base_mean":157.85353348907952,"retail_diff":-7.279529507240984,"arb_diff":-4.914266139331148},"all":{"n":500,"sum_d":-1946.6716625860001,"sum_d2":67644.38402529535,"mean_diff":-3.893343325172,"se":0.4906554566701353,"base_mean":106.77992531608679,"retail_diff":-2.4382392107376,"arb_diff":-1.455104114444}},"off_target_zero":true,"per_seed":[[450000,1,-58.45962231899999],[450001,1,-0.1152877446],[450002,3,0.0],[450003,1,-0.6224084069],[450004,1,-0.4086991657999999],[450005,1,-3.441669429299999],[450006,1,0.0520852168],[450007,1,-0.049741297500000003],[450008,4,-4.497050077600001],[450009,1,-20.6289832851],[450010,2,0.0],[450011,4,-4.841473825000001],[450012,2,0.0],[450013,1,-27.917903337099993],[450014,2,0.0],[450015,1,-0.34276260589999985],[450016,2,0.0],[450017,2,0.0],[450018,2,0.0],[450019,4,-84.7976182552],[450020,3,0.0],[450021,2,0.0],[450022,3,0.0],[450023,4,-6.008289229300004],[450024,2,0.0],[450025,2,0.0],[450026,1,-0.5334395089999999],[450027,4,-11.249661841199995],[450028,2,0.0],[450029,4,-12.5762866428],[450030,1,-0.6824353879],[450031,4,-5.808657456800006],[450032,1,-8.756920941199994],[450033,4,-9.409570972200001],[450034,4,-6.0245217571000005],[450035,4,28.570929695499984],[450036,1,23.89228175930009],[450037,4,-9.841550038200005],[450038,2,0.0],[450039,3,0.0],[450040,2,0.0],[450041,2,0.0],[450042,4,-13.026196847],[450043,2,0.0],[450044,4,-3.128824705199996],[450045,4,-9.468996863200005],[450046,1,-12.957712526300002],[450047,1,-0.06960065780000002],[450048,2,0.0],[450049,3,0.0],[450050,2,0.0],[450051,2,0.0],[450052,1,0.028519849900000338],[450053,3,0.0],[450054,3,0.0],[450055,2,0.0],[450056,1,-0.20276821099999998],[450057,2,0.0],[450058,1,0.0607965231],[450059,2,0.0],[450060,3,0.0],[450061,3,0.0],[450062,2,0.0],[450063,1,-0.28413404470000003],[450064,3,0.0],[450065,1,0.006951718699999998],[450066,4,-23.819743616300002],[450067,3,0.0],[450068,3,0.0],[450069,4,8.728507083300002],[450070,3,0.0],[450071,3,0.0],[450072,1,1.7238309514999983],[450073,1,-3.0901656182999986],[450074,3,0.0],[450075,4,1.2997792668000017],[450076,1,-1.6854947017999997],[450077,1,-3.305933452399998],[450078,4,-24.654566574100016],[450079,1,0.19944668050000003],[450080,2,0.0],[450081,2,0.0],[450082,4,-19.7599030329],[450083,3,0.0],[450084,3,0.0],[450085,4,-17.970206958099993],[450086,1,-8.211804165599993],[450087,2,0.0],[450088,2,0.0],[450089,2,0.0],[450090,1,-0.39912509279999997],[450091,4,-33.380325427],[450092,4,32.177017698200004],[450093,1,-0.3789136861],[450094,1,-0.17228356709999998],[450095,2,0.0],[450096,3,0.0],[450097,4,-14.932617561399994],[450098,3,0.0],[450099,3,0.0],[450100,4,-16.729944670899997],[450101,1,4.348262256799956],[450102,1,-1.9698518701000012],[450103,3,0.0],[450104,2,0.0],[450105,1,-0.22417114579999997],[450106,1,-9.638849801500015],[450107,1,-0.09724199339999995],[450108,2,0.0],[450109,2,0.0],[450110,3,0.0],[450111,2,0.0],[450112,1,-2.649759967600005],[450113,1,-2.8198317521999883],[450114,4,-19.054665976500004],[450115,3,0.0],[450116,1,0.0408450776],[450117,1,0.046156882300000146],[450118,2,0.0],[450119,2,0.0],[450120,4,-5.908851562199999],[450121,3,0.0],[450122,2,0.0],[450123,2,0.0],[450124,1,0.390720114],[450125,3,0.0],[450126,1,0.5228659133000002],[450127,4,-11.5725273432],[450128,4,-6.5467766463],[450129,2,0.0],[450130,4,-2.820452593399999],[450131,4,-12.6635246273],[450132,1,0.7611305068999954],[450133,2,0.0],[450134,3,0.0],[450135,4,-12.009922664300007],[450136,4,-28.020385791600006],[450137,4,-5.728745129700002],[450138,2,0.0],[450139,2,0.0],[450140,3,0.0],[450141,1,-9.6427434571],[450142,1,0.03800470410000001],[450143,2,0.0],[450144,2,0.0],[450145,1,-0.09974669800000002],[450146,2,0.0],[450147,2,0.0],[450148,2,0.0],[450149,2,0.0],[450150,3,0.0],[450151,2,0.0],[450152,4,-9.411318968399996],[450153,1,-0.29578470889999997],[450154,4,-13.52655798379999],[450155,2,0.0],[450156,4,-19.248878321999996],[450157,4,-9.552413369600004],[450158,1,0.14064050780000015],[450159,4,-33.91709848850002],[450160,3,0.0],[450161,2,0.0],[450162,2,0.0],[450163,2,0.0],[450164,3,0.0],[450165,3,0.0],[450166,2,0.0],[450167,1,0.6887638953999993],[450168,2,0.0],[450169,4,-15.128294437099996],[450170,4,-9.339267911],[450171,1,-0.0303648869],[450172,4,-13.6668698756],[450173,1,-0.5069422952],[450174,4,-22.5800732321],[450175,4,-14.374433920199998],[450176,1,-0.0199298007],[450177,4,-9.588101834300002],[450178,2,0.0],[450179,4,-16.224112462999997],[450180,4,-12.549493568000003],[450181,2,0.0],[450182,2,0.0],[450183,2,0.0],[450184,2,0.0],[450185,4,-33.22677729739996],[450186,1,-0.0790817407],[450187,1,0.04530957740000001],[450188,4,5.766244813599997],[450189,2,0.0],[450190,4,-14.3263301984],[450191,3,0.0],[450192,3,0.0],[450193,4,-1.589801142399999],[450194,4,-10.665887616999996],[450195,3,0.0],[450196,4,-33.095172920899984],[450197,1,-2.396860309],[450198,2,0.0],[450199,3,0.0],[450200,1,1.8825204503000001],[450201,1,0.02037956059999857],[450202,1,-3.4452106187000027],[450203,1,-10.496292360300004],[450204,4,-17.756065150700003],[450205,3,0.0],[450206,3,0.0],[450207,4,-26.3209798783],[450208,4,-2.079466799200002],[450209,1,-0.0349756202],[450210,3,0.0],[450211,2,0.0],[450212,2,0.0],[450213,2,0.0],[450214,1,-1.3802214146999998],[450215,2,0.0],[450216,1,-10.776339062399998],[450217,3,0.0],[450218,3,0.0],[450219,1,-0.08931409489999997],[450220,1,-0.7178632648000303],[450221,1,-0.13452871319999993],[450222,1,-0.35520807779999997],[450223,2,0.0],[450224,1,0.002246992000000003],[450225,1,-1.2850306099000002],[450226,4,4.654745928499999],[450227,1,-15.382079244700002],[450228,4,-17.529267126199997],[450229,2,0.0],[450230,3,0.0],[450231,4,-39.726247712],[450232,1,-3.170879074200002],[450233,4,-2.8790499582999978],[450234,1,-3.111715263199997],[450235,3,0.0],[450236,3,0.0],[450237,3,0.0],[450238,4,-71.9946569366],[450239,1,-0.4165545385999999],[450240,1,-0.5069372782],[450241,3,0.0],[450242,4,7.742968584399932],[450243,2,0.0],[450244,1,-7.6387735056],[450245,1,0.0648459827],[450246,3,0.0],[450247,1,-1.483920605999998],[450248,4,4.450758081799989],[450249,2,0.0],[450250,4,-20.2765339877],[450251,1,-32.10293796449997],[450252,2,0.0],[450253,4,-11.031033729100002],[450254,2,0.0],[450255,2,0.0],[450256,2,0.0],[450257,2,0.0],[450258,2,0.0],[450259,4,-12.380692622600009],[450260,1,-2.0475870580999924],[450261,1,-7.633640270400008],[450262,1,0.020962379599999997],[450263,4,-6.801926189],[450264,1,-0.9784704608000006],[450265,4,-26.4193497081],[450266,3,0.0],[450267,3,0.0],[450268,3,0.0],[450269,2,0.0],[450270,4,-15.2326468606],[450271,2,0.0],[450272,2,0.0],[450273,2,0.0],[450274,2,0.0],[450275,4,-11.544507233600001],[450276,3,0.0],[450277,4,-17.748219958299998],[450278,3,0.0],[450279,2,0.0],[450280,1,0.0501810670999987],[450281,3,0.0],[450282,3,0.0],[450283,3,0.0],[450284,2,0.0],[450285,1,0.03582163869999999],[450286,2,0.0],[450287,3,0.0],[450288,4,-12.431155711299999],[450289,3,0.0],[450290,4,-6.234833520399999],[450291,3,0.0],[450292,2,0.0],[450293,3,0.0],[450294,2,0.0],[450295,4,-47.38987526049999],[450296,2,0.0],[450297,4,-11.345606369000052],[450298,4,34.92146719829998],[450299,3,0.0],[450300,1,0.0575794285],[450301,2,0.0],[450302,1,0.21107849239999998],[450303,4,-12.518705949600005],[450304,3,0.0],[450305,1,0.03830457779999996],[450306,4,-19.605183255499995],[450307,3,0.0],[450308,4,7.7956862735999835],[450309,2,0.0],[450310,4,-9.790173647000003],[450311,1,0.018962803900000005],[450312,4,-4.9081887432],[450313,2,0.0],[450314,3,0.0],[450315,4,-2.149191473499968],[450316,3,0.0],[450317,2,0.0],[450318,4,-8.224461587699999],[450319,3,0.0],[450320,3,0.0],[450321,3,0.0],[450322,1,-73.21691429949999],[450323,2,0.0],[450324,3,0.0],[450325,2,0.0],[450326,4,-12.576556796300002],[450327,1,-0.4169942622],[450328,2,0.0],[450329,4,-8.9605697497],[450330,3,0.0],[450331,3,0.0],[450332,2,0.0],[450333,1,-0.5675100189],[450334,4,-40.882800493000005],[450335,1,-0.2531795616999999],[450336,3,0.0],[450337,3,0.0],[450338,2,0.0],[450339,4,-14.652315732200002],[450340,2,0.0],[450341,2,0.0],[450342,2,0.0],[450343,1,-0.801947100599989],[450344,3,0.0],[450345,2,0.0],[450346,3,0.0],[450347,3,0.0],[450348,4,1.9191517551000175],[450349,2,0.0],[450350,2,0.0],[450351,2,0.0],[450352,3,0.0],[450353,3,0.0],[450354,2,0.0],[450355,4,-5.720487390500001],[450356,1,-0.45676869159999],[450357,3,0.0],[450358,1,-3.3708001798],[450359,2,0.0],[450360,2,0.0],[450361,3,0.0],[450362,2,0.0],[450363,2,0.0],[450364,2,0.0],[450365,2,0.0],[450366,2,0.0],[450367,4,-33.4650694553],[450368,2,0.0],[450369,3,0.0],[450370,2,0.0],[450371,2,0.0],[450372,4,-9.105903064499998],[450373,2,0.0],[450374,3,0.0],[450375,3,0.0],[450376,3,0.0],[450377,3,0.0],[450378,1,-2.4934989783],[450379,3,0.0],[450380,4,-11.179978624699999],[450381,1,0.21312916179999997],[450382,2,0.0],[450383,2,0.0],[450384,1,0.0352247387000002],[450385,1,0.0564738457],[450386,4,11.723456926699953],[450387,1,-0.20141632669999998],[450388,4,-8.0427724969],[450389,1,0.05856309199999998],[450390,1,-0.37477042250000014],[450391,4,-9.763652137600005],[450392,1,-0.17024954120000002],[450393,4,6.077940968700005],[450394,3,0.0],[450395,1,0.044323472299999445],[450396,3,0.0],[450397,3,0.0],[450398,2,0.0],[450399,2,0.0],[450400,4,-24.414601683900003],[450401,3,0.0],[450402,3,0.0],[450403,3,0.0],[450404,4,-11.251191698800014],[450405,4,2.6767760139000245],[450406,3,0.0],[450407,2,0.0],[450408,4,-4.2111072481000065],[450409,1,-0.060974312700000005],[450410,2,0.0],[450411,2,0.0],[450412,3,0.0],[450413,1,2.546670859999992],[450414,1,-5.2891342120000004],[450415,4,-1.7462126680999859],[450416,1,-0.02361424649999999],[450417,1,0.045754874900000075],[450418,2,0.0],[450419,3,0.0],[450420,2,0.0],[450421,2,0.0],[450422,2,0.0],[450423,2,0.0],[450424,2,0.0],[450425,2,0.0],[450426,3,0.0],[450427,1,0.04991244139999999],[450428,2,0.0],[450429,2,0.0],[450430,3,0.0],[450431,2,0.0],[450432,3,0.0],[450433,4,-3.5733090261999996],[450434,1,-0.0318537868],[450435,1,0.24327988339999962],[450436,4,-21.451234861899934],[450437,3,0.0],[450438,2,0.0],[450439,1,-0.08992281399999999],[450440,4,1.2962265206999746],[450441,3,0.0],[450442,4,-14.846257448300005],[450443,4,-5.484314356800002],[450444,2,0.0],[450445,4,-15.674062818699994],[450446,2,0.0],[450447,1,-0.309209957],[450448,2,0.0],[450449,2,0.0],[450450,1,-82.63099533770003],[450451,4,-11.966818894700005],[450452,1,0.013487820900000001],[450453,4,-5.114641647900001],[450454,4,-8.8679346521],[450455,3,0.0],[450456,2,0.0],[450457,1,-4.979244620599999],[450458,4,-8.315538555],[450459,3,0.0],[450460,4,-14.187079951399994],[450461,2,0.0],[450462,3,0.0],[450463,3,0.0],[450464,1,0.2777389231999998],[450465,1,-5.007524248700008],[450466,1,0.038928848099999996],[450467,3,0.0],[450468,2,0.0],[450469,1,-10.290808851199998],[450470,1,-0.5909040550000002],[450471,4,-18.87227605129999],[450472,1,-0.4309729786000003],[450473,2,0.0],[450474,4,5.161696997700005],[450475,4,-29.848589947700006],[450476,4,-3.1533371401000014],[450477,1,-0.1659074963],[450478,4,-4.807622595900002],[450479,4,-10.9548181237],[450480,3,0.0],[450481,4,-24.04688388300002],[450482,2,0.0],[450483,3,0.0],[450484,3,0.0],[450485,3,0.0],[450486,2,0.0],[450487,4,-31.56365653750001],[450488,2,0.0],[450489,3,0.0],[450490,2,0.0],[450491,1,-14.059259653000026],[450492,1,-5.3797525448],[450493,4,-14.955077890799998],[450494,3,0.0],[450495,3,0.0],[450496,3,0.0],[450497,4,-44.9653696374],[450498,2,0.0],[450499,4,-1.4036178211000028]]},"worst_seeds":[[450019,4,-84.7976182552],[450450,1,-82.63099533770003],[450322,1,-73.21691429949999],[450238,4,-71.9946569366],[450000,1,-58.45962231899999]],"notes":"Retreat is operationalized as a one-tick move away from the midpoint: bid down or ask up, relative to the preceding callback. The empty-side variant qualifies independently by retreating side. All holdout seed pairs completed without failures."}
