Обсуждение статьи "Выцарапываем профит до последнего пипса" - страница 21

 
Denis Kirichenko:

Лучше, когда мы сравниваем одни и те же комбинации значений параметров при разных маркапах.

В таблице так и сделано. В каждой строке один и тот же набор входных.

Ну так я и написал про гипотезы. Перефразирую:

  • Н0 (нулевая гипотеза): маркап не влияет на результат торговой системы. 
  • Н1( альтернативная): маркап влияет на результат торговой системы. 
Если подтверждается последний тезис, то система чувствительна к добавкам к исходной цене. И скорее это плохо.

Можно видеть, что в каждой строке прибыль падает слева-направо, что полностью согласуется с теорией. Более того, в том же направлении падает и количество сделок. Что как раз говорит в пользу того, что входы берутся не одни и те же, а более ОПТИМАЛЬНЫЕ. Ну это странно, когда при маркапе входы не меняются. Вот нижняя строка

Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий

Обсуждение статьи "Выцарапываем профит до последнего пипса"

fxsaber, 2019.11.09 15:54


Какому маркапу
соответствуют
лучшие настройки
Маркап
-3 пипса
Маркап
-2 пипса
Маркап
-1 пипс
Маркап
0 пипсов
Маркап
+1 пипс
Маркап
+2 пипса
Маркап
+3 пипса
Маркап
+3 пипса
Прибыль: 16626
Сделок: 1491
МО: 11.15
PF: 2.17

Profit0: 7678
Прибыль: 13294
Сделок: 1176
МО: 11.30
PF: 2.03

Profit0: 8584
Прибыль: 11486
Сделок: 913
МО: 12.58
PF: 1.96

Profit0: 9659
Прибыль: 11271
Сделок: 713
МО: 15.81
PF: 2.10

Profit0: 11271
Прибыль: 9763
Сделок: 682
МО: 14.32
PF: 1.94

Profit0: 11130
Прибыль: 8234
Сделок: 651
МО: 12.65
PF: 1.78

Profit0: 10839
Прибыль: 8662
Сделок: 517
МО: 16.75
PF: 1.91

Profit0: 11761

    Смотрим на крайние значения. Маркап отличается на 6 пипсов. При этом количество сделок отличается в три раза.


    Давайте посмотрим, какой был бы профит, если торговать по правой ячейке: (16.75 + 6 * 2) * 517 = 14863, что явно меньше, чем 16626 в левой ячейке. При этом посмотрите на мат. ожидание в левой ячейке, оно меньше двойного маркапа! Т.е. все очень даже логично. ТС поймала много мелких колебаний, при этом входные параметры соответствовали лучшему проходу на очень замаркапленном символе. Такое свойство ТС не должно огорчать. Но есть все же некоторые сомнения.


    В принципе, так, наверное, ведет себя любая ТС, но полной уверенности в этом нет.

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

    Сделал проверку через генетику по такому критерию

    sinput int inMinTrades = 0; // Минимальное количество трейдов (позиций).
    
    double OnTester()
    {
      return((TesterStatistics(STAT_TRADES) > inMinTrades) ? (TesterStatistics(STAT_EXPECTED_PAYOFF) + GetMarkup(_Symbol) * 2) * TesterStatistics(STAT_TRADES) : 0);
    }

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

    Какому маркапу
    соответствуют
    лучшие настройки
    Маркап
    -3 пипса
    Маркап
    -2 пипса
    Маркап
    -1 пипс
    Маркап
    0 пипсов
    Маркап
    +1 пипс
    Маркап
    +2 пипса
    Маркап
    +3 пипса

    Прибыль: 14300
    Сделок: 512
    МО: 2793
    PF: 2.70

    Profit0: 11228
    Прибыль: 17719
    Сделок: 1169
    МО: 15.18
    PF: 2.21

    Profit0: 13043
    Прибыль: 13959
    Сделок: 601
    МО: 23.23
    PF: 2.66

    Profit0: 12757
    Прибыль: 13137
    Сделок: 1068
    МО: 12.30
    PF: 2.12

    Profit0: 13137
    Прибыль: 11449
    Сделок: 1052
    МО: 10.88
    PF: 1.82

    Profit0: 13553
    Прибыль: 9891
    Сделок: 839
    МО: 11.79
    PF: 1.83

    Profit0: 13247
    Прибыль: 7746
    Сделок: 876
    МО: 8.84
    PF: 1.59

    Profit0: 13002


    Понятно, что это генетика. И, например, максимум, что был в исходной таблице, не был найден, что вызывает некоторые вопросы к ГА...

    Однако, можно делать вывод, что, скорее всего, не для увеличения профита, а для увеличения мат. ожидания имеет все же смысл рассматривать торговые входы с ухудшенных символов.

     
    fxsaber:

    Дождался. Торговля остановлена.

    Не преждевременно ли?
     
    trader_number_one:
    Не преждевременно ли?

    Не знаю.

     
    Поисковый инструментарий из статьи усовершенствовался

    Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий

    Библиотеки: MultiTester

    fxsaber, 2019.11.12 11:47

    Один из реальных примеров применения (все делается автоматически)

    1. Берутся все символы и следующие пункты проделываются для каждого символа.
    2. Запускаю Оптимизацию.
    3. По завершении берутся данные лучших проходов и из них формируются (задаются диапазоны входных параметров) несколько заданий для оптимизации.
    4. Проводятся все оптимизации из п.3.
    5. Из всех оптимизаций из п.4 берутся лучшие проходы и сохраняются в виде сетов для портфельной торговли.


    Получился очень мощный сканер рынка и настройщик ТС. Исходники ТС для таких манипуляций не требуются.


    и стал еще и настройщиком ТС.

     
    Доброго времени суток. Поскольку статья ориентирована на форекс, проделал похожую штуку с поиском подходящего источника тиковых данных для биржи. Прогонял по 4 основным источникам, что удалось найти
    http://erinrv.qscalp.ru/
    http://finam.qscalp.ru/
    https://ftp.zerich.com/pub/Terminals/QScalp/History/
    и исторические тиковые данные с реального счёта брокера Открытие.

    Тест прогонял по всем пересекающимся инструментам, что предоставляются. За 2 недели с 1 ноября 2019 по 15 ноября 2019.

    По фьючерсам от худшего к лучшему erinrv-finam-Открытие-zerich. На достаточно малом числе (~5-10 из 70) иногда Финам обгоняет Открытие, но не сильно. И только 1 раз Открытие оказался лучше, чем zerich и то в пределах погрешности и на незначимом инструменте, где потенциальный профит был меньше 1000 пипсов. Другими словами, тут безоговорочно в лидерах zerich, хотя отрыв и не кардинально сильный.

    По акциям Финам выпадает, ибо там данные только фьючерсные. Оставшиеся 3 расположились от худшего к лучшему erinrv-zerich-Открытие. Иногда erinrv опережает zerich, но не сильно. А вот отрыв Открытия очень заметный: на порядок, а то и на два. Тут безоговорочно в лидерах Открытие, отрыв однозначный, конкретный и сильный.

    По валютным инструментам (по крайней мере по той весьма небольшой части, что там представлена) Финам снова выпадает, ибо там данные только фьючерсные. Из оставшихся 3 zerich и erinrv на одном уровне, где-то лучше один инструмент, где-то другой. А Открытие снова выходит вперёд. Заметно, но уже не на порядки, как в прошлом случае. Тут безоговорочно в лидерах Открытие.

    Надеюсь, исследование будет кому полезно. Если кто знает ещё источники тиковых данных, пишите, тоже их добавлю в тест. Интересует именно биржа, не форекс, с ценами ask и bid. Спасибо.
     
    traveller00:
    Надеюсь, исследование будет кому полезно. Если кто знает ещё источники тиковых данных, пишите, тоже их добавлю в тест. Интересует именно биржа, не форекс, с ценами ask и bid. Спасибо.

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


    Если правильно понял, то Вы гнали скрипт потенциального профита (что в статье упомянут) с нулевой комиссией. Если же комиссию задавали разную для каждого из источников, тогда несовпадение объяснимо сразу.


    Очень рад, что подход из статьи вызвал конструктивный интерес к подобному исследованию. Сам так биржу бы даже не стал смотреть, т.к. был уверен, что у всех все одинаково (за исключением технических проблем).


    ЗЫ QScalp History Data-формат не знаю. Если поделитесь парсером, будет замечательно.

     
    traveller00:
    Доброго времени суток. Поскольку статья ориентирована на форекс, проделал похожую штуку с поиском подходящего источника тиковых данных для биржи. Прогонял по 4 основным источникам, что удалось найти
    http://erinrv.qscalp.ru/
    http://finam.qscalp.ru/
    https://ftp.zerich.com/pub/Terminals/QScalp/History/
    и исторические тиковые данные с реального счёта брокера Открытие.

    Тест прогонял по всем пересекающимся инструментам, что предоставляются. За 2 недели с 1 ноября 2019 по 15 ноября 2019.

    По фьючерсам от худшего к лучшему erinrv-finam-Открытие-zerich. На достаточно малом числе (~5-10 из 70) иногда Финам обгоняет Открытие, но не сильно. И только 1 раз Открытие оказался лучше, чем zerich и то в пределах погрешности и на незначимом инструменте, где потенциальный профит был меньше 1000 пипсов. Другими словами, тут безоговорочно в лидерах zerich, хотя отрыв и не кардинально сильный.

    По акциям Финам выпадает, ибо там данные только фьючерсные. Оставшиеся 3 расположились от худшего к лучшему erinrv-zerich-Открытие. Иногда erinrv опережает zerich, но не сильно. А вот отрыв Открытия очень заметный: на порядок, а то и на два. Тут безоговорочно в лидерах Открытие, отрыв однозначный, конкретный и сильный.

    По валютным инструментам (по крайней мере по той весьма небольшой части, что там представлена) Финам снова выпадает, ибо там данные только фьючерсные. Из оставшихся 3 zerich и erinrv на одном уровне, где-то лучше один инструмент, где-то другой. А Открытие снова выходит вперёд. Заметно, но уже не на порядки, как в прошлом случае. Тут безоговорочно в лидерах Открытие.

    Надеюсь, исследование будет кому полезно. Если кто знает ещё источники тиковых данных, пишите, тоже их добавлю в тест. Интересует именно биржа, не форекс, с ценами ask и bid. Спасибо.

    Странноватые результаты. Тиковые потоки должны совпадать абсолютно. И по времени и по значениям. Поскольку источник один.

    Проводил когда-то сравнение Открытия с Финамом - полное совпадение (было на момент проверки).

     

    Согласен, что результаты нестандартные. Потому и решил поделиться, может кому пригодиться, чтобы недельку времени сэкономить на допилку под себя скриптов и софта.

    Ссылки на тиковые истории я брал в основном отсюда https://www.qscalp.ru/qsh-service Не зря там наверно хранятся данные одновременно с нескольких источников. Да и просто даже на глаз видно, что размеры файлов заметно разные. Может дело в разных интерфейсах, где-то снимали со шлюза  Plaza II, где-то с брокерского интерфейса SmartCOM 3.0. Вполне вероятно, что что-то где-то потерялось или побилось. Потому что некоторые qsh файлы парсились с ошибкой, видимо, битые. Перекачивал несколько раз, дело не в кривом скачивании. Таких не много, но были.

    Все источники парсились одной программой, одним скриптом из одного терминала и с одними настройками. Так что не похоже, что ошибка в тестировании. Для результата брался скрипт из статьи MaxProfit для максимального потенциального профита с дефолтной комиссией в 0.002 и нелогарифмическим результатом.

    С брокера Открытие брал результаты через MetaTrader 5 с реального счёта стандартно, он сам историю подхватил. Для остальных 3 источников брал программу отсюда  https://github.com/StockSharp/Qsh2Bin/releases Она опенсорсная (в основном), но, как оказалось, не без косяков. Так что пришлось подправить и пересобрать. Что пришлось поправить, тут отписал  https://stocksharp.com/articles/322/konvertatsiya-istoricheskih-failov-qscalp-v-format-stocksharp?tid=322&page=3 И немного допилил её под себя, чтобы она из командной строки подхватывала параметры и парсила без всяких окон. Соответственно скрипт под себя допилил, чтобы он после скачивания с онлайна запускал этот конвертер и уже потом подхватывал полученные csv. Костыль, конечно, в идеале надо было из скрипта сразу бинарь qsh парсить, благо описание формата есть на сайте https://www.qscalp.ru/store/qsh.pdf и ничего сложного там нет. Но по времени так оказалось проще и быстрее, переписать нормально руки пока не дошли. Если нужно, программу и правленые исходники могу выложить, но сразу скажу, они все в костылях, писалось для себя лишь бы сконвертить и всё. Скорость тоже не фонтан, но за несколько часов последний год всех (порядка 70) символов парсит.

    Сервис истории торгов
    • www.qscalp.ru
    Запись ведется через шлюз Plaza II. Записывается поток полного журнала заявок по всем фьючерсам Московской Биржи, до исполнения которых осталось менее 120 дней. Данные доступны с 05.09.2014. Ссылка: http://zerich.qscalp.ru/ От компании «ФИНАМ» Запись ведется через шлюз Plaza II. Записывается поток полного журнала заявок по всем фьючерсам...
     
    traveller00:

    Согласен, что результаты нестандартные.

    Если из полной истории тиков выкинуть какую-то часть, то потенциальный профит будет падать.


    Вроде, MT5-тиковую историю сравнивали с той, что биржа официально выкладывает. Там было полное сходство.

    Так что все говорит в пользу того, что QScalp далеко не все логирует, отсюда и расхождения.


    ЗЫ Наверное, эту информацию стоило бы передать пользователям этого продукта.

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