How it works
Every number on this site is computed, not curated. From 1-minute price bars to a correlation graph with five centrality metrics — no step is a black box.
Prices in. Structure out.
The full data pipeline, from raw OHLCV bars to the structural map you see on the platform.
The data
OHLCV 1-minute bars for the NIFTY-50 universe from NSE, sourced via Angel Broking’s SmartAPI. Resampled to your chosen interval (1m, 5m, 15m, 1h, 1d) and converted to log-returns over a trailing window. No interpolation. No backfill. If a bar is missing, it stays missing. TMPV, which has no trading history, is excluded — we would rather drop a name than fake one.
The window length is the single most consequential parameter in the whole pipeline. A 30-bar and 120-bar window will share roughly 25% of their strongest edges. We let you move the window and watch what changes, because most vendors pick one and never show you the others.
Correlation
Pearson correlation on log-returns across the trailing window produces a dense 49×49 matrix. We also support Spearman (rank) correlation. Each cell is the co-movement coefficient between two stocks over the current window.
The correlation matrix is the raw material. It captures every pairwise relationship in the universe — but it is noisy and dense. The next step turns it into structure.
Graph construction
The dense correlation matrix is sparsified into a weighted graph. Each stock becomes a node; each surviving correlation becomes an edge. The sparsifier controls which edges survive — it is a modelling choice, and it is yours.
Minimum Spanning Tree (Mantegna) keeps the N−1 edges that form the cheapest connected tree. kNN connects each node to its k most-correlated neighbours. Threshold keeps all edges above a cutoff. Complete keeps everything. Each method answers a different structural question.
Community detection
The Louvain algorithm partitions the graph into communities — groups of stocks more densely connected to each other than to the rest. It maximises modularity (Q), which measures how real the separation is. Q > 0.3 is considered meaningful structure.
Louvain is fast enough to rebuild the graph per as-of day, which is what makes the time-series product possible. We run it with a fixed seed, so the same input always yields the same partition. Modularity is reported with every result so you can judge the separation yourself.
Centrality metrics
Five measures score each stock’s position in the graph, rebuilt per as-of day. Together they answer: is this stock a hub, a bridge, a satellite, or an outlier?
Five ways to measure position
Each metric answers a different structural question. No single number tells the whole story.
Eigenvector centrality
Measures influence through connections to other influential nodes. A stock connected to five central banks scores higher than one connected to five peripheral chemicals. It captures systemic influence — the stocks that, if they move, tend to pull the whole market with them. Our flagship metric.
Betweenness centrality
Counts how often a stock lies on the shortest path between every other pair in the graph. High betweenness means the stock is a bridge — it connects clusters that would otherwise be separate. These bridge stocks transmit shocks between sectors.
PageRank
Google’s algorithm applied to stock correlations. Recursive importance: a stock is important if important stocks are correlated with it. Differs from eigenvector centrality in how it handles the directed-flow analogy.
Degree strength
The sum of all edge weights attached to a stock. Raw connectivity — how much total correlation this node carries. Simple and interpretable.
Closeness centrality
How quickly information could spread from this node to every other node in the graph. A stock with high closeness is structurally “near” the centre; one with low closeness sits on the periphery.
And why we don't ship it
We tested it. Our own research rejects it. So there is no lead-lag product.
Granger causality across all 2,450 directed pairs in the NIFTY-50, with multiple lag structures. After Benjamini-Hochberg false-discovery-rate correction at 10%, zero pairs survive.
Granger causality tests whether past values of stock A help predict future values of stock B, beyond what B's own past predicts. In theory it could reveal lead-lag relationships. In practice, with 2,450 pairs and multiple hypothesis tests, any apparent leads are indistinguishable from noise after FDR correction.
We could have shipped it anyway — most vendors do — but it would be selling a false positive. Nothing on this site shows a directed flow between two stocks, because that would imply a relationship our own research rejects.
Graph-based overlap
Traditional overlap counts shared tickers. Graph overlap finds shared structure.
Traditional portfolio overlap counts shared tickers between two portfolios. Graph-based overlap goes further: if two stocks are in the same Louvain community with high mutual correlation, your portfolio carries concentrated risk even if the tickers are different.
Upload your holdings and see how much of your book is the same structural bet wearing different names. Five stocks in the same dense cluster is one bet with five tickers — and a sector-allocation chart won't show you that.
The engine is running. Set your own window, universe, and metrics — then look.