Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Алгоритм: выдаем команду 'ChartOpen' -> проверяем значение, если значение больше '0' -> пробуем шаблон с помощью команды 'ChartApplyTemplate'.
Код: ChartOpen ChartApplyTemplate.mq5
Советник
Код: Пример Bullish Bearish.mq5
Чтобы получить OHLC от советника, оптимально запросить CopyRates к массиву структуры MqlRates. Примените к массиву
- теперь в массиве 'rates' элемент [0] соответствует крайнему правому бару на графике.
Результат:
Спасибо за помощь, все работает нормально. Но иногда стратегия по моей логике выполняется еще через 3 свечи или около того и снова выполняется ChartOpen ChartApplyTemplete и снова открывается тот же график, как я могу закодировать это так, чтобы если график уже открыт, не открывать его снова, Спасибо.
Ведите учет открытых графиков (точнее, ведите учет не номеров графиков, а учет действий: символ "такой-то и такой-то", таймфрейм "такой-то и такой-то" уже открыт.
Код: Пример "Бычье-медвежье".mq5
Чтобы получить OHLC от советника, оптимально запросить CopyRates к массиву структуры MqlRates. Применить к массиву
- теперь в массиве 'rates' элемент [0] соответствует крайнему правому бару на графике.
Результат:
Не обычные бычьи или медвежьи свечи, а небольшие свечи с крупными фитилями с обеих сторон.
Вы должны взять мой пример и внести в него изменения самостоятельно. Я не вижу вашего кода. Я не вижу вашего желания кодить.
Это отлично работает, когда я тестирую на скрипте и запускаю, но я использую это в логике моего советника, и даже если условие ложно, код выполняется без каких-либо проблем
Я использую полосы Боллинджера и перед торговлей проверяю, что расстояние между верхней и нижней полосой Боллинджера составляет минимум 30 пунктов.
Это отлично работает, когда я тестирую на скрипте и запускаю, но я использую это в логике моего советника, и даже если условие ложно, код выполняется без каких-либо проблем
В чем заключается ваш вопрос?
Пример: как получить значение индикатора iSAR в советнике.
Код: iSAR Get Value.mq5
ВНИМАНИЕ: В OnInit мы получаем хэндл индикатора (тип 'int') - делаем это ОДИН раз. Далее мы получаем значения индикатора с помощью CopyBuffer.
Код советника:
Результат:
Проблема: одновременно может существовать только одна позиция. Проверка одинакова для неттинга и хеджевых счетов.
Мы проверяем наличие позиции по символу, а по магическому номеру проверки нет.
Код: IsPositionExists.mq5