Announcement

Collapse
No announcement yet.

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 Hwop38, 05-04-2026, 07:02 PM
      0 responses
      160 views
      0 likes
      Last Post Hwop38
      by Hwop38
       
      Started by CaptainJack, 04-24-2026, 11:07 PM
      0 responses
      307 views
      0 likes
      Last Post CaptainJack  
      Started by Mindset, 04-21-2026, 06:46 AM
      0 responses
      244 views
      0 likes
      Last Post Mindset
      by Mindset
       
      Started by M4ndoo, 04-20-2026, 05:21 PM
      0 responses
      348 views
      0 likes
      Last Post M4ndoo
      by M4ndoo
       
      Started by M4ndoo, 04-19-2026, 05:54 PM
      0 responses
      178 views
      0 likes
      Last Post M4ndoo
      by M4ndoo
       
      Working...
      X