Персонализирани индикатори
Стилът DRAW_ARROW рисува стрелки (символи от набора Wingdings) на графиката в определен цвят със стойността на индикаторния буфер. Дебелината и цветът на символите могат да бъдат зададени по същия начин, както за стила DRAW_LINE - чрез директиви на компилатора или динамично с помощта на функцията PlotIndexSetInteger (). Динамичната промяна на свойствата на графичен график ви позволява да промените външния вид на индикатора в зависимост от текущата ситуация.
Кодът на символа за нанасяне на графиката се задава с помощта на свойството PLOT_ARROW.
// --- задайте кода на символа от шрифта Wingdings за рисуване в PLOT_ARROW
PlotIndexSetInteger (0, PLOT_ARROW, код);
По подразбиране е PLOT_ARROW = 159 (кръг).
Всяка стрелка всъщност е символ, който има височина и точка на закрепване и може да покрие важна информация на графиката (например цената на затваряне на бар). Следователно можете допълнително да зададете вертикално отместване в пиксели, което не зависи от мащаба на графиката. Стрелките ще бъдат визуално изместени вертикално от този определен брой пиксели, въпреки че самите стойности на индикатора ще останат същите:
// --- задаване на вертикално отместване на стрелките в пиксели
PlotIndexSetInteger (0, PLOT_ARROW_SHIFT, смяна);
Отрицателна стойност за PLOT_ARROW_SHIFT означава, че стрелките са изместени нагоре, а положителната стойност е изместване на стрелките надолу.
Стилът DRAW_ARROW може да се използва както в отделен подпрозорец на диаграмата, така и в главния прозорец. Празни стойности не се изчертават или показват в „Прозорец с данни“; всички стойности в буферите на индикатора трябва да бъдат зададени изрично. Буферите не се инициализират, за да се изпразнят.
// --- задаване на празна стойност
PlotIndexSetDouble (plot_index_DRAW_ARROW, PLOT_EMPTY_VALUE, 0);
Броят на необходимите буфери за изграждане на DRAW_ARROW - 1.
Пример за индикатор, който рисува стрелки на всяка лента с цената на затваряне по-висока от цената на затваряне на предишния бар. Цветът, дебелината, отместването и символния код на всички стрелки се променят произволно на всеки N отметки.

В примера първоначално за начертаване на plot1 със стила DRAW_ARROW свойствата, цветът и размерът се задават с помощта на директивата #property compiler, а след това във функцията OnCalculate () свойствата се задават произволно. Параметърът N е преместен във външните параметри на индикатора за възможността за ръчна инсталация (раздел "Параметри" в прозореца на свойствата на индикатора).
#property description "Индикатор за демонстрация DRAW_ARROW"
#property description "Изчертава стрелки на диаграмата, посочени от Unicode символи"
#property description "Цвят, размер, отместване и код на символа със стрелка се променят произволно"
#property описание "всеки N тикове"
#property description "Параметърът на кода задава основната стойност: code = 159 (кръг)"
#property indicator_chart_window
#property indicator_buffers 1
#property indicator_plots 1
// --- графика на стрелки
#property indicator_label1 "Стрелки"
#property indicator_type1 РИСУНКА_СТРЕЛКА