Ошибки, баги, вопросы - страница 2841
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Подскажите пожалуйста, может ли советник обращаться в рамках работы на одном символе к другим символам? К примеру советник запущен на AUD/usd, и я хочу внутри выполнения его кода внедрить анализ например Gold, в результате чего робот принимает решение о дальнейших действиях по сделкам с aud/usd. Это пример. Вообще в идеале хотелось бы в рамках одного открытого советника на одном графике производить вычисления на основе скажем основных валют - штук семь. Т.е. хочу попробовать реализовать межсимвольный анализ. Выходит новость в одной стране, происходит скачек цены и на основе этих изменений принимается решение о открытии ордеров по 1-7 парам. Теоритически такое возможно без вмешательства инородних программ и сервисов, в рамках MQL4? Может MQL5?
Никаких ограничений у советников MQL5 нет: работая на одном символе советник MQL5 может спокойно анализировать OHLC с чужих таймфреймов и с чужих символов, а также может свободно открывать позиции и выставлять отложенные ордера по чужим символам.
Еще раз спрошу про ошибку "hidden method calling". Есть код:
Поясните, почему метод с параметром типа строка является hidden, хотя он public и не переопределен? Почему я обязан его переопределить в производном классе? И почему предупреждение пропадает, если убрать перегруженный метод с другим типом параметра?
1. Поясните, почему метод с параметром типа строка является hidden, хотя он public и не переопределен?
2. Почему я обязан его переопределить в производном классе?
3. И почему предупреждение пропадает, если убрать перегруженный метод с другим типом параметра?
1. Стандарт С++ по выбору перегруженной функции (перегруженного метода класса).
Ищется первая подходящая функция по имени, а не сигнатуре, начиная с текущего класса и заходя в каждый базовый.
2. Стандарт С++. Необходимо или явно переопределять или использовать using declaration.
3. В MQL методи и поля базового класса "напрямую доступны" из классов наследников.
По сути поведение в MQL при наследовании аналогично тому, что в С++ применить using declaration для каждого базового поля и метода.
В MQL с одной стороны добавляют свободу, но с другой - требуют то же, что и в С++, но не предоставляют абсолютно ни каких методов обхода нелепых с точки зрения пользователя предупреждений.
В MQL с одной стороны добавляют свободу, но с другой - требуют то же, что и в С++, но не предоставляют абсолютно ни каких методов обхода нелепых с точки зрения пользователя предупреждений.
Оно не нелепое: смысл этого предупреждения в том, что сегодня это компилируется, а завтра не будет. Или (что еще хуже) будет вызван другой метод - "благо" сомнительных неявных преобразований со строками в MQL хватает
То что не будет поиска лучшего метода по типам (1) это можно объяснить заботой о пользователе, но то что его не будет даже по числу параметров (2) - это два шага назад
Build 2584
Ошибка не исправлена.
При первом запуске сервиса, WebRequest возвращает 200.
При повторном запуске сервиса ПКМ, WebRequest возвращает ошибку 1001.
Удалив сервис и запустив снова, всё повторяется.
Спасибо, build 2590 исправлено.
Никаких ограничений у советников MQL5 нет: работая на одном символе советник MQL5 может спокойно анализировать OHLC с чужих таймфреймов и с чужих символов, а также может свободно открывать позиции и выставлять отложенные ордера по чужим символам.
но MQL всегда был в этом смысле более передовым
Вот это новость! )) Интересно, где вы там нашли передовизну.
Передовизна была в том, что в производном классе не нужно было повторять методы из базового, а теперь нужно будет
build 2560:
AccountInfoDouble(ACCOUNT_EQUITY) периодически возвращает нуль, хотя средства на счете есть.
EL 0 04:10:36.959 SS_EA_v3.4_debug (GBPUSD,M1) mode=DD_LEVEL, value=50.0, unit=DD_PERC, equity=0.0, balance=1001.8