Demo Environment

Demo Environment Overview

The demo environment offers users a secure space to explore Studio Trading and Risk. It allows users to get a feel for the actual system and test out the API without the risk of submitting live orders. By working with mocked data, this setup allows users to familiarize themselves with the platform's capabilities and functionality in a safe and controlled environment.

Order Execution

In the demo environment, orders are automatically filled to provide a seamless testing experience. The fills are simulated based on the following rules:

  • Market and Stop Market Orders: Filled based on the last trade price.
  • Limit Orders: Filled at the specified limit price.
  • Stop Market and Stop Limit Orders: Filled at the specified stop price.

Market Data

The market data in the demo environment is not live; it is recorded market data that is replayed. This data serves multiple purposes and is used to simulate the platform's behavior closely. The market data is used for the following purposes:

  • Market Data Display: Shown in the order ticket in the UI. The market data in the charts is live and may not match the price in the order ticket.
  • Risk and P&L Calculations: Used to drive simplified but realistic risk and P&L calculations.
  • Buying Power Calculation: Used as the reference price in buying power calculations.

The demo environment only has recorded market data for the following subset of symbols:

  • ETB (Easy-to-Borrow) Symbols: These symbols do not require locates for shorting and include:
    • AAPL, NVDA, MSFT, AMZN, GOOG, META, TSLA, BRK B, TSM, AVGO, WMT, LLY, JPM, V, UNH
  • Non-ETB Symbols: These symbols require locates before shorting and include:
    • XOM, ORCL, MA, NVO, COST

You will not be able to see market data for any other symbol, but orders can still be submitted for symbols that do not have market data. For these:

  • The reference price defaults to $0.01.
  • They are classified as non-ETB and require locates before shorting.
  • They are excluded from risk and P&L calculations.

Options Trading

Overview
Option trading in the demo environment is available via the API only. Your account must be enabled for option trading before you can submit option orders. To request access to EMS_CAN_TRADE_OPTIONS_SOR, contact [email protected]. If you submit an option order without the permission enabled, the API will return an error.

Supported Symbols
The demo environment supports a curated set of SPX index option contracts. These symbols have been selected to cover a range of expirations, strikes, and contract types, giving you enough coverage to build and test any standard multi-leg strategy (verticals, straddles, strangles, iron condors, calendar spreads, and so on).

OSI SymbolExpiryTypeStrike
SPX 260918C05800000Sep 18, 2026Call$5,800
SPX 260918C06000000Sep 18, 2026Call$6,000
SPX 260918P05500000Sep 18, 2026Put$5,500
SPX 260918P05700000Sep 18, 2026Put$5,700
SPX 261219C05800000Dec 19, 2026Call$5,800
SPX 261219C06200000Dec 19, 2026Call$6,200
SPX 261219P05400000Dec 19, 2026Put$5,400
SPX 261219P05800000Dec 19, 2026Put$5,800
SPX 270319C05900000Mar 19, 2027Call$5,900
SPX 270319C06300000Mar 19, 2027Call$6,300
SPX 270319P05500000Mar 19, 2027Put$5,500
SPX 270319P05900000Mar 19, 2027Put$5,900

Constraints and Behavior

  • No market data: unlike the equity symbols listed in the Market Data section above, these option symbols have no recorded market data. As a result:
    • The reference price for all option symbols defaults to $0.01
    • Market orders will fill at $0.01. To test realistic fill scenarios, use limit orders and specify the price explicitly
    • Option symbols are excluded from risk and P&L calculations
  • Supported order types:
    • Limit and Market orders for option symbols.
    • Multi-leg orders are supported
  • Non-Supported order types:
    • Stop Market and Stop Limit orders
  • Expiry: because the demo environment resets daily, option expiry is not a material concern — any positions held at expiry will be cleared in the daily reset before exercise or assignment logic would apply

Example: Placing an Option Order

The following example submits a limit order to buy one SPX call expiring Sep 18, 2026 at a $5,800 strike. Replace {account_id} with your demo account ID and {token} with a valid bearer token obtained via the OAuth2 flow.

curl --request POST \
  --url <https://demo-api.clearstreet.io/studio/v2/accounts/{account_id}/orders> \
  --header 'accept: application/json' \
  --header 'authorization: Bearer {token}' \
  --header 'content-type: application/json' \
  --data '{
    "order_type": "limit",
    "time_in_force": "day",
    "symbol": "SPX   260918C05800000",
    "symbol_format": "OSI",
    "side": "buy",
    "quantity": "1",
    "price": "10.50"
  }'

Locate Functionality

The demo environment supports locate functionality. Locate requests will be automatically filled, ensuring a smooth testing experience for users engaging in short-selling workflows. To test this workflow, we recommend using any of the five non-ETB symbols listed above or any symbols missing market data.

Daily Reset

The demo environment is reset daily, and information from the previous day is not saved. Every morning, new positions and locates are automatically added.

Getting Started

Instructions for connecting to the demo environment can be found here.


Did this page help you?