Нигде не смог найти внятного пояснения принципиальных отличий между Экспертом, Индикатором и Скриптом. Если кто нибудь из зашедших сможет прояснить ситуацию, прошу сделать это в этой ветке.
Единственное что я мне попалось в справке это вот что:
Группа функций, используемых при оформлении пользовательских индикаторов.
Данные функции нельзя использовать при написании советников и скриптов.
IndicatorBuffers
IndicatorCounted
IndicatorDigits
IndicatorShortName
SetIndexArrow
SetIndexBuffer
SetIndexDrawBegin
SetIndexEmptyValue
SetIndexLabel
SetIndexShift
SetIndexStyle
SetLevelStyle
SetLevelValue
Это означает что рисовать награфике можно только из индикатора.
Получается следующая картина:
Индикатор - поддерживает графические функции, но не поддерживет торговые;
Эксперт - поддерживает торговые, но не поддерживает графические;
А вот какие особености Скрипта я так и не понял. Вроде бы ничем не отличается от эксперта кроме отсутствия функций init() и deinit().
Вот нашелся адресок, мож там - есть что-ниб. по теме?
http://www.alpari-idc.ru/ru/userguide/metatrader/22.php
А вот здесь - конкретно об отличиях - на примерах...
Да, действительно! Индикатор не торгует, а скрипт с экспертом не могут рисовать...
Прикрепленные файлы
___________________________________________________________________MQL4.rar ( 18.84 килобайт )
Кол-во скачиваний: 350
Большое спасибо, Леонид! Это именно то что требовалось.
Что бы удобно было читать, я приведу описание из твоей закачки сдесь.
Это выдержка из статьи на сайте MQL4:
Различают три вида программ, написанных на языке MQL 4 и исполняемых в клиентском терминале MetaTrader 4:
- эксперты;
- скрипты;
- индикаторы.
Каждый из них предназначен для решения своего определённого круга задач. Дадим краткую характеристику этим программам.
1. Краткая характеристика пользовательских MQL4-программ.
1.1. Эксперты. Эксперты - это основной вид программ, используемых для реализации прибыльных стратегий. К отличительным характеристикам эксперта относятся следующие:
1. Возможность использовать встроенные функции, поддерживающие торговые операции.
2. Возможность ручного изменения внешних настроек.
3. Отличительным свойством экспертов является правила запуска специальной функции start(). Она запускается потиково. В момент поступления нового тика обновляются параметры всего окружения, доступного этой функции, например, принимают новые значения такие переменные, как bid и ask. Завершив исполнение кода, а именно достигнув оператора return, функция start() заканчивает свою работу и переходит в режим ожидания нового тика.
1.2. Скрипты. Скрипты очень похожи на экспертов, но их характеристики несколько отличаются.
1. Скрипты также могут использовать функции торговых операций.
2. В скриптах нет возможности изменять параметры внешних настроек.
3. Основной особенностью скриптов является правило, согласно которому специальная функция start() скриптов запускается всего один раз, сразу же после прикрепления к графику и инициализации.
Эксперты и скрипты прикрепляются к основному окну финансового инструмента и не могут иметь специальное, поставленное им в соответствие, подокно.
1.3. Индикаторы. В отличии от экспертов и скриптов индикаторы имеют другое назначение.
1. Основным свойством индикаторов является возможность изображения непрерывных кривых линий, отражающих ту или иную закономерность в соответствии с заложенной в них идеей.
2. В индикаторах запрещено использование торговых функций.
3. Индикаторы запускаются потиково.
4. В зависимости от заложенных параметров индикатор может выполнять своё назначение в основном окне финансового инструмента, а также иметь своё подокно и выводить изображение в его рамках.
Мы перечислили здесь лишь основные характеристики пользовательских программ, а именно те, которые понадобятся нам в ходе дальнейшего изложения.
Как видно из представленного описания, ни одна из пользовательских программ не обладает свойствами их всех: эксперт и скрипт не умеют рисовать, индикатор не имеет права торговать и так далее.
В случае, если наша торговая стратегия предполагает использование в динамике торговли всей совокупности свойств пользовательских программ, единственным решением является одновременное использование эксперта, скрипта и индикатора.