Добрый день, коллеги!
Дабы не забывать о трейдерской направленности ресурса, решил устроить конкурс на разработку ТС (торговой системы).
Поскольку «правильные» условия проведения такого конкурса пока неясны, запускаем пилотный проект сроком на 1 неделю.
В течение этого времени будем допиливать условия «взрослого» конкурса.
Ну, или если конкурс вообще не вызовет интереса — выкинем его в помойку и придумаем следующий.
Всем хорошо известно, что убыточная ТС — это совсем неплохо, т.к. она может быть в теории превращена в прибыльную, если все сделки делать наоборот (это неверно в общем случае, но пока такое допущение подойдет). Прибыльная система — это еще лучше. И только система, дающая стабильный результат в районе 0, наверное, неинтересна. Как говаривал С.Мавроди — «только 0 ни во что превратить нельзя».
Итак:
ДАНО: Минутки по EURUSD за весь 2018 г. Данные просьба брать с finam.ru для стандартизации.
ОГРАНИЧЕНИЯ ПО КЛАССУ ТС: Обычная плоская реверсивная
Обычная — без заглядываний в будущее и манипуляций внутри минутного бара
Плоская — без плечей и реинвестирования. Вся торговля идет одним лотом в $1,000,000
Реверсивная — система всегда в рынке (в покупке или в продаже). При смене позиции происходит переворот двойным объемом ($2,000,000)
УТОЧНЕНИЕ: Все открытия/закрытия происходят лимитными ордерами. Ордер начинает выполняться со следующей свечи. Без махинаций — если open(next bar) лучше, чем цена ордера, открытие происходит по цене ордера (ордер формируется «между» свечами).
ОГРАНИЧЕНИЕ ПО ПАМЯТИ: Не более 90 календарных дней. Т.е. не используем более старые данные для расчета новых
ЗАДАЧА: Найти ТС с минимальным уклонением от 0.
ТОЧНЫЙ КРИТЕРИЙ: max(abs(equity), t в 2018 г.) --> min
ФОРМАТ ПУБЛИКАЦИИ РЕЗУЛЬТАТА: Число в $, желательно меньше $1,000,000 ))) Например, $82,138
В пилотном режиме каждый участник пишет на любой платформе и публикует результат (число). Задача доказательства результата лежит на потенциальном победителе — он переносит стратегию в TSLab (можно путем импорта модуля на C#), но с открытым текстом. Результат проверяется.
Призовой фонд пилотника — 5 тыр. Если наберется 5 участников — перейдем во взрослый конкурс. Если не наберется — вручим приз победителю. Если участник окажется 1 — будем фильтровать трешевые результаты (больше $500,000 например).
ТЕПЕРЬ КАК Я ВИЖУ ВЗРОСЛЫЙ КОНКУРС:
ДАННЫЕ: EURUSD за 2017, 2018, 2019 гг (также минутки с finam.ru)
ЗАДАЧА: Найти оптимальную ТС по тем же критериям отдельно за 2017, 2018 и неполный 2019
ПРИЗЫ: По 10 тыр за 1-е место в 2017 и 2018, 5 тыр за 2019 (год неполный — подгонка проще)
ЕСЛИ ОДНА И ТА ЖЕ СИСТЕМА ПОБЕЖДАЕТ В 2-Х НОМИНАЦИЯХ (за 2 любые года) — ПРИЗ УДВАИВАЕТСЯ
ЕСЛИ ОДНА И ТА ЖЕ СИСТЕМА ПОБЕЖДАЕТ В 3-Х НОМИНАЦИЯХ (за все 3 года) — ПРИЗ УТРАИВАЕТСЯ
ВКРАТЦЕ: Хорошая робастная система имеет шанс заработать в конкурсе 75 тыр
По платформам и технике пока непонятно все — будем обсуждать в процессе пилотника. Пока так:
1. Конкурс длится 3 недели
2. Каждый пишет на чем хочет
3. Раз в неделю подводится промежуточный итого и выбираются 3 номинанта
4. Вопрос переписывания на TSLab и подтверждения результата лежит на самих номинантах
5. На следующей неделе не рассматриваются результаты хуже, чем у победителя предыдущей (как заезды в квалификации Ф1)
6. Любые предложения, замечания и дополнения приветствуются
ВСЕ. НА ЭТОМ КОНКУРСУ ОБЪЯВЛЕН СТАРТ. ИТОГИ ПИЛОТНИКА ПОДВЕДЕМ В ПТ, 16.08.19
С уважением
1. Комиссии и проскальзывания отсутствуют.
С уважением
Судя по отклику, интеллектуальный конкурс — это не в чужом дерьме копаться
Так предлагайте
Сам я не понимаю, как лучше это исполнить
Ну и не готов копаться в каждом отдельно взятом коде
Если зигзаг можно спрятать в коде — в чем тогда вообще смысл? На известных к моменту конкурса данных его ведь тоже можно построить?
С уважением
Для Вас лично делаем на R + Python. В этой связке я разберусь.
Зачем нужны комиссии и проскальзывания — не понимаю.
С уважением
@будут вбиты даты переворота по зигзагу, который натянули на все известные данные@
OOS тестирование — это что это?
Подгонка на объеме 300 тыс — 1 млн отсчетов — это еще постараться надо
С уважением
Но это применимо при условии, что такая «глобальная» оптимальная стратегия вообще существует.
Меня же и curve fitting полностью устраивает — хочется посмотреть на результат )))
Заглядывание в будущее не подходит, конечно (((
С уважением
Если код будет засекречен, то проверить невозможно. Поэтому я и говорил что необходима текстовая логика системы чтобы любой желающий мог закодировать на своей платформе и проверить.
Мы все же исходим из постулата, что все мошенники?
Или есть способы защититься от подглядывания в будущее?
С уважением
P.S. Поэтому мне и нравился больше вариант со сколь угодно сложной формулой на JS для копирования в Google Sheets
Мальчик Buybuy, если Вы готовы ставить реальные деньги на кон (во взрослом конкурсе порядка 75 тыр можно будет поднять насколько понял), Вы априорно должны исходить из того, что на конкурс слетятся мошенники и халявщики всех мастей.
Причем дополнительным условием нужно сразу отсекать из призов все стратегии, которые покажут отклонение от нуля на уровне buy-and-hold или sell-and-hold.
PS И в данном случае согласен с Eugene Logunov: тестировать без учета комиссий затея бессмысленная. К сожалению, мы живем в мире где всем и каждому на ноги вешают гирьки, чтобы мы не так быстро прыгали.
Со вторым — пока нет
Это задача скорее математическая, чем рыночная
Т.к. на рынке нет задачи не выиграть
И при чем здесь комиссии?
С уважением
Я написал выше, что открытие/закрытие происходит лимитниками
Лимитник выставляется «между» свечами
Где простор для читерства?
С уважением
P.S. Комиссия убьет HTFшные стратегии. Этого бы не хотелось
Не понимаю. То есть, Вы не можете объяснить словами что написано в коде торговой системы?
Дядя Ваня СпекулянтЪ, могу, но не буду. Точное воспроизведение словами кода ТС займет в 10 раз больше места, чем опубликовать готовый код на любом языке программирования высокого уровня. Поэтому эта деятельность теряет смысл.
У меня есть опыт портирования одной и той же торговой системы (кстати, несложной) между разными платформами. Это далеко не 2 пальца об асфальт.
У меня любимая робастная стратегия помещается на поллиста формата А4
Это только формулы, без логики
С уважением
Чисто для примера, не вдаваясь в подробности, первая попавшаяся ссылка на описание системы на смартлабе
https://smart-lab.ru/blog/506774.php
Это поместится на спичечном коробке?)
Робастность — это способность системы сохранять заданный запас устойчивости при вариациях ее параметров
https://yandex.ru/search/?text=%D1%80%D0%BE%D0%B1%D0%B0%D1%81%D1%82%D0%BD%D0%BE%D1%81%D1%82%D1%8C&&lr=102557
Давайте будем считать, что Ваша аватарка вызвала во мне душевный трепет и я ушел посрамленный своим невежеством?
С уважением.
Купил
Пока без стопа
С уважением
Насчет подгонки ТС такого сорта на 1 млн. отсчетов — думаю, даже хорошая рабстанция с таким фокусом не справится. Причем с нативным кодом.
С уважением
Что проверяется не скомпилированный модуль, а текст ТС
Если не лень будет забивать пару-тройку тысяч констант в код — то Ок
Только видно это будет невооруженным глазом
С уважением
Проводить конкурс на разработку ТС нужно на форуме ФСБшников!
А расследования заказывать на Смарт-Лабе!
С уважением
Подгон по старым данным
Просто критерий оптимизации — не максимальный рост эквити, а минимальный уход от нуля
С уважением
Без заглядывания в будущее?
С уважением
А разве нельзя наложить ограничение на количество используемых в программе констант и переменных?
Ну т.е. его, конечно, тоже можно обойти — забить все нужные константы в один массив. Вот только его инициализация займет минимум несколько сотен строк текста и будет видна невооруженным глазом.
Не?
С уважением
Не подкован я в этом плане (((
Будем делать OOS
Пару креативных идей по борьбе с читерами я уже придумал )))
С уважением
1. Как корректно в данном случае реализовать OOS?
2. Сильно сомневаюсь на счет Фурье и 5 строк кода
С уважением
Будет ли кому-то интересен конкурс длиной 4 мес.?
Какой в таком случае должен быть приз?
С уважением
Лучше сейчас узнать все мнения вместо того, чтобы начинать эти терки заново в след. Пт )))
С уважением
33000+ минутных свечек
С уважением
Для оптимальной ТС на выходе будет почти чистое СБ, т.е. уклонение за 4 мес будет всего в 2 раза больше, чем за 1
А у неоптимальной ТС и месяц ни шанса нет продержаться
С уважением
Прикольнее создать систему, которая колеблется максимально близко к стартовой сумме. И, главное, прямого смысла в такой системе не просматривается.
Именно такую систему и требуется построить (см. выше)
И в ней есть конкретный смысл — правда, не прямой и не на ММВБ )))
С уважением
Вангую — это плохо получится
С уважением
Теперь поясните плз, что это было?
Почему графика 3?
Почему результат не в долларах, как это было по условиям конкурса?
Ну и скрипт для аудита в студию плз.
С уважением
Сделал допущение, что раз вы упомянули данную программу — то знакомы с ней. Программа TSlab версии 2.0. Для разработки и тестирования (в т.ч. оптимизации) стратегий является бесплатной, скачивается с оф. сайта. Дальше готовую систему либо переписывать на свой любимый язык, либо приобретать ежемесячную подписку на TSlab чтобы иметь возможность торговать.
Графиков столько программа сама по умолчанию рисует. Соот-но: синяя линия – «buy and hold», зеленая — профит от длинных позиций, красная – от коротких. Нас интересует суммарный результат, т.н. эквити — закрашенная область, зеленая – если мы в профите и красная если в убытке.
Чтобы выслать вам стратегию не хватило рейтинга, публиковать же в открытом доступе без согласования потенциального «владельца» не стал. Так понимаю, если вы напишите мне в ЛС, то я смогу ответить ссылкой на скачивание.
Стратегия собрана на «кубиках», поэтому для ее реализации и понимания, знания навыков программирования особо не требуется.
Для получения результата в долларах нужно конвертировать полученный результат. Стратегия показала за данный год результат 0.18% Прибыли. Соот-но следует умножить на стартовый капитал и поделить на 100.
Я что-то пропустил?
Есть желание поучаствовать от Tashik
Есть некие неформатные результаты от «имя фамилия» (3 графика, шкала результата не в долларах).
Сейчас попробуем понять, что это.
И, скорее всего, будем организовывать конкурс с OOS.
С уважением
Ну идея алгоритма — это не конкурсная заявка. Я, к примеру, понимаю, почему эта идея не работает, но не обязан доказывать это за свои деньги )))
«Имя фамилия» прислал непонятный неформатный результат. Запросил скрипт — будем поглядеть, что они имел в виду.
С уважением
выхлоп: на тренде месим в ноль, на пиле сливаем (если не попадаем в резонанс).
пс: вообще в идеале переворачиваться надо не по времени, а по изменению цены актива, шаг=СКО.
ппс:… «тяжёлые хвосты» должны как-то влиять на размеры переворота (в %).
шаг=ma*ско*sqrt(1+cov-0,25*a^2+b)
ma — скользящая средняя;
ско — среднее квадратическое отклонение логарифма ценовых приращений;
cov — ковариация;
а — «кривизна»;
b — «дрейф».
размер «окна» исторических данных везде одинаковый, «кривизну» и «дрейф» в принципе можно подобрать методом научного тыка
Дело в том, что если система может думать, открываться ей, закрываться или ничего не делать, то такая система вполне может быть представлена как портфель из реверсивных систем (а ее эквити — как эквити потрфеля реверсивных систем).
Таким образом реверсивная система — это такой минимальный кирпичик для построения более сложных конструкций, и его надобно исследовать в первую очередь.
С уважением