Announcement

Collapse
No announcement yet.

Partner 728x90

Collapse

Market depth

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Market depth

    Hi,

    I am building a full book and have noticed that remove operations do not appear to have an associated price. While technically in the case of a futures book without implied pricing, it is possible to remove by position; but it is an issue in fast markets. As evidence of this, notice that in fast markets, the DOM is often full of sizes that are nowhere near the real price and not even on the right side of the market.

    Are there any plans to change this; it would be a trivial fix. As an aside I have built books from direct exchange data for years and it is standard practice to include price. Admittedly that may be due to situations where you may not know the number of levels present in the book (like a futures instrument that has an associated implied order book).

    A small edit - one of the main issues with not having price associated with a remove is it forces you to use a collection that supports access via index vs by key. This makes it impossible to use the exact same logic across languages that support a red-black tree structure.
    Last edited by ScottB; 12-19-2017, 08:07 AM.

    #2
    Hello ScottB,

    Thanks for opening the thread.

    So I understand correctly, you are referring to OnMarketDepth() showing a price of 0 for remove operations, and you would like to see an actual price level for the remove operation to make it easier to manage a level 2 book?

    We could submit a feature request for this if you would like.

    Please let me know if my understanding is correct and you would like to move forward with a feature request.
    JimNinjaTrader Customer Service

    Comment


      #3
      Jim,

      Thank you for getting back to me so quickly. Yes, you understand the issue perfectly.

      I am used to working with direct market access CME data and understand the structures very well; the data is there, it would be a simple matter of populating the price field.

      To be clear on my edit above; if you don't want to use a collection that supports an index for whatever reason, you can't remove any given level without storing what that level's price was prior to the remove operation. Inherently, it is safer to remove a price vs a level; I understand all the arguments that the levels are synchronized, etc. but as I mentioned if you watch your DOM long enough in a very fast market, you will see many cases where using indexes to remove a price fails.

      If you are submitting a development request, having the number of orders at a given price level would be nice too (that data is there as well). However, that is something that is a wish list sort of thing vs something that is vital.

      Comment


        #4
        Thanks ScottB,

        I've submitted a feature request on your behalf and I included your additional note.

        Ticket ID: SFT-2913

        As with other feature requests, we cannot present an ETA as they are fulfilled based on the development team's schedule and priorities. Upon implementation the ticket ID can be found publicly on the Release Notes page of the help guide. I'll provide a link below.

        Release Notes: https://ninjatrader.com/support/help...ease_notes.htm

        If there is anything else I can do to assist, please let me know.
        Last edited by NinjaTrader_Jim; 12-21-2017, 07:50 AM.
        JimNinjaTrader Customer Service

        Comment


          #5
          Hi Jim,

          please add my vote to this SFT, for exactly the same reasons. The missing price on the Remove operation forces me to use a data structure that is suboptimal for the task.

          Thanks,
          Stefan.

          Comment


            #6
            Hi,

            I note that since upgrading to NinjaTrader 8.0.12.0, this issue seems resolved. I am now seeing meaningful nonzero price data for Remove operations, both for market replay data and Continuum live data.

            Could you please check with dev if this was indeed fixed, so we can rely on it in the future? Ticket ID is SFT-2913, can't find it in the release notes.

            Thank you,
            Stefan.
            Last edited by gurko; 02-12-2018, 02:41 AM.

            Comment


              #7
              @gurko - Thank you for bringing this up, I took a different (less efficient) approach and look forward to switching if this is a permanent fix. Additionally, in reading the 8.0.12.0 release notes, I found several mentions of order flow features however haven't been able to locate them (I have a lifetime license); any idea how to activate those features?

              Comment


                #8
                Hello ScottB and gurko,

                SFT- 2913 is still open.

                Looking at this further, it looks like this is specific to the provider being used. I can see the prices for Remove operations when using Continuum and Market Replay, but I am not seeing this for IQFeed and Kinetick connections.

                I'll write back with more information as it becomes available.
                JimNinjaTrader Customer Service

                Comment


                  #9
                  Jim,

                  Do you have any idea if the Continuum and market replay data feeds will continue to have prices for remove operations?

                  Thanks,
                  Scott

                  Comment


                    #10
                    Hello Scott,

                    The ticket was reassigned as a bug since the other adapters already display the intended behavior. The ticket ID for this issue is now: NTEIGHT-12471.

                    When a change is made to address the issue, the ticket ID will be noted in the help guide. As a reminder for any other readers, we cannot offer an ETA for release cycles.

                    Thanks for bumping the thread in regards to your observations from other connections.
                    JimNinjaTrader Customer Service

                    Comment


                      #11
                      Thank you Jim,

                      that's great, much appreciated. Please note that also the Simulated Data Feed has Price=0 at this time. It'd be perfect if all adapters could behave the same (I like to use this feed on weekends to test code changes).

                      Kind regards,
                      Stefan.

                      Comment


                        #12
                        Hello gentlemen,

                        I apologize for the confusion on this item. The bug has been closed as expected.

                        From our lead developer:
                        Expected, any property other than .Position is irrelevant on .Operation=Remove
                        It would then be expected for the Simulated Data Feed to return 0 for prices on Operation.Remove.

                        The Feature Request for this issue will still stand to track interest in this becoming a regular feature.

                        Thanks for your insights to help us improve the software.
                        JimNinjaTrader Customer Service

                        Comment

                        Latest Posts

                        Collapse

                        Topics Statistics Last Post
                        Started by Waxavi, Today, 02:10 AM
                        0 responses
                        6 views
                        0 likes
                        Last Post Waxavi
                        by Waxavi
                         
                        Started by TradeForge, Today, 02:09 AM
                        0 responses
                        11 views
                        0 likes
                        Last Post TradeForge  
                        Started by Waxavi, Today, 02:00 AM
                        0 responses
                        2 views
                        0 likes
                        Last Post Waxavi
                        by Waxavi
                         
                        Started by elirion, Today, 01:36 AM
                        0 responses
                        4 views
                        0 likes
                        Last Post elirion
                        by elirion
                         
                        Started by gentlebenthebear, Today, 01:30 AM
                        0 responses
                        5 views
                        0 likes
                        Last Post gentlebenthebear  
                        Working...
                        X