Урок №4: Методы отображения информации

Существует несколько способов передать информацию трейдеру из советника.

Print — Отображает некоторое сообщение в журнал экспертов(вкладка «Эксперты»).

Журнал экспертов

На первом уроке мы с Вами создавали эксперт с помощью мастера. Давайте дополним его некоторым кодом. В функцию OnInit() добавим отображение строки «Эксперт инициализирован», а в функцию OnTick() сообщение о поступлении новой котировки.

Итак:

//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
{
   Print("Эксперт инициализирован!");

   return(INIT_SUCCEEDED);
}


//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
{
   Print("Пришла новая котировка по валютной паре " + Symbol());   
}
//+--

Обратите внимание на вариант применения функции Print в обработчике события о поступлении новой котировки. В этом примере происходит формирование строки текста из нескольких значений. Так функция Symbol() возвращает нам название валютной пары текущего графика, а с помощью оператора «+» производится сложение данных в одну строку.

После добавления кода наш советник нужно скомпилировать, только после этого он будет виден в терминале Metatrader:

Компиляция советника

 

Наш эксперт скомпилирован и мы переносим его мышкой на график, после чего в правом верхнем углу появится название нашего советника с улыбающимся смайликом. В будущем обратите внимание на то, что в случае когда эксперт работает с торговыми функциями кнопка «Авто-торговля» должна находится в активном состоянии. В нашем же случае на данном этапе это не столь необходимо.

Запуск советника

 

И результат работы нашего эксперта:

Результат работы советника

 

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

Я предлагаю просто заменить функцию Print на Comment и посмотреть результат:

//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
{
   Comment("Пришла новая котировка по валютной паре " + Symbol());   
}
//+--

Итак, меняем функцию, снова компилируем программу и смотрим результат:

Результат работы Comment

 

Аналогичные параметры имеет функция Alert. Отображает диалоговое окно с заданной информацией.

Пример:

//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
{
   Alert("Пришла новая котировка по валютной паре " + Symbol());   
}
//+--

И результат работы:

Результат работы Alert

 

Пожалуй, это всё.

На следующем уроке мы рассмотрим типы данных int, double, string, bool, datetime, color и рассмотрим примеры работ с ними.

 

 

 

 

Written by 

Добавить комментарий