Skip to content

[RFC] Add TradeStation Live Data Adapter #3516

@ltamagnone

Description

@ltamagnone

RFC: TradeStation Live Data Adapter

Summary

I would like to contribute a live data adapter for TradeStation, a popular US-based broker supporting futures, equities, and options trading.

Motivation

TradeStation is a well-established broker with:

  • Strong US retail and institutional presence
  • Comprehensive futures markets (CME, CBOT, NYMEX, etc.)
  • Equity and options trading
  • Professional-grade API with OAuth 2.0 authentication
  • Active developer community

Implementation Status

The adapter is already complete and tested:

  • ✅ Full Python implementation following NautilusTrader patterns
  • ✅ OAuth 2.0 authentication with automatic token refresh
  • ✅ Instrument provider for futures, equities, and options
  • ✅ Historical bar data retrieval (minute, daily, weekly, monthly)
  • ✅ Live data client integration
  • ✅ 18 automated tests (8 provider + 10 HTTP client) - all passing
  • ✅ ~85% test coverage
  • ✅ Comprehensive documentation with 3 usage examples
  • ✅ Follows NautilusTrader coding standards (95% compliance)

Technical Details

Architecture:

  • Python-based adapter (similar to Polymarket, Interactive Brokers)
  • HTTP client with OAuth 2.0 authentication
  • InstrumentProvider supporting FuturesContract and Equity types
  • LiveDataClient integration with MessageBus and Cache
  • Sandbox and production environment support

Alignment with Project Goals

  • Professional focus: TradeStation is a regulated US broker targeting serious traders
  • Performance: HTTP-based, efficient polling for bar data
  • Reliability: Comprehensive error handling and automated tests
  • Python implementation: Follows existing Python adapter patterns (Polymarket, IB)
  • Low maintenance: Well-tested, documented, clear code structure

Long-term Maintenance

I am committed to:

  • Maintaining the adapter
  • Responding to bug reports
  • Updating for API changes
  • Supporting users via GitHub issues

API Documentation

  • TradeStation API: https://api.tradestation.com/docs/
  • OAuth 2.0 flow documented
  • RESTful endpoints for market data
  • Rate limits: reasonable for retail/small institutional use

Questions for Maintainers

  1. Does this integration align with NautilusTrader's roadmap?
  2. Are Python-based adapters still accepted, or must new adapters be Rust-based?
  3. Is the implementation approach acceptable? (HTTP polling vs WebSocket)
  4. Any specific requirements before submitting a PR?

Thank you for considering this contribution!

Metadata

Metadata

Assignees

No one assigned

    Labels

    RFCA request for comment

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions