Strategies
A Strategy Group is a managed container that coordinates one or more strategies under a single budget, unit cap, and lifecycle. Each strategy targets products dynamically through filter criteria and prices them against fair value (or at a flat amount), so your standing demand stays current as the catalog and the market move — without you re-quoting anything.
Where an Order Submission is one explicit order — this product, this quantity, this price — a strategy is intent at portfolio scale: "every PSA 10 Pokémon card CardHedge prices between $100 and $1,000, at 20% below fair value, up to $100k." Tradepost generates and maintains the underlying demand automatically.
Use a Strategy Group when you want to:
- Share a single budget across many filter slices — one $100k group spanning every PSA-graded card meeting a confidence floor
- Update pricing once and have it propagate to every product the group targets
- Pause, resume, or tear down a whole portfolio in one call
- Cap per-product concentration without managing individual orders
The model
StrategyGroup budget, unit caps, lifecycle, fulfillment defaults
└── Strategy filter criteria + pricing → live demand
└── fills recorded as Order Executions
Group — owns the risk envelope and lifecycle: aggregate spend cap, aggregate unit cap, per-product fill and spend caps, and the fulfillment defaults (ship-to address, payment method, payment rail) every fill inherits. Pricing defaults set at the group level flow down to strategies that don't override them.
Strategy — a child of the group defining what to buy (filterCriteria: grade targeting, facets, fair-value bounds, text query) and how to price it (pricingMode: variance off fair value, or flat). Filters re-evaluate continuously, so a strategy tracks the catalog as products appear and fair values move.
How strategies fill
Strategy demand clears through the same execution pipeline as every other order on Tradepost:
- Standing match — incoming supply that satisfies a strategy's filter receives its bid automatically.
- Order-book crossing — a seller's marketable order crosses against strategy demand alongside the resting bids on the book. Resting orders win ties: at equal price, committed orders fill before strategy demand.
Either way, the fill is recorded as an Order Execution — the same immutable economic snapshot, the same settlement lifecycle, delivered on the same real-time fills channel. Fill prices are recomputed against current fair value at the moment of the cross, so a strategy fill always reflects the market at fill time, never a stale quote. See Fills.
Each active strategy carries a system-managed identity submission — a single order submission the strategy's executions record against. You will see it in listOrderSubmissions; the submission APIs refuse to amend or cancel it (SIGMAFILL_MANAGED), because its lifecycle belongs to the strategy. See Fills → The identity submission.
Group types
| Type | Behavior |
|---|---|
STANDARD | Group-driven. Pricing defaults live on the group; strategies inherit unless they override |
MANUAL | Reserved for Tradepost-managed configurations |
Fill modes
fillMode controls how the allocator picks between competing strategies in the same group when their filters overlap:
| Mode | Behavior |
|---|---|
DEFAULT | Highest bid × quantity wins |
BALANCED | Spreads fills across competing strategies |
API surface
| Operation | Purpose |
|---|---|
createBiddingStrategyGroup | Create a group — see Managing |
addStrategyToGroup | Add a strategy to a group |
updateBiddingStrategyGroup / updateGroupedStrategy | Tune a live group or strategy |
removeStrategyFromGroup | Detach and deactivate one strategy |
setBiddingStrategyGroupStatus | Activate / pause / resume / delete the group |
setStrategyStatus | Toggle one strategy inside an active group |
getBiddingStrategyGroup / listBiddingStrategyGroups | Read groups and their strategies |
Pricing behavior — variance bounds, flat bids, inheritance, drift guards — is covered in Pricing. Field-level reference lives in Types.