Оптимизация
Atom
20.05.2021
Greenn


Добрый день.
Подскажите пожалуйста, почему оптимизация каждый раз выдает разные результаты?
Как вы сами проводите оптимизацию? Дизайнер или что-то свое?
Спасибо [laugh]



Спасибо:


Sprite

Фотография
Дата: 20.05.2021
Ответить


Вставлю свои 5 коп. Я не знаю что такое оптимизация, но если данные одинаковые, то и результаты одинаковых вычислений по этим данным должны быть одинаковыми. Вы точно используете одни и те же данные для тестирования, например грузите данные Level2, а не генерируете стакан?
Спасибо:

Greenn

Фотография
Дата: 21.05.2021
Ответить


sprite
Вставлю свои 5 коп. Я не знаю что такое оптимизация, но если данные одинаковые, то и результаты одинаковых вычислений по этим данным должны быть одинаковыми. Вы точно используете одни и те же данные для тестирования, например грузите данные Level2, а не генерируете стакан?


Добрый день.

Оптимизация нужна, чтобы проверить устойчивость ТС: посмотреть, как она себя ведет при различных значениях ее параметров.
Это следующий этап после написания стратегии. А как вы тестируете свои стратегии? Работаете только через код или используете другие программы?

План действий в Дизайнере

Screenshot_5.png

Оптимизация. Ранжируем по коэф. восстановления

Первый прогон
Screenshot_3.png

Второй прогон
Screenshot_4.png

Получаются разные результаты
(Данные о стаканах, Level1, тиках, свечках присутствуют)
Генерируются ли стаканы - это нигде не узнать (я не нашел такого пункта в настройках )

Screenshot_5.png 118 KB (499) Screenshot_3.png 140 KB (531) Screenshot_4.png 140 KB (562)
Спасибо:

Sprite

Фотография
Дата: 21.05.2021
Ответить


Greenn
Данные о стаканах, Level1, тиках, свечках присутствуют

Я не знаю что там и как делает S# Designer, но, если в стратегии используются данные Level1 или Level2, а этих данных нет в хранилище (файлы level1.bin, quotes.bin) то, насколько я понимаю, стокшарп будет генерировать эти данные из тиков/свечек каждый прогон. Это я и имел ввиду под возможной причиной того, что у вас получаются разные результаты при одинаковых настройках. Если дело не в этом, то мои 5 копеек были не в тему.

Greenn
А как вы тестируете свои стратегии? Работаете только через код или используете другие программы?

Я не использую логику "взять несколько свечей, сосчитать среднее что-то там и посмотреть что будет" (т.е. всякие SMA, EMA и т.п. индикаторы) для принятия торговых решений, т.е. по сути мне нечего "оптимизировать", меняя периоды. А вообще для тестирования я сделал коннектор, по типу встроенного HistoryEmulationConnector, который делает всё что мне надо и как мне надо, в том числе грузит доступные маркет данные из хранилища, сортирует их по дате и гоняет в цикле, именно для того, чтобы быть уверенным что изменение котировки в стакане, тика, транзакции и пр. в момент М будут каждый прогон происходить в одной и той же последовательности.
Спасибо: Greenn

Greenn

Фотография
Дата: 21.05.2021
Ответить


sprite
Greenn
Данные о стаканах, Level1, тиках, свечках присутствуют

Я не знаю что там и как делает S# Designer, но, если в стратегии используются данные Level1 или Level2, а этих данных нет в хранилище (файлы level1.bin, quotes.bin) то, насколько я понимаю, стокшарп будет генерировать эти данные из тиков/свечек каждый прогон. Это я и имел ввиду под возможной причиной того, что у вас получаются разные результаты при одинаковых настройках. Если дело не в этом, то мои 5 копеек были не в тему.

Greenn
А как вы тестируете свои стратегии? Работаете только через код или используете другие программы?

Я не использую логику "взять несколько свечей, сосчитать среднее что-то там и посмотреть что будет" (т.е. всякие SMA, EMA и т.п. индикаторы) для принятия торговых решений, т.е. по сути мне нечего "оптимизировать", меняя периоды. А вообще для тестирования я сделал коннектор, по типу встроенного HistoryEmulationConnector, который делает всё что мне надо и как мне надо, в том числе грузит доступные маркет данные из хранилища, сортирует их по дате и гоняет в цикле, именно для того, чтобы быть уверенным что изменение котировки в стакане, тика, транзакции и пр. в момент М будут каждый прогон происходить в одной и той же последовательности.


Благодарю за ответ.
Спасибо:


Добавить файлы через драг-н-дроп, , или вставить из буфера обмена.

loading
clippy