Избранное трейдера Rox
Этой статьей я начинаю изложение серии исследований на фондовом, срочном и валютных рынках Московской биржи. Цель – показать те закономерности, которые сохраняют свои свойства продолжительное время. Исследования основаны на результатах тестов большого количества торговых систем (более 50000 шт.). Системы были сгенерированы в режиме перебора индикаторов конструктором торговых роботов 3CBot. Каждая система состоит из 1-2 индикаторов технического анализа, параметры индикатора классические, оптимизации значений параметров не проводилось. Всего обработано 35 тикеров, 3 таймфрейма (15m, 60m, 1D), 2 периода (2013-2015 г., 2016 г.). На каждую комбинацию (тикер+ТФ+период) приходится по 370 тестов различных систем. Данный подход, в отличие от оптимизации параметров индикаторов, позволяет шире взглянуть на рынок, т.к. исключает заточенность отдельного индикатора или параметра индикатора под конкретный период рынка. Кроме того такой подход позволяет выявить тикеры и таймфреймы, где работает или не работает большинство систем, построенных на индикаторах, а также выявить системы, которые работают или не работают на большинстве тикеров. И да… сразу отвечаю на вопрос — тестированием я не сильно утруждался, все сгенерировалось автоматически за пару дней на обычном ноутбуке…
Что бы выяснить. Когда можно увеличивать размер позиции. Разберем условную стратегию. Стратегию монетки (как в простой задачке по теории вероятности, подкидывание монетки). Имеем показатели: соотношение прибыльных сделок к убыточных равно 1:1. Примем прибыльную сделку за 1, а убыточную за 0. В теории имеем, что за 10 сделок мы получим вот такую последовательность сделок:
1) 1010101010
Дело в том. Что на практике так редко бывает. Вместо этой последовательности, можем получить и вот такие:
2) 1110110000
3) 0001001111
Предположим. Что за сделку мы имеем прибыль равный 1, убыток равный -1.
Мы сделали 5 сделок. Нам выпала 2-ая последовательность. И мы на счете имеем уже прибыль, равную трем. Что будет, если мы увеличим размер позиции в два раза? Последующие 5 сделок принесут нам минус шесть. И итогом получим минус три убытка. Вместо нуля для данной стратегии. Когда чаще всего увеличивают позиции? Когда на счете мы уже имеем деньги. На простом примере видим. Как такой подход создаст убыток по стратегии в целом.
Небольшая статья с ресурса http://www.talaikis.com/ о построении простой стратегии, использующую наивный байесовский классификатор при создании процесса возврата к среднему. Весь код в статье приведен на языке Python.
Это достаточно большая область исследований, но расскажем все очень кратко. Мы попытаемся найти взаимоотношение между временными сериями (в данном случае возьмем в качестве сигнала взаимный фонд XLF из финансового сектора, сдвинутый по времени на 1 день назад), а нашей целью будет фьючерс S&P500 в форме CFD. Будем входить в длинную позицию по этой бумаге при нулевой вероятности приращения. Логически нулевая вероятность ни о чем не говорит, другими словами, будем покупать возврат к среднему.
1. Получение данных
Y = read_mongo(dbase, "S&P5001440") X = read_mongo(dbase, syms[s]).shift() #готовим набор данных res = pd.concat([X.CLOSE, Y.CLOSE], axis=1, join_axes=[X.index]).pct_change().dropna() res.columns = ['X', 'Y']
Нейронные сети. Послевкусие. Заблуждения, ошибки, косяки. Первые 15 месяцев эксплуатации бота на нейронных сетях.
Silentium est aurum
Молчи, пока ты не в состоянии сказать нечто такое, что полезнее твоего молчания.
(кто-то умный и известный сказал)
Из прошлого диалога smart-lab.ru/blog/327789.php
Quant-Invest, Если все было бы так просто — все уже были бы миллионерами…
Инвестиции – это способ превратить работу в долг. Инвестор часть своей работы превращает в долг общества перед ним и относит расчет по долгам в будущее, извлекая сегодня только процент.© Олег Клоченок