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

#symbols.mq5

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

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

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

О программе

Индикатор «#symbols» — это инструмент для MetaTrader 5, который размещает на графике набор интерактивных кнопок, каждая из которых соответствует финансовому инструменту из заданного списка. Нажатие на кнопку переключает символ графика на соответствующий инструмент, обеспечивая удобную навигацию между инструментами.

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

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

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

НастройкаОписание
UniqueID Уникальный идентификатор индикатора для именования графических объектов
ButtonsInARow Количество кнопок в одном горизонтальном ряду
XShift Горизонтальное смещение кнопок от левого верхнего угла
YShift Вертикальное смещение кнопок от левого верхнего угла
XSize Ширина каждой кнопки в пикселях
YSize Высота каждой кнопки в пикселях
FSize Размер шрифта на кнопках
Bcolor Цвет фона кнопок
Dcolor Цвет границы кнопок
Tncolor Цвет текста обычной (не выбранной) кнопки
Sncolor Цвет текста выбранной кнопки
Transparent Включает полупрозрачный фон у кнопок
Получить полный код

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

#property indicator_separate_window
#property indicator_buffers 0
#property strict

extern string  Symbols       = "AUDCAD.a;AUDJPY.a;CADJPY.a;EURAUD.a;EURJPY.a;GBPAUD.a;GBPJPY.a;GBPNZD.a;NZDJPY.a;USDJPY.a;XAUAUD.a;XAUUSD.a"; // List of symbols (separated by ";")
extern string  UniqueID      = "Symbols";       // Indicator unique ID
extern int     ButtonsInARow = 12;                // Buttons in a horizontal row
extern int     XShift        = 2;               // Horizontal shift
extern int     YShift        = 12;               // Vertical shift
extern int     XSize         = 60;               // Width of buttons
extern int     YSize         = 20;               // Height of buttons
extern int     FSize         = 8;               // Fort size
extern color   Bcolor        = C'41,41,50';     // Button color
extern color   Dcolor        = C'64,64,80';       // Button border color
extern color   Tncolor       = C'223,223,223';         // Text color - normal
extern color   Sncolor       = clrRed;           // Text color - selected
extern bool    Transparent   = false;            // Transparent buttons?

string aSymbols[];
int OnInit() 
{
      // код доступен только после оплаты
   }
void OnDeinit(const int reason)
{ 
   switch(reason)
   {
      case REASON_CHARTCHANGE :
      case REASON_RECOMPILE   :
      case REASON_CLOSE       : break;
      default :
      {
         string lookFor       = UniqueID+":";
         int    lookForLength = StringLen(lookFor);
         for (int i=ObjectsTotal()-1; i>=0; i--)
         {
               string objectName = ObjectName(i);  if (StringSubstr(objectName,0,lookForLength) == lookFor) ObjectDelete(objectName);
         }
      }                  
   }
}

void createButton(string name, string caption, int xpos, int ypos)
{
   int window = WindowFind(UniqueID);
       ObjectCreate(name,OBJ_BUTTON,window,0,0);
          ObjectSet(name,OBJPROP_CORNER   ,CORNER_LEFT_UPP

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

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

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

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

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

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

Стоимость полного кода
414₽ ≈ $5.16