Product
Introducing License Enforcement in Socket
Ensure open-source compliance with Socket’s License Enforcement Beta. Set up your License Policy and secure your software!
Description • Installation • Usage • Features • Contributing • Credits • License
ts-api is an unofficial wrapper for the TradeStation API. It aims to be as light and unopinionated as possible, offering an elegant programmatic interface over each endpoint. Notable functionality includes:
ts-api is very much a work in progress and is currently not feature complete. See the Issues to make a suggestion.
In-flight features include:
ts-api has two core goals:
# Install ts-api
pip install ts-api
# Import the TradeStation auth package
import ts.auth as a
# Establish your client
client = a.easy_client("key", "secret", "redirect")
# Call your endpoint
account = client.user_accounts("user_id")
Currently ts-api supports all non-streaming routes found in the TradeStation API Specification. Details for each route can be found below.
All URIs are relative to https://api.tradestation.com
Class | Method | HTTP request | Description |
---|---|---|---|
BrokerageApi | get_accounts | GET /v3/brokerage/accounts | Get Accounts |
BrokerageApi | get_balances | GET /v3/brokerage/accounts/{accounts}/balances | Get Balances |
BrokerageApi | get_balances_bod | GET /v3/brokerage/accounts/{accounts}/bodbalances | Get Balances BOD |
BrokerageApi | get_historical_orders | GET /v3/brokerage/accounts/{accounts}/historicalorders | Get Historical Orders |
BrokerageApi | get_orders | GET /v3/brokerage/accounts/{accounts}/orders | Get Orders |
BrokerageApi | get_positions | GET /v3/brokerage/accounts/{accounts}/positions | Get Positions |
BrokerageApi | get_wallets | GET /v3/brokerage/accounts/{account}/wallets | Get Wallets |
MarketDataApi | get_bars | GET /v3/marketdata/barcharts/{symbol} | Get Bars |
MarketDataApi | get_crypto_symbol_names | GET /v3/marketdata/symbollists/cryptopairs/symbolnames | Get Crypto Symbol Names |
MarketDataApi | get_option_expirations | GET /v3/marketdata/options/expirations/{underlying} | Get Option Expirations |
MarketDataApi | get_option_risk_reward | POST /v3/marketdata/options/riskreward | Get Option Risk Reward |
MarketDataApi | get_option_spread_types | GET /v3/marketdata/options/spreadtypes | Get Option Spread Types |
MarketDataApi | get_option_strikes | GET /v3/marketdata/options/strikes/{underlying} | Get Option Strikes |
MarketDataApi | get_quote_snapshots | GET /v3/marketdata/quotes/{symbols} | Get Quote Snapshots |
MarketDataApi | get_symbol_details | GET /v3/marketdata/symbols/{symbols} | Get Symbol Details |
OrderExecutionApi | cancel_order | DELETE /v3/orderexecution/orders/{orderID} | Cancel Order |
OrderExecutionApi | confirm_group_order | POST /v3/orderexecution/ordergroupconfirm | Confirm Group Order |
OrderExecutionApi | confirm_order | POST /v3/orderexecution/orderconfirm | Confirm Order |
OrderExecutionApi | get_activation_triggers | GET /v3/orderexecution/activationtriggers | Get Activation Triggers |
OrderExecutionApi | place_group_order | POST /v3/orderexecution/ordergroups | Place Group Order |
OrderExecutionApi | place_order | POST /v3/orderexecution/orders | Place Order |
OrderExecutionApi | replace_order | PUT /v3/orderexecution/orders/{orderID} | Replace Order |
OrderExecutionApi | routes | GET /v3/orderexecution/routes | Get Routes |
All URIs are relative to https://api.tradestation.com
Class | Method | HTTP request | Description |
---|---|---|---|
BrokerageApi | stream_orders | GET /v3/brokerage/stream/accounts/{accountIds}/orders | Stream Orders |
BrokerageApi | stream_orders_by_order_id | GET /v3/brokerage/stream/accounts/{accountIds}/orders/{ordersIds} | Stream Orders by Order Id |
BrokerageApi | stream_positions | GET /v3/brokerage/stream/accounts/{accountIds}/positions | Stream Positions |
BrokerageApi | stream_wallets | GET /v3/brokerage/stream/accounts/{account}/wallets | Stream Wallets |
MarketDataApi | get_option_chain | GET /v3/marketdata/stream/options/chains/{underlying} | Stream Option Chain |
MarketDataApi | get_option_quotes | GET /v3/marketdata/stream/options/quotes | Stream Option Quotes |
MarketDataApi | stream_bars | GET /v3/marketdata/stream/barcharts/{symbol} | Stream Bars |
MarketDataApi | stream_market_depth_aggregates | GET /v3/marketdata/stream/marketdepth/aggregates/{symbol} | Stream Market Depth Aggregates |
MarketDataApi | stream_market_depth_quotes | GET /v3/marketdata/stream/marketdepth/quotes/{symbol} | Stream Market Depth Quotes |
MarketdataApi | search_symbols | GET /v2/data/symbols/search/{criteria} | Search for Symbols |
MarketdataApi | suggestsymbols | GET /v2/data/symbols/suggest/{text} | Suggest Symbols |
MarketDataApi | get_quote_change_stream | GET /v3/marketdata/stream/quotes/{symbols} | Stream Quotes |
If you've found a problem, you can open an issue!
If you have a solution to one of the open issues, you will need to fork the repository and submit a pull request.
Big thanks to the great people on Discord. You know who you are.
GitHub @pattertj
FAQs
An unofficial wrapper for the TradeStation API.
We found that ts-api demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Product
Ensure open-source compliance with Socket’s License Enforcement Beta. Set up your License Policy and secure your software!
Product
We're launching a new set of license analysis and compliance features for analyzing, managing, and complying with licenses across a range of supported languages and ecosystems.
Product
We're excited to introduce Socket Optimize, a powerful CLI command to secure open source dependencies with tested, optimized package overrides.