Building anything that touches markets means re-implementing the same machinery: indicators that update as candles stream in, option maths, "is the market even open right now?", and a way to simulate trades without risking money. StockKit is that machinery, packaged — the same suite that powers Lacspace’s own StockYatra.

Four packages

- @lacspace/indicators — RSI, MACD and friends as streaming (O(1)) calculators, plus Black-Scholes pricing and greeks.
- @lacspace/market — quotes and candles from one clean client.
- @lacspace/market-clock — market sessions: is it open, when does it close, holidays.
- @lacspace/paper-trade — a full paper-trading engine: positions, orders and P&L.
Streaming, not batch
Recomputing an indicator over the whole history on every tick is how charts get slow. StockKit’s indicators update incrementally, so a live chart or an algo loop stays fast no matter how long it runs.
import { rsi } from '@lacspace/indicators';
const r = rsi(closes, 14); // and O(1) as each new close arrives
Get started
Browse StockKit at lacspace.com/packages, read the API at lacspace.com/docs, and see it live in StockYatra. It’s part of the wider zero-dependency ecosystem.
Frequently asked questions
What is StockKit?
StockKit is the suite of packages that powers StockYatra — @lacspace/indicators (technical indicators + Black-Scholes option greeks), @lacspace/market (market data), @lacspace/market-clock (session/open-close logic) and @lacspace/paper-trade (a full paper-trading engine). Everything a trading, charting or algo app re-implements, done once and zero-dependency.
What indicators are included?
The common technical indicators (RSI, MACD, moving averages and more) implemented for streaming use — O(1) incremental updates as new candles arrive — plus Black-Scholes option pricing and greeks (delta, gamma, theta, vega).
Can I build a paper-trading app with it?
Yes — @lacspace/paper-trade is a complete paper-trading engine (positions, orders, P&L) and it is exactly what StockYatra uses. Pair it with @lacspace/market and @lacspace/market-clock to simulate real sessions with no real risk.
Where does it run?
Anywhere JavaScript runs — Node, edge and the browser — because the packages are isomorphic and zero-dependency. Great for both a backend algo and an in-browser chart.








