Stock Movement Profile
A quantitative analytics tool that studies historical price behaviour, recurring market setups, probability of outcomes, and risk distributions.
Overview
Stock Movement Profile is a quantitative analytics tool built to study how a stock has historically behaved under different market conditions.
Instead of trying to predict the next move, the tool focuses on a more data-driven question:
What has historically happened when a similar setup occurred?
It analyses historical OHLC data to identify recurring patterns, measure their outcomes, and understand the probability and risk associated with different scenarios.
Key Features
- Open-to-close and close-to-close return analysis
- Gap and overnight behaviour analysis
- Intraday range and volatility analysis
- Price positioning within the daily range
- Distribution analysis of historical returns
- Pattern and setup analysis
- Historical win rates and forward returns
- Risk and outcome distributions
- Probability analysis
- Monte Carlo simulations
- VaR and Expected Shortfall
- Volatility regime detection
- Market structure clustering
Pattern Analysis
The tool evaluates recurring market setups such as:
- Gap Up / Gap Down
- Open = High / Open = Low
- Inside Days
- Strong Trend Days
- Wide and Narrow Range Days
For each setup, the analysis looks at factors such as historical frequency, win rate, average forward return, and the distribution of outcomes.
Why I Built It
I wanted to move beyond simply looking at charts and ask a more useful research question:
When this setup has happened before, what usually happened next?
The goal is to use historical data and probabilities to better understand market behaviour, rather than relying only on directional predictions.
Technology
Built using Python with a browser-based dashboard.
The analytics engine and API are handled through Python, while the dashboard provides the interface for exploring the results.
Project Repository
The complete source code is available on GitHub.
https://github.com/yash-sarawgi/Stock-Movement-Profile