Announcement

Collapse

Looking for a User App or Add-On built by the NinjaTrader community?

Visit NinjaTrader EcoSystem and our free User App Share!

Have a question for the NinjaScript developer community? Open a new thread in our NinjaScript File Sharing Discussion Forum!
See more
See less

Partner 728x90

Collapse

Updates in OnMarketData vs OnMarketDepth

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

    #16
    Originally posted by ScottB View Post
    koganam, thanks for the reply. I definitely understand your thoughts on the overhead which is why I was testing in market replay in the early morning hours. There was virtually no movement to draw and the prices were definitely off the bid/ask designation you would expect.

    I am trying to determine how pervasive this issue is. If it only happens occassionally, that is not an issue or if there is a known relationship among the various events (like there is with OnOrderUpdate vs. OnExecution, etc.) that will work for me as well.

    This is a trading system controlled from an external form (standalone exe so it is on a completely different thread) and only uses a single NinjaTrader DOM to verify order placements (no charts open, etc.).

    So when you say T&S is the most accurate are you referring to OnMarketData using e.Price (last) or OnBarUpdate using Close[0]?
    Scott, it may be a matter of philosophical bent, but as I only trade instruments with the narrowest spread, which means in NinjaTrader, futures with a 1 tick bid/ask spread, entering with only limit orders, and usually exiting with limit orders, I have never really seen the need to even tackle the whole bid/ask/last issue. I only really care about the price that I get in and get out, period.

    However, as NT is essentially asynchronous, we have to make a decision as to what is really the most realistic price. As many pundits say, anything is only worth what the last person agreed to pay for it. In that regard then, e.Price (last) is the exact last price at which any reported transaction was made. What someone wants for it now (bid or ask), is rather irrelevant, would you not say? After all, nobody has yet agreed to transact at that price.

    e.Price(last) will not always match Close[0], because they are actually triggered by different events asynchronously, and their actual reporting is subject to the Windows event/messaging queue, quite independently of the NT event queue.

    I apologize if I sound like I am waxing philosophical. I am just trying to explain my reasoning.

    Comment


      #17
      koganam, I appreciate your input and your time.

      You don't sound like you are waxing philosophical, you sound like some who actually trades for a living as do I.

      I am building the equivalent of volume profile for use with exits (don't put a long exit just above a high volume node under certain circumstances).

      As a part of that effort, I have found knowing certain characteristics of the trade help substantially in determining whether a high volume node will act as support or resistance in a given move. That requires me to classify the trades as to bid/ask at least on a gross level.

      So I need to first make sure I have each trade and although helpful, it is not mandatory that I know precisely whether it was bid or ask at the time the trade occurred.

      Thanks again.
      Scott

      Comment


        #18

        Hi Guys,

        I have been studying volume for years.

        e.Price (last) is the exact last price at which any reported transaction was made. What someone wants for it now (bid or ask), is rather irrelevant, would you not say? After all, nobody has yet agreed to transact at that price.
        It has been my experience that last represents the past and Bid/Ask represent the future and are therefor of importance when it comes to where orders will get filled.

        I personally track these Bid Ask values as leading indicators.

        RJay
        RJay
        NinjaTrader Ecosystem Vendor - Innovative Trading Solutions

        Comment


          #19
          rt6176,

          I have found it of interest to see which side was the aggressor in the trade. You can normally assume if the trade went off at the ask, it was an aggressive buyer and if the trade went off at the bid, it was an aggressive seller.

          When you later revisit this area, it can be helpful to know what the makeup of the volume traded there was. This is the basis for the market delta software with the overall volume regardless of classification being the basis for volume profile studies.

          I am not 100% certain what to do with it but getting the correct information is a start.

          Comment

          Latest Posts

          Collapse

          Topics Statistics Last Post
          Started by pmachiraju, 11-01-2023, 04:46 AM
          8 responses
          148 views
          0 likes
          Last Post rehmans
          by rehmans
           
          Started by mattbsea, Today, 05:44 PM
          0 responses
          5 views
          0 likes
          Last Post mattbsea  
          Started by RideMe, 04-07-2024, 04:54 PM
          6 responses
          33 views
          0 likes
          Last Post RideMe
          by RideMe
           
          Started by tkaboris, Today, 05:13 PM
          0 responses
          5 views
          0 likes
          Last Post tkaboris  
          Started by GussJ, 03-04-2020, 03:11 PM
          16 responses
          3,282 views
          0 likes
          Last Post Leafcutter  
          Working...
          X