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

Bar price collections in GetMinMaxValues()

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

    Bar price collections in GetMinMaxValues()

    I am trying to get the values of High[0] and Low[0] in GetMinMaxValues() but an ArgumentOutOfRangeException is triggered. I have tried to get Open[0] and Close[0] but I couldn't either.

    Is it possible to access these bar price collections in GetMinMaxValues()? I have noticed that CurrentBar is always -1 inside the scope of that function. Does anybody know why?

    #2
    >> Is it possible to access these bar price collections in GetMinMaxValues()?
    No. Also: unfortunately this is beyond the scope of what we provide support for.

    Comment


      #3
      Originally posted by windcatcher View Post
      I am trying to get the values of High[0] and Low[0] in GetMinMaxValues() but an ArgumentOutOfRangeException is triggered. I have tried to get Open[0] and Close[0] but I couldn't either.

      Is it possible to access these bar price collections in GetMinMaxValues()? I have noticed that CurrentBar is always -1 inside the scope of that function. Does anybody know why?
      Notwithstanding the support guy's reply, there's nothing to prevent others from providing a more helpful answer. Here's an example I've seen that scans through highs and lows:

      Code:
       
      public override void GetMinMaxValues(ChartControl chartControl, ref double min, ref double max)
      {
         base.GetMinMaxValues(chartControl, ref min, ref max);
       
         int bars = base.ChartControl.BarsPainted;
         Exception caughtException;
       
         while (bars >= 0) {  
            int index = base.ChartControl.LastBarPainted -base.ChartControl.BarsPainted + 1 + bars;
            if (base.ChartControl.ShowBarsRequired || ((index - base.Displacement) >= base.BarsRequired)) {
               try {
                  double thisHigh =  dsHigh.Get(index);
                  double thisLow =  dsLow.Get(index);
                  if ((!double.IsNaN(thisHigh)) && (index>0)) {
                     if (thisHigh>max) max=thisHigh;
                     if (thisHigh<min) min=thisHigh; 
                  }
                  if ((!double.IsNaN(thisLow)) && (index>0)) {
                     if (thisLow>max) max=thisLow;
                     if (thisLow<min) min=thisLow; 
                  }
               }
               catch (Exception exception) { caughtException=exception; }
            }
            bars--;
         }
      }
      Hope that helps.
      -Alex

      Comment

      Latest Posts

      Collapse

      Topics Statistics Last Post
      Started by habeebft, Today, 07:27 AM
      1 response
      13 views
      0 likes
      Last Post NinjaTrader_ChristopherS  
      Started by AveryFlynn, Today, 04:57 AM
      1 response
      12 views
      0 likes
      Last Post NinjaTrader_Erick  
      Started by Max238, Today, 01:28 AM
      4 responses
      37 views
      0 likes
      Last Post Max238
      by Max238
       
      Started by r68cervera, Today, 05:29 AM
      1 response
      10 views
      0 likes
      Last Post NinjaTrader_ChelseaB  
      Started by geddyisodin, Today, 05:20 AM
      1 response
      14 views
      0 likes
      Last Post NinjaTrader_Gaby  
      Working...
      X