Algorithmic Trading

NSE Options Screener

Screener to filter stocks based on their options market dynamics

Stock ScreenersPrice ActionOption ChainVolatiltyOI AnalysisZerodhaWebsocketsWeb DevelopmentAPI DevelopmentNextjsTypescriptPythonFastAPICron

Problem Statement

An Indian fund manager wanted an application that would screen stocks and send alerts in real-time based on activity in the derivatives market. It was necessary to be able to setup any type of screener with multiple rules involving a large number of price action metrics. The tool was required to scan all stocks and indices with derivatives traded on the NSE.

Challenges

  • Management of large amounts of real-time data retrieved over websockets
  • Designing of a framework that would allow for hundreds of possible rules to be applied to screen stocks
  • Building fail-safe redundancies to ensure continuous data capture during market hours

Solution

Summary

I developed and deployed a nextjs web application with various frontend features and a robust python backend. I established background processes for data management, housekeeping and storage of results for long-term analysis.

Key Features

  • Daily liquidity analysis to screen out illiquid and non-tradeable instruments
  • Automatic capture of newly trading symbols
  • Data streaming pipeline to handle real-time data retrieved from Zerodha websockets
  • Rules definition framework that allows for hundreds of possible rules to be applied to screen underlyings based on price action of derivatives and other custom metrics
  • Intuitive user-friendly interface to setup and manage screeners
  • Live tracking of underlying and derivative prices through a custom chart visualization
  • Optional real-time telegram alerts
  • Easy access process logs and notifications for monitoring
  • Authentication for secured access

Technologies Used

  • React/Nextjs with typescript for frontend
  • Tailwindcss for styling
  • NextAuth and bcrypt for authentication and encryption
  • Python FastAPI backend
  • Websockets for real-time data streaming
  • Cron for process scheduling
  • Json, Parquet and Pickle for temporary data storage
Liquidity Analysis

Liquidity Analysis

Live Price Tracker

Live Price Tracker

Screener Rules Definition Framework

Screener Rules Definition Framework

Example Screener Results

Example Screener Results

Results & Impact

All NSE/BSE F&O (~235)

Underlyings tracked

1 min

Screening Frequency

< 5 seconds

Latency between signal to alert

Have a similar challenge?

Let's discuss how we can develop solutions for your specific use case.

More Case Studies