MarketDataInterface class abstract
- Implementers
- Available extensions
Constructors
Properties
-
atmSymbols
→ Future<
String?> -
JSON array of
[ceSymbolInfo, peSymbolInfo]for the ATM strike, nearest expiry. Required for scalper right-panel initialization. Awaited on scalper init, so it's safe to resolve this after background data (e.g. option chain) finishes loading. Resolve to null to leave the right panel blank.no setter -
chartTopOptions
→ Future<
String> -
Stream of top options ranked by active volume (market movers).
no setter
- effectiveUnderlying → SymbolInfo
-
Available on MarketDataInterface, provided by the MKTDataX extension
The underlyingSymbolInfo. Falls back to parseSymInfo when underlyingSymbolInfo is null (i.e. the charted symbol is itself the underlying).no setter - futureSymbols → String?
-
Future contracts for the underlying symbol.
no setter
- hashCode → int
-
The hash code for this object.
no setterinherited
- indexSymbols → String?
-
All known index symbols available in the app.
no setter
- isEffectiveUnderlyingIndex → bool
-
Available on MarketDataInterface, provided by the MKTDataX extension
Whether effectiveUnderlying is a spot index (e.g. NIFTY, BANKNIFTY) — as opposed to symbolIsIndex, which asks about the currently charted symbol itself.no setter - marketTiming → String
-
Exchange calendar JSON.
no setter
- optionSymbols → String
-
Option contracts for the underlying symbol's chain.
no setter
-
parseFutureSymbols
→ List<
SymbolInfo> -
Available on MarketDataInterface, provided by the MKTDataX extension
futureSymbols decoded intoSymbolInfos, sorted by expiry. Empty when futureSymbols is null or empty.no setter -
parseIndexSymbols
→ List<
SymbolInfo> -
Available on MarketDataInterface, provided by the MKTDataX extension
indexSymbols decoded intoSymbolInfos. Empty when indexSymbols is null or empty.no setter - parseMarketTiming → MarketTiming
-
Available on MarketDataInterface, provided by the MKTDataX extension
marketTiming decoded into aMarketTiming.no setter - parseSymInfo → SymbolInfo
-
Available on MarketDataInterface, provided by the MKTDataX extension
symbolInfo decoded into aSymbolInfo.no setter - runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- symbolInfo → String
-
The symbol being charted (option, future, equity, or index).
no setter
- symbolIsIndex → bool
-
Available on MarketDataInterface, provided by the MKTDataX extension
Whether the currently-charted symbol ITSELF is a spot index (e.g. NIFTY, BANKNIFTY) — as opposed to isEffectiveUnderlyingIndex, which asks about the underlying. Indices have no traded volume, so indicators that read it (e.g. Volume) should be unavailable rather than showing a flat zero; an option/future ON an index still has real volume and must stay unaffected.no setter - underlyingSymbolInfo → String?
-
The underlying symbol when symbolInfo is a derivative
(option or future). Null when symbolInfo is itself the
underlying (equity or index).
no setter
Methods
-
chartInterfaceForSymbol(
String symbolJson) → ChartInterface? -
Return a ChartInterface configured for the symbol described by
symbolJson(same JSON shape as symbolInfo), or null to disable chart navigation from symbol selection -
fetchAtmIvIntraday(
) → Future< String> - Historical ATM Implied Volatility, sampled once per minute.
-
fetchAtmStraddleIntraday(
) → Future< String> - Historical ATM Straddle premium (call + put LTP at the ATM strike), sampled once per minute.
-
fetchOI(
{required String underlyingSymbolId, required List< String> expiries}) → Future<String?> -
Absolute OI (only) as of now, summed across
expiries, per strike -- powers the OI Profile indicator's bars, as an alternative to the single feed-providedMarketData.oI. A point-in-time snapshot, so unlike fetchOIChange there's no lookback window to pass. -
fetchOIAnalysis(
{required String underlyingSymbolId, required String expiry, required int timeFrom, required int timeTo}) → Future< String?> -
OI, OI-change, and previous-OI for the ATM +/- 5 strikes (11 total)
of
expiry, measured over the windowtimeFrom..timeTo(unix seconds) -- powers the OI Analysis screen. The SDK does not pass a strike range: implementations must derive the current ATM strike themselves (the same way atmSymbols already does) and resolve data for the 5 strikes on either side of it. parseOIAnalysis additionally trims the result to that window client-side, so an implementation that returns more than 11 strikes is still handled correctly. -
fetchOIChange(
{required String underlyingSymbolId, required List< String> expiries, required int timeFrom, required int timeTo}) → Future<String?> -
OI change (only) over the window
timeFrom..timeTo(unix seconds), summed acrossexpiries, per strike -- powers the OI Profile indicator's change values and the OI Change Analysis screen, as an alternative to the single feed-providedMarketData.oIChng. -
fetchOptionDetails(
{required String underlyingSymbolId}) → Future< String> - Option contracts for the underlying symbol's chain.
-
fetchPcrIntraday(
) → Future< String> - Historical Put/Call OI ratio, pre-computed per strike range, so the Analysis screen's PCR tab can show its full session range immediately
-
loadData(
{required String symbolId, required int from, required int to, required int intervalSeconds, required int requiredBars}) → Future< String> -
Called when the chart needs interval data.
symbolIdidentifies which symbol's OHLC data to fetch. -
marketDataStreamer(
String symbols) → Stream< String> - Multi-symbol live tick stream.
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
parseOI(
{required String underlyingSymbolId, required List< String> expiries}) → Future<OIStrikeValues> -
Available on MarketDataInterface, provided by the MKTDataX extension
Convenience wrapper over MarketDataInterface.fetchOI that handles the JSON decode -- see that method's doc for the underlying contract. -
parseOIAnalysis(
{required String underlyingSymbolId, required String expiry, required int timeFrom, required int timeTo, required double atm, int eachSide = 5}) → Future< OIAnalysisSnapshot> -
Available on MarketDataInterface, provided by the MKTDataX extension
Convenience wrapper over MarketDataInterface.fetchOIAnalysis that handles the JSON decode and trims the result to the ATM +/-eachSidewindow (by strike count, not price distance) usingatm-- see that method's doc for the underlying contract. -
parseOIChange(
{required String underlyingSymbolId, required List< String> expiries, required int timeFrom, required int timeTo}) → Future<OIStrikeValues> -
Available on MarketDataInterface, provided by the MKTDataX extension
Convenience wrapper over MarketDataInterface.fetchOIChange that handles the JSON decode -- see that method's doc for the underlying contract. -
searchSymbolsStreamer(
String query) → Stream< String> -
Search for symbols matching
query. Called once per debounced keystroke — the chart takes only the stream's first emission, so a single result (or an empty"[]") is enough; no need to keep pushing updates for the same query. -
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited