Недокументированные возможности функции PlotShapes()
Оказывается, в документации отсутствуют несколько стандартных меток для функции PlotShapes()
Функция PlotShapes позволяет рисовать на графике значки из предопределённого набора. Это стрелки, треугольники, кружочки, цифры... Основное использование - индикация сделок, сигналов, стопов и других событий.
SYNTAX | PlotShapes( shape, color, layer = 0, yposition = graph0, offset = -12 ); |
RETURNS | NOTHING |
FUNCTION | Plots arrows and other shapes on any chart pane.
Parameters:
shapeNone, shapeUpArrow, shapeDownArrow, shapeHollowUpArrow, shapeHollowDownArrow, shapeSmallUpTriangle, shapeSmallDownTriangle, shapeHollowSmallUpTriangle, shapeHollowSmallDownTriangle, shapeUpTriangle, shapeDownTriangle, shapeHollowUpTriangle, shapeHollowDownTriangle, shapeSmallSquare, shapeHollowSmallSquare, shapeSquare, shapeHollowSquare, shapeSmallCircle, shapeHollowSmallCircle, shapeCircle, shapeHollowCircle, shapeStar, shapeHollowStar, shapeDigit0, shapeDigit1, shapeDigit2, shapeDigit3, shapeDigit4, shapeDigit5, shapeDigit6, shapeDigit7, shapeDigit8, shapeDigit9, shapePositionAbove |
Однако, как выясняется, не весь доступный набор значков описан в документации. Существуют еще 4 недокументированных значка.
Вот таким образом формируются идентификаторы всех значков:
Новые (недокументированные) значки:
- ShapeSmallUpArrow = 57
- ShapeSmallDownArrow = 58
- ShapeLeftPutter = 53
- ShapeRightPutter = 55
for ( i = 0; i < BarCount; i++ ) { O[i] = C[i] = i; H[i] = i + 5; L[i] = i - 5; if ( i % 2 == 0 ) {PlotText( NumToStr( i, 1.0, False ), i, L[i]-2, colorDarkGrey );} else {PlotText( NumToStr( i, 1.0, False ), i, H[i]+.5, colorDarkGrey );} } PlotShapes( C, colorRed, 0, C, -10 ); Plot( C, "", colorLightGrey, styleBar ); Title = "Hollow = " + NumToStr( shapeHollowCircle - shapeCircle, 0, 0 ) + "\n" + "Small = " + NumToStr( shapeSmallCircle - shapeCircle, 0, 0 );
Результат его выполнения: