Rock-solid options trading, milliseconds from the market.

A complete trading desk solution running in a secure, isolated cloud environment within 2 ms away from your broker. Execute your trades instantly using hotkeys, let the engine protect your position, help you follow your own rules, react immediately using algo-assist scripts, and tailor your screen and hotkeys to how you to trade. Every order and fill is recorded for your review, and you can keep journal notes now, with an automatic journal, coaching and tax reports on the way.

  • Ultra low latency
  • Algo-assisted trading
  • Web + TUI
  • AI Trading Coach
  • Built in Rust
SupportsAlpacaTradiertastytradeInteractive Brokerssoon
A simulated TradeShell session: the options chain and a live chart stream, the trader clicks a strike to select it and switches the chart to that option and to one-second candles with the mouse, then scales in with three quick b + 3 presses of 10 contracts each, the engine places a protective stop, trails it as the price rises, and the trader presses m then C, types a limit price of $1.13 and closes the position for a gain when it fills.

Simulated session · sample data

Infrastructure

Trade from the datacenter, not your living room.

A brokerage app on your laptop sits 50–100+ ms from the market, behind Wi-Fi and a busy home network, painting quotes that are already stale. TradeShell keeps your desk running in the same cloud region as your broker, and your screen is just a window onto it.

Round trips to the broker: about 75 milliseconds from a home connection versus about 2 milliseconds from a TradeShell session.
Brokerage app at home0 round trips
TradeShell session0 round trips

Animation runs 20× slower than real time. Round trips are counted in real time. See below what happens if a server fails.

Next to the market

Sessions run about 2 ms from major brokerages. Quotes arrive fresh, and stops, trailing and scripts act on them before a home connection would even see the tick.

Secure and isolated

Every session runs in its own private environment with no public address. Broker credentials and access tokens are encrypted when stored and in transit. They are decrypted only to start your session and are made available only to your session’s container.

Recovers on its own

If a server fails, your session is restarted on a healthy one automatically, with its data intact, and your screens reconnect on their own. Stop orders already at your broker keep protecting you meanwhile.

Scales with you

Every session gets its own resources, so one busy trader never slows down another, however busy the market gets.

Inside the TradeShell cloud

From your screen to the market, step by step.

Your desk lives in TradeShell Cloud, in the same cloud region as your broker. Here’s how your browser or terminal reaches it, and what happens when something goes wrong.

One platform

Everything between your idea and your tax return.

Profitable trading is a loop: prepare, execute, protect, review, improve. TradeShell covers every step, so your edge doesn't leak out between five different tools.

  1. 01

    Prepare

    Rehearse setups in a mock market at any hour, then switch to paper or live on the broker you already use.

    Mock marketPaper tradingMulti-broker
  2. 02

    Execute

    A streaming chain with live greeks and two-key chord orders. From idea to order in a fraction of a second.

    HotkeysPrice modesLow latency
  3. 03

    Protect

    Protection mode puts a stop on every fill. Scalping mode trails it up behind new highs and never lets it slip back.

    Auto-stopTrailingRisk limits
  4. 04Coming soon

    Automate

    Scripts that react to market events, system events or your own hotkeys, backtested on recorded data first.

    Script libraryBacktests
  5. 05

    Review

    Write journal notes in the app today. Every order and fill is recorded by your session, and the terminal shows your day’s P&L and win rate. An automatic journal and an AI coach that points out the habits that cost you are coming soon.

    Journal notesDay P&L & win rateAuto journal & AI coachsoon
  6. 06Coming soon

    File

    Cost basis, wash sales and holding periods worked out for you, with Form 8949, Schedule D and 6781 data for tax season.

    Form 8949Wash salesTXF export
  7. …and back to 01, a little better each time.

Performance

Built for the seconds that decide a 0DTE trade.

A trading engine written in Rust, running about 2 ms from your broker, with your order path kept ready so an order never waits on a slow connection. When the tape moves, TradeShell is already there.

~2 ms

from your session to major brokerages

hosted near the market
16k/s

price updates streamed live to your screen

measured
2 keys

to send an order: action, then size

b then 5
0 dropped

orders or fills, ever: every one arrives, in order

by design

From decision to order on the wire

Same trade, same broker: buy 25 contracts of the strike you're watching.

Typical click-through order ticketOrder sent ✓0 ms
  1. Find the strike, click1200 ms
  2. Ticket: size and price1500 ms
  3. Confirm dialog900 ms
  4. Send from home100 ms
TradeShellOrder sent ✓0 ms
  1. b140 ms
  2. 5140 ms
  3. Risk check<1 ms
  4. Send to broker~2 ms

Illustrative timings for a manual entry. Your broker's own processing time applies to both.

Ready before you are

Your order path is kept warm and ready, so the first trade of the morning is as fast as the hundredth.

Every fill, in order

Prices always refresh to the newest quote, and orders and fills are never merged, skipped or delayed.

Smooth on any connection

Streaming adapts to your network, so a slow connection shows the latest prices instead of falling behind.

Direct peer-to-peer

Your screen connects straight to your session over an encrypted link, with no server in between.

How it works

A trading engine, not a web page with a buy button.

Scroll through one tick's journey, from your broker to every screen you have open.

  1. 01Your data

    Straight from your broker

    Your session streams prices directly from the broker you connect, about 2 ms away. No shared feeds, no middlemen: what you see is exactly what your account sees.

  2. 02Speed

    Processed the instant it arrives

    Every price update is handled in microseconds by an engine written in Rust. Your screen always shows the newest price, and the engine never misses a tick.

  3. 03Control

    Every order, under control

    One engine handles your orders, positions and risk checks. It places your stops, keeps them in sync as fills arrive, exits in the right order, and records every trade in your journal.

  4. 04In sync

    Every screen, live

    Open the web client and the terminal side by side: they all show the same desk, live. A slow connection on one never holds the others back.

  5. 05On screen

    Straight to your screen

    The web client and the terminal draw straight from your session, so a price, a fill or a moving stop shows up on every screen the moment it happens.

How it works: your broker streams prices into your session, where they are processed instantly. The trading engine handles orders, risk checks and stops, sends orders back to the broker and records them in your journal. Every screen, web or terminal, stays in sync with your session.
Why a terminal?

Professional desks never stopped using terminals.

A terminal interface puts speed and density first: the most information per glance, the fewest steps per action. TradeShell gives you that interface wherever you are, in your browser or in a native terminal.

Everything on one screen

Chain, greeks, live chart, position, orders and the log, dense and aligned. No tabs to hunt through, no pop-ups covering the price.

Keyboard first, mouse anywhere

Every action is a key, so muscle memory does the work when the tape is moving. The mouse works everywhere too: click a strike, scroll the chain, drag the chart, switch its interval.

Nothing jumps around

A fixed grid that redraws in place: no layout shifts, no ads, no distractions. Your eyes learn where every number lives.

Light on bandwidth

Only what changed is sent, so it stays smooth on hotel Wi-Fi or a tethered phone.

app.tradeshell.io/sessions/spy-scalps
tradeshell — zsh

Your session in the web app: live charts, stats and orders. Open terminal opens the desk in its own window.

Web client

The full terminal experience in your browser. Nothing to install, same hotkeys, fast and crisp in any modern desktop browser.

Terminal client

The native tradeshell app for your favourite terminal, with mouse support and a direct, encrypted peer-to-peer link to your session.

Both at once

Attach as many clients as you like to one session. They all show the same desk, and settings follow you everywhere.

Hotkeys

Two keystrokes. Order sent.

Every action on the desk has a key. Chords like b 5 buy 25 contracts at your chosen price mode, C closes, and P flattens everything. A visible overlay shows what's pending, and Esc always backs out.

  • Chord sizes 1, 5, 10, 25, 50 or 100 contracts on the number row
  • Price modes bid, mid or ask per side, cycled with one key
  • Never a guessed price: no quote means a prefilled price dialog, not a silent fill
  • Make them yours: put any size on any number key and set the chord timing; full key remapping is coming soon
  • Mouse too: click rows, buttons and footer keys whenever you want
Try it: press the keys, or tap themProtection
SPY 778C 11/5bid 0.82 · ask 0.83
PositionFlat
Stop—
P&L$0.00
Waiting for your first key…

Simulated desk · nothing is sent anywhere

Trading modes

Same trade. Three levels of help.

One entry, one run-up, one hard reversal. Watch how it ends with each mode, and switch any time withM.

0.700.800.901.001.101.201.301.401.50entrystop −10%buySSSstill holding −29%
Bid 1.00Stop noneP&L +0.0%
b s C

Your keys, your exits

Hotkeys, nothing automatic. TradeShell sequences your orders and keeps them matched with your broker, but when to get out is your call. Hesitate on the reversal and a +45% winner turns into a loss.

Held through the reversal: −29%

auto-stop

A stop on every fill

Every entry gets a protective stop at your risk percentage the moment it fills. Press S whenever the trade gives you room and the stop is re-set from the current price, so you lock in gains on your own schedule.

Stopped out at +27%, after 3 presses of S

trail

Let winners run, lock gains in

Protection plus a trailing stop. Once you’re up 3%, the stop follows every new high 5% behind and never moves down. If price gaps through it, TradeShell exits at market.

Exited at +38%, automatically

Discipline

Trade your plan, not your emotions.

Most losses don’t come from bad ideas but from bad moments: freezing while a trade turns, doubling down after a loss, giving back a winner. TradeShell turns your rules into guardrails that hold, even when you don’t.

The urge

It’s dropping fast and you can’t bring yourself to click.

TradeShell

Your stop was placed the moment you were filled. It executes without you, and if price gaps straight through it, TradeShell exits at market instead of hoping.

  1. filled · BUY 25 SPY 778C @ 0.77
  2. protective stop placed @ 0.69 (−10%)
  3. price falling fast · bid 0.70 → 0.66
  4. stop executed · position closed, loss capped
The urge

Down $500 on the day. You want it back. Right now.

TradeShell

Set a daily loss limit once. When it’s reached, new risk is blocked for the rest of the day, while closing and flattening always stay available.

  1. day P&L −$500 · daily loss limit reached
  2. b 9 · BUY 100 SPY 778C
  3. blocked · daily loss limit: only exits allowed
  4. close and panic still available
The urge

Just this once: ten times your normal size.

TradeShell

Your maximum position size is checked before any order leaves, every single time. No exceptions in the heat of the moment.

  1. long 25 SPY 778C · max position 50
  2. b 9 · BUY 100 more
  3. blocked · position would reach 125 (max 50)
The urge

Rushed entry, wrong price: 7.80 instead of 0.78.

TradeShell

Limit prices far away from the market are caught before they reach your broker, and an exit can never accidentally flip you into a short.

  1. BUY 10 SPY 778C limit 7.80
  2. blocked · limit 7.80 is 900% away from mid 0.78
  3. SELL 40 · you hold 25
  4. blocked · exit of 40 exceeds your position of 25
The urge

Up 40%. You hold for more and watch it melt to zero.

TradeShell

In Scalping mode the stop trails every new high and never moves down, so a good trade stays a good trade.

  1. up +40% · new high 1.08
  2. trailing stop raised → 1.03
  3. reversal · bid 1.02
  4. trail executed · +32% locked in
The urge

Third loss in ten minutes, and you’re still clicking.

TradeShell

Cooldowns after a stop-out, trade limits and your own rules as scripts. Your journal and AI coach show which habits cost you money.

  1. stopped out · 3rd loss in 10 min
  2. cooldown: new entries paused for 5 min
  3. journal tagged: “chased”
  • A stop on every entry
  • Daily loss limit
  • Maximum position size
  • Fat-finger checks
  • Trailing stops
  • One-key panic
Make it yours

Your rules, your risk, your style.

Every trader runs a different playbook. Tune the guard behind each mode, set your limits once, and make the screen comfortable for a six-hour session.

  • Stops your way: how far below entry, and how much room the stop-limit gets
  • Trailing that fits your style: when it kicks in and how tightly it follows new highs
  • Hard limits: maximum position size, a price-band check against the live quote, and a daily loss limit that blocks new risk but always lets you flatten
  • Your keys: choose the quantity behind every size key, and how long a chord waits for you
  • Settings follow you: change them anywhere and every attached terminal and tab updates
Protective stop−10%

Entry $0.82 → stop at $0.74

Trailing starts at+3%
Trails the high by5%

Starts once the bid reaches $0.84; at a high of $1.00 the stop sits at $0.95.

Size keysremap any key · soon

Your style

Eight themes, each in dark and light, and last prices that flash green on an uptick and red on a downtick. Switch any time in Settings › Display; every terminal and browser tab follows.

High Contrast
A simulated TradeShell session: the options chain and a live chart stream, the trader clicks a strike to select it and switches the chart to that option and to one-second candles with the mouse, then scales in with three quick b + 3 presses of 10 contracts each, the engine places a protective stop, trails it as the price rises, and the trader presses m then C, types a limit price of $1.13 and closes the position for a gain when it fills.

Simulated session · sample data

Simulated session · sample data

Algo-assisted trading

Teach your desk your playbook. Coming soon

Small scripts that watch the market and your desk, and act for you: on a market event, a fill, a system event or a hotkey. Describe what you want and the AI assistant writes it, backtests it and suggests improvements, or browse and share proven ones. Every script order goes through the same engine, risk checks and journal as your own keystrokes, and you can always take back control.

scale_out.luaorb_scalp.luadrop_guard.luaConcept · language, API and results illustrative
1-- Scale out into strength, then let the trail do the rest2on("fill", function(fill)3  if fill.side ~= "buy" then return end4  desk.protect { stop = "recent_low", minutes = 5, max = "12%" }5end)6 7on("quote", function(q)8  local pos = desk.position(q.symbol)9  if pos and pos.gain_pct >= 25 and not pos.tags.scaled then10    desk.sell(q.symbol, pos.qty // 2, "mid")11    desk.trail { mode = "adaptive" }12    pos.tags.scaled = true13  end14end)15 16hotkey("O", "Scale-out plan on/off", toggle)
1-- Scalp the opening-range breakout on SPY 0DTE2local range = levels.opening_range("SPY", { minutes = 15 })3 4on("bar", function(bar)5  if bar.symbol ~= "SPY" or desk.has_position() then return end6  if bar.close > range.high and bar.volume > 1.5 * bar.avg_volume then7    local call = chain.pick("SPY", { side = "call", delta = 0.50 })8    desk.buy(call, 5, "ask")9    desk.protect { stop = "8%" }10    desk.take_profit { at = "20%" }11  end12end)13 14hotkey("R", "Breakout scalp on/off", toggle)
1-- Get out when the floor gives way2on("quote", function(q)3  local pos = desk.position(q.symbol)4  if not pos then return end5 6  if q.change_pct { seconds = 10, price = "bid" } <= -8 then7    desk.flatten(q.symbol, "market")8    desk.pause_entries { minutes = 5, reason = "sudden drop" }9    notify("Sudden drop: exited " .. q.symbol)10  end11end)
Script assistantconcept
When I’m filled, put my stop under the recent 5-minute low. Sell half at +25% and trail the rest. Let me toggle it with O.

Drafted scale_out.lua. It respects your risk limits and never sells more than you hold.

Backtest it on my last 60 sessions of SPY 0DTE.

Replayed 60 sessions of recorded quotes through the same engine that trades live:

Trades
214
Win rate
58%
Avg win / loss
1.6×
Max drawdown
−6.2%

In strong trends, selling at +25% left money on the table. Scaling out at +30% with an adaptive trail did better in replay. Compare both?

CompareApply
When SPY closes a 1-minute bar above the first 15 minutes’ high on strong volume, buy 5 at-the-money calls. Stop at −8%, take profit at +20%.

Drafted orb_scalp.lua. It holds one position at a time and goes through your risk limits like any order you place.

How would it have done over the last 90 sessions?

Replayed 90 sessions of recorded bars and option quotes:

Trades
71
Win rate
49%
Avg win / loss
2.1×
Max drawdown
−9.4%

Most losers were breakouts after 10:30, when volume fades. Trading only before 10:30 cut the drawdown to −5.1% in replay. Add the time filter?

Add filterCompare
If an option I hold drops 8% in under 10 seconds, get me out at market and block new entries for 5 minutes.

Drafted drop_guard.lua. It runs alongside your stops, so you’re covered even when price gaps straight through them.

Check it against my trades from the last 3 months.

Replayed your 412 trades against recorded quotes, week by week:

Triggered
23×
Saved vs stops
+$1,980
False alarms
4
Entries paused
9

All 4 false alarms fired on wide spreads right after the open. Measuring the drop on the mid price instead of the bid would have skipped them. Update it?

UpdateCompare
  • Market eventsquotes, trades, bars, price levels, volatility
  • Desk eventsfills, stop hits, rejections, P&L thresholds
  • System eventssession open, reconnect, market open or close
  • Your hotkeysbind any script action to a key

Script library

Browse, fork and share with other traders
ExitsScale-out ladderby community · ★ 1.2k
EntriesOpening range breakoutby community · ★ 864
DisciplineCooldown after stop-outby TradeShell · ★ 2.4k
Get early accessHelp shape the scripting API →

Sample listings for illustration.

Review & taxes

Get better every day. Breeze through April.

The traders who last are the ones who review. You can already write journal notes, and your session records every order and fill. Next: a journal that writes itself, a coach that spots your patterns, and a year of fills turned into the forms your accountant wants.

Automatic trade journal

Coming soon
Net P&L+$833.50
Win rate75%
Avg win / loss4.6×
  • 09:41SPY 590C×10Opening range+$420.00
  • 10:12QQQ 505C×15VWAP reclaim+$186.00
  • 11:03SPY 588P×5Chased−$84.50
  • 13:27SPX 5900C×2Trend day+$312.00

Every fill is already recorded by your session, and positions and P&L come from fills, not screenshots. Write your own notes in the app’s Journal today; the automatic journal with trades, tags and these stats is coming soon. Preview with sample data.

AI trading coach

Coming soon
How did I do this week?
Your Opening range setups won 8 of 10. The 3 trades tagged Chased gave back 41% of the week's profit, all entered within 2 minutes of a loss. Try a 5-minute cooldown after a stop-out.

Reads your journal, never your broker password. Suggestions, not signals.

Trader taxes, handled

Coming soon
  • 8949Sales and dispositions, lot by lot
  • Sch DCapital gains summary
  • 6781Section 1256 contracts, 60/40 split
  • TXFImport into TurboTax or H&R Block

Planned: cost basis, wash sales and holding periods computed across all your accounts, reconciled against your broker's 1099. Reports are a tool for you and your tax professional, not tax advice.

Multi-broker

One desk. Any of your brokers.

Connect several accounts, across brokers, and trade them all with the same keys, the same protection and the same journal. Switch brokers without retraining your muscle memory.

Alpaca logo

Alpaca

Stocks and options · paper and live

Supported
Tradier logo

Tradier

Stocks and options, including SPX · paper and live

Supported
tastytrade logo

tastytrade

Stocks and options · paper and live

Supported
Interactive Brokers logo

Interactive Brokers

Stocks and options worldwide

Coming soon

Connect with OAuth where your broker supports it. Credentials and access tokens are encrypted when stored and in transit, decrypted only to start your session, and made available only to your session’s container.

Reliability

Calm when the network isn't.

Connections drop. Brokers hiccup. TradeShell is built for it: your screen picks up exactly where it left off, and your positions are always checked against your broker's own records.

See what happens when your connection drops →

Always matches your broker

After every reconnect, and regularly in between, TradeShell checks its orders and positions against your broker and flags anything that differs.

Exits in the right order

Closing cancels your stop, waits for the broker to confirm, then sells, so you never end up with a stray order.

A journal you can trust

Every order and fill is recorded in your trade journal. Positions and P&L come from actual fills, not estimates.

Knows the calendar

Holidays, early closes and extended hours are built in, so nothing surprises you on a half-day.

Pre-trade risk

Size limits, price-band checks against the live quote, and a daily loss limit that blocks new risk but always lets you flatten.

Practice first

The same engine runs paper and live, and a simulated market lets you practice at 3 a.m. on a Sunday.

Security

Your desk is yours alone.

A trading tool holds the keys to your money, so security isn't an add-on here. It's built in at every layer, from your broker login to the screen in front of you.

  • Passwordless sign-in with one-time codes or Google
  • End-to-end encrypted connections between your screens and your session
  • Market data comes from your own broker account, never a shared feed
  • Panic button and daily loss limits are always within reach
L5

Your funds stay with your broker

Orders go only to the account you connect. TradeShell never holds or moves your money.

L4

OAuth and encrypted credentials

Connect with OAuth where your broker supports it, so we never see your password. Credentials and access tokens are encrypted when stored and in transit, decrypted only to start your session, and made available only to your session’s container.

L3

A private, isolated session

Your session runs in its own environment with its own storage. Nothing is shared with other users.

L2

Verified at every step

Every connection is authenticated, and your session checks it again before it accepts a single command. Access expires quickly and renews on its own.

L1

No open doors

Your session has no public address for anyone to find. Your screens reach it over encrypted connections that only you are authorized to open.

FAQ

Questions, answered.

Is TradeShell a broker?

No. TradeShell is trading software. You connect your own brokerage account, and orders are placed with and executed by that broker. We never hold your funds.

Which brokers are supported?

Alpaca, Tradier and tastytrade today, each with paper trading where the broker offers it. Interactive Brokers is coming soon, with more to follow.

How do you keep my broker login safe?

Connect with OAuth where your broker supports it, so TradeShell never sees your password. Broker credentials and access tokens are encrypted when stored and in transit. They are decrypted only to start your session and are made available only to your session’s container.

Where does my market data come from?

From your own broker connection. TradeShell doesn't resell or share market data, so what you see matches what your account is entitled to.

Do I need to install anything?

No. The web client runs in your browser. If you prefer a native terminal, install the tradeshell CLI and attach to the same session; you can use both at once.

Can I try it without a brokerage account?

Yes. Mock sessions run a simulated market and broker, so you can learn the hotkeys and modes at any hour without risking anything.

Where do sessions run, and what if a server fails?

Sessions run in private, isolated environments about 2 ms from major brokerages. If a server fails, your session is restarted on a healthy one automatically, with its data intact, and your screens reconnect on their own. How long that takes depends on the failure, so there is no fixed promise. Stop orders already at your broker keep protecting you meanwhile; the engine’s trailing and other protection resume when the session is back.

What happens if my connection drops mid-trade?

Nothing changes for your positions: your session keeps running in the cloud and keeps your stops in place. When you reconnect, your screen picks up exactly where it left off.

Which instruments can I trade?

TradeShell is built for listed options on stocks, ETFs and indexes, including 0DTE, alongside the underlying. Availability depends on your broker.

Your next trade deserves a faster desk.

Start with a mock session in your browser. Connect a broker when you're ready.