TradersPost Automated Options Trading Setup
TradersPost currently only supports directional options trades. This means that you can only buy and sell calls or puts and you can't have multiple options positions open at the same time on the same underlying ticker in the same broker account.
Some customers separate the positions in separate broker accounts to work around this limitation.
This page covers stock and ETF options (Asset class = Stock Options). For cash-settled index options on SPX, NDX, RUT, XSP, and VIX, see Index Options Trading.
Supported Brokers
Symbol Format
This section outlines the different formats TradersPost supports for representing options contracts. Users are not required to use a specific format based on their connected broker. TradersPost parses and normalizes multiple formats internally and automatically converts them to the correct format required by each broker when submitting orders.
Example Contract
- Underlying: SPY
- Contract Type: Call
- Strike Price: $582.50
- Expiration Date: May 20, 2025
Note: This specific contract is used for demonstration purposes only. A $582.50 strike price for SPY may not exist. The decimal is included to illustrate how different formats handle precision.
Format Comparison
| Platform | Example Format | Date Format | Strike Format | Notes |
|---|---|---|---|---|
| TradersPost | SPY 250520582.5 | YMD | Decimal | Flexible input format. Trailing .0 is optional. |
| TradeStation | SPY 250520C582.5 | YMD | Decimal | Includes call/put indicator (C or P) before strike. |
| Tradier | SPY250520C00582500 | YMD | Integer (scaled) | Strike is zero-padded and scaled (e.g., 582.5 → 00582500). |
| TradingView | SPY250520582.5 | YMD | Decimal | Fully concatenated format without spaces. |
Format Details
Date Formatting
- YMD =
YYMMDD(e.g. May 20, 2025 →250520) - MDY =
MMDDYY(e.g. May 20, 2025 →052025)
Strike Formatting
- Decimal Format: Most formats use a decimal representation of the strike. Trailing zeroes are optional (
582.5or582). - Scaled Integer Format (Tradier): Strike is padded and scaled to four decimal places (e.g.,
582.5→00582500).
Call/Put Indicator
- Some formats include an explicit indicator for option type:
C= CallP= Put
TradersPost Behavior
- Users can input any of the supported formats regardless of broker.
- TradersPost will parse, validate, and normalize the input.
- When sending the order to the broker, TradersPost will format the symbol according to the broker’s specific requirements.
Examples of accepted user input:
SPY 250520582.5SPY_052025582.5SPY250520C582.5SPY250520582.5SPY250520C00582500
Supported Option Types
When setting up a strategy within TradersPost you will have the ability to choose what kind of option to buy or sell when signals are received.
- Both — Buy long calls on
action=buyand buy long puts onaction=sell. - Calls — Buy long calls on
action=buyand sell short calls onaction=sell. - Puts — By default (Invert puts unchecked), buy long puts on
action=buyand sell short puts onaction=sell.
Invert puts is an opt-in strategy setting for put options. When enabled, action=buy sells short puts and action=sell buys long puts — useful when your strategy runs on the underlying chart and sends buy/sell for the stock's direction but trades puts instead of shares.
When option type is Both, put contracts selected from the option chain always use inverted logic regardless of this setting. The checkbox applies when option type is Puts or when you send an explicit put contract in the signal. See Webhooks for details.
Option Chain Scanning
TradersPost offers a variety of different methods for scanning the option chain automatically to find contracts that fit your criteria.
In this example we have configured our strategy subscription to do the following:
- Asset class = Stock Options will buy and sell options contracts.
- Option Type = Both will buy calls when bullish and buy puts when bearish.
- Intrinsic value = In The Money will filter out any Out Of The money contracts.
- Expiration = +3 months will filter out any contracts that expire before 3 months out. If you want to trade same day expiration (0DTE) contracts, then you can enter 0 days in the expiration field or leave the field blank and TradersPost will select the first expiration date returned by the broker. You can enter an expiration in the strategy subscription settings, click save, then you can see the example entry order and the contract that was selected at the top right of the page.
- Strike Count limits how many strikes to analyze per expiration date when we are scanning the option chain. This does not effect which strike gets selected, it just reduces the number of strikes that will be returned from the broker API for each expiration date. As such, there is no optimal value for this field that will change which strike is selected.
- Strikes Away with a value of 3 will select the 3rd contract away from At The Money.

You are able to control the option chain scanning functionality from webhooks. Here is an example:
{
"ticker": "AAPL",
"action": "buy",
"expiration": "+6 months",
"instrinsicValue": "itm",
"optionType": "both",
"strikesAway": 3
}
Or send the exact contract you want to trade instead of using the option chain scanning functionality:
{
"ticker": "AAPL",
"action": "buy",
"expiration": "2023-01-20",
"optionType": "call",
"strikePrice": 325
}
Or send the full option contract symbol in the ticker parameter:
{
"ticker": "AAPL 230120C325",
"action": "buy"
}
Expiration Series Filters
When you configure option chain scanning (in subscription settings or the webhook signal), you can narrow which expirations are considered by series type. TradersPost uses the same filter names on every supported broker:
| Filter | Meaning |
|---|---|
| 0DTE | Expires on the current exchange trading date |
| Daily | Short-term expiration on Monday–Thursday (not a standard monthly) |
| Weekly | Friday short-term expiration that is not the standard monthly cycle day (typically not the third Friday of the month) |
| Monthly | Standard monthly cycle expiration (typically the third Friday of the month) |
| End of Month | Last trading day of a non-quarter-ending month |
| Quarterly | Last trading day of a quarter-ending month (March, June, September, December) |
| LEAPS | Expirations about one year or more out |
0DTE and LEAPS can overlap the other filters. For example, a contract can be both 0DTE and Daily.
You can combine a series filter with a relative Expiration window (for example +3 months) so TradersPost only considers dates that match both.
Stock And ETF Options Use One Symbol Root
Unlike index options, stock and ETF options (for example SPY, QQQ, IWM, AAPL, TSLA) normally use a single option root matching the underlying ticker. Choosing Weekly or Monthly changes which calendar dates are eligible — not which root symbol is queried.
What To Expect From Each Filter
- Weekly — Near-term Friday expirations outside the standard monthly cycle. Liquid names such as
SPYandQQQusually have several of these listed. - Monthly — The regular monthly expirations further out on the cycle.
- Daily — Monday–Thursday short-dated listings. Highly liquid underlyings often have these; many individual stocks do not. An empty Daily list (for example on a less actively listed name) means no matching dates, not a broken connection.
- End of Month / Quarterly — Month-end and quarter-end style expirations when the broker lists them. Some stocks have few or none under Quarterly.
- 0DTE — Only today’s expiration, when one exists.
- LEAPS — Longer-dated contracts about a year or more out.
Broker Differences
For stock and ETF options, supported brokers generally agree on which dates fall under each filter. Small differences can still appear when a broker lists an extra short-dated expiration or classifies a date differently. TradersPost keeps the meaning of each filter consistent; it does not force every broker’s date list to be identical.
For cash-settled index underlyings such as SPX — where monthly and weekly-style contracts can use different roots on the same Friday — see Index Options Trading.
Webhook Signals
It's easy to send signals to TradersPost using Webhooks from platforms like TradingView or TrendSpider. You just need to send JSON like the following to the webhook URL you create within TradersPost.
Inside of TradersPost when setting up a strategy you can configure what kind of option contracts to buy when you receive a signal. Here are the signals you can send and the resulting behavior.
These examples assume the default Both option type, which buys long calls on action=buy and long puts on action=sell. Put behavior also depends on the Invert puts strategy setting when option type is Puts or when you send an explicit put contract. See Webhooks for details.
Enter Bullish
The buy action is a bullish signal. When TradersPost receives a buy signal, TradersPost will Buy To Close or Sell To Close any bearish position for the ticker and enter bullish with Buy To Open long calls.
{
"ticker": "SQ",
"action": "buy"
}
Exit Bullish
The exit action will exit any open position. So for example if you have a long call position open, then TradersPost will Sell to Close those calls.
{
"ticker": "SQ",
"action": "exit"
}
Enter Bearish
The sell action is a bearish signal. When TradersPost receives a sell signal, TradersPost will Sell To Close or Buy To Close any bullish position for the ticker and enter bearish with Buy To Open long puts.
{
"ticker": "SQ",
"action": "sell"
}
Exit Bearish
The exit action will exit any open position. So if you have a long puts position open, then TradersPost will Sell to Close those puts.
{
"ticker": "SQ",
"action": "exit"
}
Full Signal Example
You can optionally include a quantity in the signal that can then be used in the calculated orders that we send to your broker. Here is a full example signal.
{
"ticker": "SQ",
"action": "buy",
"quantity": 5
}
If you configure your strategy subscription to use limit orders and to use the signal quantity, then you will get a Buy To Open Limit order for 5 contracts. If you don’t select entry market or exit market, then we will submit a limit order with the midpoint price.