For tradersFor institutions
Institutional overview — for diligence

A pre-trade control layer, with the evidence to prove it worked.

For funds, RIAs, brokers and agent platforms. DealerFlow Terminal runs one deterministic check on every order attempt across all eight order rails, writes one ledger row with the complete trace, and rolls out shadow-first so it blocks nothing until its disagreement rate is known. The same check is offered to platforms as a validation layer over MCP and HTTP.

Interface mock-up. Every desk starts in shadow; no counts shown.
What it is — and is not

Infrastructure, not an opinion.

It isIt is not
A deterministic pre-trade check with a closed refusal vocabularyA signal service, a model portfolio or a source of directive calls
Rulebook tooling where the client writes every ruleDiscretionary management — DealerFlow never takes discretion over an account
An audit ledger keyed to code and rulebook versionsA performance claim — we publish refusal counts, not modeled returns
A tenant-isolated platform with database-enforced separationA custodian or broker — orders go to a connected brokerage account (Charles Schwab today)
Validation layer — for brokers & agent platforms

Your agents propose. The check decides whether it leaves.

Seven US brokers now let AI agents place or draft orders (StockBrokers.com). Today the question “did the agent exceed its authority?” is often answered by people, after the fact. The Risk Desk answers it per order, before the send, in code.

  • Authority check (profile drift): direction, size, timeframe, signal and structure versus the rulebook version the account holder enabled.
  • Options contract quality: spread, tick, delta band, days-to-expiry floor, maximum-ask bands, book depth.
  • Over-trading controls: re-entry, duplicate, trade-count and daily caps per account.
  • It validates, it does not judge. Verdicts concern authority and mechanics — never whether a trade is a good idea.
  • Integration: an MCP tool (check_order) your agents call before sending, or one HTTP call to /api/risk-desk/check. Advisory: it sends nothing and holds nothing — you keep execution, custody and the customer relationship.
Illustrative request and response shape.
The real application

Screens from the live product.

Captured from the production code with sample data. Account identifiers are blurred.

Governed automation — institutional layer only

Automation that has to earn the right to act.

Deterministic trading loops: once a rulebook is armed, it acts the same way on the same inputs, every time. No model re-reads the instruction at the moment of the order. Rulebook-driven automation is offered to institutional clients only, under written governance. Every automated order passes the same Risk Desk as a manual one — and more gates besides.

Level 0

Decision support

Research and desk screens. No order path.

Level 1

Human-confirmed

Tickets and cards that send only on a person’s click — enforced in the database for portfolio tickets.

Level 2

Shadow automation

Rulebooks evaluate live and log every would-be order. Nothing is sent.

Level 3

Armed automation

Per desk and per ticker — armed by the client.

Platform pause

A platform-level pause stops new automated fires on the equity and options desks. Closes and cancels are never blocked.

The timeframe × window grid is the only switch

Automation on a ticker acts only where its grid is ticked. An empty grid is off — there are no implicit defaults.

Self-disarm

A consecutive-loss streak disarms that ticker; a setup with negative measured expectancy over 20+ trades is benched until a person releases it.

Disarm means hands off

On the equity desk, a ticker that is disabled or disarmed by the system gets no automated management until a person re-arms it.

One action per ticker per day

Automated options entries are limited to once per ticker, per direction, per trading day — not once per window.

Arbiter

When long and short candidates conflict on a ticker, the arbiter removes the losing side before evaluation. Software proposes its weights; only the operator approves them.

Test before arming.

A rulebook drafted in plain language with TAI, the DFT AI, or edited by hand, can be backtested before anyone saves it. The backtest takes the rule settings themselves and replays the signals that really fired on real one-minute prices, using the desk’s own close rules. It compares the draft with any other profiles on the same shares and dates, broken down by share, signal, day, close reason and side.

  • Fenced: every figure is labelled “Simulated — not real trades”, kept out of real results, and never used to train or calibrate.
  • Stated limits: what is not simulated is listed on the screen itself (multi-timeframe gates, position caps, slippage beyond the next minute’s open, commissions).
  • Not saved: results exist while the tab is open and rerun from scratch each time.
  • Not a forecast: simulated results do not predict future results.
Backtest screen with simulated-results banner and compare panel
Real screen · sample data The backtest tab on an equity profile. Dollar figures are blurred on this page.
Desk-by-desk controls

Eight order rails, each with its own floor.

The unified Risk Desk sits above these. Each desk’s own gates stay in place underneath it — defence in depth.

DeskControls already live
AFA · equity rulebooks (automated & manual)49 named suppression codes: switches, account, session and timeframe-window grid, daily loss cap (realised + fresh unrealised), position cap with headroom clipping, spread cap in USD and bps, earnings and trend filters, multi-timeframe alignment, opposite-position guard, loss-streak disarm, setup bench, arbiter. A funds gate is built and runs log-only by default (the broker is the final funds check); missing-data blocks on spread, earnings and trend are per-client settings.
AOA · options campaigns & ladderStructure guards (no naked short, net debit only), market gate requiring both decision timeframes plus a trigger, “don’t chase”, synthetic-probability block, refusals on failed chain refresh or excessive price move, limit clamped to maximum drift from mid, once per ticker per direction per trading day for automated entries, loss cap, profit lock, kill switch that cancels opening intents.
0DTE · same-day optionsCentral pause, the platform daily-loss cap (live mode), per-ticker and total daily ceilings under an advisory lock (an unknown broker acceptance counts as used), calendar entry cutoff, bar and chain freshness, delta band and spread-tick filters, book-depth clamp, serial clips.
PIS · portfolio ticketsHuman-click only by database constraint, one-voice arbitration across engines, fail-closed control layer, structure guards reused from the options desk, grading of declined as well as taken suggestions.
Income DeskAssemble and clear through the platform risk stack, named holds, minimum credit, refresh and price-moved refusals, do-not-manage fences, acknowledge-on-this-click overrides that are recorded.
C-CAT · covered callsSix pure readiness gates where unknown never equals pass, single-use preflight tokens with every gate re-run at send, duplicate refusal, profile re-check at send, chain verdict gate.
Shared spineRead-only broker guard, platform pause gate (shadow by default), account guard for cross-tenant use, quarantine and live-routing arm.
Interface mock-up of the ledger shape. No values shown.
The verdict ledger

The proof of a guardrail is a ledger, not a return.

A guardrail cannot honestly be judged by performance. It can be judged by what it refused, why, and whether the reason was sound.

  • One row per order attempt, including passes, with the complete check trace.
  • Closed vocabulary — 73 codes in 18 classes, with a map from every legacy code in nine source vocabularies. A new legacy code without a mapping fails the build.
  • Refusal tear sheet: counts by desk and code, on demand. Counts only — no modeled profit or loss is attributed to orders that were never sent.
  • Detection: a desk that stops producing verdicts is treated as broken, not quiet — with a canary probe every minute and an orphan-order coverage check.
Security, isolation & data integrity

Isolation enforced by the database, not by the screen.

Verified identity

Every private path is authenticated by a verified identity token; the tenant scope comes from that token, never from the request.

Forced row-level security

Account tables enable and force row-level security with explicit operator filtering.

Default-deny on fabricated data

Synthetic data is permitted only in an explicit sandbox or test environment. There is no environment switch that turns the rule off.

Default-deny on publication

Nothing reaches a public channel without an approval pinned to the exact content version, plus a mechanical check for directive language.

Release discipline

Every release is validated on the deployed artifact, confirmed by digest in production, soaked for thirty minutes with automatic rollback, and kept out of market hours.

No custody

DealerFlow never holds client funds or securities. Orders go to a connected brokerage account.

Deployment & onboarding

From kickoff to enforcing, on a path you control.

01

Scope & connect

Connect brokerage accounts on the tenant-isolated platform, or integrate the validation layer.

02

Encode the rulebooks

Your authority limits become versioned profiles; nothing is enabled by default.

03

Shadow

Every desk evaluates and logs. Review would-blocks and disagreement with your own team.

04

Advisory → enforce

Desk by desk, on your sign-off. Closing orders are never blocked at any stage.

Diligence

The questions diligence asks first.

Do you take discretion or place orders on our behalf?

No. Every rule is written and enabled by the client. Automation acts only within rulebooks the client armed, on the client’s own brokerage account, and can be disarmed per ticker, per desk or platform-wide at any time.

Can another client ever see our data?

Private data is scoped by a verified identity token and protected by forced row-level security at the database.

What happens if a component misbehaves?

Gates fail closed on unknown readings, the platform pause stops new opening orders at the spines, loss streaks disarm tickers automatically, and releases soak with automatic rollback. Closes and cancels remain available throughout.

How do we validate it ourselves?

Run every desk in shadow on your own book. The ledger shows each would-block with its evidence; your team judges the reasons before anything is enforced.

Can our own agents use the check?

Yes — over MCP (check_order) or HTTP. Verdicts are advisory to your platform: the check sends nothing, holds nothing and writes no order of its own.

Do you publish performance?

No. We publish refusal counts. Any figure we show is measured from real records; nothing is modeled for effect or fabricated.

Glossary

Terms used on this site.

Risk Desk
The single pre-trade check that runs above every order rail.
Verdict
Pass, warn or block for one order attempt, with a binding code and the complete trace.
Binding code
The highest-severity refusal in a fixed class order — the one reason that decided.
Profile drift
An order that does not match the rulebook version the account holder enabled.
Shadow mode
The check evaluates and logs but changes nothing.
Advisory mode
The verdict is shown beside the order; a person decides.
Enforce mode
A block refuses the send with its code; desk gates still run underneath.
Fail-closed
When a reading is missing or stale, the gate refuses rather than guesses.
Rail
One path by which orders reach the broker — there are eight.
Tear sheet
A nightly count of refusals by desk, class and code.