Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
MQL5 Как узнать закрылась сделка по стоп-лоссу или нет?
fxsaber, 2017.02.14 20:00
Грубо говоря, перед двоеточием указывается имя класса, откуда вызывается соответствующий метод.
Если ничего перед двоеточием не стоит - класс глобальный.
Всем привет. Приступил к изучению языка MQL5. Пока только прочитал "Основы языка" из документации. Возник один вопрос, который я пока из основ к сожалению не уловил. Возможно он конечно дальше по докам объясняется, но для лучшего освоения информации я бы хотел это знать сейчас. Если не трудно объясните пожалуйста что является в MQL5 программе точкой входа? Всмысле такой же точкой входа как метод main в языках C++ или Java. Или лучше поделитесь ссылкой в доках где об этом описано.
На данный момент у меня сформировалось какое-то понятие как все работает. Есть методы, которые слушают определенные лиснеры, onTick, onStart и т.д. И при срабатывании определенных событий, срабатывают соответствующие методы. Но неужели нет чего-то более глобального?
Извиняюсь сразу если вопрос глупый? :) Спасибо заранее.
void OnInit() { ... }
- www.mql5.com
Всем привет. Приступил к изучению языка MQL5. Пока только прочитал "Основы языка" из документации. Возник один вопрос, который я пока из основ к сожалению не уловил. Возможно он конечно дальше по докам объясняется, но для лучшего освоения информации я бы хотел это знать сейчас. Если не трудно объясните пожалуйста что является в MQL5 программе точкой входа? Всмысле такой же точкой входа как метод main в языках C++ или Java. Или лучше поделитесь ссылкой в доках где об этом описано.
На данный момент у меня сформировалось какое-то понятие как все работает. Есть методы, которые слушают определенные лиснеры, onTick, onStart и т.д. И при срабатывании определенных событий, срабатывают соответствующие методы. Но неужели нет чего-то более глобального?
Извиняюсь сразу если вопрос глупый? :) Спасибо заранее.
Все зависит от того, какую программу Вы пишите. Если пишите эксперта, точкой входа (основной функцией расчетов - обработчиком событий) будет OnTick(), если пишите индикатор - OnCalculate(), если скрипт - OnStart().
https://www.mql5.com/ru/docs/basis/function/events
- www.mql5.com
Для новичков правильным ответом будет ответ, который дал Alexey Kozitsyn - в зависимости от типа программы OnTick(), OnCalculate() или OnStart(). И еще есть функция OnInit().
В программах на MQL реализована событийная модель работы. То есть, после запуска эксперта - нет точки, аналогичной функции main(), которая выполняется сразу после запуска. Программа "просто лежит", ничего не делает до тех пор, пока не произойдет определенное событие, которое будет вызывать соответствующую функцию. Как правило, сперва это функция OnInit() - вызывается как раз тогда, когда рабочая среда программы уже готова, и надо привести все внутренние переменные в рабочее состояние. И после выполнения этой функции - программа опять "лежит", до тех пор, пока не будет вызывана OnTick(), OnCalculate() или OnStart().
Строго говоря, есть функция, вызывающаяся еще до OnInit() - здесь прав fxsaber - это конструктор глобального класса. Но, думаю, в такие дебри влезать новичку не требуется.
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Всем привет. Приступил к изучению языка MQL5. Пока только прочитал "Основы языка" из документации. Возник один вопрос, который я пока из основ к сожалению не уловил. Возможно он конечно дальше по докам объясняется, но для лучшего освоения информации я бы хотел это знать сейчас. Если не трудно объясните пожалуйста что является в MQL5 программе точкой входа? Всмысле такой же точкой входа как метод main в языках C++ или Java. Или лучше поделитесь ссылкой в доках где об этом описано.
На данный момент у меня сформировалось какое-то понятие как все работает. Есть методы, которые слушают определенные лиснеры, onTick, onStart и т.д. И при срабатывании определенных событий, срабатывают соответствующие методы. Но неужели нет чего-то более глобального?
Извиняюсь сразу если вопрос глупый? :) Спасибо заранее.