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

Backtesting with Bid Ask entries?

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

    Backtesting with Bid Ask entries?

    Can you tell me if NinjaTrader V7 can backtest a strategy using Bid/Ask entries?

    #2
    Yes, provided you coded the strategy to be a MultiSeries one to execute on bid / ask series instead of the last - http://www.ninjatrader.com/support/h...s/nt7/add3.htm
    BertrandNinjaTrader Customer Service

    Comment


      #3
      If I'm using a 1 minute chart and this is my entry code:

      EnterLongLimit(DefaultQuantity, GetCurrentAsk() + OffsetBuy * TickSize, "BuyAsk");

      do I need to add:

      Add(PeriodType.Tick, 1);

      to backtest accurately?

      Comment


        #4
        Originally posted by kenb2004 View Post
        If I'm using a 1 minute chart and this is my entry code:

        EnterLongLimit(DefaultQuantity, GetCurrentAsk() + OffsetBuy * TickSize, "BuyAsk");

        do I need to add:

        Add(PeriodType.Tick, 1);

        to backtest accurately?
        For backtesting you need to add the series, as the GetCurrentBid / Ask are just the Close price on historical data.

        And you would need to add the bid / ask MarketDataType series and not just a one tick series.
        BertrandNinjaTrader Customer Service

        Comment


          #5
          So how would I do that? Is there an example of this somewhere besides the one you just pointed me to? I know this option is built-in to Multicharts, is this something NinjaTrader is going to address and add as an option soon?
          thanks

          Comment


            #6
            There's unfortunately no ready made sample available currently - thanks suggesting it. You would do it through code and a MultiSeries strategy - add the bid and ask series to your Initialize() and then execute to those series -

            Add(string instrumentName, PeriodType periodType, int period, MarketDataType marketDataType)

            BertrandNinjaTrader Customer Service

            Comment


              #7
              If I add this:
              Initialize()
              Add(Instrument.FullName, PeriodType.Tick, 1, MarketDataType.Bid);
              Add(Instrument.FullName, PeriodType.Tick, 1, MarketDataType.Ask);
              OnBarUpdate()
              if(BarsInProgress == 0) //Main Chart interval
              {
              }
              else if(BarsInProgress == 1) //Bid Tick Chart interval
              {
              }
              else if(BarsInProgress == 2) //Ask Tick Chart interval
              {
              }
              else
              {
              // Just a place holder. This should never be reached.
              }

              Do I need to have "Save Chart Data as Historical" checked in Tools>Options>Data>Real-Time data? And is this the right code for me to backtest bid ask in a 1 minute strategy? By the way, this "sample code" is from one of your threads.
              Last edited by kenb2004; 11-24-2010, 01:57 PM.

              Comment


                #8
                Checking the option for saving data is up to you whether you want to save data or not. Unchecking it means no real-time data will be saved and checking it means it will.

                The code is correct for whatever you want to do with bid/ask streams.
                Josh P.NinjaTrader Customer Service

                Comment


                  #9
                  could you integrate it? This way you can backtest a market buyorder as if you buy at the ask. But do you can backtest as if this position is later sold at market at the current bid?! I do not think so.

                  Comment


                    #10
                    Thanks for the suggestion fliesch - the code snippet shown would sell at the bid if the market order to exit would be submitted to it.
                    BertrandNinjaTrader Customer Service

                    Comment

                    Latest Posts

                    Collapse

                    Topics Statistics Last Post
                    Started by tkaboris, Today, 05:13 PM
                    0 responses
                    2 views
                    0 likes
                    Last Post tkaboris  
                    Started by GussJ, 03-04-2020, 03:11 PM
                    16 responses
                    3,281 views
                    0 likes
                    Last Post Leafcutter  
                    Started by WHICKED, Today, 12:45 PM
                    2 responses
                    19 views
                    0 likes
                    Last Post WHICKED
                    by WHICKED
                     
                    Started by Tim-c, Today, 02:10 PM
                    1 response
                    10 views
                    0 likes
                    Last Post NinjaTrader_ChelseaB  
                    Started by Taddypole, Today, 02:47 PM
                    0 responses
                    5 views
                    0 likes
                    Last Post Taddypole  
                    Working...
                    X