Namespaces | |
| namespace | Commissions |
| namespace | ConnectorWebsocket |
| namespace | Database |
| namespace | Dom |
| namespace | Exceptions |
| namespace | Pricing |
| namespace | Rebate |
| namespace | SessionServer |
| namespace | Statistics |
| namespace | TradeStatistics |
| namespace | Valuation |
Classes | |
| class | AsyncConnector |
Connector base that allows to use await to switch to the connector queue thread. More... | |
| class | AsyncConnectorMessage |
| Service message for passing continuations to the connector thread. More... | |
| class | AsyncMessageQueue |
| class | BaseConnector |
| class | BaseMarketDataOnlyConnectorSettings |
| class | BaseMessageQueue |
| A queue processed by its own thread. The queue runs in sessions: Start begins one (the first connector of a shared queue), Stop ends it (the last connector). An item belongs to the session it was queued in: the items still queued when the session ends are dropped - also when the next session has already begun (a connect issued right after a disconnect) and the thread of the stopped session goes on to serve it. A message or an action queued while no session runs waits for the next session (unless a thread of the stopped queue is still alive and drops it); a continuation (EnqueueContinuation) queued after a session ended is dropped, it never runs in a later session. More... | |
| class | BasketConnector |
| class | BasketConnectorSettings |
| class | ConnectionRefusalExtensions |
| class | ConnectionStateEventArgs |
| class | ConnectorLatencyManager |
| class | CryptoAsyncConnector |
| class | CryptoBaseConnector |
| class | DailyNote |
| class | EcnHelper |
| class | Exchange |
| class | Extensions |
| class | GroupExchange |
| class | HistoryMyTrade |
| Represents a historical trade record. More... | |
| class | HistoryMyTradePlaybook |
| interface | IConnectionWarningSource |
| A connector that reports problems of a live connection which do not end it, for example Rithmic "PnL Connection - Heartbeat has been quiet for 55 seconds": the connection stays open, but positions, balances and order statuses shown by the platform may be out of date. IDataFeedConnector.Error is not used for that: it reports the failure of the connection itself. More... | |
| interface | IConnectorExchangeInfoProvider |
| Defines methods to retrieve exchange information based on security or exchange codes. More... | |
| interface | IConnectorLatencyManager |
| interface | ICryptoKeySecretConnector |
| interface | IDataFeedConnector |
| interface | IEntity |
| Represents an entity in the application. More... | |
| interface | IEntityFactory |
| interface | IKnowSession |
| interface | ILiquidationFeed |
| Provides liquidation orders stream for securities. More... | |
| interface | IMarketByOrdersManager |
| Interface for manager that provides access to market by order data. More... | |
| interface | IMarketDataPublisher |
| interface | IMarketDepth |
| Represents a market depth entry. More... | |
| interface | IMarketDepthHistoryProvider |
| Optional connector capability: historical order book (market depth) data, e.g. the dxFeed ORCS service. Consumers (the heatmap) probe for this interface on the instrument's connectors and backfill the book history when supported. More... | |
| interface | IMboAnalyticsDataProvider |
| Optional online-provider capability for MBO-derived analytics. More... | |
| interface | IMboCapabilitiesProvider |
| Implemented by connectors that publish market by order data to declare what the stream contains. More... | |
| interface | IMessageQueue |
| interface | IMyTradeIdMigration |
| A connector whose fill ids (MyTrade.Id) changed their scheme: the fills a platform stored under the older scheme (the trading statistics) are re-keyed to the current one before the connector's fills are compared with them, so a fill is neither stored twice nor taken for another fill (PLAT-5091: Binance numbers the trades of each symbol on its own, its fill ids became the symbol and the number). More... | |
| class | InstrumentExchange |
| interface | IOptionsDataFeed |
| interface | IOrderOptionCloseOnTrigger |
| Represents an order option for closing a position when triggered. More... | |
| interface | IOrderOptionPostOnly |
| Represents an order option for placing a post-only order. More... | |
| interface | IOrderOptionReduceOnly |
| Represents an order option for reducing the position size. More... | |
| interface | IPasswordChanger |
| interface | IPortfolioExtendedInfo |
| Base interface for extended portfolio information. Each connector can have its own implementation with unique parameters. More... | |
| interface | IPriceFormatter |
Exposes the subset of trading-entity properties required to format prices and derive instrument classification (US bonds, MOEX futures). Implemented by Security directly and by OFT.Platform.Models.Instrument via explicit interface implementation. More... | |
| interface | IReferralAccountConnector |
| interface | ISecurityPositionManager |
| interface | ISecurityTradingOptions |
| Represents an interface for providing trading options related to a security or trading connector. More... | |
| interface | ISupportChangePosition |
| interface | ISupportMarketDataOnly |
| interface | ISupportMarketDataRejects |
A connector whose server can refuse the market data of one security while the connection stays up: the ATAS servers (SBE) refuse a subscription to a security of an exchange the user's group has no rights to (Emulation/Server/Server_SBE.cs, ProcessMarketDataRequest: "Access denied."). Nothing comes for that security until the connector subscribes it again and the server grants it. More... | |
| interface | ISupportResetPortfolio |
| interface | ISupportTPlusLimits |
| class | MarketByOrder |
| Market by Order (MBO) describes an order-based data feed that provides the ability to view individual queue position, full depth of book and the size of individual orders at each price level. More... | |
| class | MarketByOrdersManager |
| Manager that provides access to market by order data. More... | |
| class | MarketDepth |
| Represents a market depth entry. More... | |
| class | MarketDepthComparer |
| class | MboActivityAccumulationCalculator |
| class | MboActivityAccumulationSession |
| Resumable, caching wrapper around MboActivityAccumulationCalculator for a regular sample grid over a time-sorted, append-only event stream. More... | |
| struct | MboActivityAccumulationState |
| Mutable accumulation state shared by MboActivityAccumulationCalculator and MboActivityAccumulationSession. Captures everything the per-mode kernels carry between samples, so a computation can be suspended at any sample boundary and resumed later with bit-identical results. | |
| class | MboAggregationHelpers |
| class | MboAnalyticsDataStatus |
| Runtime state of Market-By-Order data reaching MBO analytics. More... | |
| class | MboAnnotatedTrade |
| Trade fill enriched with MBO-derived classification and matching-event metadata. More... | |
| class | MboHiddenDetectEvidence |
| class | MboIcebergOrderEvent |
| class | MboIcebergRecord |
| Current iceberg state for one exchange order. More... | |
| class | MboIcebergTrade |
| class | MboIcebergViewFilter |
| struct | MboIcebergViewFilterOptions |
| class | MboOrderEvent |
| Normalized Market-By-Order update consumed and stored by MBO analytics. More... | |
| class | MboPriorityRefreshEvidence |
| class | MboStopCascade |
| class | MboStopCascadeBuilder |
| class | MboStopLeg |
| struct | MboStopRun |
| class | MboStopRunClusterer |
| struct | MboStopRunClusterOptions |
| class | MboStopRunClusterState |
| class | MboSweepRecord |
| class | MboSweepRecordBuilder |
| struct | MboSweepRun |
| class | MboSweepRunClusterer |
| struct | MboSweepRunClusterOptions |
| class | MboSweepRunClusterState |
| struct | Money |
| Represents decimal amount in some currency. More... | |
| class | MultiConnectorMessageQueue |
| class | MyTrade |
| Represents a trade entity in the system. More... | |
| class | News |
| class | OptionRequestGuard |
| Connector-level limit on option requests that come past the budgeted options API. More... | |
| struct | OptionSeries |
| class | Order |
| Represents an order for trading on a financial exchange. More... | |
| class | OvernightSwapValue |
| class | Playbook |
| class | PnLTradesQueue |
| class | Portfolio |
| Represents a portfolio entity with various properties related to account balance, Profit and Loss (PnL), permissions, trading options, and more. More... | |
| class | PortfolioChange |
| class | PortfolioExtendedInfoBase |
| Base implementation of IPortfolioExtendedInfo with common functionality. More... | |
| class | PortfolioGroup |
| Represents a portfolio group used in the application. More... | |
| class | PortfolioState |
| class | PortfolioViewer |
| Represents a portfolio viewer used in the application. More... | |
| class | Position |
| Represents a trading position. More... | |
| class | PositionState |
| class | PositionSyncPoint |
| A moment when a trade report and a position update of a portfolio security agreed with each other: the stored trades up to Time sum up to Position. The points form an append-only track; a rebuild of the trade statistics matches the history between two consecutive points on its own, so a fill lost in one period cannot shift the pairs of the periods before it. More... | |
| class | PositionTradesQueue |
| struct | PriceUnit |
| class | RequestLimiter |
| Token bucket bounding the rate of requests sent to a broker: Capacity is the largest burst allowed at once, RefillPerSecond the sustained ceiling. The bucket starts full, refills continuously (fractional tokens) and never accumulates more than Capacity. Refill is computed from a TimeProvider on demand, so the limiter owns no timer and no background thread and is fully testable with a fake time provider. More... | |
| class | Security |
| Represents a security entity used in the application. More... | |
| class | SecurityFilter |
| class | SecurityMargin |
| class | SecurityPositionManager |
| class | SecurityRoute |
| class | SecurityRouteCache |
| class | SecuritySummary |
| class | SecurityTradingOptions |
| Each connector may have different order placement settings like TimeInForce or ReduceOnly etc. This class shows connector configuration. More... | |
| class | ServerPnL |
| class | SimpleMessageQueue |
| class | SimpleMyTrade |
| class | SubscriptionCounter |
| class | SubscriptionManager |
| class | SubscriptionStatistics |
| Market data subscription load of a single connector: how many instruments are subscribed at the moment (state, by SecType) and how many subscribe/unsubscribe requests actually reached the broker (flow, since the last Reset). Flow divided by state is the flood signature: a normal number of subscribed instruments with a huge number of requests for them means somebody re-subscribes in a loop (PLAT-5011). More... | |
| class | SubscriptionStatisticsSnapshot |
| Immutable set of SubscriptionStatistics values taken at a single moment. Current values describe the state right now, maximum values and request counters describe the period since the last SubscriptionStatistics.Reset. The state is kept per SecType: CurrentOf and MaxOf. More... | |
| class | Trade |
| Represents an tick on a financial exchange. More... | |
| class | TradesTimeChecker |
| class | TradingOptions |
| class | TradingOptionsSecurity |
| class | UniversalMarketData |
| class | User |
| class | UserChange |
| class | UserChangeHistory |
| class | UserGroup |
| class | UserRole |
| class | UserRoleRight |
| struct | VolumeUnit |
| class | WorkingTime |
Enumerations | |
| enum | AccountKind { Unknown , Live , Demo , Prop , Simulator } |
| Whose money a trading account holds, as agreed for telemetry in PLAT-4891. Not the server the connector talks to: a broker's paper account and an exchange testnet are both Demo, a prop firm's challenge and funded accounts are both Prop. More... | |
| enum | RebateResult { Valid = 0 , WrongRefCode = 1 } |
| enum | CommissionSource { None , Connector , UserSettings } |
| Where the commission of a MyTrade came from (PLAT-4891). Telemetry has to tell a figure measured by the broker from one estimated by the user. More... | |
| enum | ConnectionRefusalReason { CredentialsRejected , SessionTakenOver } |
| Why the counterparty refused the connection in a way that a retry cannot fix. An error carrying one of these (see Exceptions.ConnectionRefusedException) stops the automatic reconnection of BaseConnector<TMessage,TPortfolioKey,TSecurityKey>: the user has to act first. More... | |
| enum | Currencies { USD = 0 , EUR = 1 , GBP = 2 , JPY = 3 , RUB = 4 , AUD = 5 , CHF = 6 , BTC = 7 , ETH = 8 , EOS = 9 , XRP = 10 , LTC = 11 , BCH = 12 , XTZ = 13 , UNI = 14 , DOT = 15 , ADA = 16 , LINK = 17 , USDT = 18 , BIT = 19 , LUNA = 20 , MANA = 21 , SOL = 22 , BUSD = 23 , USDC = 24 , XCH = 25 , BNB = 26 , DOGE = 27 , UST = 28 , AVAX = 29 , SHIB = 30 , DAI = 31 , MATIC = 32 , TRX = 33 , BGB = 34 , INCH = 35 , CNY = 36 , BNFCR = 37 , LOT = 10000 } |
| Represents a list of currency values used in the application. More... | |
| enum | EcnId { NONE , NASDAQ , NYSE , SIAC , ISI , ISLAND , ARCA , ADFN , BATS , INCA , NYOB , MKXT , CME , ESSEX , CHIC , BRASS , BOS , SUMO , INET , BLZ , EDGX , CBOT , IPE , NYBOT , USFE , EUREX , EDGA , TSE , AMEX , CBOE , PCX , BOX , ISE , PHX , CMECBT , VSE , PENSON , OTC , NSE , MI , CHX , EDGE , BATX , BATY , EDGD , PHL , ARCX , NTRF , IEX , MEMX , PEARL , SMALL , LTSE , LSE , X24 , UNKNOWN = 255 } |
| enum | EntityAction { Logon = 0 , Logout = 1 , UserAdd = 2 , UserChange = 3 , UserRemove = 4 , UserLock = 29 , UserKick = 30 , UserChangeExpiration = 47 , UserGroupAdd = 5 , UserGroupChange = 6 , UserGroupRemove = 7 , UserRoleAdd = 8 , UserRoleChange = 9 , UserRoleRemove = 10 , ExchangeAdd = 11 , ExchangeChange = 12 , ExchangeRemove = 13 , CommissionGroupAdd = 17 , CommissionGroupChange = 18 , CommissionGroupRemove = 19 , SecurityMarginAdd = 20 , SecurityMarginChange = 21 , SecurityMarginRemove = 22 , PortfolioAdd = 23 , PortfolioChange = 32 , PortfolioValue = 24 , PortfolioLock = 25 , OrderRegister = 26 , OrderMove = 27 , OrderCancel = 28 , NewsSend = 31 , ServerSettings = 33 , RequestStatistics = 34 , OrderCancelled = 35 , OrderMatched = 36 , ServerPnL = 37 , PortfolioSuspend = 38 , PortfolioViewerAdd = 39 , ConnectorAdd = 40 , ConnectorChange = 41 , ConnectorRemove = 42 , ConnectorEnable = 43 , PortfolioViewerRemove = 44 , TradeAllowed = 45 , PortfolioReset = 46 , GetUserChangeHistory = 48 , GetPortfolioChangeHistory = 49 , UserGroupSuspendPortfolios = 50 , UserGroupReset = 51 } |
| enum | MissingDataCases { None , Opening , Closing } |
| Describes what part of the HistoryMyTrade was incomplete. More... | |
| enum | EntityType { Security , SecurityMargin , Portfolio , Position , MarketDepth , Trade , Order , MyTrade , News , UserRole , UserGroup , User , UserChange , CommissionGroup , WorkingTime , Exchange , PortfolioChange , TradingOptions , PortfolioState , PositionState , Connector , MarketByOrder } |
| Represents the types of entities used in the application. More... | |
| enum | OptionSeriesType { Regular , Weekly , EndOfMonth } |
| enum | MarketByOrderUpdateTypes { Snapshot , New , Change , Delete } |
| Type of market by order update. More... | |
| enum | MarketByOrderFlags { None = 0 , SnapshotBegin = 1 , SnapshotEnd = 2 , TransactionEnd = 4 , Checkpoint = 8 } |
| Batch boundary markers carried by market by order rows from feeds that deliver atomic batches. More... | |
| enum | MarketByOrderReason { Unknown , Cancel , Execute , Modify , Replace , Reset } |
| Why a market by order row changed. Feeds that state the reason natively set it in the connector; feeds that only attribute fills to order ids get it resolved downstream from the trade stream. More... | |
| enum | MarketDataDelayPeriods { Realtime , Delayed15M } |
| enum | MarketDataType { Bid = 0 , Ask = 1 , Trade = 2 } |
| Specifies the type of market data. More... | |
| enum | MboActivityAccumulationMode { ExponentialHalfLife , TotalSum , ResetEveryInterval , SlidingWindow , SameSideSum } |
| enum | MboIcebergStatus { Active , Closed , Expired } |
| enum | MboOrderSide { Unknown , Bid , Ask } |
| Side of a Market-By-Order entry. More... | |
| enum | MboOrderUpdateType { Snapshot , New , Change , Delete } |
| Normalized Market-By-Order update type. More... | |
| enum | MboReasonSource { None , Native , DerivedFromFills } |
| Where the MboOrderEvent.Reason of a normalized order event came from. More... | |
| enum | MboTradeKind { Unknown , Market , ModifiedLimit , Stop } |
| MBO-derived trade classification. More... | |
| enum | MboCapabilities { None = 0 , IndividualOrders = 1 , StableOrderIdentity = 2 , ProviderOrderId = 4 , NativeChangeReason = 8 , FillAttribution = 16 , SnapshotMarkers = 32 , TransactionMarkers = 64 } |
| What a market by order source can actually deliver for a security. Checked against data, not tariff names. More... | |
| enum | MessageType { Warning , Error , Information } |
| enum | NewsType { Text , Admin , Risk } |
| enum | OptionTypes { Put , Call } |
| enum | OrderDirections { Buy = 0 , Sell = 1 } |
| Specifies the direction of an order. More... | |
| enum | OrderStates { None = 0 , Active = 1 , Done = 2 , Failed = 3 } |
| Represents the possible states of an order. More... | |
| enum | OrderStatus { None = 0 , Placed = 1 , Filled = 2 , PartlyFilled = 3 , Canceled = 4 } |
| Represents the possible status of an order. More... | |
| enum | OrderTypes { Limit = 0 , Market = 1 , Stop = 2 , StopLimit = 3 , Unknown } |
| Specifies the type of an order. More... | |
| enum | PortfolioChangeType { IncreaseBalance , ReduceBalance , ChangeLeverage , OvernightSwap } |
| enum | TPlusLimits { T0 = 0 , T1 = 1 , T2 = 2 , Tx = 365 } |
| Represents different T+ (settlement) periods for trading. T+ refers to the number of days it takes for a trade to settle and for the funds and securities to be exchanged between the parties involved in the transaction. More... | |
| enum | PositionAveragePriceValueTypes { None , ReceivedFromServer , CalculatedByAllTrades , CalculatedByPartTrades , NotCalculated } |
| Represents different types of values for the average price of a position. The average price is the average cost of all the trades that make up a position. More... | |
| enum | PnlPercentType { Portfolio , Margin } |
| Represents the type of percentage calculation for profit and loss (PNL). More... | |
| enum | PriceUnitTypes { Price , Tick , Percent , Money } |
| enum | SecType { Future = 0 , Forex = 1 , Stock = 2 , Bitcoin = 3 , CryptoFutures = 4 , Indexes = 5 , Option = 6 , Cfd = 7 } |
| Represents the type of security or financial instrument. More... | |
| enum | SubscriptionType { None = 0x0000 , Prints = 0x0001 , Best = 0x0002 , Quotes = 0x0004 , MarketByOrder = 0x0008 , Summary = 0x0010 } |
| enum | TimeInForce { None = 0 , GoodTillCancel = 1 << 0 , FillOrKill = 1 << 1 , ImmediateOrCancel = 1 << 2 , Day = 1 << 3 , Default = GoodTillCancel | FillOrKill | Day } |
| Specifies the time in force options for an order. More... | |
| enum | TradeDirection { Buy = 1 , Sell = 2 , Between = 0 } |
| Represents the trade direction. More... | |
| enum | TriggerPriceType { None = 0 , Last = 1 << 0 , Index = 1 << 1 , Mark = 1 << 2 } |
| Defines price source for conditional order trigger. More... | |
| enum | UserChangeTypes { ExtendExpirationPeriod , ReduceExpirationPeriod } |
| enum | VolumeUnitTypes { Absolute , Percent } |
Functions | |
| delegate void | ConnectorEventHandler (IDataFeedConnector connector) |
| delegate void | ConnectorEventHandler< in T > (IDataFeedConnector connector, T arg) |
| delegate void | ConnectorEventHandler< in T1, in T2 > (IDataFeedConnector connector, T1 arg1, T2 arg2) |
| delegate void | ConnectorEventHandler< in T1, in T2, in T3 > (IDataFeedConnector connector, T1 arg1, T2 arg2, T3 arg3) |
| readonly record struct | MarketDepthHistoryLevel (long TimeNanos, decimal Price, decimal Volume, bool IsAsk) |
| One historical order-book level update: at TimeNanos (UTC, Unix-epoch nanoseconds) the resting volume at Price on the given side became Volume (0 removes the level). Replaying the chronologically ordered updates rebuilds the historical book. | |
| readonly record struct | MarketDepthHistoryQuote (long TimeNanos, decimal BidPrice, decimal BidVolume, decimal AskPrice, decimal AskVolume) |
| The historical top of book at TimeNanos (UTC, Unix-epoch nanoseconds). | |
| record struct | CurrencyInfo (string Code, bool IsBase, int Precision) |
| Represents currency information for a decimal value. | |
Variables | |
| record | OrderExtendedOptionsFlags |
| Represents extended order options stored as a set of flag values for quick serialization and comparison. | |
| record | IOrderOptionPostOnly |
| record | IOrderOptionReduceOnly |
Whose money a trading account holds, as agreed for telemetry in PLAT-4891. Not the server the connector talks to: a broker's paper account and an exchange testnet are both Demo, a prop firm's challenge and funded accounts are both Prop.
| Enumerator | |
|---|---|
| Unknown | The connector cannot tell (e.g. a NinjaTrader account that is not a simulator). |
| Live | Real money at a broker or an exchange. |
| Demo | A broker's paper account or an exchange testnet / demo trading. |
| Prop | Any account of a prop firm: evaluation (challenge) and funded alike. |
| Simulator | The platform's own simulators: ATAS Sim, Crypto Sim, delayed-data simulators, NinjaTrader Sim / Playback. |
Where the commission of a MyTrade came from (PLAT-4891). Telemetry has to tell a figure measured by the broker from one estimated by the user.
Why the counterparty refused the connection in a way that a retry cannot fix. An error carrying one of these (see Exceptions.ConnectionRefusedException) stops the automatic reconnection of BaseConnector<TMessage,TPortfolioKey,TSecurityKey>: the user has to act first.
Represents a list of currency values used in the application.
Represents the types of entities used in the application.
Batch boundary markers carried by market by order rows from feeds that deliver atomic batches.
Why a market by order row changed. Feeds that state the reason natively set it in the connector; feeds that only attribute fills to order ids get it resolved downstream from the trade stream.
Type of market by order update.
What a market by order source can actually deliver for a security. Checked against data, not tariff names.
Represents the possible states of an order.
Represents different types of values for the average price of a position. The average price is the average cost of all the trades that make up a position.
| Enumerator | |
|---|---|
| Valid | |
| WrongRefCode | The exchange account is registered under a referral code that does not belong to ATAS. |
Represents the type of security or financial instrument.
Specifies the time in force options for an order.
Represents different T+ (settlement) periods for trading. T+ refers to the number of days it takes for a trade to settle and for the funds and securities to be exchanged between the parties involved in the transaction.
Defines price source for conditional order trigger.
| delegate void ATAS.DataFeedsCore.ConnectorEventHandler | ( | IDataFeedConnector | connector | ) |
| delegate void ATAS.DataFeedsCore.ConnectorEventHandler< in T > | ( | IDataFeedConnector | connector, |
| T | arg | ||
| ) |
| delegate void ATAS.DataFeedsCore.ConnectorEventHandler< in T1, in T2 > | ( | IDataFeedConnector | connector, |
| T1 | arg1, | ||
| T2 | arg2 | ||
| ) |
| delegate void ATAS.DataFeedsCore.ConnectorEventHandler< in T1, in T2, in T3 > | ( | IDataFeedConnector | connector, |
| T1 | arg1, | ||
| T2 | arg2, | ||
| T3 | arg3 | ||
| ) |
| record struct ATAS.DataFeedsCore.CurrencyInfo | ( | string | Code, |
| bool | IsBase, | ||
| int | Precision | ||
| ) |
Represents currency information for a decimal value.
| Code | Currency code |
| IsBase | True- Currency is base for security |
| Precision | Number of numbers after the decimal point |
Get display format for decimal value
Get edit format for decimal value
| readonly record struct ATAS.DataFeedsCore.MarketDepthHistoryLevel | ( | long | TimeNanos, |
| decimal | Price, | ||
| decimal | Volume, | ||
| bool | IsAsk | ||
| ) |
One historical order-book level update: at TimeNanos (UTC, Unix-epoch nanoseconds) the resting volume at Price on the given side became Volume (0 removes the level). Replaying the chronologically ordered updates rebuilds the historical book.
| readonly record struct ATAS.DataFeedsCore.MarketDepthHistoryQuote | ( | long | TimeNanos, |
| decimal | BidPrice, | ||
| decimal | BidVolume, | ||
| decimal | AskPrice, | ||
| decimal | AskVolume | ||
| ) |
The historical top of book at TimeNanos (UTC, Unix-epoch nanoseconds).
Aggregated depth history describes level changes but not every level removal, so a book replayed from it drifts and eventually crosses. The service's own best bid/ask is the authority that keeps the replayed book honest; a zero price means the side had no quote.
| record ATAS.DataFeedsCore.OrderExtendedOptionsFlags |
Represents extended order options stored as a set of flag values for quick serialization and comparison.