Contracts SDK 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.
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.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.