Построение МТС на базе частотного и временного анализа японских свечей

 

Для анализа временных рядов фондовых и валютных рынков используется практически весь существующий математический арсенал, а так же в последнее время и многое из физики. Традиционными являются следующие направления – технический и фундаментальный анализ, статистический и нейросетевой [1]. Но ни один из разработанных методов не дает гарантированного статистического преимущества при игре на финансовых рынках. Рынки ведут себя по своим законам, неприступным пока для разработанных алгоритмов, которые иногда дают преимущества лишь на короткое время [2]. В данной статье описаны эксперименты выявления статистических закономерностей свечей валютных пар рынка Форекс.

Эксперимент 1. Частотный анализ входных и выходных цепочек.

Закодируем японские свечи OLHC следующим образом:

«1» - если , то есть свеча вверх;

«-1» если , то есть свеча либо вниз, либо ровно.

Нам необходимо посчитать для каждой входной комбинации свечей частотность выпадения выходных комбинаций. Так как мы упростили задачу – оперируем только двумя видами цен ‘OC’ из четырех ‘OLHC’, используем только 2 вида свечей, а третий вид, когда цена открытия равна цене закрытия отнесли ко второму виду, то будем использовать следующий алгоритм вычисления частотности выпадения определенной выходной цепочки на заданную входную. Оперировать будем размерностью входной и выходной цепочки. Так как у нас два варианта свечи «1» и «–1», то количество вариантов цепочек будет степенью двойки. Необходимо сформировать 3 массива: InputChain[2^n][n], OutputChain[2^m][m], Kross[2^n][2^m], где третий массив это частотность возникновения j-ой выходной цепочки при поступлении i-й входной. При этом n – длина входной цепочки, m  - размер выходной. Также в ходе экспериментов варьировались:

А) валютные пары {"EURUSD", EURGBP", "USDCAD", "GBPUSD", "USDCHF", "AUDUSD", "EURCAD"}. При этом валюты входной и выходной цепочек могут не совпадать - по сути вычисляется коррелированность валютных пар.

Б) таймфреймы {60 мин, 30 мин, 15 мин, 5 мин, 1 мин}.

Написанный на встроенном языке программирования MQL4 торгового терминала MetaTrader скрипт подсчитывает на выходе следующие показатели: общее количество рассмотренных цепочек, количество входных цепочек каждого типа, количество выходных цепочек для каждого типа входной цепочки, среднее изменение значений временного ряда (по второй валюте) – то есть возможная прибыль. Покажем типичные распределения, полученные в ходе экспериментов.

В случае длины выходной цепочки не кратной двойке при совпадении валют входной и выходной цепочек мы видим следующее распределение по входным и выходным цепочкам (Рисунок 1, USDCAD-EURCAD, 5-ти минутный таймфрейм, выходная комбинация из трех свечей).

Рисунок 1.  Распределение направлений выходных цепочек

Для того же случая прибыль показана на рисунке 2.

Рисунок 2. Распределение прибыли

Где «Минус» - цена открытия интервала минус цена закрытия меньше нуля, ровно – цена открытия и закрытия равны и т.д. По оси абсцисс отложены входные последовательности по мере их появления в эксперименте, то есть просто номер. «% выпадения» - сколько раз появлялась та или иная входная цепочка в процентном соотношении к общему числу, значение умножалось на -10 для разнесения по графику. Как видно из диаграммы - мы имеем приблизительно равномерное распределение по направлению движения выходных цепочек.

Далее введем элемент нечеткости в вычисления, пусть входная цепочка может не совпадать с эталонной на 1 свечу, тогда распределение по входным и выходным цепочкам в случае длины выходной цепочке равной 2 остается практически прежней, а в противном случае распределение немного меняется и выглядит следующим образом (Рисунок 3, EURGBP-EURUSD, 5-ти минутный таймфрейм, выходная комбинация из 3-х свечей):

Рисунок 3. Распределение  направлений выходных цепочек при введении нечеткости

Распределение прибыли показано на рисунке 4.

Рисунок 4. Распределение прибыли при введении нечеткости

Мы видим, что существенно сократилось количество значимых входных цепочек и у минусовых выходных цепочек появилось небольшое, но незначимое на рынке преимущество.

По результатам экспериментов найдены следующие входные цепочки, которые дают прибыль выше, чем в 60% случаев их выпадения (далее такие цепочки будем называть паттернами) и показаны в Таблице 1.

Таблица 1.

Паттерны, дающие статистическое преимущество

Кол-во

% выпадения

1я валюта

2я валюта

Вход-выход

Входная комбинация

Плюс

Ровно

Миинус

283

0,0712

EURUSD

USDCHF

4x3

1:-1:-1:1:

0.75

0.01

0.23

283

0,0712

EURUSD

USDJPY

4x3

1:-1:-1:1:

0.70

0.09

0.21

278

0,0699

EURUSD

GBPUSD

4x3

-1:1:1:-1:

0.64

0.04

0.32

278

0,0699

EURUSD

AUDUSD

4x3

-1:1:1:-1:

0.71

0.04

0.25

278

0,0699

EURUSD

USDJPY

4x3

-1:1:1:-1:

0.72

0.07

0.21

273

0,0686

EURUSD

GBPUSD

4x3

1:-1:1:-1:

0.67

0.05

0.28

273

0,0686

EURUSD

AUDUSD

4x3

1:-1:1:-1:

0.73

0.04

0.23

273

0,0686

EURUSD

USDJPY

4x3

1:-1:1:-1:

0.63

0.12

0.24

502

0,0686

EURUSD

USDCAD

4x2

-1:-1:1:-1:

0.64

0.23

0.13

 

Таким образом видно, что для некоторых комбинаций входных и выходных цепочек по разным валютным парам можно строить автотрейдер (или МТС – механическую торговую систему), суть работы которого – отслеживание входной торговой серии на совпадение с отобранными паттернами. В случае совпадения с паттерном делается ордер либо  на покупку, либо на продажу – в зависимости от распределения по выходным сериям входного паттерна. После закрытия 2-х или 3-х свечей[1] с момента покупки или продажи – ордер закрывается, если он не закрылся ранее в случае не совпадения с выигрышной выходной цепочкой паттерна. Возможны и другие варианты закрытия ордеров, например в совокупности с сигналами индикаторов. Применение данного метода на практике на рабочем счете осложняет вышеуказанное упрощение – рассматривалось два вида свечи, а не три, как есть на самом деле.

Также проводился подобный эксперимент с нестандартными таймфреймами: 2 мин., 3 мин., 4 мин., 6 мин., 7 мин., 8 мин., 9 мин. Распределения получились похожими на основной эксперимент и также выявлено несколько паттернов дающих статистическое преимущество.

Эксперимент 2. Торговля по времени суток.

Суть данного эксперимента – выявить временные зависимости поведения рядов рынка Forex, если такие существуют. Нам необходимо найти временные интервалы со статистическим преимуществом, когда опираясь на историю, мы имеем частотность изменения направления ряда в определенную сторону выше, чем 70 % (цифра может меняться, в зависимости от рискованности игрока). Для проведения эксперимента написаны 2 макроса в торговом терминале Metatrader. Первый макрос анализирует временные ряды по времени не зависимо от дня недели, второй учитывает день недели (по сути являясь надстройкой над первым макросом). Рабочие дни на рынке Forex - с понедельника по пятницу. Алгоритм следующий – разбиваем время суток на интервалы кратные выбранному таймфрейму (используются стандартные интервалы: 1 минута, 5 минут, 15, 30 и часовой) и подсчитываем разницу межу ценой открытия интервала и ценой закрытия, соответственно, инкрементируя переменные отвечающие за плюсовую разницу, минусовую и равную нулю (то есть просто счетчики). Также суммируются переменные в которых накапливаются суммы разностей, а затем вычисляется среднее значение изменения курса валют в данный интервал времени в случае разных свечей. Второй макрос делает тоже самое, только счетчики это двумерные массивы с первой размерностью равной пяти – по количеству дней рабочей недели. В ходе экспериментов были получены следующие результаты, показанные на диаграммах.

На рисунке 5 показан 30-ти минутный интервал, на рисунке 6 показан 5-ти минутный интервал, при этом при смене валютной пары результат принципиально не меняется, то есть мы получаем фактически равномерное распределение.

Рисунок 5. Распределение на 30-ти минутном интервале (AUDUSD) без учета дня недели

 

Рисунок 6. Распределение на 5-ти минутном интервале (EURGBP) без учета дня недели

Если учитывать день недели, то распределение можно представить, как показано на Рисунке 7.

Рисунок 7. Распределение на 15-ти минутном интервале (EURGBP) с учетом дня недели

На Рисунке 7 вклад дня недели показано по оси ординат в процентном соотношении к общему количеству сделок по данному дню в указанный интервал времени. Данный анализ мы используем, как вспомогательный к первому, для отсеивания дней, когда нарушается общая тенденция.

Тем не менее, не смотря на предсказуемое равномерное распределение, были найдены временные интервалы, на которых целесообразно опираться на статистическое преимущество, в Таблице 2 показаны курсы валют, таймфреймы и частотность по направлению движения ряда выше 70%. При этом все они в таймфремах от 15-ти минут и выше.

Таблица 2

Временные интервалы дающие статистическое преимущество

Валюта

ТМ

Время

Плюс

Минус

Ровно

Плюс%

Минус%

EURGBP

30

3:30

35

12

0

0,74

0,26

EURGBP

15

8:30

28

7

0

0,80

0,20

EURGBP

15

14:00

10

25

0

0,29

0,71

GBPUSD

30

13:00

39

15

0

0,72

0,28

GBPUSD

15

13:45

11

26

0

0,30

0,70

AUDUSD

30

13:00

35

13

0

0,73

0,27

EURCAD

30

6:00

34

12

1

0,72

0,26

EURCAD

30

14:00

14

34

0

0,29

0,71

EURCAD

30

17:00

34

13

0

0,72

0,28

USDJPY

60

22:00

62

26

0

0,70

0,30

 

Где ТМ – таймфрейм. «Плюс», «Минус», «Ровно» – счетчики направления изменения. «Плюс %», «Минус %» - счетчики в процентах к общему числу. Разное количество интервалов по одинаковым таймфреймам курсов объясняется разным временем подключения к данному временного ряду. Также отметим, что брался небольшой интервал примерно равный трем месяцам, в случае увеличения интервала события стремятся к равновесию 50/50, то есть имеет смысл рассматривать именно последние («свежие») интервалы временных рядов рынка Forex.

Также проводились эксперименты на нестандартных таймфреймах, но существенных изменений в таблице 2 они не произвели.

Проведенным экспериментам можно найти обоснование с помощью фундаментального анализа, например опираясь на время открытия / закрытия рынков (азиатский, европейский, американский); на показатели о времени деловой активности по рынкам и т.д.

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

Литература:

1.                 Булашов С.В. «Статистика для трейдеров». –М.: Компания Спутник+,2003. – 245 с.

2.                 M. Dacorogna, R. Gencay, U. Muller, R.Olsen, O.Pictet. “An introduction to high – frequency finance”. –NY.: Academic Press, 2001. -407p.

 



Статьи:
Статья "Построение МТС на базе частотного анализа Японских свечей": Перейти

Скрипты:
Скрипт подсчета комбинаций японских свечей: Перейти
Скрипт подсчета Profit/Loss по времени суток: Перейти
Скрипт поиска прибыльных параметров индикатора MACD: перейти
Скрипт установки линий новостей: Перейти

На главную страницу (Апшеронск)





Рейтинг@Mail.ru

 
 
Разделы сайта:
Апшеронск Спорт VBA Форекс Сочи-2014 Нейросети Студентам
Связь с Администратором сайта, E-mail: apsheronka@mail.ru
Апшеронск, Краснодарский край

Размещение рекламы на сайте
Карта сайта

При перепечатке материалов сайта http://apsheronsk.bozo.ru - обязательная активная гиперссылка на сайт!