HighLowChart

Modified in version 5.0

HighLowChart ( appearanceConst ;​ doShiftIntervals ;​ highLowChartType ;​ highTickMarkLength ;​ highTickMarkAlignment ;​ lowTickMarkLength ;​ lowTickMarkAlignment ;​ closeTickMarkLength ;​ closeTickMarkAlignment ;​ openTickMarkLength ;​ openTickMarkAlignment )

Argument Type Range Default Note
appearanceConst int 0..127 default
doShiftIntervals int 0..1 off
highLowChartType int 1..3 highLow
highTickMarkLength num 0..200 25 % of interval width
highTickMarkAlignment int 1..3 center
lowTickMarkLength num 0..200 25 % of interval width
lowTickMarkAlignment int 1..3 center
closeTickMarkLength num 0..200 25 % of interval width
closeTickMarkAlignment int 1..3 center
openTickMarkLength num 0..200 25 % of interval width
openTickMarkAlignment int 1..3 center
Description

The HighLowChart() function makes it possible to depict value ranges in a variety of ways. At least two data series are necessary to define the range limits. The highest values are entered in the ChartData() function as the 1st data series, the lowest values as the 2nd data series.

HIGH_LOW_CHART_01
1

OpenDrawing(250;​150)

2

ChartData(26 19 19 24 15 15 6;​ /* High-values. */

3

18 12 10 15 11 6 2) /* Low-values.  */

4

HighLowChart()

5

/* Set up styles. */

6

LineStyle(1;​;​0.75;​#4682b4)

7

/* Set up axes. */

8

AxisLine(all;​0)

9

AxisMajorTicks(all;​0)

10

/* Set up grid. */

11

MajorGridLineWidths(x;​y;​0.25)

12

MajorGridLineWidths(y;​x;​0)

13

CloseDrawing()

HIGH_LOW_CHART_01

As an option, by using the 3rd argument highLowChartType, three values (highLowChartType = highLowClose) or even four values (highLowChartType = highLowCloseOpen) can be entered in addition to the two default values (highLowChartType = highLow). Since this type of chart is frequently used for stock market prices, the four values are referred to as highest, lowest, closing and opening price. In ChartData() the closing prices are entered as the 3rd data series and the opening prices as the 4th data series. Furthermore, it is possible to move the range lines half an interval width so that they do not lie on the interval borders but rather in the middle of the intervals. This can be done by activating the 2nd argument doShiftIntervals = on.

HIGH_LOW_CHART_02
1

OpenDrawing(250;​150)

2

ChartData(118 122 118 116 118 121 123;​ /* High-values.  */

3

102 105 104 104 110 111 113;​ /* Low-values.  */

4

104 119 118 108 115 118 113) /* Close-values. */

5

HighLowChart(;​on;​highLowClose)

6

/* Set up styles. */

7

LineStyle(1;​;​0.75;​#4682b4)

8

/* Set up axes. */

9

AxisLine(all;​0)

10

AxisMajorTicks(all;​0)

11

/* Set up grid. */

12

MajorGridLineWidths(x;​y;​0.25)

13

MajorGridLineWidths(y;​x;​0)

14

CloseDrawing()

HIGH_LOW_CHART_02

The alignment of the markers — the markers for the lowest and opening prices are normally aligned to the left, the markers for the highest and closing prices to the right — is defined by using the arguments highMarkerAlignment, lowMarkerAlignment, closeMarkerAlignment and openMarkerAlignment. All markers can either be placed on the left, on the right or in the center (default). The length of the markers can be controlled by the arguments highMarkerLength, lowMarkerLength, closeMarkerLength and openMarkerLength and should be entered in percent of the interval width.

HIGH_LOW_CHART_03
1

OpenDrawing(250;​150)

2

ChartData(26 19 19 24 15 15 6;​ /* High-values. */

3

18 12 8 15 11 6 2) /* Low-values.  */

4

HighLowChart(;​on;​highLow;​;​right;​;​left)

5

/* Set up styles. */

6

LineStyle(1;​;​0.75;​#4682b4)

7

/* Set up axes. */

8

AxisLine(all;​0)

9

AxisMajorTicks(all;​0)

10

/* Set up grid. */

11

MajorGridLineWidths(x;​y;​0.25)

12

MajorGridLineWidths(y;​x;​0)

13

CloseDrawing()

HIGH_LOW_CHART_03
HIGH_LOW_CHART_04
1

OpenDrawing(250;​150)

2

ChartData(118 122 118 116 118 121 123;​ /* High-values.  */

3

102 105 104 104 110 111 113;​ /* Low-values.   */

4

104 119 118 108 115 118 113;​ /* Close-values. */

5

113 121 114 112 118 121 121) /* Open-values.  */

6

HighLowChart(;​on;​highLowCloseOpen;​0;​;​0;​;​;​right;​;​left)

7

/* Set up styles. */

8

LineStyle(1;​;​0.75;​#4682b4)

9

/* Set up axes. */

10

AxisLine(all;​0)

11

AxisMajorTicks(all;​0)

12

/* Set up grid. */

13

MajorGridLineWidths(x;​y;​0.25)

14

MajorGridLineWidths(y;​x;​0)

15

CloseDrawing()

HIGH_LOW_CHART_04
HIGH_LOW_CHART_05
1

OpenDrawing(250;​150)

2

ChartData(118 122 118 116 118 121 123;​ /* High-values.  */

3

102 105 104 104 110 111 113;​ /* Low-values.  */

4

104 119 118 108 115 118 113;​ /* Close-values. */

5

113 121 114 112 118 121 121) /* Open-values.  */

6

HighLowChart(;​on;​highLowCloseOpen;​0;​;​0;​;​;​right;​;​left)

7

/* Set up styles. */

8

LineStyle(1;​;​0.75;​#4682b4)

9

/* Set up axes. */

10

Scaling(x;​linear;​0;​7;​7)

11

AxisLine(all;​0)

12

AxisMajorTicks(all;​0)

13

AxisMajorTickLabelTexts(x;​"20.10";​"21.10";​"22.10";​"23.10";​"26.10";​"27.10";​"28.10")

14

AxisMajorTickLabelStyle(x;​"Arial";​9;​plain;​black;​;​-90)

15

/* Set up grid. */

16

MajorGridLineWidths(x;​y;​0.25)

17

MajorGridLineWidths(y;​x;​0)

18

CloseDrawing()

HIGH_LOW_CHART_05

The 1st argument appearanceConstants makes it possible to rotate the chart 90 degrees (appearanceConstants = horizontal) to add symbols (appearanceConstants = symbol), shadow (appearanceConstants = shadow) and labels (appearanceConstants = label) to the range lines. All options can be combined by using a plus sign "+". The lines, symbols and shadows can be varied by using the style functions LineColorScheme() , LineStyle() , SymbolColorScheme() , SymbolStyle() and ShadowStyle() and the labels by using the five style functions LabelTexts() , LabelStyle() , LabelBackground() , LabelBackgroundOptions() and LabelOptions() .

HIGH_LOW_CHART_06
1

OpenDrawing(250;​150)

2

ChartData(26 19 19 24 15 15 6;​ /* High-values. */

3

18 12 10 15 11 6 2) /* Low-values.  */

4

HighLowChart(shadow+symbol;​on;​;​0;​;​0)

5

/* Set up styles. */

6

LineStyle(1;​;​0.75;​#4682b4)

7

SymbolStyle(1;​bullet;​4;​1;​#4682b4;​shaded)

8

ShadowStyle(1;​2 2 3)

9

/* Set up axes. */

10

AxisLine(all;​0)

11

AxisMajorTicks(all;​0)

12

/* Set up grid. */

13

MajorGridLineWidths(x;​y;​0.25)

14

MajorGridLineWidths(y;​x;​0)

15

CloseDrawing()

HIGH_LOW_CHART_06
HIGH_LOW_CHART_07
1

OpenDrawing(250;​150)

2

ChartData(27 20 17 24 20;​ /* High-values. */

3

18 12 10 15 11) /* Low-values.  */

4

HighLowChart(horizontal+shadow+label+symbol)

5

/* Set up styles. */

6

LineStyle(1;​;​1;​#4682b4)

7

SymbolStyle(1;​bullet;​16;​1;​#4682b4;​shaded)

8

ShadowStyle(1;​2 2 3)

9

LabelStyle(1;​Arial;​10;​bold;​white)

10

LabelOptions(1;​centerCenter;​;​-1)

11

/* Set up axes. */

12

ScalingOptions(y;​on) /* y-scale top to bottom. */

13

AxisLine(all;​0)

14

AxisMajorTicks(all;​0)

15

AxisMajorTickLabelOptions(x;​;​;​8)

16

AxisMajorTickLabelOptions(y;​;​-8)

17

/* Set up grid. */

18

MajorGridLineWidths(x;​y;​0)

19

MajorGridLineWidths(y;​x;​0.25)

20

CloseDrawing()

HIGH_LOW_CHART_07
HIGH_LOW_CHART_08
1

OpenDrawing(250;​150)

2

ChartData(27 20 17 24 20 15;​ /* High-values. */

3

18 12 5 15 11 6) /* Low-values.  */

4

HighLowChart(label;​on)

5

/* Set up styles. */

6

LineStyle(1;​;​1.5;​#4682b4)

7

LabelStyle(1;​Arial;​10;​bold;​white)

8

LabelBackground(1;​#4682b4;​;​1;​#4682b4)

9

LabelOptions(1;​centerCenter)

10

/* Set up axes. */

11

AxisLine(all;​0)

12

AxisMajorTicks(all;​0)

13

/* Set up grid. */

14

MajorGridLineWidths(x;​y;​0.25)

15

MajorGridLineWidths(y;​x;​0)

16

CloseDrawing()

HIGH_LOW_CHART_08
HIGH_LOW_CHART_09
1

OpenDrawing(250;​150)

2

ChartData(10 10 10 10 10;​ /* Max-values.   */

3

0 0 0 0 0;​ /* Min-values.   */

4

5 3 8 3 1) /* Closing-values. */

5

HighLowChart(label+horizontal;​;​highLowClose)

6

/* Set up styles. */

7

LineStyle(1;​;​1;​#4682b4)

8

LabelStyle(1;​Arial;​10;​bold;​#4682b4)

9

LabelBackground(1;​white;​;​0;​;​;​2 2 3)

10

LabelOptions(1;​centerCenter)

11

/* Set up axes. */

12

ScalingOptions(y;​on) /* y-scale top to bottom. */

13

AxisOptions(x;​none) /* Hide x-axis. */

14

AxisLine(y;​0)

15

AxisMajorTicks(y;​0)

16

AxisMajorTickLabelOptions(y;​;​-10)

17

/* Set up grid. */

18

MajorGridLineWidths(all;​all;​0)

19

CloseDrawing()

HIGH_LOW_CHART_09
HIGH_LOW_CHART_10
1

OpenDrawing(250;​150)

2

ChartData(50 30 40 40;​ /* 1st series (max-values) */

3

0 0 10 0;​ /* 1st series (min-values) */

4

120 120 110 120;​ /* 2nd series (max-values) */

5

80 85 70 60) /* 2nd series (min-values) */

6

HighLowChart(label+horizontal+symbol;​;​;​0;​;​0)

7

/* Set up styles. */

8

LineStyle(1;​;​1;​#4682b4)

9

LineStyle(2;​;​1;​#fdb910)

10

SymbolStyle(1;​bullet;​16;​1;​#4682b4;​shaded)

11

SymbolStyle(2;​none)

12

LabelStyle(1;​Arial;​10;​bold;​white)

13

LabelOptions(1;​centerCenter;​;​-1)

14

LabelStyle(2;​Arial;​10;​plain)

15

LabelBackground(2;​#fdb910;​;​1;​#fdb910)

16

LabelOptions(2;​centerCenter)

17

/* Set up axes. */

18

ScalingOptions(y;​on) /* y-scale top to bottom. */

19

AxisOptions(x;​none) /* Hide x-axis. */

20

AxisLine(y;​0)

21

AxisMajorTicks(y;​0)

22

AxisMajorTickLabelOptions(y;​;​-10)

23

/* Set up grid. */

24

MajorGridLineWidths(all;​all;​0)

25

CloseDrawing()

HIGH_LOW_CHART_10
HIGH_LOW_CHART_11
1

OpenDrawing(250;​150)

2

ChartData(10 10 10 10 10;​ /* Max-values.  */

3

0 0 0 0 0;​ /* Min-values.   */

4

5 3 8 3 1;​ /* Closing-values. */

5

2 9 7 5 1) /* Opening-values. */

6

HighLowChart(horizontal;​off;​highLowCloseOpen;​

7

0;​;​ /* Max */

8

0;​;​ /* Min */

9

50;​left;​ /* Close */

10

25;​right) /* Open */

11

/* Set up styles. */

12

LineStyle(1;​;​2;​#4682b4)

13

/* Set up axes. */

14

ScalingOptions(y;​on) /* y-scale top to bottom. */

15

AxisLine(all;​0)

16

AxisMajorTicks(all;​0)

17

AxisMajorTickLabelOptions(y;​;​-3)

18

/* Set up grid. */

19

MajorGridLineWidths(x;​y;​0)

20

MajorGridLineWidths(y;​x;​0.25)

21

CloseDrawing()

HIGH_LOW_CHART_11

See also HighLowChartoptions() .c

Scroll to Top