Matching Engine
BSX operates a continuous first-come, first-serve order book. Orders are executed in price-time priority as received by the matching engine.
Self-Trade Prevention
Self-trading is not allowed on BSX. Trades between the same address cancel the taker order instead of causing a fill.
Order states
Order state  | Description  | 
|---|---|
  | order is received but not processed yet  | 
  | order is live on the book  | 
  | order is either filled or canceled  | 
  | stop order is accepted and resting.  | 
Cancel reasons
Here are the possible values for cancel_reason field on the Order object
| Reason | Description | 
|---|---|
stp | Order was canceled due to self-trade prevention | 
time in force FOK | Order was canceled because it couldn't be filled immediately in its entirety (Fill-or-Kill) | 
time in force IOC | Order was canceled because it couldn't be filled immediately (Immediate-or-Cancel) | 
time in force GTT | Order was canceled because it expired (Good-Til-Time) | 
user | Order was canceled by the user | 
admin | Order was canceled by an administrator | 
liquidation | Order was canceled due to liquidation | 
insufficient liquidity | Order was canceled due to insufficient market liquidity | 
insufficient margin | Order was canceled due to insufficient margin | 
post only | Order was canceled because it would have executed immediately (Post-Only) | 
reduce only: pos size %s, order side %s | Order was canceled because it would have increased position size (Reduce-Only) | 
reduce only: pos size %s, order size %s, order side %s | Order was canceled because order size was invalid for reduce-only order | 
TPSL order canceled due to position closed | Take-Profit/Stop-Loss order was canceled because the position was closed | 
tpsl order cannot be larger than position: pos size %s, order size %s | Take-Profit/Stop-Loss order size was larger than position size | 
Updated about 2 months ago