AI
← All posts
Ai Polymarket Autonomous-Trading Daily-Log

The orders finally went through. That was not the same as winning.

Dmitrii Balabanov
Dmitrii Balabanov
September 20, 2026 · 4 min read

Yesterday the bot could find a signal and still fail to buy it. Today it finally got past the decimal places. That fixed execution—not forecasting.

The precision bug was repaired after the 06:00 UTC run. The patch constructs exact signed amounts, reduces size when necessary, and preserves the limit price. Forty-five isolated tests passed, followed by 35 focused tests from the live directory. Seventy journal entries carrying explicit HTTP 400 precision rejections were reclassified from UNCERTAIN to REJECTED, with backups and original errors retained. Subsequent purchases at 07:00, 08:00 and 09:00 were accepted by the exchange. No further errors appear in the hourly reports through 20:00.

Four purchases, not four victories

These are actual fills from exchange responses, not the requested sizes printed in the activity log. Costs exclude additional fees.

UTCYES contractFilled sharesPriceCost
06:00BTC touches $81,000 on September 2050.63$3.15
07:00BTC dips to $80,000 during September 14–2070.65$4.55
08:00BTC reaches $82,000 during September 14–20320.07$2.24
09:00ETH dips to $2,550 on September 205.50.46$2.53

Total purchase consideration was $12.47 before fees. The BTC $81,000 ticket is now listed as won in the trade-history response, with estimated profit of $1.85 before fees. Cash increased by $5 between the 16:00 and 17:00 snapshots, consistent with that payout. No sells were recorded today.

The other tickets did not all benefit from the same move. Bitcoin recovering toward $82,000 helped the upside ticket and hurt the $80,000 downside ticket. Owning both is not arbitrage: neither barrier has to be touched before expiry.

The evening account

At 20:00 UTC, cash was 19.935 USDC. Four positions remained:

YES contractSharesBot fair rangeMarket bidDisplayed markMarked value
BTC reaches $82,000, September 14–20320.3174–0.34650.2250.2945$9.424
BTC dips to $80,000, September 14–2070.1432–0.16790.100.11$0.770
ETH dips to $2,550 on September 205.50.0173–0.03140.020.03$0.165
ETH dips to $2,300 during September50.0730–0.11130.110.115$0.575

Cash plus displayed marks was $30.869. But marking those positions at their quoted bids gives only $28.495 before exit fees, assuming those quotes remain available. Most of the gap comes from the BTC $82,000 ticket. A nice-looking account valuation is not the same as realizable cash.

The bot recorded hold for all four. The first three had eight hours left; the monthly ETH contract had 248. These fair ranges are model outputs, not calibrated guarantees. The daily ETH downside estimate, for example, fell from 63–68% at entry to roughly 2–3% by this review.

What moved

BTC rose from about $80,320 at the 08:00 entry to $81,184.01 at review. ETH rose from about $2,575 at its 09:00 entry to $2,633.72. Those moves explain much of the divergence between the upside and downside tickets.

Over those entry-to-review intervals, annualized seven-day realized volatility moved from about 34.96% to 35.16% for BTC, and 44.01% to 44.92% for ETH. Latest 14-/30-day readings were 33.21%/35.15% for BTC and 49.54%/49.54% for ETH. SOL finished the snapshot at $110.47 with seven-day realized volatility of 57.24%. These are bot feed observations, not independently sourced market commentary.

What still needs care

The activity log prints requested quantities—7.1, 32.86 and 5.9—even though the patched sizing actually filled 7, 32 and 5.5. The persisted exchange responses contain the correct amounts; this post uses them. That reporting mismatch remains an operational defect, not extra exposure.

Status shows no unresolved orders. Its remaining errors=1 refers to the preserved September 19 17:00 API timeout, not a new failure tonight. The latest candidate, NO on BTC reaching $90,000 in September, had reported edge of just 0.0203 and did not produce a purchase. No parameter change is proposed from this small sample.

Next scheduled check: September 20 at 21:00 UTC. The near-term contracts expire at September 21 04:00 UTC. Getting orders accepted was necessary. Whether the probabilities deserved those orders is the harder experiment.