Contracts SDK reference

Reference

Reference overview

The public type surface a plugin compiles against — terse, code-derived lookup pages that complement the narrative chapters. Pure contracts: no engine code, no internals.

How the SDK is packaged

Install one NuGet, SabrTrader.Sdk. It is a meta-package with no source of its own; it bundles the three contract assemblies a plugin author needs and re-exposes their types transitively:

Bundled assembly Covers
SabrTrader.Pipeline.Contracts Indicators, bars & series, ticks, plots & rendering, order-flow & depth, drawing tools, the data-provider surface, market-analyzer columns, alerts, sessions, options levels, and the venue-agnostic options data model (chain reader & view, contracts, quotes, bounded snapshots, the OCC symbol helper).
SabrTrader.Pipeline.Venues.Contracts The venue seam — plugin, descriptor, manifest, session, context, notices, catalog, symbol grammar, backfill composition — plus orders, brackets, fills, positions, accounts, ATM strategies, risk, commissions, client-side OCO, multi-leg option orders, the option chain SPI, and trade history / cash activity.
SabrTrader.Pipeline.Strategies.Contracts The Strategy base class, parameters, the discovery catalog, replay/backtest harness and analytics metrics.

The meta-package also ships an MSBuild .targets file: set <DeployToAlgoStudioPlugins>true</DeployToAlgoStudioPlugins> in your plugin csproj to drop the built DLL into the host's Plugins folder on every build. Every contract assembly targets net10.0, so your plugin targets net10.0 or higher — the same baseline as the SabrTrader host.

Host-adjacent namespaces in Pipeline.Contracts. A few namespaces ship in the same assembly for host composition but are rarely implemented by plugins: SabrTrader.Pipeline.Perf (feed-pipeline diagnostics), SabrTrader.Pipeline.Storage (native bar / tick store seams) and SabrTrader.Pipeline.Licensing (entitlement / identity providers). Prefer the narrative and reference pages above unless you are extending the host itself.
Namespaces. Every contract namespace sits under SabrTrader.Pipeline.*; the venue seam and its trading, chain and trade-history vocabulary live under SabrTrader.Pipeline.Venues.*. Note that the folder name and declared namespace can differ — rendering / viewport types live under the folders Rendering/ and Viewport/ but declare SabrTrader.Pipeline.Charts.Rendering and SabrTrader.Pipeline.Charts.Viewport. Always use the namespace shown on each reference page.

Namespace map

Namespace Assembly Reference page
SabrTrader.Pipeline.Bars · .Series Pipeline.Contracts Bars & series
SabrTrader.Pipeline.Ticks Pipeline.Contracts Ticks
SabrTrader.Pipeline.Indicators Pipeline.Contracts Indicators
SabrTrader.Pipeline.Plots · .Charts.Rendering · .Charts.Viewport Pipeline.Contracts Plots & rendering
SabrTrader.Pipeline.OrderFlow · .MarketDepth Pipeline.Contracts Orderflow & depth
SabrTrader.Pipeline.Drawing Pipeline.Contracts Drawing
SabrTrader.Pipeline.Providers · .Runtime Pipeline.Contracts Providers
SabrTrader.Pipeline.Venues.Trading · .Atm · .Brackets · .Oco · .Risk · .Commissions Venues.Contracts Trading
SabrTrader.Pipeline.Strategies · .Catalog · .Replay · .Analytics Strategies.Contracts Strategies
SabrTrader.Pipeline.MarketAnalyzer Pipeline.Contracts Market Analyzer
SabrTrader.Pipeline.Alerts Pipeline.Contracts Alerts & sessions
SabrTrader.Pipeline.Venues · .Options · .TradeHistory Venues.Contracts Venue seam
SabrTrader.Pipeline.Options Pipeline.Contracts Options
SabrTrader.Pipeline.Levels Pipeline.Contracts Options levels

Reference pages

Each page documents one area of the SDK. Pick the one that matches what you are building, or page through them in order.

Bars & series

The OHLCV Bar (UTC identity plus chart-display Start/End), bar-specification records, builders, instrument metadata, and the barsAgo series.

Ticks

The raw Tick record struct and its TickFlags bitmask.

Indicators

The indicator base class, runtime context, lifecycle, attributes, and optional capability interfaces.

Plots & rendering

Plot / line models, ChartColor, the immediate-mode renderer, candle geometry and the viewport.

Orderflow & depth

Footprint bars and stats plus L2/L3 depth feeds, the order book and depth/MBO events.

Drawing

The drawing-tool surface, anchors, render context, geometry helpers, metadata attributes and Fib levels.

Providers

The data-provider surface, capabilities, backfill flavours and tick sources.

Trading

Orders, brackets, fills, positions, accounts and ATM strategies.

Strategies

The Strategy base class, parameters, discovery catalog and the backtest harness.

Market Analyzer

Column definitions, value production and registration for the market-analyzer grid.

Alerts & sessions

Alert channels and severities plus trading-hours / session contracts.

Options levels

Gamma / options-levels feeds, snapshots, strike profiles, expiration selection and the ambient registry.

Venue seam

Plugin, descriptor, manifest, session and context; the depth ingest plane; the venue-neutral trading components; the chain SPI; trade history and cash activity.


Signatures throughout the reference are quoted from the contract source; the authoritative surface is the SDK assemblies you reference. A public-API snapshot test gates the SDK against accidental drift, so a pinned version is a stable surface.