Ошибки, баги, вопросы - страница 2750
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Дефект в работе отладчика ME(build 2370) - после срабатывания breakpoint вместо продолжения выполнения кода при нажатии (F5), в действительности повторно срабатывает тот же breakpoint без выполнения какого-либо кода.
Шаги по воспроизведению:
1) Вручную установить breakpoint для обоих строк " arr.Add()";
2) Запустить отладку (F5);
3) С помощью ПКМ открыть вложенный файл <Generic\ArrayList.mqh> в новой вкладке.
4) Найти строку "if(m_size==ArraySize(m_items))" в функции "bool CArrayList::Add(T item)" и установить вручную breakpoint.
5) Находясь во вкладке "ArrayList.mqh" продолжить выполнение кода (F5).
В результате сработать тот же breakpoint, что был до этого без какого-либо фактического выполнения кода.
Спасибо за сообщение.
Исправлено
Потому что речь только о Тестере без использования Sleep - 99% советников.
По произвольным задержкам Тестера не возьмусь утверждать, т.к. никогда не видел этот режим полезным.
Ничего принципиально не меняя, проще сделать (что по факту так и есть), чтобы запись:
означала бы
по крайней мере вопрос о копировании строк отпадает
Ничего принципиально не меняя, проще сделать (что по факту так и есть), чтобы запись:
означала бы
по крайней мере вопрос о копировании строк отпадаетон другое в итоге просит, нужен максимально быстрый доступ к структуре MqlTick на каждом тике
тут как бы парадокс, что есть доступ к _Symbol .... но нет такого доступа к
хотя язык MQL позиционируется как язык разработки торговый стратегий.... я не знаю какие бывают ТС если не знать на текущем тике текущие цены
он другое в итоге просит, нужен максимально быстрый доступ к структуре MqlTick на каждом тике
А чем вариант
не устраивает? Покажите где здесь узкое место? Если и это медленно, то у Разработчиков есть возможность заинлайнить\оптимизировать такой вызов - без принципиальных изменений
А чем вариант
не устраивает? Если и это медленно, то у Разработчиков есть возможность заинлайнить\оптимизировать такой вызов
да это медленно, по крайней мере в тестере, я так в тестере пишу https://www.mql5.com/ru/forum/1111/page2749#comment_16487642
при большом количестве проходов оптимизатора появляется выигрыш
не знаю как обьяснить, не умею элементарные вещи обьяснять..
ну как пишутся ЕА? - собираешь себе библиотеку, в процедурном или ООП стиле, каждая функция полностью переносима в другой проект, и чтобы это обеспечить пишешь везде Bid, Ask - мой пример. Потом собираешь из заготовок торговую стратегию. То что сейчас предлагают разработчики - пишешь везде SymbolInfoDouble()
тут как бы парадокс, что есть доступ к _Symbol .... но нет такого доступа к
хотя язык MQL позиционируется как язык разработки торговый стратегий
Вот как-раз не нужно этого ***. _Symbol - это константа, поэтому с ним проблем нет (хотя правильней всё ж вызывать Symbol()). А тик - это переменная. Как это вы себе представляете, что она у вас объявлена const, но значение её меняется.
Как это вы себе представляете, что она у вас объявлена const, но значение её меняется.
увы, я такой же как и Вы... такой же идеалист, которому логичнее и понятнее писать в VS C# - там компилятор не дает отделить логичное понятие константа от машинной проверки С++ перед компиляцией
вот не стеснялся задавал вопросы
https://www.mql5.com/ru/forum/1111/page2680#comment_15546412
суть - в С++ это все логичное ;)
Вот как-раз не нужно этого ***. _Symbol - это константа, поэтому с ним проблем нет (хотя правильней всё ж вызывать Symbol()).
Что плохого, что за пользователя написано это?
А тик - это переменная. Как это вы себе представляете, что она у вас объявлена const, но значение её меняется.
Bid/Ask в MT4. Там, конечно, RefreshRates() есть.
Совсем недавно обнаружил символ, на котором Digits было неверно задано. Попросил брокера исправить. Он это сделал сходу. Не смотрел, менялось ли значение переменой _Digits и Digits(). Но просто факт, что символ может поменять свои значения на ходу.
увы, я такой же как и Вы... такой же идеалист, которому логичнее и понятнее писать в VS C# - там компилятор не дает отделить логичное понятие константа от машинной проверки С++ перед компиляцией
вот не стеснялся задавал вопросы
https://www.mql5.com/ru/forum/1111/page2680#comment_15546412
Там у вас в первом случае меняется статическая переменная, а не член класса. Поэтому константность вообще ни при чём.