Package-level declarations

Types

Link copied to clipboard
class PreviousDayHigh(symbol: String, calendar: TradingCalendar, source: MarketSource, clock: Clock, window: TimeWindow = TimeWindow.ONE_MINUTE) : SessionAnchoredIndicator<BigDecimal>

High of the previous trading day (per calendar). Refreshes once at each daily session boundary; the value is stable for the entire current trading day. Used as a breakout reference ("close above PDH → momentum entry").

Link copied to clipboard
class PreviousDayLow(symbol: String, calendar: TradingCalendar, source: MarketSource, clock: Clock, window: TimeWindow = TimeWindow.ONE_MINUTE) : SessionAnchoredIndicator<BigDecimal>

Low of the previous trading day (per calendar). Mirrors PreviousDayHigh — stable across the current trading day, used as a breakdown reference.

Link copied to clipboard
open class RangeAggregateIndicator<T : Any>(symbol: String, window: TimeWindow, rangeSpec: () -> TimeRange, reduce: (Sequence<Candle>) -> T?, source: MarketSource, clock: Clock, refreshOn: RefreshTrigger)

Base class for indicators whose value derives from a configurable TimeRange of candles (yesterday's high, this-session's low, etc). Subclasses provide the range via rangeSpec and the aggregation via reduce; this class fetches from source, caches the result, and re-evaluates whenever refreshOn fires.

Link copied to clipboard
abstract class SessionAnchoredIndicator<T : Any>(anchor: SessionAnchor, calendar: TradingCalendar, symbol: String, window: TimeWindow, source: MarketSource, clock: Clock, reduce: (Sequence<Candle>) -> T?) : RangeAggregateIndicator<T>

RangeAggregateIndicator specialised for session-anchored ranges — refresh on each session boundary defined by the SessionAnchor + TradingCalendar. Subclasses supply reduce and the concrete anchor (London open, New York close, daily UTC, …).

Link copied to clipboard
class SessionHigh(symbol: String, anchor: SessionAnchor, calendar: TradingCalendar, source: MarketSource, clock: Clock, window: TimeWindow = TimeWindow.ONE_MINUTE) : SessionAnchoredIndicator<BigDecimal>

High of the current session (per anchor + calendar). Refreshes intra-session as new candles land and rolls over at each anchor boundary. Common reference for "have we broken out of this session's range?" rules.

Link copied to clipboard
class SessionLow(symbol: String, anchor: SessionAnchor, calendar: TradingCalendar, source: MarketSource, clock: Clock, window: TimeWindow = TimeWindow.ONE_MINUTE) : SessionAnchoredIndicator<BigDecimal>

Low of the current session — mirror of SessionHigh.