Announcement

Collapse
No announcement yet.

Partner 728x90

Collapse

Using Multiple Cores on Data Series Optimization

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

    Using Multiple Cores on Data Series Optimization

    Hi,

    I have 32 Cores and 64 "logical Processors" or "threads". When I run the optimizer to optimize different variables everything works perfect. All 64 threads do work and it zips right along. When I only "optimize data series" and no variables, NT seems to use just 1 thread and it takes very long. Possibly longer than running the different time frames manually in Backtest mode. Do you have any ideas on this?

    Thanks,

    Evan

    #2
    Hello Evan,

    Thanks for your question.

    I would expect Optimize Data Series On to use one thread to build each data series and then each logical processor would be used once the optimization starts.

    When I optimize a 1;60;1 ES 06-20 minute series with 1;10;1 Fast and 1;25;1 Slow (SampleMACrossover) I see a good portion of time spent on building data series. We can note that once each data series is built and cached, we can run the optimization again, see little impact loading the data series, and each optimization iteration will take place quickly. With Windows Task Manager open viewing Performance with the grid set to logical processors, we can see each processor being used for the optimization.

    Let me know if you are seeing something different taking this test.
    JimNinjaTrader Customer Service

    Comment


      #3
      Yes that is correct. The data series took a while to build and the optimization took seconds.

      Comment


        #4
        NinjaTrader_Jim Hi Jim, Can you please help me figure out where i'm bottle necking. Running an optimization like in the attached pictures used to take roughly 30 mins i think. It's currently at 4 days. I don't know if some of my hardware is failing or what. or do you think 4 days is appropriate and I'm mistaken that it used to be quicker?

        Comment


          #5
          Hello evanp90,

          Do you see this behavior with standard NinjaTrader BarsTypes or is it only seen with the custom BarsType you are using?

          I also notice that you are using Optimize Data Series with a high variance of BetterRenko bar sizes. This would result in NinjaTrader attempting to build bars from single tick data over a 6 month period, for each instance needed with Optimize Data Series. Once the data series are built, backtests on those bars may be faster, but I could see this having a heavy impact on the optimization time. Does adjusting Optimize Data Series so it is disabled or uses less iterations on the data series improve performance?

          Note that we would not advise using standard Renko and LineBreak bars for backtesting since the call RemoveLastBar on a reversal and that cannot be accurately simulated with historical bars which are already built.

          Also with custom Renko BarsTypes, tricks may be made to create a "fake open" like UniRenko which would result in Standard Order Fill Resolution using fake values to simulate order fills. Using High Order Fill Resolution or submitting orders to a single tick data series can help this situation to have orders filled with real price data and intrabar granularity.

          Generally, we suggest to use the Playback Connection for accurate testing with Renko bars due to the fundamental limitations testing them with historical data. I cannot comment on the 3rd party BetterRenko bar, but perhaps other community members can comment.

          I look forward to assisting.
          JimNinjaTrader Customer Service

          Comment


            #6
            Hi JIm, YEs it takes long running volume chart 50/500/50. Can you please tell me how long your machine quotes using that.

            Comment


              #7
              Hello evanp90,

              Running the same optimization from post #4 with Optimize Data Series enabled using 50/500/50 on a Volume bar does have a very large time to complete. I see about the same thing you do.

              I would expect long optimization times when Optimizing a tick based data series like a Volume or Tick bars and when testing both, I see the long optimization times with both.

              I would suggest using Optimize Data Series with tact when optimizing tick based data series since we would be requesting a large amount of data.

              I have also been discussing these optimization times with our Product Management team so they are informed and can look into this and see if there is room for improvement.

              We look forward to assisting.
              JimNinjaTrader Customer Service

              Comment

              Latest Posts

              Collapse

              Topics Statistics Last Post
              Started by jeronymite, 04-12-2024, 04:26 PM
              3 responses
              44 views
              0 likes
              Last Post jeronymite  
              Started by Barry Milan, Yesterday, 10:35 PM
              7 responses
              20 views
              0 likes
              Last Post NinjaTrader_Manfred  
              Started by AttiM, 02-14-2024, 05:20 PM
              10 responses
              179 views
              0 likes
              Last Post jeronymite  
              Started by ghoul, Today, 06:02 PM
              0 responses
              9 views
              0 likes
              Last Post ghoul
              by ghoul
               
              Started by DanielSanMartin, Yesterday, 02:37 PM
              2 responses
              13 views
              0 likes
              Last Post DanielSanMartin  
              Working...
              X