Struct Quote
- Namespace
- MassiveDotNet.Rest.Models
- Assembly
- MassiveDotNet.Rest.dll
One NBBO quote from the v3 quotes feed: bid and ask price, size, and exchange, with conditions, indicators, and three nanosecond timestamps.
[JsonConverter(typeof(QuoteJsonConverter))]
public readonly record struct Quote : IEquatable<Quote>
- Implements
- Inherited Members
Remarks
A tick-level type, so a struct (decision D4). Timestamps are stored as nanosecond long values and exposed as Instant only when read (decision D5).
Properties
AskExchangeId
The ask exchange ID
[JsonPropertyName("ask_exchange")]
public int? AskExchangeId { get; init; }
Property Value
- int?
AskPrice
The ask price.
[JsonPropertyName("ask_price")]
public double? AskPrice { get; init; }
Property Value
AskSize
The total number of shares available for sale at the current ask price.
[JsonPropertyName("ask_size")]
public double? AskSize { get; init; }
Property Value
BidExchangeId
The bid exchange ID
[JsonPropertyName("bid_exchange")]
public int? BidExchangeId { get; init; }
Property Value
- int?
BidPrice
The bid price.
[JsonPropertyName("bid_price")]
public double? BidPrice { get; init; }
Property Value
BidSize
The total number of shares that buyers want to purchase at the current bid price.
[JsonPropertyName("bid_size")]
public double? BidSize { get; init; }
Property Value
Conditions
A list of condition codes.
[JsonPropertyName("conditions")]
[JsonConverter(typeof(PooledArrayConverter<int>))]
public int[]? Conditions { get; init; }
Property Value
- int[]
Indicators
A list of indicator codes.
[JsonPropertyName("indicators")]
[JsonConverter(typeof(PooledArrayConverter<int>))]
public int[]? Indicators { get; init; }
Property Value
- int[]
ParticipantTimestamp
The moment the exchange generated this quote, converted from ParticipantTimestampNanoseconds.
[JsonIgnore]
public Instant ParticipantTimestamp { get; }
Property Value
ParticipantTimestampNanoseconds
The nanosecond accuracy Participant/Exchange Unix Timestamp. This is the timestamp of when the quote was actually generated at the exchange.
[JsonPropertyName("participant_timestamp")]
public long ParticipantTimestampNanoseconds { get; init; }
Property Value
SequenceNumber
The sequence number represents the sequence in which quote events happened. These are increasing and unique per ticker symbol, but will not always be sequential (e.g., 1, 2, 6, 9, 10, 11). Values reset after each trading session/day.
[JsonPropertyName("sequence_number")]
public long SequenceNumber { get; init; }
Property Value
SipTimestamp
The moment the SIP received this quote, converted from SipTimestampNanoseconds.
[JsonIgnore]
public Instant SipTimestamp { get; }
Property Value
SipTimestampNanoseconds
The nanosecond accuracy SIP Unix Timestamp. This is the timestamp of when the SIP received this quote from the exchange which produced it.
[JsonPropertyName("sip_timestamp")]
public long SipTimestampNanoseconds { get; init; }
Property Value
Tape
There are 3 tapes which define which exchange the ticker is listed on. These are integers in our objects which represent the letter of the alphabet. Eg: 1 = A, 2 = B, 3 = C. * Tape A is NYSE listed securities * Tape B is NYSE ARCA / NYSE American * Tape C is NASDAQ
[JsonPropertyName("tape")]
public int? Tape { get; init; }
Property Value
- int?
TrfTimestamp
The moment the trade reporting facility received this quote, converted from TrfTimestampNanoseconds, or null when the quote did not pass through one.
[JsonIgnore]
public Instant? TrfTimestamp { get; }
Property Value
TrfTimestampNanoseconds
The nanosecond accuracy TRF (Trade Reporting Facility) Unix Timestamp. This is the timestamp of when the trade reporting facility received this quote.
[JsonPropertyName("trf_timestamp")]
public long? TrfTimestampNanoseconds { get; init; }
Property Value
- long?