Class MontageL1Manager

java.lang.Object
org.drip.oms.depth.MontageL1Manager

public class MontageL1Manager
extends java.lang.Object
MontageL1Manager manages the Top-of-the Book L1 Montage across Venues for a single Ticker. The References are:

  • Chen, J. (2021): Time in Force: Definition, Types, and Examples https://www.investopedia.com/terms/t/timeinforce.asp
  • Cont, R., and A. Kukanov (2017): Optimal Order Placement in Limit Order Markets Quantitative Finance 17 (1) 21-39
  • Vassilis, P. (2005b): Slow and Fast Markets Journal of Economics and Business 57 (6) 576-593
  • Weiss, D. (2006): After the Trade is Made: Processing Securities Transactions Portfolio Publishing London UK
  • Wikipedia (2023): Central Limit Order Book https://en.wikipedia.org/wiki/Central_limit_order_book


Author:
Lakshmi Krishnamurthy
  • Constructor Details

    • MontageL1Manager

      public MontageL1Manager()
      Empty MontageL1Manager Constructor
  • Method Details

    • orderedBidBook

      public java.util.TreeMap<java.lang.Double,​MontageL1SizeLayer> orderedBidBook()
      Retrieve the Ordered Bid Book
      Returns:
      The Ordered Bid Book
    • orderedAskBook

      public java.util.TreeMap<java.lang.Double,​MontageL1SizeLayer> orderedAskBook()
      Retrieve the Ordered Ask Book
      Returns:
      The Ordered Ask Book
    • addBidSizeLayer

      public boolean addBidSizeLayer​(MontageL1SizeLayer montageL1SizeLayer)
      Add a Bid Venue L1 Montage Size Layer
      Parameters:
      montageL1SizeLayer - Bid Venue L1 Montage Size Layer
      Returns:
      TRUE - Successfully added the Bid Venue L1 Montage Size Layer to the Book
    • addBidEntry

      public boolean addBidEntry​(MontageL1Entry montageL1BidEntry)
      Add the L1 Bid Entry to the Montage Manager
      Parameters:
      montageL1BidEntry - L1 Montage Bid Entry
      Returns:
      TRUE - The L1 Bid Entry successfully added to the Montage Manager
    • addAskSizeLayer

      public boolean addAskSizeLayer​(MontageL1SizeLayer montageL1SizeLayer)
      Add a Ask Venue L1 Montage Size Layer
      Parameters:
      montageL1SizeLayer - Ask Venue L1 Montage Size Layer
      Returns:
      TRUE - Successfully added the Ask Venue L1 Montage Size Layer to the Book
    • addAskEntry

      public boolean addAskEntry​(MontageL1Entry montageL1AskEntry)
      Add the L1 Ask Entry to the Montage Manager
      Parameters:
      montageL1AskEntry - L1 Montage Ask Entry
      Returns:
      TRUE - The L1 Ask Entry successfully added to the Montage Manager
    • orderedAskBookList

      public java.util.List<MontageL1Entry> orderedAskBookList()
      Retrieve the Ordered Ask Book List
      Returns:
      The Ordered Ask Book List
    • orderedBidBookList

      public java.util.List<MontageL1Entry> orderedBidBookList()
      Retrieve the Ordered Bid Book List
      Returns:
      The Ordered Bid Book List
    • bidNBBOBlock

      public OrderBlock bidNBBOBlock()
      Retrieve the NBBO Bid Block
      Returns:
      The NBBO Bid Block
    • askNBBOBlock

      public OrderBlock askNBBOBlock()
      Retrieve the NBBO Ask Block
      Returns:
      The NBBO Ask Block
    • midPrice

      public double midPrice() throws java.lang.Exception
      Compute the Mid-price
      Returns:
      The Mid-price
      Throws:
      java.lang.Exception - Thrown if the mid-price cannot be calculated
    • bidUBBOBlock

      public UBBOBlock bidUBBOBlock()
      Retrieve the Bid UBBO Block
      Returns:
      The Bid UBBO Block
    • askUBBOBlock

      public UBBOBlock askUBBOBlock()
      Retrieve the Ask UBBO Block
      Returns:
      The Ask UBBO Block