Skip to main content

qs_instruments/
lib.rs

1//! Exact, dependency-light instrument and asset domain contracts.
2
3mod binding;
4mod catalog;
5mod decimal;
6mod economics;
7mod grid;
8
9mod identity;
10mod spec;
11
12pub use binding::{PlatformInstrumentBinding, StoredSeriesBinding};
13pub use catalog::{
14    CatalogCompileError, CatalogDocument, CatalogSnapshotId, InstrumentCatalogSnapshot,
15    InstrumentResolutionContext, InstrumentResolutionError, InstrumentSelector, ResolvedInstrument,
16    ResolvedInstrumentRef,
17};
18pub use decimal::{
19    Decimal, DecimalError, MAX_DECIMAL_SCALE, Money, NonNegativeDecimal, PositiveDecimal, Price,
20    Quantity,
21};
22pub use economics::{
23    BoundEconomicCapability, EconomicOperation, EconomicsBinding, EconomicsCapabilityError,
24    EconomicsCapabilityProvider, bind_economics,
25};
26pub use grid::{AdjustmentDirection, DecimalGrid, GridAdjustment, GridError, GridRounding};
27
28pub use identity::{
29    AssetId, EconomicsImplementationId, EconomicsModelId, ExecutionVenueId, IdentifierError,
30    InstrumentAlias, InstrumentId, InstrumentIdError, ListingId, ListingVenueId,
31    MarketDataSourceId, MarketKind, SpecRevision, TradingPlatformId,
32};
33pub use spec::{
34    AssetKind, AssetSpec, EffectiveInterval, EffectiveIntervalError, InstrumentAssets,
35    InstrumentEconomics, InstrumentSpec, ListingStatus, NotionalRules, PriceRules, QuantityRules,
36    QuantityUnit, SpecValidationError,
37};