Обсуждение статьи "Как построить советник, работающий автоматически (Часть 05): Ручные триггеры (II)"
![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Опубликована статья Как построить советник, работающий автоматически (Часть 05): Ручные триггеры (II):
Сегодня мы рассмотрим, как создать советник, который просто и безопасно работает в автоматическом режиме. В конце предыдущей статьи я подумал, что было бы уместно разрешить использование советника вручную хотя бы на время.
Поскольку многие могут использовать представленные в этом сообществе статьи, чтобы начать учиться программировать, я рассматриваю это как возможность поделиться некоторым своим опытом, приобретенным за годы программирования на C/C++, и показать, как делать некоторые вещи на MQL5, который очень похож на C/C++. Я хочу лишить мистики то представление многих людей о том, что на самом деле означает программирование.
Ну а для того, чтобы работа нашего советника была более удобной в ручном режиме, нам нужно сделать несколько вещей. Эта работа проста и легка для программистов, поэтому мы можем перейти прямо к делу, а именно к созданию линий, указывающих, где на торговом сервере будут находиться лимиты ордера, который будет отправлен на торговый сервер.
Эти лимиты более подходят для отображения, когда мы используем мышь для размещения ордеров, то есть когда создаем отложенный ордер. Как только ордер уже находится на сервере, индикация обрабатывается платформой MetaTrader 5. Но прежде чем это произойдет, нам нужно показать пользователю, где по большей вероятности будут размещены лимиты ордеров. Это делаем мы, программисты. Единственная поддержка, которую мы получаем от MetaTrader 5 - это возможность использовать горизонтальные линии на графике. Помимо этого, вся работа должна реализовываться через программирование советника.
Для этого нам просто нужно написать код, который размещает эти линии на графике в правильных позициях. Но мы не хотим делать это первым попавшимся способом. Мы хотим сделать это контролируемым образом, потому что нам не нужно подставить под угрозу уже созданный код, и мы не хотим добавить работы в случае, если нам придется удалить класс C_Mouse и обработчик события OnChartEvent из нашего советника в будущем. Это потому, что автоматическому советнику эти вещи не нужны, а вот ручному советнику они необходимы. Нам нужно сделать так, чтобы эти вещи были минимально пригодны для использования.
Автор: Daniel Jose