Documentation
HomeGithubDiscordBlog
  • What is OpenAlgo?
  • OpenAlgo Architecture
  • Mini FOSS Universe
  • Community Support
  • OpenAlgo GPT
  • New Features
    • Fast Scalper
    • API Analyzer
    • Traffic/Latency Monitor
    • Chartink Integration
  • Monetization
  • Connect Brokers
    • Brokers
      • 5Paisa
      • 5paisa (XTS)
      • AliceBlue
      • AngelOne
      • Compositedge
      • Dhan
      • Dhan(Sandbox)
      • Firstock
      • FlatTrade
      • Fyers
      • Groww
      • IIFL (XTS)
      • Jainam Retail (XTS)
      • Jainam Dealer (XTS)
      • Kotak Securities
      • Paytm
      • Pocketful
      • Shoonya
      • Tradejini
      • Upstox
      • Wisdom Capital
      • Zebu
      • Zerodha
  • Installation Guidelines
  • Getting Started
    • Windows Installation
      • Pre-Requesites
      • Setup
      • Install Dependencies
      • Ngrok Config
      • Environmental Variables
      • Start OpenAlgo
      • SSL Verification Failed
      • Accessing OpenAlgo
    • Windows Server Installation
    • Mac OS Installation
      • Pre-Requesties
      • Setup
      • Install Dependencies
      • Ngrok Config
      • Environmental Variables
      • Start OpenAlgo
      • Install certifi
      • Accessing OpenAlgo
    • Amazon Elastic Beanstalk
    • Ubuntu Server Installation
    • Docker Development
    • Testing OpenAlgo in Cloud
    • Upgrade
  • Latency
  • API Documentation
    • V1
      • Accounts API
        • Funds
        • Orderbook
        • Tradebook
        • PositionBook
        • Holdings
      • Orders API
        • Placeorder
        • PlaceSmartOrder
        • BasketOrder
        • SplitOrder
        • ModifyOrder
        • CancelOrder
        • CancelAllOrder
        • ClosePosition
        • OrderStatus
        • OpenPosition
      • Data API
        • Quotes
        • Depth
        • History
        • Intervals
        • Symbol
        • Ticker
      • Websockets
      • Order Constants
      • HTTP Status Codes
      • Rate Limiting
      • API Collections
  • Symbol Format
  • MCP
  • Trading Platform
    • Amibroker
      • AmiQuotes
      • Button Trading Module
      • Button Trading with Split Orders
      • Button Trading with Stoploss
      • SmartOrder Chart Module
      • Trailing Stoploss Execution Module
      • Line Trading Module
      • Equity Exploration Module
      • CSV Exploration Module
      • Options Button Trading Module
      • Spot/Futures to Options Module (Single Leg)
      • Spot/Futures to Options Module (Two Leg)
      • Time Based Execution
    • Tradingview
      • Futures to Options Module
    • ChartInk
    • Python
      • Strategy Management
      • EMA Crossover Strategy
      • EMA Crossover Strategy with Stoploss and Target
      • Supertrend Strategy
      • Supertrend Strategy with yfinance data
      • Voice Based Orders
    • NodeJS
    • Metatrader 5
      • Download & Install Library
      • OpenAlgo MQL5 Functions
      • Include the Header File
      • Sample Expert Advisor
    • Excel
    • Google Spreadsheets
    • N8N
    • Chrome Extension
  • Strategy Management
  • Developers
    • Design Documentation
      • Architecture
      • API Layer
      • Broker Integerations
      • Database Layer
      • Authentication Platforms
      • Configuration
      • Utilities
      • Broker Integration Checklist
  • Change Log
    • Version 1.0.0.25 Launched
    • Version 1.0.0.24 Launched
    • Version 1.0.0.23 Launched
    • Version 1.0.0.22 Launched
    • Version 1.0.0.21 Launched
    • Version 1.0.0.20 Launched
    • Version 1.0.0.19 Launched
    • Version 1.0.0.18 Launched
    • Version 1.0.0.17 Launched
    • Version 1.0.0.16 Launched
    • Version 1.0.0.15 Launched
    • Version 1.0.0.14 Launched
    • Version 1.0.0.13 Launched
    • Version 1.0.0.12 Launched
    • Version 1.0.0.11 Launched
    • Version 1.0.0.10 Launched
    • Version 1.0.0.9 Launched
    • Version 1.0.0.8 Launched
    • Version 1.0.0.7 Launched
    • Version 1.0.0.6 Launched
    • Version 1.0.0.5 Launched
    • Version 1.0.0.4 Launched
    • Version 1.0.0.3 Launched
    • Version 1.0.0.2 Launched
    • Version 1.0.0.1 Launched
    • Version 1.0.0.0 Launched
Powered by GitBook
On this page
  • ✅ OpenAlgo Broker Integration Checklist (Updated)
  • 1. Pre-Integration Checks
  • 2. Authentication
  • 3. Funds & Margin
  • 4. Master Contract Handling
  • 5. Order APIs
  • 6. Order Status & Books
  • 7. Positions
  • 8. Portfolio & Holdings
  • 9. Market Data APIs
  • 10. Final Testing & Edge Cases
  • 🔒 Additional Recommended Checks
  1. Developers
  2. Design Documentation

Broker Integration Checklist

New Broker Integeration with OpenAlgo - Checklist


✅ OpenAlgo Broker Integration Checklist (Updated)


1. Pre-Integration Checks

  • Review broker's API documentation (REST, WebSocket, SDKs).

  • Confirm sandbox or test environment availability.

  • Identify rate limits, session expiry behavior, reconnection strategies.


2. Authentication

  • Verify token generation (API Key + Secret or OAuth flow).

  • Ensure successful login redirects to dashboard or access token endpoint.

  • Check token refresh or re-authentication mechanism.


3. Funds & Margin

Fetch and normalize:

  • Available Cash

  • Collateral

  • Utilized Margin

  • Realized & Unrealized P&L

✔ Store in OpenAlgo’s format via /broker/api/funds.py


4. Master Contract Handling

  • Download and persist contracts for NSE, NFO, BSE, BFO, MCX, CDS, INDEX.

  • Normalize symbols into OpenAlgo’s format.

  • Validate NSE_INDEX and BSE_INDEX symbols.

  • Validate special characters in symbols (e.g. M&M).


5. Order APIs

Transform broker fields into OpenAlgo common format.

Place Order

  • Test all Order Types:

    • MARKET, LIMIT, SL, SL-MKT

  • Verify across all supported exchanges:

    • NSE, BSE (Cash), NFO/BFO (F&O), MCX (Commodities), Currencies

  • Ensure accurate field mapping for symbol, order type, qty, price, product, etc.

Modify Order

  • NOTE: OpenAlgo does not support order type conversion (e.g., Limit → Market).

  • Only support modifying Limit orders to other Limit orders (change price, quantity).

  • Block or log attempts to convert order types.

Cancel Order(s)

  • Support single order cancellation.

  • Support bulk cancellation across segments.

Smart Orders (PlaceSmartOrder)

  • Test across all supported exchanges (NSE, NFO, MCX, CDS, BSE).

  • Test position size increase → should trigger order for difference.

  • Test position size decrease → square-off excess quantity.

  • Test with position_size = 0 → must square off full open position.

  • If position_size is same as open position → no order should be triggered.

  • Validate against actual values in PositionBook.


6. Order Status & Books

OrderBook

  • Validate:

    • Trading Symbol, Exchange, Transaction Type

    • Price, Trigger Price, Quantity, Product Type

    • Order ID, Status, Timestamp

  • Confirm Order Stats: Total Buy/Sell/Open/Rejected/Completed

TradeBook

  • Ensure mapping of:

    • Transaction Type, Fill Price, Quantity, Order ID, Fill Time


7. Positions

PositionBook

  • Map:

    • Net Qty, Avg Price, LTP, P&L, Product Type

OpenPosition

  • Fetch open position quantity from broker.

  • Validate broker → OpenAlgo symbol transform.

  • Test for all supported exchanges and indices (NSE_INDEX, BSE_INDEX).


8. Portfolio & Holdings

  • Validate:

    • Trading Symbol, Quantity, Exchange, Product

    • Investment Value, Current Value, Absolute & % P&L

  • Confirm Portfolio stats:

    • Total Holding Value, Investment Value, Total P&L


9. Market Data APIs

Quotes

  • Test for all supported exchanges and indices (NSE_INDEX, BSE_INDEX).

  • Validate special characters (e.g. M&M).

  • If REST Quote API is not available:

    • Fetch via broker WebSockets.

Depth (Market Ladder)

  • Ensure L5 depth is mapped correctly.

  • If REST Depth API is not available:

    • Fetch via broker WebSockets.

Historical Data

  • Test intervals: 1m, 3m, 5m, 15m, 1h, 1d, W, M.

  • If intraday candles are missing:

    • Backfill with Quotes API.

  • Chunk data if date range exceeds limits.

  • Ensure timestamps are in IST.


10. Final Testing & Edge Cases

  • End-to-end test: Place → Modify → Cancel → Square Off. Perform complete order lifecycle test

  • Test partial fills, expired sessions, rejected orders.

  • Validate consistent error handling and fallback response.

  • Run integration tests across all supported segments


🔒 Additional Recommended Checks

  • Ensure secure use of .env for API keys.

  • Avoid exceeding rate limits while integerating broker API


Let me know if you’d like a version of this adapted for onboarding documentation, automated test scripts, or as a GitHub Wiki entry.

PreviousUtilitiesNextVersion 1.0.0.25 Launched

Last updated 1 month ago

📘 Refer:

Symbol Format Guide