Weekly Margin Log #4
Ultramarkets Weekly Margin Log #4 - dynamic range markets with three-layer bracket auto-close, rollback pipeline hardening, chart data accuracy fix, and infinite scroll. Product updates for March 20–27, 2026.
Ultramarkets Weekly Margin Log #4 - product updates for the week of March 20 to 27, 2026. Dynamic range markets, chart data fix, rollback pipeline hardening, and more.
Last week's shipping log from Ultramarkets.
Missed last week? Here’s Log #3
We shipped features in preparation for dynamic range markets going live the coming week, and a lot of rollback hardening. Here's the full breakdown.
Dynamic Range Markets
This is the biggest update we've shipped last week. Our current approach when determining the auto-close date for markets is currently static hence unable to support dynamic range markets such as Elon tweet count markets that depended on Elon’s live tweet data. Once Elon’s Tweet Count market is listed on Ultramarkets this coming week, each range market will be auto-closed independently through a three-layer protection system we built from scratch.
While waiting for the markets to be listed on Ultramarkets, read below to understand the rules that we’ve implemented in order to enable these listings in safe way.
Layer 1 - Hard Auto-Close. Every market still has a latest possible close date set at listing. For 2-day markets, this fires 8 hours before the window closes. This is the backstop.
Layer 2 - Upper Bound Close. Two mechanisms working together: inevitability detection checks whether even a conservative estimate of remaining tweets would push the count past a bucket's upper bound, and a proximity trigger closes when the live count gets close enough to the ceiling that tweet bursts could blow past it.

Layer 3 - Reachability Close. If the remaining time makes it effectively impossible for the count to reach a bucket's lower bound, we close all positions on that bucket. No point trading something that can't happen.

Safety parameters use a burst-rate envelope - instead of simple averaging, the system analyzes maximum tweet bursts observed across 5-minute, 30-minute, 1-hour, and 6-hour windows to establish conservative worst-case bounds. All three layers are deterministic and known at listing time.
We also built tweet deletion reconciliation this week - if a tweet is removed after being counted, the count adjusts automatically. And operators can gate automation closures behind an admin toggle for manual oversight while we roll this out carefully.
On the frontend: live count chip with auto-close tooltip, tweet risk strip with range diagram, chart highlighting for the active bracket.
For the full technical deep-dive on how we made this safe, check out our detailed breakdown.
Position Table Update
Small change, big readability win. Separated position size from current value in the positions table - these were previously conflated in a single column, which made it hard to see at a glance how a leveraged position was performing relative to entry.
Chart Data Accuracy Fix
The 1-minute and 15-minute candlestick charts were showing inaccurate data due to a pagination bug in the datafeed, causing historical candles to load incorrectly. We rewrote the pagination logic with proper fetching, so candles now show accurate data and the boundary is handled cleanly when you scroll back far enough. If you noticed weird chart behavior recently - this is why.
Infinite Scroll Everywhere
Home page market page, trading pages, and trade history tables all paginate with infinite scroll now. Previously the app loaded a fixed batch and stopped - if you had more than ~20 markets or trades, you just didn't see the rest.
Blackbox Admin UI and Extensions
The blackbox audit trail shipped in Margin Log #3 - this week we built the admin frontend for it and extended coverage. The admin UI lets us query audit events by step name and time range with paginated results, instead of raw database queries. We also added audit events for every admin action (rollbacks, bans, access code generation), stop-loss/take-profit trigger auditing, and email job outcome tracking. This is the kind of tooling that compounds - we plan to keep improving it iteratively as we learn which queries we're running most.
Market Links to Polymarket
Markets now link directly to their source Polymarket page. Small but useful - traders wanted to cross-reference prices and depth on the underlying market without manually searching for it.
What Broke
Rollback pipeline failures. This was the week's biggest fire. Positions were getting stuck after ambiguous transaction failures during cancellation - the system couldn't tell whether the on-chain transaction actually succeeded or failed, and the rollback path had gaps that let positions fall through. We spent a couple of days digging into this: cancel-pending positions now route to a verification queue, rollback amounts derive from on-chain events rather than cached state, retry logic is capped to prevent infinite loops, and the entire continuation flow was refactored. We also caught that "contract reverted" wasn't being classified as a definitive failure - meaning clearly-failed transactions were being treated as ambiguous. That's fixed now.
P&L calculation was using wrong exit price. Performance fees on leveraged positions were being calculated against the wrong reference price on position close. The fix was straightforward - use position data for exit price instead of the market price at processing time - but any trader who closed a position between the bug's introduction and the fix saw slightly incorrect P&L numbers. We're reviewing affected positions and are actively communicating with the traders who reported this issue.
Nav layout issue. The spacing between the decoration bar and navbar broke. Turned out the root cause was a conflicting CSS approach between the decoration strip and the nav background - we finally resolved it by extending the nav background to the top edge.
Live market count was wrong. The homepage was showing the wrong number of live markets - it was counting a subset instead of using the global active total. Fixed on both frontend and backend.
Smaller Fixes
Tooltips on order fields. Order amount and order size fields now have tooltips so new traders understand what each input means.
Withdraw button label. Now shows the correct label on success state.
Auto-close visuals refined. Unrounded P&L precision is preserved and the visual treatment was cleaned up.
Admin timezone drift. Market datetime editor no longer drifts timezones on save.
What's Next
Ultramarkets team has been working to ship limit orders which will unlock listing of more live markets with better user experience. Look out for our announcements this coming week on limit order support & more listing of live markets! Follow us on X @ultramarketsxyz.
Comments ()