Skip to main content
Atlas binds a UI WebSocket to a two-stock book and a server-driven headline feed. Signal headlines schedule delayed mid-shifts on Gamma bots; noise does not. Product overview: Atlas. Shared connect and order fields: API overview.

Protocol

  1. Connect to wss://www.getavenir.co/ws
  2. { "action": "userConnected", "token": "<Clerk JWT>", "applicationType": "atlas", "atlasFeed": { } }
  3. Wait for orderBook and atlasFeedState (auth is async; bots are turned on for Atlas)
  4. { "action": "atlasStartFeed" } — immediate headline, then on the interval
  5. Trade with placeOrder / cancelOrder on instruments 1 and 2
  6. { "action": "atlasStopFeed" } when done
Identity comes from token. Optional atlasFeed on connect seeds session settings.

Starter code

Client actions

Optional settings on connect / atlasStartFeed / atlasConfigureFeed:
Values are clamped server-side. The sample above matches server defaults; Easy / Medium / Hard presets use other bands (Medium is reaction 4–8). Mid-shift magnitude and delay always come from the stored session band.

Server messages

headline

Wire payload is text-only. Kind, direction, subject, instrument, and counters are not included.
Infer signal vs noise by matching text against atlasFeedState.companies (longest prefix wins). companies[0] → instrument 1, companies[1] → instrument 2. No company prefix ⇒ noise. Bullish/bearish direction is in the wording, not a separate field. The server still schedules delayed mid-shifts for signals; watch orderBook.atlasMidShiftStatus when a shift fires (instrumentId, direction, delta, timestamp). Live counters (headlinesSeen, tradableHeadlinesSeen) live on atlasFeedState (connect, start/stop/configure, atlasGetFeedState), not on each headline.

atlasFeedState

companies[0] → instrument 1, companies[1] → instrument 2.

orderBook

Includes gammaBotMidsByInstrument and atlasMidShiftStatus while the session is live.