Docs·Web App·USDⓈ-M Signals

Live signals feed

Real-time table of every active and waiting USDⓈ-M futures signal. Columns, filters (side · status · source), sort by ROE / age, mobile layout, and deep-link from notifications via the symbol query parameter.

The live feed is the running-signals table — every signal currently active or waiting for entry. Sub-second WebSocket updates keep ROE, current price, and time-in-trade in sync with the market. The feed is also the entry point to every per-signal action: click a row to open the detail dialog, or use the row's action buttons to pipe to autotrade / set alert / open in chart.

Live feed table

Columns

ColumnNotes
SymbolE.g. BTCUSDT. Sortable. Click → opens detail dialog.
SideLONG (green) / SHORT (red) badge.
SourceThe signal generator (e.g. mrD-RSI Pullback, mrDAlgo, Smart Ranges). Click → filters feed to that source.
TFTimeframe of the originating bar (5m / 15m / 1h / 4h).
EntryLimit price for the entry. If active, this is the fill price.
SLStop-loss price.
TP1 / TP2 / TP3Three TP levels. Green dot = hit; grey = pending; red = won't be hit (SL was hit first).
Mark priceCurrent symbol mark price, WS-updated.
ROE %Current return on equity if you're in the signal at default leverage. Negative = red, positive = green.
Max ROEHighest ROE achieved by this signal since entry.
AgeTime since signal generated. Formatted as 5m, 2h, 1d 4h.
24h ΔSymbol's 24h percentage change. Context only.
24h VolSymbol's 24h volume. Sorted for liquidity filtering.
Status chipACTIVE / WAITING.

Filters

Above the table:

FilterOptions
StatusAll / Active / Waiting. Default = All. Counts shown next to each option.
SideLong / Short. Default = Long. Toggle to flip. Counts shown.
SourceMulti-select dropdown of signal generators. Default = all sources.
Symbol searchFree-text typeahead — restricts feed to matching symbols.
SortDefault (newest first) / ROE descending / ROE ascending / Age.

The filter state is URL-shareable — copy the URL with filters applied and it loads the same view.

Row interactions

  • Click row → opens the detail dialog with the chart loaded for that signal.
  • Hover row → highlights the symbol on the right-side chart panel (if visible) and shows a 1-line tooltip with current P&L.
  • Right-click row (desktop) → context menu with "Open in new tab", "Copy signal link", "Pipe to Auto Trade", "Set alert".
  • Long-press row (mobile) → same actions as desktop right-click.

When a notification fires for a signal, tapping it opens the page with a ?symbol= query:

Code
/trading-signals/future-signals?symbol=BTCUSDT

The feed auto-selects the matching signal and pre-opens the detail dialog. If the page is already open in another tab, the notification re-uses that tab and updates the selection.

Real-time update mechanics

The feed maintains a persistent WebSocket connection to the signals service. Each tick:

  • New signal → row prepends, briefly highlighted (gold tint, fades over 2 s).
  • Signal entry fills → row's status flips WAITINGACTIVE, brief amber pulse.
  • TP / SL hit → row briefly flashes green (TP) or red (SL), then animates to closed history.
  • Mark price + ROE → updated every ~250 ms (throttled).

If the WS disconnects, a small banner appears top-right with a reconnect status. The engine auto-reconnects within ~3 s under normal conditions.

Mobile layout

On screens < 768 px the table collapses to a card list:

  • One card per signal.
  • Card shows: Symbol + Side · Entry / SL / TP1 row · Mark price + ROE · Age + Status.
  • Tap card → opens detail dialog (full-screen on mobile).
  • Filters move to a slide-up sheet (tap the filter icon top-right).

Pagination

The feed shows up to 200 simultaneously-running signals. If the BE has more, paginate:

  • Older signals button at the bottom → loads the next 200.
  • Most users see < 50 active signals at any time — pagination is rare.

Empty state

If no signals match the current filters, the feed shows:

No active signals match your filters. Try widening Status or Side, or removing the source filter.

If the BE is healthy but genuinely has zero signals (rare; usually weekend lull), the message is:

No signals running right now. Active markets typically generate 20-50 signals per day across all sources.

What's next