01
v1
- Entry
- Near expiry, often $0.96–$0.99
- Engineering change
- Entered the apparent winner late. Correct direction left little upside, while a reversal could lose almost the full ticket.
An independently operated Python system for live market-data capture and signed order execution on five-minute prediction markets—followed by a postmortem when the setup stopped finding durable opportunities.
01 / Problem
Five-minute crypto markets compress the entire execution problem into seconds. Polybow had to identify the correct asset, time window and outcome token; compare the live price reference with the opening level; watch both outcome books; and submit an order before the quoted liquidity changed.
The candidate edge was not “predict whether Bitcoin goes up.” It was narrower: a very cheap ask could remain on the side that was close to resolving as the winner. The opportunity only existed if that ask was real, large enough and still present after detection, signing and submission.
Three records could tell different stories. A reference feed described direction, a WebSocket event described the visible book, and the CLOB account described orders and fills. An API acknowledgement was therefore not proof of execution, and a market name alone could not identify which bot branch placed an order.
02 / Iterations
01
02
03
04
03 / Ownership
I designed, built and operated the end-to-end path: market discovery, outcome-token mapping, reference-price handling, WebSocket book ingestion, decision logic, signed CLOB orders and the Ubuntu service running on AWS Lightsail.
I moved evaluation into the book callback, reduced the decision gate from 50 ms to 5 ms, cached market metadata, kept an HTTP/2 client warm and used coincurve signing to remove avoidable work from the submit path. Timing logs separated preparation from API response instead of treating either as fill latency.
I also built the evidence path around the bot: daily BBO and L2 JSONL recorders, rotation and compression, structured timing logs, a market-resolution ledger and parsers used for the postmortem. That made it possible to distinguish a visible quote, an order acknowledgement and later account activity.
This was an independent project. I owned the system design, implementation, deployment, operation and investigation.
04 / Architecture
The live path moved left to right. Identity and reference data selected the contract; book events triggered a decision; the order client signed and submitted it; the evidence layer recorded what each stage actually knew.
05 / Data model
The common join was market + five-minute window + outcome side. Each record answered a different question, so no single file was treated as the complete truth.
06 / Postmortem
UC depended on persistence: a low-priced ask had to remain in the winning-side book long enough to detect, sign and fill. On 28 April the venue moved to CLOB V2; on 2 May I also changed internal bot guards. Those changes overlapped, so the evidence cannot isolate one patch as the cause.
What the later data does establish is that the executable condition was no longer durable. A June–July scan covered 12,929 markets and 104.5 million best-book updates. It found one trigger, while apparent crosses disappeared within 0.02 seconds—too quickly for the earlier detect-and-submit path to rely on.
The defensible conclusion is that the residual-ask setup stopped appearing as a repeatable opportunity in the later books. Saying that one specific patch killed a proven edge would go beyond the evidence.
After live Polymarket trading stopped, I shifted the research workflow to capturing and replaying Hyperliquid public market data. That was a new data-research direction, not a claim that a second live bot was operated.
07 / Evidence
These links expose the account and historical ledger directly. They are evidence of activity and resolved outcomes; they are not presented as proof of durable profitability.