Новая версия платформы MetaTrader 5 build 2170: Области видимости в MQL5, глобальное обновление тестера стратегий и встроенного хостинга - страница 4
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Вот тут и надо ругаться компилятору, т.к. сигнатура совпадает. Повторяю 4 раз - сигнатура разная.
Получается, что кто-то выложил библиотеку. Но она работает не у всех пользователей, потому что ее автор "не согласен".
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Вопрос знатокам ООП.
Igor Makanu, 2019.10.06 14:23
в МТ4 работает до сих пор, а в МТ5 уже не работает
2019.10.06 16:22:44.202 tst EURUSD,H1: 3
2019.10.06 16:22:44.202 tst EURUSD,H1: 2
2019.10.06 16:22:44.202 tst EURUSD,H1: 1
"input group" работает оригинально, в тестере отделяет, а в самом советнике при добавлении на валютную пару нет
Пример в тестере так
а при добавлении советника на график так
еще мне непонятно зачем обрезать по длине строки в настройках ....
интеграция с питоном работает только в 32 битном клиенте и на типовом примере дает ошибку
[2, 'RoboForex-MetaTrader 5', '***********']
[500, 2170, '4 Oct 2019']
Traceback (most recent call last):
File "D:\temp\Pyton\mt.py", line 18, in <module>
euraud_ticks = MT5CopyTicksFrom("EURAUD", datetime(2019,4,1,0), 1000, MT5_COPY_TICKS_ALL)
RuntimeError: IPC call failed
Получается, что кто-то выложил библиотеку. Но она работает не у всех пользователей, потому что ее автор "не согласен".
Нет, пока получается, что кто-то выложил компилятор, который сломал то, что раньше работало.
Нет, пока получается, что кто-то выложил компилятор, который сломал то, что раньше работало.
Раньше работало так, что можно было, не залезая в код чужой библиотеки, нарушить ее работу. И узнать об этом, например, после анализа слива счета.
Это ненормально, что библиотеки могут переставать работать из-за безобидных действий пользователя. В MT4 сейчас именно так.Раньше работало так, что можно было, не залезая в код чужой библиотеки, нарушить ее работу. И узнать об этом, например, после анализа слива счета.
Это ненормально, что библиотеки могут переставать работать из-за безобидных действий пользователя. В MT4 сейчас именно так.Жаль, что так и не удалось послушать начальника транспортного цеха узнать, какое все это имеет отношение к случаю, когда сигнатуры (в частности параметры функции) отличаются.
Кратко:
Его задача делать код защищеннее и глубже анализировать проблемные места. Поэтому с каждой версией все больше "грязного" кода ловится и не пропускается.
Вспомните последние годы - постоянно были жалобы "мой код перестал компилироваться, почему предупреждения вылезают". В итоге код роботов становился только лучше.
Это дало нам возможность закрутить гайки и включить более жесткий контроль сигнатур и перекрытий имен.
Кто использует generic naming - это просто сам себе вредит. И никакие идеи "пусть компиляторы мусор разгребают сказочным образом" не работают. Компиляторы (в первую очередь C++) с каждой версией все больше работают церберами, чтобы показать и не допустить максимум мусорных и откровенно ошибочных конструкций.
Мы еще следующие 6 месяцев будем распространять 32 битную сборку 2170 билда в инсталляторах, а потом прекратим.
Это даст нам возможность реализовать точный x64 профайлер с минимальными искажениями, а также нативный x64 отладчик.
Какой билд у metaeditor64.exe? Заменил на 2085 от старой версии - тоже стал компилить.
Попробуйте еще добавить такой код и скомпилить:
Если добавить дополнение кода - то да не компилится.
Renat Fatkhullin
Делать одинаковые сигнатуры и потом доказывать что это нормально - это глубоко ошибочная тактика и даже смысла нет обсуждать такие заблуждения
Никто не спорит. Только если сигнатуры разные, то и явно указывать нет необходимости.
Renat Fatkhullin:
И никакие идеи "пусть компиляторы мусор разгребают сказочным образом" не работают.
Работают. В C# например требуется явное указание namespace только если сигнатуры совпадают.
Обновился рабочий терминал - потребление памяти перевалило за 4 гигабайта!
Ранее потребление было в разы меньше.