Доброй ночи, коллеги!
Давненько мы не устраивали платных конкурсов — надо это менять.
Идея конкурса:
1. Есть входной массив данных цены актива длиной 100011 баров (почему столько — читайте ниже).
2. Есть реверсивная торговая система, основанная на линейном индикаторе длины 10.
Это означает, что индикатор представляет собой линейную комбинацию предыдущих 10 приращений цены актива. Если индикатор положителен — покупаем. Если отрицателен — продаем. Плечо всегда 1, переход от покупки к продаже и обратно — это сделка с удовоенным объемом (переворот).
3. Почему система должна быть именно такой?
3.1. Это самый простой вариант для теста
3.2. Масса популярных индикаторов (МА, моментум etc.) — это линейная комбинация приращений цен
3.3. Любая ТС может быть представлена (в части эквивалентости эквити) в виде портфеля таких систем, возможно, бесконечного (это уже сложная теорема, но в нее можно просто поверить).
3.4. Эквити считается тривиально. Если x(n) — массив цен, а d(n)=x(n)-x(n-1) массив приращений цен, то приращение эквити на баре — это просто
d(n)*знак(ind(n)), где ind(n) — индикатор, линейно зависящий от d(n-1),… d(n-10).
3.5. Из массива 100011 баров получаем 100010 приращений цен. 10 уходят на расчет индикатора — получаем эквити длиной 100000 баров.
Печеньки:
Призы от 0 до 50000 руб. в зависимости от результата эквити ТС.
Комментарии:
Почему индикатор — это линейная комбинация именно 10 предыдущих приращений цен?
Потому, что более короткие индикаторы легко подбираются методом curve-fitting, а для длины 8+ уже нужен либо суперкомпьютер, либо квантовый компьютер, либо включенные мозги (что всегда полезно).
Ну и заодно можно проверить всю мощь тестировщиков, включенных в современные торговые терминалы.
Что вы думаете по этому поводу, коллеги?
Играем? Или проходим мимо?
С уважением
Matlab и машинное обучение в помощь!