← К каталогу
Исходный код · ID 1248

renko button.mq5

Вы автор или правообладатель?

Сообщите нам, если считаете, что материал размещён без разрешения.

Краткий обзор

О программе

Данный индикатор реализует построение графика Ренко на графике цен MetaTrader 5. Он отображает два буфера гистограмм — восходящие (синие) и нисходящие (тёмно-красные) кирпичи Ренко, рассчитанные на основе заданного размера ячейки.

В центре внимания — интерактивная кнопка на графике, которая позволяет пользователю включать и отключать отображение данных Ренко одним кликом. При нажатии кнопки индикатор переключает стиль отрисовки между гистограммами и отсутствием отображения, а также меняет цвет кнопки для визуальной индикации текущего состояния.

Индикатор сохраняет состояние видимости в глобальных переменных терминала, что обеспечивает сохранение настроек между перезапусками. Все визуальные элементы кнопки — текст, шрифт, цвета, размеры и положение — настраиваются через параметры входных данных.

Индикатор поддерживает настройку угла привязки кнопки к графику, а также размера ячейки Ренко. Дополнительные текстовые параметры могут использоваться для информационных целей.

Настройки программы

НастройкаОписание
BoxSize Размер ячейки (блока) Ренко, определяющий высоту каждого кирпича на графике.
button_note1 Дополнительный текстовый параметр для информационных целей.
btn_corner Угол графика, к которому привязывается кнопка.
btn_text Текст, отображаемый на кнопке.
btn_Font Шрифт текста на кнопке.
btn_FontSize Размер шрифта текста на кнопке.
btn_text_ON_color Цвет текста кнопки при включённом отображении данных Ренко.
btn_text_OFF_color Цвет текста кнопки при отключённом отображении данных Ренко.
btn_background_color Цвет фона кнопки.
btn_border_color Цвет рамки кнопки.
button_x Горизонтальное расстояние кнопки от угла привязки в пикселях.
button_y Вертикальное расстояние кнопки от угла привязки в пикселях.
btn_Width Ширина кнопки в пикселях.
btn_Height Высота кнопки в пикселях.
button_note2 Дополнительный текстовый параметр для информационных целей.
Получить полный код

Поиск по коду файла

#property indicator_chart_window

#property indicator_buffers 2
#property indicator_color1 clrRoyalBlue
#property indicator_color2 clrMaroon
#property indicator_width1 0
#property indicator_width2 0

extern double BoxSize = 10.0;

extern string             button_note1          = "------------------------------";
extern ENUM_BASE_CORNER   btn_corner            = CORNER_LEFT_UPPER; // chart btn_corner for anchoring
extern string             btn_text              = "Renko";
extern string             btn_Font              = "Arial";
extern int                btn_FontSize          = 10;                             //btn__font size
extern color              btn_text_ON_color     = clrWhite;
extern color              btn_text_OFF_color    = clrRed;
extern color              btn_background_color  = clrDimGray;
extern color              btn_border_color      = clrBlack;
extern int                button_x              = 20;                                     //btn__x
extern int                button_y              = 13;                                     //btn__y
extern int                btn_Width             = 60;                                 //btn__width
extern int                btn_Height            = 20;                                //btn__height
extern string             button_note2          = "------------------------------";

bool                      show_data             = true;
string IndicatorName, IndicatorObjPrefix;

double Buffer1[];
double Buffer2[];
double Buffer3[];
double Buffer4[];

string GenerateIndicatorName(const string target) //don't change anything here
{
   string name = target;
   int try = 2;
   while (WindowFind(name) != -1)
   {
      name = target + " #" + IntegerToString(try++);
   }
   return name;
}

string buttonId;

int OnInit()
{
      // код доступен только после оплаты
   }

void createButton(string buttonID,string buttonText,int width,int height,string font,int fontSize,color bgColor,color borderColor,color txtColor)
{
      ObjectDelete    (ChartID(),buttonID);
      ObjectCreate    (ChartID(),buttonID,OBJ_BUTTON,0,0,0);
      ObjectSetInteger(ChartID(),buttonID,OBJPROP_COLOR,txtColor);
      ObjectSetInteger(ChartID(),buttonID,OBJPROP_BGCOLOR,bgColor);
      ObjectSetInteger(ChartID(),buttonID,OBJPROP_BORDER_COLOR,borderColor);
      ObjectSetInteger(ChartID(),buttonID,OBJPROP_XSIZE,width);
      ObjectSetInteger(ChartID(),buttonID,OBJPROP_YSIZE,height);
      ObjectSetString (ChartID(),buttonID,OBJPROP_FONT,font);
      ObjectSetStri

Показано первые 50% кода (символов: 5109)

Открыть по тарифу

Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.

Разовая покупка файла

На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.

Чтобы оформить заказ, введите email и перейдите к оплате.

Стоимость полного кода
510,90₽ ≈ $6.24