Constraints
Connectivity
| Constraint | Detail |
|---|---|
| One FIX connection per Dealer | Dealers require a dedicated connection to enable Professional (Tiered) pricing. |
| Shared connection for Customers | An introducing broker may share one connection across multiple customers. Regular prices only; all customers see all levels. |
| Accounts | Orders may be tagged with an account code. Orders from the same party with different account codes will match and execute — useful for clearing brokers hosting multiple customers. |
Securities & Pricing
| Constraint | Detail |
|---|---|
| Security identifier | ISIN (12 characters), CUSIP (9 characters), or FIGI. All formats require a valid check digit. |
| Prices are firm | OpenYield is authorized to execute at the price specified (or better). |
| Price range enforcement | All prices must be within a reasonable range of top-of-market or third-party live pricing. Too-wide or fat-finger prices are rejected. |
| Prices are clean | Prices are expressed as a percentage of face value, excluding accrued interest. |
| Tiered pricing | Dealers may set a Regular price (visible to all) and a Professional (Tiered) price (visible to other Dealers only). Customers see and set Regular prices only. OpenYield can automate tiered price generation via formula or fixed level. |
| All-to-all market | All orders may match across all Subscribers and Subscriber Accounts. All Subscribers have access to all available liquidity. |
| Pre-trade anonymous | OpenYield does not disclose the party behind an order. For bilateral trades, MPID and clearing house are shared post-trade only. |
Quantities
| Constraint | Detail |
|---|---|
| Unit | Bonds (1 bond = $1,000 face value) or notional. |
| Minimum & increment | 1 bond ($1,000 face). Municipal Bond and Agency Bond denominations apply where relevant. |
| Fills | OpenYield is authorized to fill up to the full Order or Quote quantity. |
| Quantity limits | Per-order, asset group, and gross/long/short exposure limits are set per subscriber. Orders exceeding limits are rejected. OpenYield can signal when limits are approaching; once breached, further orders in that asset group are rejected until approved. |
Order & Quote Rules
Order kinds: Limit or Market.
Order formats: Quote (fixed income style), Order (fixed income style).
Limit Orders and Quotes
- Require a price. Orders without a price are rejected; Quotes without a price are treated as cancellations.
- Default TIF is GTC (Good Till Cancel = Good for Day on OpenYield). May also use IoC, FoK, or AoN.
- Crossing orders are matched and executed at the crossed level.
- Price/Time Order. Layered FIFO at each price level — earlier orders fill first.
- Updates may only change quantity, price, and (for Limit Orders) order ID. Side, security, time in force and account cannot be changed.
- If an update is rejected, OpenYield cancels the original order to maintain order book confidence.
- Quote IDs are stable for the lifetime of the quote.
- Order IDs must be unique per message. Replace and cancel messages must reference the active Order ID.
Market Orders
- Always IoC — filled immediately against the book; any remainder is canceled.
- Price field is ignored; OpenYield always fills from top-of-market.
RFO
- Indicative request: summons liquidity into an empty order book.
- Tradeable request: traditional RFQ seeking quotes for a quantity at an undisclosed price.
- RFO Quotes must come from algorithms — the collection window is too short for manual responses.
- Traditional RFQ is available to subscribers with automated algorithmic systems.
Commission: Added in cash settlement for Intermediated trades. Not included as a separate field for Bilateral trades.
Connection Behavior
On connection, OpenYield will:
- Send a full market data snapshot on the MD feed, followed by streaming incremental updates.
- Replay any missing trade messages on the TR and DC feeds (same-day reconnections only).
On disconnection, OpenYield will:
- Pause filling active orders. Fills matched before disconnection are detected are queued for delivery on reconnect.
- Cancel all subscriber orders and quotes on the book.
At end of day, OpenYield cancels all live orders.
State Change Messages
| State transition | FIX message sent |
|---|---|
| Closed → Pre-Open | Pre-Open: includes scheduled Open and Close times for the day. |
| Pre-Open → Open | Open: includes scheduled Close time for the day. |
| Open → Closed | Close: state change notification. |
| Halt | Halt: trading suspended notification. |
| Halt → Resume | Closed message followed by Pre-Open message with new reopening time. |
Rejections
OpenYield rejects:
- Malformed FIX messages
- Orders, Quotes, or Requests for unsupported securities
- Prices deemed too wide or faulty (regular and/or tiered)
- Limit Orders missing a regular price
- Quantities below minimum, denomintions or negative
- Orders, Quotes, or Requests that exceed subscriber compliance limits
- Orders, Quotes, or Requests missing a required Account ID
- Orders referencing unknown Order IDs
- Order updates that change anything other than ID, size, or price
- Quote updates that change anything other than size or price