Ошибки, баги, вопросы - страница 2708
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
А мой объект создаётся вторым:
Первый объект.
cA a=cA();Второй объект.
cA a=cA();Тогда так надо:
cA a; Print(a.my_i);На моем компе год тестируется за несколько минут. Что на самом деле происходит в автовалидаторе и почему он тормозит, невозможно в данный момент узнать.
Год за несколько минут — это много. Вряд ли кто-то дождался бы (если бы это был советник).
А визуально нормально рисуется? Можно что-то понять, наблюдая за тестером?
Добавьте заглушку для маркета — ускорение расчетов в ущерб точности (если это возможно), или вообще рисование "чего-то похожего". Продукт явно специфический, и тот, кому он нужен, сможет переключить нужный параметр.
Год за несколько минут — это много. Вряд ли кто-то дождался бы (если бы это был советник).
А визуально нормально рисуется? Можно что-то понять, наблюдая за тестером?
Добавьте заглушку для маркета — ускорение расчетов в ущерб точности (если это возможно), или вообще рисование "чего-то похожего". Продукт явно специфический, и тот, кому он нужен, сможет переключить нужный параметр.
По-моему, год за несколько минут в потиковом режиме, это нормально. Раньше на чемпионатах было ограничение минут 15-20 (точно не помню). Заглушка уже добавлена (троттлинг по времени). Можно пропускать тики, но тогда пропадает смысл продукта. Специфичность - понятие относительное: я знаю, что многие работают в потиковом режиме (и довесок с проверкой цен и/или объемов у всех есть). И тем более важно, иметь более точные критерии, плюс фидбэк от автовалидатора (если мы на форуме говорим "ваш терминал не работает", у нас MQ что спрашивают? - давайте логи и условия для воспроизведения; а тут получается, что нам сообщают, что мол наш продукт не работает, а конкретики нет). И более правильно - учитывать специфику продукта. Ведь общее время выполнения продукта - это не только время MQL-кода, но и самого терминала. Есть более дорогостоящие вызовы, такие как CopyTicksRange. Эти накладные расходы учитываются сейчас как недоработки MQL-продукта.
PS. В случае индикаторов более критичным, судя по всему, выходит не работа по тикам, а количество буферов (их много из-за особенностей задачи). Попробую для тестера ограничивать их число (это усложняет продукт и чревато ошибками, как и прочие навязываемые внешними условиями флаги, вроде троттлинга). Это еще раз доказывает необходимость в автовалидаторе варьировать оценку производительности по нескольким параметрам.
PPS. Я запрашиваю тики за последний день, а тестер их подгружает за 2 года - и на это тоже уходит время.
PPS. Я запрашиваю тики за последний день, а тестер их подгружает за 2 года
Почему-то такое поведение официальное.
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Новая версия платформы MetaTrader 5 build 2360: Расширение интеграции с SQLite
Slava, 2020.04.16 14:02
История закачивается на начало предыдущего года.
Наверное, можно было бы не генерировать бары совсем для советников, которые не использую индикаторы, не обращаются к барам и т.д.
Например, если есть только SymbolInfoTick - не генерировать бары, не хранить для copyticks историю.
Совсем не ясна эта баро-филия для серьезного алготрейдерского инструмента, как Тестер. Но поскольку даже эстеты МО продолжают жрать этот кактус, то, наверное, понимания не будет.
Почему в MQL нельзя вызывать защищенный конструктор из своего метода-фабрики?
Код дает ошибку компиляции "'A1::A1' - cannot access protected member function", причем указывает строку, где начинается описание класса, а не там, где вызывается конструктор (то есть, нужно вручную искать, где проблема).
Но суть в том, что ошибки вообще не должно быть. C++ компилирует без проблем.
Почему в MQL нельзя вызывать защищенный конструктор из своего метода-фабрики?
Проблема в значении по умолчанию, если его убрать, то все работает как надо:
Почему в MQL нельзя вызывать защищенный конструктор из своего метода-фабрики?
Не догадался, где такое может быть полезно.
Не догадался, где такое может быть полезно.
Классическая реализация паттерна Singleton.
Классическая реализация паттерна Singleton.
Чтобы нельзя было создать больше определенного количества объектов данного класса?