Вопросы от начинающих MQL5 MT5 MetaTrader 5 - страница 876
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
К сожалению, статью не встречал, может кто другой подскажет.
Вы не сможете устанавливать ордера, потому что не будет возможности вбить нужную цену установки. Тоже самое касается и лотов
Я ставлю мышкой.
Я ставлю мышкой.
Панель управления из этой статьи https://www.mql5.com/ru/articles/62 будет работать в тестере (только кнопки)?
Панель управления из этой статьи https://www.mql5.com/ru/articles/62 будет работать в тестере (только кнопки)?
Так попробуйте - что мешает?
Я просто написал, как сам в визуализаторе ставлю отложки.
Так попробуйте - что мешает?
Я просто написал, как сам в визуализаторе ставлю отложки.
Как раз пробую. Не хотел время тратить, мне панель в работе робота не нужна, нужно только для теста. Поэтому подробно изучать тему не планировал.
Подскажите, почему когда я в нижеописанном коде меняю c close[i-1] на close[i-2] происходит Array of Range? Код написан строго по книге по MQL5, но там не описанно, почему при смещении цены более чем на 2 ячейки происходит выход за пределы буфера.
Подскажите, почему когда я в нижеописанном коде меняю c close[i-1] на close[i-2] происходит Array of Range? Код написан строго по книге по MQL5, но там не описанно, почему при смещении цены более чем на 2 ячейки происходит выход за пределы буфера.
Я так понимаю, речь идёт про индикатор. Так вот, рассматривайте два случая доступа к массиву-таймсерии "close": (1) что будет когда "start" равен "1" и (2) что будет когда "start" равен "rates_total-1".
Просто вычислите в уме получившийся индекс массива "close", если попытаться сделать "close[i-2]" для случая (1) и для случая (2).
Я так понимаю, речь идёт про индикатор. Так вот, рассматривайте два случая доступа к массиву-таймсерии "close": (1) что будет когда "start" равен "1" и (2) что будет когда "start" равен "rates_total-1".
Просто вычислите в уме получившийся индекс массива "close", если попытаться сделать "close[i-2]" для случая (1) и для случая (2).
Спасибо, я проверил, там нужно было в значении start = 1 поставить число больше 1, отладка показала, что ошибка происходит, когда в начале пересчета массив close пытается взять значение с еще не появившейся ячейки.
if(close[i] < Upper[i])
То результат отладки следующий:
Данные идут корректно, обновляясь с периодичностью, равной скорости обновления цены
А вот если поставить изначально такое условие:
if(close[i] > Upper[i])
То результат будет уже некорректен:
То есть значения цен закрытия уже не совпадают с ценой текущей
Почему так происходит, я не могу понять.
Основной блок кода в посте #8792