Source: src/sockets/socket-manager.ts — exported latestDataMap

Structure

Keys are typically {index}TickData event names (e.g. niftytickdata lowercase from settings).

Population

  1. ZerodhaEventProcessor.broadcastAll() emits to Socket.IO clients
  2. marketDataEmitter.on('{index}TickData') writes latest tick to latestDataMap[event]

Consumers

Trading controllers read snapshots when evaluating:
  • Recurring buy conditions
  • Trailing sell adjustments
  • Strike match logic
Ensures engine uses same processed snapshot as UI (base, strikes, bid/ask).

Relationship to MongoDB indexData

Historical/indexed tick records may persist via indexData.model.ts; latestDataMap is ephemeral per server process.

Restart behavior

Map is empty on server restart until market data reinitializes and ticks flow again.