Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 2397
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Добрый день!
Возникла некоторая загвоздка, помогите решить задачу.
Задача простая: подсчёт, ТОЛЬКО ПОСЛЕДНИХ, УБЫТОЧНЫХ, ЗАКРЫТЫХ позиций из ИСТОРИИ СДЕЛОК.
В чём загвоздка: Переменная наращивается на одну еденицу КАЖДЫЙ ТИК, пока в истории висист убыточный ордер.
Как мне сделать чтобы переменная nRSL увеличивалась на одну еденицу, каждый закрытый убыточный ордер, а не каждый тик?
Вот код:
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам
Alexey Belyakov, 2024.04.27 13:30
Добрый день!
Возникла некоторая загвоздка, помогите решить задачу.
Задача простая: подсчёт, ТОЛЬКО ПОСЛЕДНИХ, УБЫТОЧНЫХ, ЗАКРЫТЫХ позиций из ИСТОРИИ СДЕЛОК.
В чём загвоздка: Переменная наращивается на одну еденицу КАЖДЫЙ ТИК, пока в истории висист убыточный ордер.
Как мне сделать чтобы переменная nRSL увеличивалась на одну еденицу, каждый закрытый убыточный ордер, а не каждый тик?
Вот код:
Мне тоже так вначале показалось, что "не зависит". Однако, если мы уберём цикл "for" и условие "if(выбор посл. ордера)", то есть уберём первые два цикла, а оставим только if (pos<0), то переменная "pos" считать ничего не будет, будет вечно ноль.(соотв. выведя в комментарий переменную "pos").
Не будет считать потому что ордер не выбран. OrderProfit - работает только, когда ордер выбран. (OrderSelect)...
А следовательно, значит, каким-то образом, он залазит за "countinue" .....
Такой вариант.... (уберём закрытие циклаcontinue;
Результат - nRSL висит в нуле, ничего не считает.
Мне тоже так вначале показалось, что "не зависит". Однако, если мы уберём цикл "for" и условие "if(выбор посл. ордера)", то есть уберём первые два цикла, а оставим только if (pos<0), то переменная "pos" считать ничего не будет, будет вечно ноль.(соотв. выведя в комментарий переменную "pos").
Не будет считать потому что ордер не выбран. OrderProfit - работает только, когда ордер выбран. (OrderSelect)...
А следовательно, значит, каким-то образом, он залазит за "countinue" .....
Такой вариант.... (уберём закрытие циклаРезультат - nRSL висит в нуле, ничего не считает.
Примерно так должно быть
Добрый день!
Я не знаю зачем Вам цикл в советнике.
Я бы сделал так
%
Спасибо за ответ. Но, что то не разобрался, можно более развернуто? Если я туплю уж сорри.
Если что пишу MQL4.
Вот последняя строчка у меня и не идет (((
Примерно так должно быть
Приогромное спасибо!!! Именно так! Правильно работает!
Не додумался я до этого варианта. Массу вариантов испробывал.
Спасибо за ответ. Но, что то не разобрался, можно более развернуто? Если я туплю уж сорри.
Если что пишу MQL4.
Вот последняя строчка у меня и не идет (((
У вас есть время каждого дня в секундах
далее переводите значения заданные в переменных
в секунды
теперь можно сравнивать на > или < и задавать любой интервал. Если вам нужно точечно проверять в интервале времени, ниже пример из учебника Ковалева
PS. Но контролировать изменения значений свопа лучше, на мой взгляд, если записывать его в файл.Здравствуйте, подскажите пожалуйста, при загрузке тиковой истории в MT5, загружается единая история тиков для данного инструмента, или для того сервера/счёта (например demo) на котором в момент загрузки работает терминал?