UNPKG

@thoshpathi/utils-smartapi

Version:

Extended utilities for Angel One's smartapi-javascript SDK, including custom methods and helpers for market data like candles, P&L, and more.

28 lines (25 loc) 1.02 kB
import { intervalMinuteConfigs } from "./chunk-K6S6WDGB.mjs"; // src/candle_utils.ts function getLastCompletedMarketCandle(interval, marketOpenTime = "09:15:00") { const [openHour, openMinute] = marketOpenTime.split(":").map((s) => +s.trim()); const marketOpen = /* @__PURE__ */ new Date(); marketOpen.setHours(openHour, openMinute, 0, 0); const diffMs = +/* @__PURE__ */ new Date() - +marketOpen; if (diffMs < 0) return null; const diffMinutes = Math.floor(diffMs / 6e4); const intervalMinutes = intervalMinuteConfigs[interval]; let completedCandles = Math.floor(diffMinutes / intervalMinutes); const minutesSinceLastCandle = diffMinutes % intervalMinutes; if (minutesSinceLastCandle === 0 && diffMinutes !== 0) { completedCandles -= 1; } const lastCandleMinutes = completedCandles * intervalMinutes; const lastCandleTime = new Date(marketOpen); lastCandleTime.setMinutes(marketOpen.getMinutes() + lastCandleMinutes); return lastCandleTime; } export { getLastCompletedMarketCandle };