Обсуждение статьи "Пользовательский тестер стратегий на основе быстрых математических вычислений" - страница 3

 
fxsaber:

Вы не поняли меня. Вы предлагаете ТС для теста писать на своем торговом API специально для этого. А это равносильно использованию других тестерных решений.

Ну и пункт с кастомными символами проигнорили, как и сравнение скоростей в цифрах.

Не все сразу. Сравнение по скорости обязательно будет в другой части.

 
fxsaber:

Через шаблоны. В КБ такое выкладывал.

И без шаблонов очень универсальный union получился. Нет, шаблонов не будет точно. Не мой стиль просто.
 
fxsaber:

Соответственно, если FrameNext хоть в одном из OnTesterPass не вызвать, то все последующие OnTesterPass+FrameNext будут получать не пришедший проход, а предыдущий.

Поскольку статья обучающая, то данный нюанс не помешало бы реализовать в коде в виде тех же комментариев.

А почему он должен не вызываться? Заметка понятна, но выглядит немного притянутой, но я подумаю над этим.
 
Vasiliy Sokolov:
И без шаблонов очень универсальный union получился. Нет, шаблонов не будет точно. Не мой стиль просто.

У Вас почти половина кода занимают байтовые операции. И они сильно зависят от задач. По-моему, можно написать гораздо универсальнее и лаконичнее. Но хозяин - барин.

 
fxsaber:

Вы не поняли меня. Вы предлагаете ТС для теста писать на своем торговом API специально для этого. А это равносильно использованию других тестерных решений.

Теоретически возможно использовать единое API. Единственное абстрактное API, которое сейчас имеется это CStrategy. Вот его поддержку и можно реализовать в математическом тестере. Но даже если реализовывать поддержку базовых вещей - это очень сложная задача. Поэтому таки-да, сейчас да и в обозримом будущем API разное, следовательно и ТС придется писать дважды. Однако сравнивать со сторонними тестерами не совсем корректно, потому что все-таки все расчеты происходят в инфраструктуре MetaTrader и блок анализа един. Т.е. всегда можно прогнать ТС в стандартном тестере и даже на демке и сравнить отчет с таковым в мат. тестере. Может быть в следующей части интегрирую отчетность с стандартным тестером МТ.
 

Vasiliy Sokolov:
Теоретически возможно использовать единое API. Единственное абстрактное API, которое сейчас имеется это CStrategy. Вот его поддержку и можно реализовать в математическом тестере.

Тогда это будет решение только для Вас. Если реализовать, то либо MQ4/5, либо СБ на крайний случай.

Но даже если реализовывать поддержку базовых вещей - это очень сложная задача. Поэтому таки-да, сейчас да и в обозримом будущем API разное, следовательно и ТС придется писать дважды.

Это и фигово. Писать ТС на одном API, затем переписывать на другой и искать, а где же расхождения.

Однако сравнивать со сторонними тестерами не совсем корректно, потому что все-таки все расчеты происходят в инфраструктуре MetaTrader и блок анализа един. Т.е. всегда можно прогнать ТС в стандартном тестере и даже на демке и сравнить отчет с таковым в мат. тестере. Может быть в следующей части интегрирую отчетность с стандартным тестером МТ.

Инфраструктура MT здесь - это Агенты и GUI задания параметров. В общем, сомнительно.


Тестер MT тем и крут, что большинство боевых советниклв можно без изменений проверить на виртуальном торговом окружении.

 

Грандиозная работа проделана! Мои замечания ниже.

Режим мат. вычислений не подходит для решения поставленной задачи по нескольким причинам.

В самой статье, сразу после перечисления его преимуществ, в том числе — отсутствия подготовки данных тайм-серий, начинается собственная реализация того же функционала! :)
В виду отсутствия сравнения скорости полученного велосипеда со встроенным режимом "По ценам открытия", становится вообще не понятным, есть ли хоть какой-то выигрыш хотя бы для такой примитивной стратегии.

О вопросах еще одного торгового API высказался fxsaber, полностью с ним согласен. Решение должно быть универсальным, иначе рискует быть даже не невостребованным, а не опробованным. Ну, а необходимость переписывания индикаторов (в том числе, стандартных) для простой проверки идеи, ставит на этом подходе жирный крест.

В "планах на будущее" озвучено дальнейшее движение к стандартным "Ценам открытия", поэтому совсем не понятно, какая ценность у этого тестера, кроме демонстрационно-обучающей.


Тема фреймов и управления оптимизацией куда более интересна и заслуживает более подробной проработки и обертки в удобные универсальные функции.
Также интересен Анализатор, как альтернатива штатным отчетам и штатному процессу оптимизации вообще (имею в виду пост-обработку всех проходов благодаря наличию собственного кэша).

Именно в этом направлении, на мой взгляд, стоит продолжать цикл статей.

Спасибо за работу!

 

Хотя Рождество прошло давно, я бы хотел, чтобы ваш тестер стратегий мог читать и обрабатывать данные локального тика в формате ASCII.
Данные по тику выросли до ~ 400 ГБ на внешнем USB-HD с помощью бесплатного TickDownloader со мной - который я бы хотел использовать - другие, вероятно, также - чтобы не зависели от разных брокеры. Возможно также с возможностью одновременного использования нескольких символов (арбитраж, корзины, ...).
Это также было бы интересно для MT4, потому что он не может этого сделать!

Although Christmas is long gone, I would wish that your strategy tester could read and process the local tick data in ASCII format.
The tick data has grown to ~400 GB on an external USB-HD by the free https://strategyquant.com/tickdownloader# with me - which I would like to use - others probably also - in order not to be dependent on different brokers. Possibly also with the possibility to use several symbols at the same time (arbitrage, baskets,...).
That would also be interesting for the MT4, because it can't do that!

(by google translate)

Calli

PA: Anyway thanks for this interesting approach!

Tick Downloader
  • strategyquant.com
What is Data Tick Downloader? Tick Downloader is a freeware tool that allows to download quickly historical tick data from Dukascopy.
 

Спасибо за интересную статью.

Считаю, что тестеру необходимы стандартные торговые функции - открытие/закрытие/TP/SL, которые можно было бы легко добавить в любой советник и получить приблизительный результат без сверх усилий.

Относительно индикаторов, тут опять же необходимо реализовать возможность загрузки показателей индикаторов из файла/файлов, и сделать это так, что бы у агентов оставался этот файл, а не передавался постоянно (если этого нет). Соответственно реализовать при инициализации подмен хендла с индикатора на массив файла с готовыми расчетами индикатора. И, если большое число таких массивов будет работать достаточно быстро, то в этом действительно есть прок.

Сам режим "Математические вычисления" следует, видимо, рассматривать как урезанный аналог скрипта, который нужен для каких либо вычислений не связанных с индикаторами.

Уважаемый Василий, скажите пожалуйста, а есть ли механизм создания обратной связи советников при оптимизации, когда по результатам анализа оптимизации можно продолжить оптимизацию по иным критериям без ручного вмешательства? Какой то аналог ГА в плане управления параметрами оптимизации.

Причина обращения: