Class MamdaSecurityStatusListener

    • Constructor Detail

      • MamdaSecurityStatusListener

        public MamdaSecurityStatusListener()
        Create a specialized trade listener. This listener handles trade reports, trade recaps, trade errors/cancels, trade corrections, and trade gap notifications.
    • Method Detail

      • addHandler

        public void addHandler​(MamdaSecurityStatusHandler handler)
        Add a specialized trade handler. Currently, only one handler can (and must) be registered.
      • clearCache

        public void clearCache​(com.wombat.mamda.MamdaSecurityStatusListener.MamdaSecurityStatusCache cache)
      • getSrcTime

        public com.wombat.mama.MamaDateTime getSrcTime()
        Description copied from interface: MamdaBasicRecap
        Source time. Typically, the exchange generated feed
        Specified by:
        getSrcTime in interface MamdaBasicEvent
        Specified by:
        getSrcTime in interface MamdaBasicRecap
        Returns:
        Source time. Typically, the exchange generated feed time stamp. This is often the same as the "event time", because many feeds do not distinguish between the actual event time and when the exchange sent the message.
      • getActivityTime

        public com.wombat.mama.MamaDateTime getActivityTime()
        Description copied from interface: MamdaBasicRecap
        Activity time. A feed handler generated time stamp representing when the data item was last updated.
        Specified by:
        getActivityTime in interface MamdaBasicEvent
        Specified by:
        getActivityTime in interface MamdaBasicRecap
        Returns:
        Activity time. A feed handler generated time stamp representing when the data item was last updated.
      • getSendTime

        public com.wombat.mama.MamaDateTime getSendTime()
        Description copied from interface: MamdaBasicRecap
        Get the send time of the update.
        Specified by:
        getSendTime in interface MamdaBasicRecap
        Returns:
        Send time. A feed handler (or similar publisher) time stamp representing the time that such publisher sent the current message. The difference between the line time and send time is the latency within the feed handler itself. Also, if clocks are properly synchronized then the difference between the send time and current time is the latency within the market data distribution framework (i.e. MAMA and the underlying middleware).
      • getLineTime

        public com.wombat.mama.MamaDateTime getLineTime()
        Description copied from interface: MamdaBasicRecap
        Get the line time of the update.
        Specified by:
        getLineTime in interface MamdaBasicRecap
        Returns:
        Line time. A feed handler (or similar publisher) time stamp representing the time that such publisher received the update message pertaining to the event. If clocks are properly synchronized and the source time (see above) is accurate enough, then the difference between the source time and line time is the latency between the data source and the feed handler.
      • getEventSeqNum

        public long getEventSeqNum()
        Specified by:
        getEventSeqNum in interface MamdaBasicEvent
        Returns:
        Source sequence number. The exchange generated sequence number.
      • getEventTime

        public com.wombat.mama.MamaDateTime getEventTime()
        Specified by:
        getEventTime in interface MamdaBasicEvent
        Returns:
        Event time. Typically, when the event actually occurred. This is often the same as the "source time", because many feeds do not distinguish between the actual event time and when the exchange sent the message.
      • getPartId

        public java.lang.String getPartId()
        Description copied from interface: MamdaBasicRecap
        Get the participant identifier.
        Specified by:
        getPartId in interface MamdaBasicRecap
        Returns:
        Participant ID. This may be an exchange identifier, a market maker ID, etc., or NULL (if this is not related to any specific participant).
      • getSymbol

        public java.lang.String getSymbol()
        Description copied from interface: MamdaBasicRecap
        Get the string symbol for the instrument.
        Specified by:
        getSymbol in interface MamdaBasicRecap
        Returns:
        Symbol. This is the "well-known" symbol for the security, including any symbology mapping performed by the publisher.
      • getSecurityStatusEnum

        public short getSecurityStatusEnum()
        Description copied from interface: MamdaSecurityStatusUpdate
        NYSE Technologies normalised security status. See getSecurityStatusOrig for the original exchange value.
        • MamdaSecurityStatus.SECURITY_STATUS_NONE : No security status is known/available for this security.
        • MamdaSecurityStatus.SECURITY_STATUS_NORMAL : Security is open for normal quoting and trading
        • MamdaSecurityStatus.SECURITY_STATUS_CLOSED : Security is closed (usually before or after market open)
        • MamdaSecurityStatus.SECURITY_STATUS_HALTED : Security has been halted by exchange.
        • MamdaSecurityStatus.SECURITY_STATUS_NOT_EXIST : Security does not currently exist in cache (but it might in the future).
        • MamdaSecurityStatus.SECURITY_STATUS_DELETED : Security has been deleted (e.g., merger, expiration, etc.)
        • MamdaSecurityStatus.SECURITY_STATUS_AUCTION : Security has gone into auction.
        • MamdaSecurityStatus.SECURTTY_STATUS_CROSSING : Security crossing.
        • MamdaSecurityStatus.SECURITY_STATUS_UNKNOWN : Security status not currently known.
        Specified by:
        getSecurityStatusEnum in interface MamdaSecurityStatusRecap
        Specified by:
        getSecurityStatusEnum in interface MamdaSecurityStatusUpdate
        See Also:
        MamdaSecurityStatusUpdate.getSecurityStatusEnum()
      • getSecurityStatusQualifierEnum

        public short getSecurityStatusQualifierEnum()
        Description copied from interface: MamdaSecurityStatusUpdate
        Security status qualifier.
        • MamdaSecurityStatusQual.SECURITY_STATUS_QUAL_NONE : No security status qualifier is known/available for this security.
        • MamdaSecurityStatusQual.SECURITY_STATUS_QUAL_EXCUSED : An Excused withdrawal from the market.
        • MamdaSecrutiyStatusQual.SECURITY_STATUS_QAUL_WITHDRAWN : Non-excused withdrawal by the market maker.
        • MamdaSecurityStatusQual.SECURITY_STATUS_QUAL_SUSPENDED : Suspended Trading
        • MamdaSecurityStatusQual.SECURITY_STATUS_QUAL_RESUME : Resume trading/quoting after halt.
        • MamdaSecurityStatusQual.SECURITY_STATUS_QUAL_QUOTE_RESUME : Resume quoting after halt. NASDAQ distinguishes between resumption of quoting versus trading, although these appear to always occur one after the other.
        • MamdaSecurityStatusQual.SECURITY_STATUS_QUAL_TRADE_RESUME : Resume trading after halt. NASDAQ distinguishes between resumption of quoting versus trading, although these appear to always occur one after the other.
        • MamdaSecurityStatusQual.SECURITY_STATUS_QUAL_RESUME_TIME : When the security is expected to resume trading.
        • MamdaSecurityStatusQual.SECURITY_STATUS_QUAL_MKT_IMB_BUY : Market Imbalance - Buy. A 50,000 share or more excess of market orders to buy over market orders to sell as of 9:00am on expiration days. A MktImbBuy implies an ordinary order imbalance (OrdImbBuy).
        • MamdaSecurityStatusQual.SECURITY_STATUS_QUAL_MKT_IMB_SELL : Market Imbalance - Sell. A 50,000 share or more excess of market orders to sell over market orders to buy as of 9:00am on expiration days. A MktImbSell implies an ordinary order imbalance (OrdImbSell).
        • MamdaSecurityStatusQual.SECURITY_STATUS_QUAL_NO_MKT_IMB : No Market Imbalance. Indicates that the imbalance of market orders for a security is less than 50,000 shares as of 9:00am on expiration days.
        • MamdaSecurityStatusQual.SECURITY_STATUS_QUAL_MOC_IMB_BUY : Market On Close Imbalance - Buy. An excess of 50,000 share or more of MOC orders to buy over MOC orders to sell (including MOC sell plus and MOC sell short orders). A MocImbBuy implies an ordinary order imbalance (OrdImbBuy).
        • MamdaSecurityStatusQual.SECURITY_STATUS_QUAL_MOC_IMB_SELL : Market On Close Imbalance - Sell. An excess of 50,000 share or more of MOC orders to sell (not including MOC sell short and MOC sell plus orders) over orders to buy (including MOC orders to buy minus). A MocImbSell implies an ordinary order imbalance (OrdImbSell).
        • MamdaSecurityStatusQual.SECURITY_STATUS_QUAL_NO_MOC_IMB : No Market On Close (MOC) Imbalance. The difference between the number of shares to buy MOC and the number of shares to sell MOC is less than 50,000.
        • MamdaSecurityStatusQual.SECURITY_STATUS_QUAL_ORDER_IMB : Non-regulatory condition: a significant imbalance of buy or sell orders exists for this security.
        • MamdaSecurityStatusQual.SECURITY_STATUS_QUAL_ORDER_INF : Non-regulatory condition where there is a significant influx of orders.
        • MamdaSecurityStatusQual.SECURITY_STATUS_QUAL_ORDER_IMB_BUY : Non-regulatory condition: a significant imbalance of buy orders exists for this security.
        • MamdaSecurityStatusQual.SECURITY_STATUS_QUAL_ORDER_IMB_SELL : Non-regulatory condition: a significant imbalance of sell orders exists for this security.
        • MamdaSecurityStatusQual.SECURITY_STATUS_QUAL_ORDER_IMB_NONE : The earlier imbalance of buy or sell orders no longer exists for this security. It also might mean that there is no imbalance to begin with.
        • MamdaSecurityStatusQual.SECURITY_STATUS_QUAL_RANGE_IND : Trading Range Indication. Not an Opening Delay or Trading Halted condition: this condition is used prior to the opening of a security to denote a probable trading range (bid and offer prices, no sizes).
        • MamdaSecurityStatusQual.MAMDA_SECURITY_STATUS_QUAL_ITS_PREOPEN : ITS pre-opening indication.
        • MamdaSecurityStatusQual.MAMDA_SECURITY_STATUS_QUAL_RESERVED : Reserved (e.g., CME).
        • MamdaSecurityStatusQual.MAMDA_SECURITY_STATUS_QUAL_FROZEN : Frozen (e.g., CME).
        • MamdaSecurityStatusQual.MAMDA_SECURITY_STATUS_QUAL_PREOPEN : Preopening state (e.g., CME).
        • MamdaSecurityStatusQual.MAMDA_SECURITY_STATUS_QUAL_ADD_INFO : Additional Information. For a security that is Opening Delayed or Trading Halted, if inadequate information is disclosed during a "news dissemination or news pending" Opening Delay or Trading Halt, the Opening Delay or Trading Halt reason could be subsequently reported as "Additional Information."
        • MamdaSecurityStatusQual.MAMDA_SECURITY_STATUS_QUAL_OPEN_DELAY : Security's opening has been delayed by exchange. This value is usually followed by another value specifying the reason for the opening delay.
        • MamdaSecurityStatusQual.MAMDA_SECURITY_STATUS_QUAL_NO_OPEN_NO_RESUME : Indicates that trading halt or opening delay will be in effect for the remainder of the trading day.
        • MamdaSecurityStatusQual.MAMDA_SECURITY_STATUS_QUAL_PRICE_IND : An approximation of what a security's opening or re-opening price range (bid and offer prices, no sizes) will be when trading resumes after a delayed opening or after a trading halt.
        • MamdaSecurityStatusQual.MAMDA_SECURITY_STATUS_QUAL_EQUIPMENT : Non-regulatory condition: the ability to trade this security by a participant is temporarily inhibited due to a systems, equipment or communications facility problem, or for other technical reasons.
        • MamdaSecurityStatusQual.MAMDA_SECURITY_STATUS_QUAL_FILINGS : Not current in regulatory filings.
        • MamdaSecurityStatusQual.MAMDA_SECURITY_STATUS_QUAL_NEWS : News pending. Denotes a regulatory trading halt due to an expected news announcement which influence the security. An Opening Delay or Trading Halt may be continued once the news has been disseminated.
        • MamdaSecurityStatusQual.MAMDA_SECURITY_STATUS_QUAL_NEWS_DISSEM : News Dissemination. Denotes a regulatory trading halt when relevant news influencing the security is being disseminated. Trading is suspended until the primary market determines that an adequate publication or disclosure of information has occurred.
        • MamdaSecurityStatusQual.MAMDA_SECURITY_STATUS_QUAL_LISTING : Listing Noncompliance.
        • MamdaSecurityStatusQual.MAMDA_SECURITY_STATUS_QUAL_OPERATION : Operational Halt
        • MamdaSecurityStatusQual.MAMDA_SECURITY_STATUS_QUAL_INFO : Information Requested. Regulatory condition: more disclosure of information is requested by the exchange for this security.
        • MamdaSecurityStatusQual.MAMDA_SECURITY_STATUS_QUAL_SEC : SEC Suspension.
        • MamdaSecurityStatusQual.MAMDA_SECURITY_STATUS_QUAL_TIMES : News Resumption Times.
        • MamdaSecurityStatusQual.MAMDA_SECURITY_STATUS_QUAL_OTHER : Other Regulatory Halt.
        • MamdaSecurityStatusQual.MAMDA_SECURITY_STATUS_QUAL_RELATED : Related Security; In View Of Common. Non-regulatory condition: the halt or opening delay in this security is due to its relationship with another security. This condition also applies to non-common associated securities (e.g. warrants, rights, preferreds, classes, etc.) in view of the common stock.
        • IPO : Upcoming IPO issue not yet trading.
        Specified by:
        getSecurityStatusQualifierEnum in interface MamdaSecurityStatusRecap
        Specified by:
        getSecurityStatusQualifierEnum in interface MamdaSecurityStatusUpdate
        See Also:
        MamdaSecurityStatusUpdate.getSecurityStatusQualifierEnum()
      • getSecurityStatusStr

        public java.lang.String getSecurityStatusStr()
        Description copied from interface: MamdaSecurityStatusUpdate
        NYSE Technologies normalised security status. See getSecurityStatusOrig for the original exchange value.
        • None : No security status is known/available for this security.
        • Normal : Security is open for normal quoting and trading
        • Closed : Security is closed (usually before or after market open)
        • Halted : Security has been halted by exchange.
        • NotExist : Security does not currently exist in cache (but it might in the future).
        • Deleted : Security has been deleted (e.g., merger, expiration, etc.)
        • Auction : Security has gone into auction.
        • Crossing : Security crossing.
        • Unknown : Security status not currently known.
        Specified by:
        getSecurityStatusStr in interface MamdaSecurityStatusRecap
        Specified by:
        getSecurityStatusStr in interface MamdaSecurityStatusUpdate
        See Also:
        MamdaSecurityStatusUpdate.getSecurityStatusStr()
      • getSecurityStatusQualifierStr

        public java.lang.String getSecurityStatusQualifierStr()
        Description copied from interface: MamdaSecurityStatusUpdate
        Security status qualifier.
        • None : No security status qualifier is known/available for this security.
        • Excused : An Excused withdrawal from the market.
        • Withdrawn : Non-excused withdrawal by the market maker.
        • Suspended : Suspended Trading
        • Resume : Resume trading/quoting after halt.
        • QuoteResume : Resume quoting after halt. NASDAQ distinguishes between resumption of quoting versus trading, although these appear to always occur one after the other.
        • TradeResume : Resume trading after halt. NASDAQ distinguishes between resumption of quoting versus trading, although these appear to always occur one after the other.
        • ResumeTime : When the security is expected to resume trading.
        • MktImbBuy : Market Imbalance - Buy. A 50,000 share or more excess of market orders to buy over market orders to sell as of 9:00am on expiration days. A MktImbBuy implies an ordinary order imbalance (OrdImbBuy).
        • MktImbSell : Market Imbalance - Sell. A 50,000 share or more excess of market orders to sell over market orders to buy as of 9:00am on expiration days. A MktImbSell implies an ordinary order imbalance (OrdImbSell).
        • NoMktImb : No Market Imbalance. Indicates that the imbalance of market orders for a security is less than 50,000 shares as of 9:00am on expiration days.
        • MocImbBuy : Market On Close Imbalance - Buy. An excess of 50,000 share or more of MOC orders to buy over MOC orders to sell (including MOC sell plus and MOC sell short orders). A MocImbBuy implies an ordinary order imbalance (OrdImbBuy).
        • MocImbSell : Market On Close Imbalance - Sell. An excess of 50,000 share or more of MOC orders to sell (not including MOC sell short and MOC sell plus orders) over orders to buy (including MOC orders to buy minus). A MocImbSell implies an ordinary order imbalance (OrdImbSell).
        • NoMocImb : No Market On Close (MOC) Imbalance. The difference between the number of shares to buy MOC and the number of shares to sell MOC is less than 50,000.
        • OrderImb : Non-regulatory condition: a significant imbalance of buy or sell orders exists for this security.
        • OrderInf : Non-regulatory condition where there is a significant influx of orders.
        • OrderImbBuy : Non-regulatory condition: a significant imbalance of buy orders exists for this security.
        • OrderImbSell : Non-regulatory condition: a significant imbalance of sell orders exists for this security.
        • OrderImbNone : The earlier imbalance of buy or sell orders no longer exists for this security. It also might mean that there is no imbalance to begin with.
        • RangeInd : Trading Range Indication. Not an Opening Delay or Trading Halted condition: this condition is used prior to the opening of a security to denote a probable trading range (bid and offer prices, no sizes).
        • ItsPreOpen : ITS pre-opening indication.
        • Reserved : Reserved (e.g., CME).
        • Frozen : Frozen (e.g., CME).
        • PreOpen : Preopening state (e.g., CME).
        • AddInfo : Additional Information. For a security that is Opening Delayed or Trading Halted, if inadequate information is disclosed during a "news dissemination or news pending" Opening Delay or Trading Halt, the Opening Delay or Trading Halt reason could be subsequently reported as "Additional Information."
        • OpenDelay : Security's opening has been delayed by exchange. This value is usually followed by another value specifying the reason for the opening delay.
        • NoOpenNoResume : Indicates that trading halt or opening delay will be in effect for the remainder of the trading day.
        • PriceInd : An approximation of what a security's opening or re-opening price range (bid and offer prices, no sizes) will be when trading resumes after a delayed opening or after a trading halt.
        • Equipment : Non-regulatory condition: the ability to trade this security by a participant is temporarily inhibited due to a systems, equipment or communications facility problem, or for other technical reasons.
        • Filings : Not current in regulatory filings.
        • News : News pending. Denotes a regulatory trading halt due to an expected news announcement which influence the security. An Opening Delay or Trading Halt may be continued once the news has been disseminated.
        • NewsDissem : News Dissemination. Denotes a regulatory trading halt when relevant news influencing the security is being disseminated. Trading is suspended until the primary market determines that an adequate publication or disclosure of information has occurred.
        • Listing : Listing Noncompliance.
        • Operation : Operational Halt
        • Info : Information Requested. Regulatory condition: more disclosure of information is requested by the exchange for this security.
        • SEC : SEC Suspension.
        • Times : News Resumption Times.
        • Other : Other Regulatory Halt.
        • Related : Related Security; In View Of Common. Non-regulatory condition: the halt or opening delay in this security is due to its relationship with another security. This condition also applies to non-common associated securities (e.g. warrants, rights, preferreds, classes, etc.) in view of the common stock.
        • IPO : Upcoming IPO issue not yet trading.
        Specified by:
        getSecurityStatusQualifierStr in interface MamdaSecurityStatusRecap
        Specified by:
        getSecurityStatusQualifierStr in interface MamdaSecurityStatusUpdate
        See Also:
        MamdaSecurityStatusUpdate.getSecurityStatusQualifierStr()
      • getLuldTime

        public com.wombat.mama.MamaDateTime getLuldTime()
      • getLuldIndicator

        public char getLuldIndicator()
      • getSrcTimeFieldState

        public short getSrcTimeFieldState()
        Description copied from interface: MamdaBasicEvent
        return Source time Field State MODIFIED (2) value indicates the fied was updated in last tick NOT MODIFIED (1) value indicate that there was no change in the last tick NOT_INITIALISED (0) value indicates that the field has never been updated
        Specified by:
        getSrcTimeFieldState in interface MamdaBasicEvent
        Specified by:
        getSrcTimeFieldState in interface MamdaBasicRecap
        Returns:
        source time Field State
      • getActivityTimeFieldState

        public short getActivityTimeFieldState()
        Description copied from interface: MamdaBasicEvent
        return Activity time Field State MODIFIED (2) value indicates the fied was updated in last tick NOT MODIFIED (1) value indicate that there was no change in the last tick NOT_INITIALISED (0) value indicates that the field has never been updated
        Specified by:
        getActivityTimeFieldState in interface MamdaBasicEvent
        Specified by:
        getActivityTimeFieldState in interface MamdaBasicRecap
        Returns:
        activity time Field State
      • getEventSeqNumFieldState

        public short getEventSeqNumFieldState()
        Description copied from interface: MamdaBasicEvent
        return source sequence number Field State MODIFIED (2) value indicates the fied was updated in last tick NOT MODIFIED (1) value indicate that there was no change in the last tick NOT_INITIALISED (0) value indicates that the field has never been updated
        Specified by:
        getEventSeqNumFieldState in interface MamdaBasicEvent
      • getEventTimeFieldState

        public short getEventTimeFieldState()
        Description copied from interface: MamdaBasicEvent
        return event time Field State MODIFIED (2) value indicates the fied was updated in last tick NOT MODIFIED (1) value indicate that there was no change in the last tick NOT_INITIALISED (0) value indicates that the field has never been updated
        Specified by:
        getEventTimeFieldState in interface MamdaBasicEvent
      • getLuldIndicatorFieldState

        public short getLuldIndicatorFieldState()
      • getLuldTimeFieldState

        public short getLuldTimeFieldState()
      • onMsg

        public void onMsg​(MamdaSubscription subscription,
                          com.wombat.mama.MamaMsg msg,
                          short msgType)
        Implementation of MamdaListener interface.
        Specified by:
        onMsg in interface MamdaMsgListener
        Parameters:
        subscription - The MamdaSubscription to which this listener was registered.
        msg - The MamaMsg received by the underlying MAMA API and which resulted in this callback being invoked.
        msgType - The message type. e.g. INITIAL, RECAP, UPDATE etc.
      • getFieldAsString

        public java.lang.String getFieldAsString​(com.wombat.mama.MamaMsgField field)