Настраиваем параметры нового эксперта
Итак, в предыдущей статье мы вызвали контекстное меню окна "Навигатор" группы "Expert Advisors" и выбрали пункт меню "Create". В результате появилось окно, в котором нам предстоит выбрать тип объекта, который мы хотим создать (см. рис. 1).
Рис. 1. Выберем тип объекта, который мы хотим написать на языке MetaQuotes Language 4
Нас интересует создание эксперта, поэтому выбираем пункт "Axpert Advisor". Нажимаем "Далее". В следующем окне (рис. 2.) установим параметры нового эксперта:
- Name - имя советника (файлу будет присвоено такое же имя с расширением *.mq4;
- Author - автор советника;
- Link - адрес веб-сайта автора советника;
- Parameters - параметры советника, которые можно впоследствии менять при подключении советника к графику;
Рис. 2. Настройка параметров советника
Установим для тренировки какой-нибудь параметр. Например, MAPeriod. Для этого нажмите кнопку "Add" и настройте каждое поле параметра:
- Name - имя параметра (в нашем примере MAPeriod);
- Type - тип параметра;
- Initial value - начальное значение.
Параметры могут быть следующих типов:
- Int - целое число (от -2147483648 до 2147483647);
- Bool - логический тип (или ложь - false, или истина - true);
- Datetime - дата и время (в формате D'YYYY. MM. DD HH:MM:SS');
- Color - цвет (о формате будет рассказано в следующих выпусках);
- Double - вещественное число (-1.7 * 10-308 до 1.7 * 10308, точность - 15 значащих цифр);
- String - заключенная в двойные кавычки строка (например, "это строка").
Нажмем кнопку "Готово". В результате мы увидим заготовку для кода нашего первого эксперта:
//+------------------------------------------------------------------+
//| My First Expert. mq4 |
//| Copyright c 2006, Andrey Vedikhin |
//| http://www. vedikhin. ru |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2006, Andrey Vedikhin"
#property link "http://www. vedikhin. ru"
//---- input parameters
extern int MAPeriod=0;
//+------------------------------------------------------------------+
//| expert initialization function |
//+------------------------------------------------------------------+
int init()
{
//----
//----
return(0);
}
//+------------------------------------------------------------------+
//| expert deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----
//----
return(0);
}
//+------------------------------------------------------------------+
//| expert start function |
//+------------------------------------------------------------------+
int start()
{
//----
//----
return(0);
}
//+------------------------------------------------------------------+
В следующей статье будет рассказано о том, что же мы получили, из каких частей (функций) состоит эксперт, и что нам делать дальше.
Автор статьи:
Андрей Ведихин