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

MarketDataType.Ask and the message sent

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

    MarketDataType.Ask and the message sent

    I am running the following IF statements, I have checked the via the print menu, they are both executing there commands.

    when the bid or ask side is updated, is a string of all levels sent, this would account for why I get 2 firing, can i just include update or do i need another method to say only when changed do i want to execute the statement

    if (e.MarketDataType == MarketDataType.Ask && e.Position == 0)
    {

    }
    if (e.MarketDataType == MarketDataType.Bid && e.Position == 0)
    {

    }

    #2
    if (e.MarketDataType == MarketDataType.Ask && e.Position == 0 && e.Operation == Operation.Update);

    This statement prints levels above 0, as I understand it && means
    and also, so how can it be printing other levels in output menu?

    Comment


      #3
      tinkerz, have you seen the reference sample titled Creating your own Level II data book? It goes over the details of creating/maintaining a LII book.

      Now I'm not exactly what you're trying to accomplish, but maybe you could just the OnMarketData() method? That just returns the best bid, best ask, and the last price.

      This code has much more "fluff" than necessary to display the basics, but it should help you out. Let us know if you have any other questions.
      Code:
      protected override void OnMarketData(MarketDataEventArgs e)
      {
          if (e.MarketDataType == MarketDataType.Last)
          {        
              Print("last\t" + e.Price.ToString() + "\t" + e.Volume.ToString());
          }
          else if (e.MarketDataType == MarketDataType.Bid)
          {
              double bidprice = e.Price;
              int bidvol = e.Volume;
              string datastring = "bid\t" + bidprice + "\t" + bidvol;
              Print(datastring);
          }
          else if (e.MarketDataType == MarketDataType.Ask)
          {
              double askprice = e.Price;
              int askvol = e.Volume;
              string datastring = "ask\t" + askprice + "\t" + askvol;
              Print(datastring);
          }
      }
      AustinNinjaTrader Customer Service

      Comment

      Latest Posts

      Collapse

      Topics Statistics Last Post
      Started by ttrader23, 05-08-2024, 09:04 AM
      9 responses
      42 views
      0 likes
      Last Post ttrader23  
      Started by ZeroKuhl, Yesterday, 04:31 PM
      8 responses
      43 views
      0 likes
      Last Post ZeroKuhl  
      Started by reynoldsn, Today, 07:04 PM
      0 responses
      8 views
      0 likes
      Last Post reynoldsn  
      Started by puapwr, Today, 06:09 PM
      0 responses
      4 views
      0 likes
      Last Post puapwr
      by puapwr
       
      Started by franciscog21, Today, 05:27 PM
      0 responses
      13 views
      0 likes
      Last Post franciscog21  
      Working...
      X