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

Questions about OnBarUpdate

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

    Questions about OnBarUpdate

    Dear NT Support:
    Have a question to ask about multi-timeframe strategy. Currently I am setting the onbarclose to true. My primary series is 377 Tick and secondary is 1 Tick. Then what I am interested is see if the system truely call the onbarupdate in order. So what I do is just simply print a message every time it call this function. However, it does not line up as what I expected. In particular, it behaves as follows

    TimeFrame:0 and CurrentBar: 0
    TimeFrame:1 and CurrentBar: 377
    TimeFrame:1 and CurrentBar: 378
    TimeFrame:1 and CurrentBar: 379
    .
    .
    .(skip some)
    .
    TimeFrame:1 and CurrentBar: 698
    TimeFrame:1 and CurrentBar: 699
    TimeFrame:1 and CurrentBar: 700
    TimeFrame:1 and CurrentBar: 701
    TimeFrame:1 and CurrentBar: 702
    TimeFrame:1 and CurrentBar: 703
    TimeFrame:1 and CurrentBar: 704
    TimeFrame:0 and CurrentBar: 1
    TimeFrame:1 and CurrentBar: 705
    TimeFrame:0 and CurrentBar: 2
    TimeFrame:1 and CurrentBar: 706
    TimeFrame:1 and CurrentBar: 707
    TimeFrame:1 and CurrentBar: 708
    TimeFrame:1 and CurrentBar: 709
    TimeFrame:1 and CurrentBar: 710
    TimeFrame:1 and CurrentBar: 711
    TimeFrame:1 and CurrentBar: 712
    TimeFrame:1 and CurrentBar: 713
    TimeFrame:1 and CurrentBar: 714
    TimeFrame:1 and CurrentBar: 715
    TimeFrame:1 and CurrentBar: 716
    TimeFrame:1 and CurrentBar: 717
    TimeFrame:1 and CurrentBar: 718
    TimeFrame:1 and CurrentBar: 719
    TimeFrame:1 and CurrentBar: 720
    TimeFrame:1 and CurrentBar: 721
    TimeFrame:1 and CurrentBar: 722
    TimeFrame:1 and CurrentBar: 723
    TimeFrame:1 and CurrentBar: 724
    TimeFrame:1 and CurrentBar: 725
    TimeFrame:1 and CurrentBar: 726
    TimeFrame:1 and CurrentBar: 727
    TimeFrame:1 and CurrentBar: 728
    TimeFrame:1 and CurrentBar: 729
    TimeFrame:1 and CurrentBar: 730
    TimeFrame:1 and CurrentBar: 731
    TimeFrame:1 and CurrentBar: 732
    TimeFrame:1 and CurrentBar: 733
    TimeFrame:1 and CurrentBar: 734
    TimeFrame:1 and CurrentBar: 735
    TimeFrame:1 and CurrentBar: 736
    TimeFrame:1 and CurrentBar: 737
    TimeFrame:1 and CurrentBar: 738
    TimeFrame:1 and CurrentBar: 739
    TimeFrame:1 and CurrentBar: 740
    TimeFrame:1 and CurrentBar: 741
    TimeFrame:1 and CurrentBar: 742
    TimeFrame:1 and CurrentBar: 743
    TimeFrame:1 and CurrentBar: 744
    TimeFrame:1 and CurrentBar: 745
    TimeFrame:1 and CurrentBar: 746
    TimeFrame:1 and CurrentBar: 747
    TimeFrame:1 and CurrentBar: 748
    TimeFrame:1 and CurrentBar: 749
    TimeFrame:1 and CurrentBar: 750
    TimeFrame:1 and CurrentBar: 751
    TimeFrame:1 and CurrentBar: 752
    TimeFrame:1 and CurrentBar: 753
    TimeFrame:1 and CurrentBar: 754


    This is somewhat strange to me since I expect the primary bar to call onbarupdate after every 377 ticks.

    Can you help me with this? Thank you so much!

    s.h.

    #2
    Hi Shinnyih,

    Thank you for your note.

    The OnBarUpdate() will calculate as long as there is information/real time data or a bar when running historically. You would see this more commonly with time based charts.

    Essentially, if there is no market data to generate that bar then you may see the tick count be different in this scenario


    Try running this on a 10s chart with the secondary data series set to 1 minute.

    Additionally, what is the code you are using to run this check?
    Cal H.NinjaTrader Customer Service

    Comment


      #3
      Thanks Cal for your help. Here is the code I am using

      Code:
      protected override void Initialize()
              {
      			BarsRequired = 0; 
      			
                  CalculateOnBarClose = true;
      			
      			//TraceOrders = true;
      			
      			IncludeCommission = true;
      			
      			ExitOnClose = false;
      			
      			accountSize = startAccountSize;
      
      			Add(PeriodType.Tick,1);
      			
      			EntriesPerDirection = 12;
      			
      			if (inTradingTime)
      			{
      				timeCalculate();
      			}
              }
      
      protected override void OnBarUpdate()
      {
      if ((CurrentBar <= 377*2 && BarsInProgress == 1) || (CurrentBar <=4 &&      BarsInProgress == 0))
      	{
      	     Print("TimeFrame:" + BarsInProgress + " and CurrentBar: " + CurrentBar);
      	}
      So another question that comes from this problem would be. Let's say I am adding the 1 tick time frame as intrabar. While backtesting, since the onbarupdate is not really called in order. We can never say that the order signal is sent at the very next tick of the beginning of the next 377 bar right?

      Comment


        #4
        Dear Cal:
        I am sorry to say that I do not fully understand your reply. Since every tick will trigger onbarupdate on the secondary series, so theoretically after 377 calls on the onbarupdate, the onbarupdate will be called again for the primary series isnt it?

        Thanks a lot

        Comment


          #5
          Hi Shinnyih,

          Could you re-test this with adding a printed timestamps at the end of the current bar.

          TimeFrame:0 and CurrentBar: 1
          TimeFrame:1 and CurrentBar: 705
          TimeFrame:0 and CurrentBar: 2
          This part here looks like a session break and I would like to check for this.

          Thank you for your patience
          Cal H.NinjaTrader Customer Service

          Comment


            #6
            Dear Cal:
            No problem. Here is the result I got

            CurrentTime: 2013/9/2 上午 06:00:24, TimeFrame: 0, CurrentBar: 0
            CurrentTime: 2013/9/2 上午 06:00:24, TimeFrame: 1, CurrentBar: 377
            CurrentTime: 2013/9/2 上午 06:00:25, TimeFrame: 1, CurrentBar: 378
            CurrentTime: 2013/9/2 上午 06:00:25, TimeFrame: 1, CurrentBar: 379
            CurrentTime: 2013/9/2 上午 06:00:25, TimeFrame: 1, CurrentBar: 380
            CurrentTime: 2013/9/2 上午 06:00:25, TimeFrame: 1, CurrentBar: 381
            CurrentTime: 2013/9/2 上午 06:00:25, TimeFrame: 1, CurrentBar: 382
            CurrentTime: 2013/9/2 上午 06:00:25, TimeFrame: 1, CurrentBar: 383
            CurrentTime: 2013/9/2 上午 06:00:25, TimeFrame: 1, CurrentBar: 384
            CurrentTime: 2013/9/2 上午 06:00:25, TimeFrame: 1, CurrentBar: 385
            CurrentTime: 2013/9/2 上午 06:00:25, TimeFrame: 1, CurrentBar: 386
            CurrentTime: 2013/9/2 上午 06:00:25, TimeFrame: 1, CurrentBar: 387
            CurrentTime: 2013/9/2 上午 06:00:25, TimeFrame: 1, CurrentBar: 388
            CurrentTime: 2013/9/2 上午 06:00:25, TimeFrame: 1, CurrentBar: 389
            CurrentTime: 2013/9/2 上午 06:00:25, TimeFrame: 1, CurrentBar: 390
            CurrentTime: 2013/9/2 上午 06:00:25, TimeFrame: 1, CurrentBar: 391
            CurrentTime: 2013/9/2 上午 06:00:25, TimeFrame: 1, CurrentBar: 392
            CurrentTime: 2013/9/2 上午 06:00:25, TimeFrame: 1, CurrentBar: 393
            CurrentTime: 2013/9/2 上午 06:00:26, TimeFrame: 1, CurrentBar: 394
            CurrentTime: 2013/9/2 上午 06:00:26, TimeFrame: 1, CurrentBar: 395
            CurrentTime: 2013/9/2 上午 06:00:26, TimeFrame: 1, CurrentBar: 396
            CurrentTime: 2013/9/2 上午 06:00:26, TimeFrame: 1, CurrentBar: 397
            CurrentTime: 2013/9/2 上午 06:00:26, TimeFrame: 1, CurrentBar: 398
            CurrentTime: 2013/9/2 上午 06:00:26, TimeFrame: 1, CurrentBar: 399
            CurrentTime: 2013/9/2 上午 06:00:26, TimeFrame: 1, CurrentBar: 400
            CurrentTime: 2013/9/2 上午 06:00:27, TimeFrame: 1, CurrentBar: 401
            CurrentTime: 2013/9/2 上午 06:00:27, TimeFrame: 1, CurrentBar: 402
            CurrentTime: 2013/9/2 上午 06:00:27, TimeFrame: 1, CurrentBar: 403
            CurrentTime: 2013/9/2 上午 06:00:27, TimeFrame: 1, CurrentBar: 404
            CurrentTime: 2013/9/2 上午 06:00:27, TimeFrame: 1, CurrentBar: 405
            CurrentTime: 2013/9/2 上午 06:00:27, TimeFrame: 1, CurrentBar: 406
            CurrentTime: 2013/9/2 上午 06:00:27, TimeFrame: 1, CurrentBar: 407
            CurrentTime: 2013/9/2 上午 06:00:27, TimeFrame: 1, CurrentBar: 408
            CurrentTime: 2013/9/2 上午 06:00:30, TimeFrame: 1, CurrentBar: 409
            CurrentTime: 2013/9/2 上午 06:00:30, TimeFrame: 1, CurrentBar: 410
            CurrentTime: 2013/9/2 上午 06:00:30, TimeFrame: 1, CurrentBar: 411
            CurrentTime: 2013/9/2 上午 06:00:31, TimeFrame: 1, CurrentBar: 412
            CurrentTime: 2013/9/2 上午 06:00:31, TimeFrame: 1, CurrentBar: 413
            CurrentTime: 2013/9/2 上午 06:00:32, TimeFrame: 1, CurrentBar: 414
            CurrentTime: 2013/9/2 上午 06:00:32, TimeFrame: 1, CurrentBar: 415
            CurrentTime: 2013/9/2 上午 06:00:32, TimeFrame: 1, CurrentBar: 416
            CurrentTime: 2013/9/2 上午 06:00:32, TimeFrame: 1, CurrentBar: 417
            CurrentTime: 2013/9/2 上午 06:00:32, TimeFrame: 1, CurrentBar: 418
            CurrentTime: 2013/9/2 上午 06:00:32, TimeFrame: 1, CurrentBar: 419

            .
            .
            .

            CurrentTime: 2013/9/2 上午 06:01:25, TimeFrame: 1, CurrentBar: 656
            CurrentTime: 2013/9/2 上午 06:01:25, TimeFrame: 1, CurrentBar: 657
            CurrentTime: 2013/9/2 上午 06:01:26, TimeFrame: 1, CurrentBar: 658
            CurrentTime: 2013/9/2 上午 06:01:27, TimeFrame: 1, CurrentBar: 659
            CurrentTime: 2013/9/2 上午 06:01:27, TimeFrame: 1, CurrentBar: 660
            CurrentTime: 2013/9/2 上午 06:01:27, TimeFrame: 1, CurrentBar: 661
            CurrentTime: 2013/9/2 上午 06:01:27, TimeFrame: 1, CurrentBar: 662
            CurrentTime: 2013/9/2 上午 06:01:31, TimeFrame: 1, CurrentBar: 663
            CurrentTime: 2013/9/2 上午 06:01:32, TimeFrame: 1, CurrentBar: 664
            CurrentTime: 2013/9/2 上午 06:01:32, TimeFrame: 1, CurrentBar: 665
            CurrentTime: 2013/9/2 上午 06:01:32, TimeFrame: 1, CurrentBar: 666
            CurrentTime: 2013/9/2 上午 06:01:32, TimeFrame: 1, CurrentBar: 667
            CurrentTime: 2013/9/2 上午 06:01:32, TimeFrame: 1, CurrentBar: 668
            CurrentTime: 2013/9/2 上午 06:01:32, TimeFrame: 1, CurrentBar: 669
            CurrentTime: 2013/9/2 上午 06:01:33, TimeFrame: 1, CurrentBar: 670
            CurrentTime: 2013/9/2 上午 06:01:33, TimeFrame: 1, CurrentBar: 671
            CurrentTime: 2013/9/2 上午 06:01:35, TimeFrame: 1, CurrentBar: 672
            CurrentTime: 2013/9/2 上午 06:01:37, TimeFrame: 1, CurrentBar: 673
            CurrentTime: 2013/9/2 上午 06:01:37, TimeFrame: 1, CurrentBar: 674
            CurrentTime: 2013/9/2 上午 06:01:37, TimeFrame: 1, CurrentBar: 675
            CurrentTime: 2013/9/2 上午 06:01:37, TimeFrame: 1, CurrentBar: 676
            CurrentTime: 2013/9/2 上午 06:01:37, TimeFrame: 1, CurrentBar: 677
            CurrentTime: 2013/9/2 上午 06:01:37, TimeFrame: 1, CurrentBar: 678
            CurrentTime: 2013/9/2 上午 06:01:39, TimeFrame: 1, CurrentBar: 679
            CurrentTime: 2013/9/2 上午 06:01:40, TimeFrame: 1, CurrentBar: 680
            CurrentTime: 2013/9/2 上午 06:01:42, TimeFrame: 1, CurrentBar: 681
            CurrentTime: 2013/9/2 上午 06:01:42, TimeFrame: 1, CurrentBar: 682
            CurrentTime: 2013/9/2 上午 06:01:42, TimeFrame: 1, CurrentBar: 683
            CurrentTime: 2013/9/2 上午 06:01:43, TimeFrame: 1, CurrentBar: 684
            CurrentTime: 2013/9/2 上午 06:01:43, TimeFrame: 1, CurrentBar: 685
            CurrentTime: 2013/9/2 上午 06:01:44, TimeFrame: 1, CurrentBar: 686
            CurrentTime: 2013/9/2 上午 06:01:45, TimeFrame: 1, CurrentBar: 687
            CurrentTime: 2013/9/2 上午 06:01:47, TimeFrame: 1, CurrentBar: 688
            CurrentTime: 2013/9/2 上午 06:01:47, TimeFrame: 1, CurrentBar: 689
            CurrentTime: 2013/9/2 上午 06:01:51, TimeFrame: 1, CurrentBar: 690
            CurrentTime: 2013/9/2 上午 06:01:54, TimeFrame: 1, CurrentBar: 691
            CurrentTime: 2013/9/2 上午 06:01:54, TimeFrame: 1, CurrentBar: 692
            CurrentTime: 2013/9/2 上午 06:01:54, TimeFrame: 1, CurrentBar: 693
            CurrentTime: 2013/9/2 上午 06:01:54, TimeFrame: 1, CurrentBar: 694
            CurrentTime: 2013/9/2 上午 06:01:54, TimeFrame: 1, CurrentBar: 695
            CurrentTime: 2013/9/2 上午 06:01:54, TimeFrame: 1, CurrentBar: 696
            CurrentTime: 2013/9/2 上午 06:01:54, TimeFrame: 1, CurrentBar: 697
            CurrentTime: 2013/9/2 上午 06:01:54, TimeFrame: 1, CurrentBar: 698
            CurrentTime: 2013/9/2 上午 06:01:54, TimeFrame: 1, CurrentBar: 699
            CurrentTime: 2013/9/2 上午 06:01:54, TimeFrame: 1, CurrentBar: 700
            CurrentTime: 2013/9/2 上午 06:01:56, TimeFrame: 1, CurrentBar: 701
            CurrentTime: 2013/9/2 上午 06:01:56, TimeFrame: 1, CurrentBar: 702
            CurrentTime: 2013/9/2 上午 06:01:56, TimeFrame: 1, CurrentBar: 703
            CurrentTime: 2013/9/2 上午 06:01:56, TimeFrame: 1, CurrentBar: 704
            CurrentTime: 2013/9/2 上午 06:01:57, TimeFrame: 0, CurrentBar: 1
            CurrentTime: 2013/9/2 上午 06:01:57, TimeFrame: 1, CurrentBar: 705
            CurrentTime: 2013/9/2 上午 06:01:57, TimeFrame: 0, CurrentBar: 2
            CurrentTime: 2013/9/2 上午 06:01:57, TimeFrame: 1, CurrentBar: 706
            CurrentTime: 2013/9/2 上午 06:01:57, TimeFrame: 1, CurrentBar: 707
            CurrentTime: 2013/9/2 上午 06:01:57, TimeFrame: 1, CurrentBar: 708
            CurrentTime: 2013/9/2 上午 06:01:57, TimeFrame: 1, CurrentBar: 709
            CurrentTime: 2013/9/2 上午 06:01:57, TimeFrame: 1, CurrentBar: 710
            CurrentTime: 2013/9/2 上午 06:01:57, TimeFrame: 1, CurrentBar: 711
            CurrentTime: 2013/9/2 上午 06:01:57, TimeFrame: 1, CurrentBar: 712

            The instrument I am using is CL 01-14 with ZenFire

            Thanks!
            Last edited by shinnyih; 12-14-2013, 02:35 AM.

            Comment


              #7
              Dear Cal:
              Furthermore, when I run a 10 tick primary series and 1 tick secondary series case. The result is even worse.

              CurrentTime: 2013/9/2 上午 06:00:00, TimeFrame: 0, CurrentBar: 9
              CurrentTime: 2013/9/2 上午 06:00:00, TimeFrame: 1, CurrentBar: 103
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 0, CurrentBar: 10
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 104
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 0, CurrentBar: 11
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 105
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 0, CurrentBar: 12
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 106
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 0, CurrentBar: 13
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 107
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 0, CurrentBar: 14
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 108
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 109
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 110
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 111
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 112
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 113
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 114
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 115
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 116
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 117
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 118
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 119
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 120
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 121
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 122
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 123
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 124
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 125
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 126
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 127
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 128
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 129
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 130
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 131
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 132
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 133
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 134
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 135
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 136
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 137
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 138
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 139
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 140
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 141
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 142
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 143
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 144
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 145
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 146
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 147
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 148
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 149
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 150
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 151
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 152
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 153
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 154
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 155
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 156
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 157
              CurrentTime: 2013/9/2 上午 06:00:01, TimeFrame: 1, CurrentBar: 158
              CurrentTime: 2013/9/2 上午 06:00:02, TimeFrame: 0, CurrentBar: 15
              CurrentTime: 2013/9/2 上午 06:00:02, TimeFrame: 1, CurrentBar: 159
              CurrentTime: 2013/9/2 上午 06:00:02, TimeFrame: 0, CurrentBar: 16
              CurrentTime: 2013/9/2 上午 06:00:02, TimeFrame: 1, CurrentBar: 160
              CurrentTime: 2013/9/2 上午 06:00:02, TimeFrame: 1, CurrentBar: 161
              CurrentTime: 2013/9/2 上午 06:00:02, TimeFrame: 1, CurrentBar: 162
              CurrentTime: 2013/9/2 上午 06:00:02, TimeFrame: 1, CurrentBar: 163
              CurrentTime: 2013/9/2 上午 06:00:02, TimeFrame: 1, CurrentBar: 164
              CurrentTime: 2013/9/2 上午 06:00:02, TimeFrame: 1, CurrentBar: 165
              CurrentTime: 2013/9/2 上午 06:00:02, TimeFrame: 1, CurrentBar: 166
              CurrentTime: 2013/9/2 上午 06:00:02, TimeFrame: 1, CurrentBar: 167
              CurrentTime: 2013/9/2 上午 06:00:02, TimeFrame: 1, CurrentBar: 168
              CurrentTime: 2013/9/2 上午 06:00:02, TimeFrame: 1, CurrentBar: 169
              CurrentTime: 2013/9/2 上午 06:00:03, TimeFrame: 1, CurrentBar: 170
              CurrentTime: 2013/9/2 上午 06:00:03, TimeFrame: 1, CurrentBar: 171
              CurrentTime: 2013/9/2 上午 06:00:03, TimeFrame: 1, CurrentBar: 172
              CurrentTime: 2013/9/2 上午 06:00:04, TimeFrame: 1, CurrentBar: 173
              CurrentTime: 2013/9/2 上午 06:00:04, TimeFrame: 1, CurrentBar: 174
              CurrentTime: 2013/9/2 上午 06:00:04, TimeFrame: 1, CurrentBar: 175
              CurrentTime: 2013/9/2 上午 06:00:05, TimeFrame: 0, CurrentBar: 17
              CurrentTime: 2013/9/2 上午 06:00:05, TimeFrame: 1, CurrentBar: 176
              CurrentTime: 2013/9/2 上午 06:00:05, TimeFrame: 1, CurrentBar: 177
              CurrentTime: 2013/9/2 上午 06:00:05, TimeFrame: 1, CurrentBar: 178
              CurrentTime: 2013/9/2 上午 06:00:05, TimeFrame: 1, CurrentBar: 179
              CurrentTime: 2013/9/2 上午 06:00:05, TimeFrame: 1, CurrentBar: 180
              CurrentTime: 2013/9/2 上午 06:00:05, TimeFrame: 1, CurrentBar: 181
              CurrentTime: 2013/9/2 上午 06:00:05, TimeFrame: 1, CurrentBar: 182
              CurrentTime: 2013/9/2 上午 06:00:05, TimeFrame: 1, CurrentBar: 183
              CurrentTime: 2013/9/2 上午 06:00:06, TimeFrame: 1, CurrentBar: 184
              CurrentTime: 2013/9/2 上午 06:00:06, TimeFrame: 1, CurrentBar: 185
              CurrentTime: 2013/9/2 上午 06:00:06, TimeFrame: 1, CurrentBar: 186
              CurrentTime: 2013/9/2 上午 06:00:07, TimeFrame: 0, CurrentBar: 18
              CurrentTime: 2013/9/2 上午 06:00:07, TimeFrame: 1, CurrentBar: 187
              CurrentTime: 2013/9/2 上午 06:00:07, TimeFrame: 1, CurrentBar: 188
              CurrentTime: 2013/9/2 上午 06:00:07, TimeFrame: 1, CurrentBar: 189
              CurrentTime: 2013/9/2 上午 06:00:08, TimeFrame: 1, CurrentBar: 190
              CurrentTime: 2013/9/2 上午 06:00:08, TimeFrame: 1, CurrentBar: 191
              CurrentTime: 2013/9/2 上午 06:00:09, TimeFrame: 0, CurrentBar: 19
              CurrentTime: 2013/9/2 上午 06:00:09, TimeFrame: 1, CurrentBar: 192


              I am not sure why session break would have anything to do with this though since it's all about building the bars by ticks isnt it?

              Comment


                #8
                Shinnyih,

                CurrentTime: 2013/9/2 上午 06:01:57, TimeFrame: 0, CurrentBar: 1
                CurrentTime: 2013/9/2 上午 06:01:57, TimeFrame: 1, CurrentBar: 705
                CurrentTime: 2013/9/2 上午 06:01:57, TimeFrame: 0, CurrentBar: 2
                CurrentTime: 2013/9/2 上午 06:01:57, TimeFrame: 1, CurrentBar: 706
                CurrentTime: 2013/9/2 上午 06:01:57, TimeFrame: 1, CurrentBar: 707
                CurrentTime: 2013/9/2 上午 06:01:57, TimeFrame: 1, CurrentBar: 708
                CurrentTime: 2013/9/2 上午 06:01:57, TimeFrame: 1, CurrentBar: 709
                CurrentTime: 2013/9/2 上午 06:01:57, TimeFrame: 1, CurrentBar: 710
                CurrentTime: 2013/9/2 上午 06:01:57, TimeFrame: 1, CurrentBar: 711
                CurrentTime: 2013/9/2 上午 06:01:57, TimeFrame: 1, CurrentBar: 712
                How the bars being called works is the the primary is going to get called when you have the fully completed number of ticks. We see this in the beginning with the primary is called at bar 0 and the secondary has 377.

                With the quote above you can see that the BIP 0 is called at the same time as BIP 1. I would expect if you showed the rest of the print output window the rest of those ticks would have the same time stamp as well.

                The logic of the OnBarUpdate is still going to work out the individual ticks that you have setup, but the primary will get called first when it is completed the full 377 ticks. Thus this why you see the BIP 0 get called twice above is because it has already reached the 377 ticks and the tick prints are still being printed.


                Let me know if this helps.
                Cal H.NinjaTrader Customer Service

                Comment


                  #9
                  Dear Cal:
                  Thanks. I understand the issue now. But that leads to a couple questions.

                  First of all, say that OnBarUpdate get called in terms of the timestamp from your reply. Which means the earliest time will be called and the primary series will be the higher priority among the same time stamps. However, from what I see how the TimeStamp works, it seems that it is only approximate to minute not seconds. Will it create an issue that after the current 377 bar close and onbarupdate get triggered, then the tick bar within this 377 bar will call the onbarupdate and becomes a "time travel" issue.

                  In fact, we can already see from the previous posts

                  CurrentTime: 2013/9/2 上午 06:01:57, TimeFrame: 0, CurrentBar: 1
                  CurrentTime: 2013/9/2 上午 06:01:57, TimeFrame: 1, CurrentBar: 705
                  CurrentTime: 2013/9/2 上午 06:01:57, TimeFrame: 0, CurrentBar: 2
                  CurrentTime: 2013/9/2 上午 06:01:57, TimeFrame: 1, CurrentBar: 706
                  CurrentTime: 2013/9/2 上午 06:01:57, TimeFrame: 1, CurrentBar: 707
                  CurrentTime: 2013/9/2 上午 06:01:57, TimeFrame: 1, CurrentBar: 708
                  CurrentTime: 2013/9/2 上午 06:01:57, TimeFrame: 1, CurrentBar: 709
                  CurrentTime: 2013/9/2 上午 06:01:57, TimeFrame: 1, CurrentBar: 710

                  Apparently, 377 bar number 2 is way before these tick bars.

                  Then if so, we got another problem coming in. Let's say, we call the enterlong function in the 377 bar with barsInProgress 1 (which means we will send the signal in the next available tick bar). However, since the next tick bar is within the current 377 bar (time travel issue), the contract will be filled within the same 377 bar. My point is that if we want to enter the contract in the next starting tick of the 377 bar. This implementation will not work.

                  Comment


                    #10
                    Another question is that during real time testing, if I set the onbarclose to true, the onbarupdate calling priority will still be different from the backtest right? Exactly because of the time travel issue.

                    Comment


                      #11
                      Sinnyih,

                      The expectation with the historical calls is that the the primary Data Series will get called first before any other added data series. This is why the calls for BIP look out of place.

                      However, running this in real time produces the expected results that at each tick is called before the full primary bar is completed.
                      Cal H.NinjaTrader Customer Service

                      Comment

                      Latest Posts

                      Collapse

                      Topics Statistics Last Post
                      Started by Stanfillirenfro, Yesterday, 09:19 AM
                      7 responses
                      51 views
                      0 likes
                      Last Post NinjaTrader_Gaby  
                      Started by TraderCro, 04-12-2024, 11:36 AM
                      4 responses
                      69 views
                      0 likes
                      Last Post Mindset
                      by Mindset
                       
                      Started by Mindset, Yesterday, 02:04 AM
                      1 response
                      15 views
                      0 likes
                      Last Post Mindset
                      by Mindset
                       
                      Started by agclub, 04-21-2024, 08:57 PM
                      4 responses
                      18 views
                      0 likes
                      Last Post NinjaTrader_Gaby  
                      Started by Irukandji, Today, 04:58 AM
                      0 responses
                      6 views
                      0 likes
                      Last Post Irukandji  
                      Working...
                      X