Анализ кода заготовки эксперта
После совершения действия, описанных в предыдущем выпуске мы получили код-заготовку, который мы можем изменить в соответствии с нашей торговой тактикой и получить работоспособного эксперта. Давайте разберем, что же мы в итоге получили...
//| My First Expert.mq4 |
//| Copyright c 2006, Andrey Vedikhin |
//| http://www.vedikhin.ru |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2006, Andrey Vedikhin"
#property link "http://www.vedikhin.blog-forex.org"
//---- 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);
}
//+------------------------------------------------------------------+
Первые несколько строчек - комментарии. Комментарий - это неисполняемый кусок кода, т.е., иными словами, это любая полезная читателю кода информация. Комментарии бывают однострочными - в этом случае они начинаются с двойного слэша: //, - и весь остаток строчки после // будет считаться комментарием. Также комментарии бывают многострочными. Такие комментарии должны начинаться с /* и заканчиваться */.
C помощью #property copyright "строка" мы можем задать имя/наименование создателя эксперта.
C помощью #property link "веб-сайт" зададим веб-сайт создателя.
Таким образом мы описываем переменную-параметр эксперта. Этот параметр имеет значение по умолчанию равным 0, но это значение можно будет впоследствии менять и для каждого прикрепленного к графику эксперта задавать свои значения. Этот параметр - аналог параметра технического индикатора (например, период расчета для RSA или период расчета скользящей средней).
Слово extern перед определением переменной показывает, что это внешняя переменная или параметр, которая будет видна в настройках эксперта. int - тип переменной (в нашем примере этот параметр - целое число от -2147483648 до 2147483647 - см. предыдущий выпуск). А MAPeriod - имя параметра. Мы хотим, чтобы по умолчанию значение параметра было равным нулю, поэтому добавим =0 сразу же после имени параметра. Точка с запятой показывает, что мы завершили описание параметра эксперта.
Таких параметров у эксперта может быть несколько. Все они должны быть одного из стандартных типов, описанных в прошлом выпуске.
Следующие три блока, которые представляют для нас интерес - это описания трех функций: init(), start() и deinit(). Что это за функции и для чего они нужны - я расскажу в следующем выпуске.
Все статьи по теме "Пишем советников для MetaTrader 4".
- Механическая торговая система - миф или реальность?
- С чего начать при написании советника:
- Создаем нового советника - Настраиваем параметры. - Язык MetaQuotes Language 4:
Комментарии по теме "Анализ кода заготовки эксперта"
Уважаемый Андрей!
Вы начали очень интересную тему- по написанию МТС. Я знаю Вы очень занятый человек, но я работаю на Вашу Компанию и прошу Вас подсказать : где можно в инете посмотреть инф. по написанию советников, пусть не так подробно.
Автор: spsmit | 04.07.2006 10:20
Очень много информации на: http://docs.mql4.com/ru/
Для людей, имеющих опыт программирования, - это лучший ресурс по советникам, имхо.
Автор: Андрей Ведихин | 04.07.2006 13:05
Андрей, могу ли я получить ваши статьи на email?
Автор: Максим | 09.10.2006 10:45
Подпишитесь на мою рассылку:
Автор: Андрей Ведихин | 09.10.2006 14:53
@@Очень много информации на: http://docs.mql4.com/ru/
Для людей, имеющих опыт программирования, - это лучший ресурс по советникам, имхо.@@
А людям, не имеющим опыт в программировании, нужно начинать с этого ресурса ??
Автор: tayler | 20.08.2007 15:24
""Очень много информации на: http://docs.mql4.com/ru/
Для людей, имеющих опыт программирования, - это лучший ресурс по советникам, имхо.""
А людям, не имеющим опыт в программировании, ну начинать с этого сайта???
Автор: Anonymous | 21.08.2007 06:04
""Очень много информации на: http://docs.mql4.com/ru/
Для людей, имеющих опыт программирования, - это лучший ресурс по советникам, имхо.""
А людям, не имеющим опыт в программировании, ну начинать с этого сайта???
Автор: tayler | 21.08.2007 06:05