Display cut off bars on the chart?

Back to topics list To post a new topic, please log in or register
avatar
62
nikolaygmt 2016.08.09 18:17
 

When I use F12 "Step by Step" sometimes a bar that goes beyond the visible bottom or top of the chart is not displayed fully:


1) Is there any MT4 settings that can help correctly displaying such bars?

2) Is there a way to program correctly displaying such bars?

avatar
Moderator
3404
GumRai 2016.08.09 22:46 #
 
Try pressing F8 and make sure that the scale fix boxes are not checked
avatar
62
nikolaygmt 2016.08.10 09:09 #
 

the scale fix checkboxes are disabled.

A cut off bar is displayed after the next bar closes.

avatar
12983
WHRoeder 2016.08.10 13:09 #
 
Don't link to images, insert the image
avatar
62
nikolaygmt 2016.08.10 14:42 #
 

Thanks WHRoeder! Image inserted.

And clarified that it happens when I use F12 "Step by Step".

avatar
12983
WHRoeder 2016.08.10 19:09 #
 
nikolaygmt: happens when I use F12 "Step by Step".
Old bug 2012/08/18:
// In the tester (visual mode,) on the first tick, these routines return
// left=100, right=37 (depends on default bar scaling.) This is what the
// chart looks like when you maximize it while it is generating the FXT
// file. After that, it appears like the left/right are correct but the
// hi/lo are one tick behind the displayed chart. I don't know about
// live charts.
The scale doesn't resize until the end of processing the tick. F12 is one tick.
avatar
62
nikolaygmt 2016.08.11 19:56 #
 

Thanks WHRoeder! I programmed a workaround. Does not show the full source code, but main logic is there and works in most cases when the user is using a self defined hotkey for F12 to navigate the chart.

   else if (id == CHARTEVENT_CHART_CHANGE) {
      if (isF12Pressed) {
         double chartLow;
         double chartHigh;
         ch.getChartVisibleLowHigh(chartLow, chartHigh);
         double winMaxPrice = WindowPriceMax();
         double winMinPrice = WindowPriceMin();
         
         if (ComparePrice(chartLow, LT, winMinPrice) || ComparePrice(chartHigh, GT, winMaxPrice)) {
            ch.setScaleFix(true);
            ch.setScaleFixMinMax(chartLow, chartHigh);
         }
         else {
            ch.setScaleFix(false);
         }
         
         isF12Pressed = false;
      }
   }


Back to topics list  

To add comments, please log in or register