Marking Spreads

When calculating mark or prior_mark for any spread product, we use the best available data in this order:

  1. If a user supplies a product in the trade's MARK field (i.e. forwards, swaps), the mark for that Product. This includes copies if MARKET DATA COPY is turned on
  2. If the Mark field is not filled out (i.e. futures), the mark for the trade's Product
  3. If the above aren't present (and we have a spread_formula), we attempt to use the spread_formula to resolve the mark
  4.  If none of these are available or if we are using the spread_formula to resolve the mark, and one of the marks in the formula is not available, we do not mark the trade
If you upload forward marks for a spread and want that product to settle against a spread formula, the product will settle against the forward marks. 

How did we do?