Торговые системы для внутридневной игры
инструмент, дающий возможность получать неограниченную прибыль на колебаниях котировок валют. Игра на нем, до недавнего времени доступная лишь профессионалам в торговых залах и крупным инвесторам, стала Мировой валютный рынок FOREX – крупнейший финансовый возможной и для частных лиц.
В настоящее время наряду с торговлей на дневных интервалах существует возможность играть, используя внутридневные данные, под которыми подразумеваются данные с шагом изменения от минуты и до часа. Наиболее распространенной и используемой единицей являются часовые данные (далее часовые свечки).
Классическая литература и отечественные исследования в области технического анализа используют дневные и большие (недельные) интервалы времени [1,2]. При описании технических индикаторов их параметры приводятся для дневных свечей или для более длинных периодов. Данных для параметров индикаторов часовых свечек практически нет.
Целью данной работы является:
· проверка работоспособности классических торговых forex стратегий на внутри дневных (H1) рынках;
· проверка оптимальности параметров торговых стратегий ;
· проверка стабильности параметров торговых стратегий по времени.
Для тестирования forex стратегий использовались два широко распространенных осциллятора: RSI и Stochastic, именно на их основе строились простейшие торговые системы форекс. Построение и тестирование торговых систем проводилось в продукте компании << Equis >> MetaStock.
Система на основе RSI
Индекс относительной силы (Relative Strength Index) – популярный осциллятор, составленный Уэллесом Уайдлером в 1978 году.
RSI вычисляется по следующей формуле:
RSI=100-(100/(1+U/D)), где
U – среднее значение цены вверх (суммируются те цены закрытия за выбранный период времени, которые выше чем цены закрытия в предыдущий день, и делятся на длину периода)
D - среднее значение цены вниз (суммируются те цены закрытия за выбранный период, которые ниже чем цены закрытия за предыдущий день, и делятся на длину периода) [3].
Автор стратегии советовал для вычисления RSI использовать 14 периодов. Впоследствии широкое распространение получили 9–
дневной и 25–дневной. Чем меньшее количество периодов (в нашем случае часов) берется для расчета, тем более чувствителен forex-индикатор. Параметры индикатора изменяются в пределах от 0 до 100, рекомендованные для использования сигнальные линии[1] проходят на уровне 30 и 70.
На основе этого индикатора была составлена простая оборотная[2] торговая форекс система:
Открываем длинную позицию, когда RSI пересекает снизу вверх нижнюю сигнальную линию. Закрываем длинную позицию при пересечении RSI сверху вниз верхней сигнальной линии. Открываем короткую позицию, когда RSI пересекает сверху вниз верхнюю сигнальную линию. Закрываем короткую позицию при пересечении RSI снизу вверх нижней сигнальной линии.
На языке формул используемых в программе MetaStock это выглядит следующим способом:
Enter long: Cross(RSI(14), 30)
Close long: Cross(70, RSI(14))
Enter short: Cross(70, RSI(14))
Close short: Cross(RSI(14), 30).
При тестировании использовались следующие параметры:
· Подсчет прибыли осуществлялся в пунктах,
· Комиссионные и спред[3] за открытие позиции составляют 10 пунктов.
Для тестирования брались данные от 1 января 1999 г. по 24 апреля 1999 года, по 113 часовых свечей на каждом рынке. После тестирования четырех валют (йена, евро, английский фунт и швейцарский франк) были получены следующие результаты:
profit
|
total
|
win
|
Av w/l
| |
Jpy
|
-2114
|
19
|
6
|
0,53
|
Eur
|
-138
|
17
|
9
|
0,93
|
Gbp
|
314
|
25
|
17
|
0,63
|
chf
|
-322
|
25
|
14
|
0,75
|
где:
Profit – прибыль системы выраженная в пунктах
[1] Сигнальная линия является обычным атрибутом большинства осциллятора. Считается, что осциллятор находится ниже нижней сигнальной линии при перепроданном рынке и выше верхней сигнальной линии при перекупленном.
[2] Оборотная означает, что сигнал открытия длинной позиции совпадает с сигналом закрытия короткой позиции, и сигнал открытия короткой позиции совпадает с сигналом закрытия длинной позиции. Таким образом, оборотная система постоянно находится в игре.
[3] Спред – разница между ценой продажи валюты и ее покупки.
Total – общее количество сделок (сделкой считается пара открытие позиции, закрытие позиции)
Win –количество выигрышных сделок
Av w/l – отношение среднего выигрыша к среднему проигрышу. Чем больше данное отношение, тем лучше, для «нормальной» системы всегда больше 1.
Как видно из таблицы все рынки за исключением рынка фунта являются убыточными для данной системы. Положительный доход от работы системы на фунте не говорит о возможности применять данную систему на определенных рынках, так параметр av w/l для нормальной рабочей системы должно быть как минимум больше 1.
Таким образом, можно сделать вывод о неприменимости торговой системы и/или ее параметров в чистом виде как это рекомендовано литературой по техническому анализу.
Следующий этап предполагает разбиение всего имеющегося ценового ряда данных на 3-х недельные интервалы с последующей оптимизацией параметров системы на каждом интервале.
Параметры системы менялись в следующих пределах:
Opt2 (30 в оригинале) от 24 до 48 с шагом 4
Opt3 (70 в оригинале) от 60 до 92 с шагом 4
Были получены следующие результаты:
Таблица 1.1 Результаты тестирования RSI на часовом фунте
profit
|
total
|
win
|
Av w/l
|
Opt1
|
Opt2
|
Opt3
| |
1
|
661
|
10
|
9
|
5,94
|
6
|
36
|
84
|
2
|
700
|
2
|
2
|
-
|
18
|
24
|
60
|
3
|
496
|
2
|
2
|
-
|
26
|
24
|
60
|
4
|
768
|
3
|
3
|
-
|
26
|
44
|
72
|
5
|
357
|
1
|
1
|
-
|
30
|
28
|
68
|
Таблица 1.2 Результаты тестирования RSI на часовой евро
profit
|
total
|
win
|
Av w/l
|
Opt1
|
Opt2
|
Opt3
| |
1
|
268
|
3
|
3
|
-
|
22
|
36
|
68
|
2
|
221
|
8
|
7
|
0,24
|
10
|
28
|
64
|
3
|
423
|
6
|
4
|
5,08
|
14
|
24
|
60
|
4
|
700
|
12
|
10
|
2,25
|
6
|
24
|
72
|
5
|
435
|
13
|
11
|
1,10
|
6
|
32
|
76
|
Таблица 1.3 Результаты тестирования RSI на часовой йене
profit
|
total
|
win
|
Av w/l
|
Opt1
|
Opt2
|
Opt3
| |
1
|
920
|
20
|
15
|
2,08
|
6
|
28
|
64
|
2
|
777
|
6
|
6
|
-
|
26
|
48
|
64
|
3
|
938
|
0
|
0
|
-
|
6
|
32
|
92
|
4
|
491
|
16
|
11
|
3,03
|
10
|
32
|
60
|
5
|
581
|
5
|
5
|
-
|
10
|
24
|
64
|
Таблица 1.4 Результаты тестирования RSI на часовом франке
profit
|
total
|
win
|
Av w/l
|
Opt1
|
Opt2
|
Opt3
| |
1
|
1139
|
3
|
3
|
-
|
18
|
24
|
76
|
2
|
635
|
12
|
10
|
37,39
|
6
|
36
|
80
|
3
|
743
|
3
|
3
|
-
|
26
|
44
|
68
|
4
|
654
|
22
|
18
|
1,10
|
6
|
40
|
72
|
5
|
604
|
7
|
7
|
-
|
14
|
40
|
64
|
Как видно из таблиц при оптимизации параметров система становится прибыльной, причем она дает вполне устойчивую, стабильную величину дохода (увеличенная почти в 2 раза прибыль на франке может быть объяснена неординарными, исключительными рыночными условиями в данный период).
Большое значение имеет полное количество форекс-сделок и количество выигрышных сделок. Система трейдинга, протестированная нами, показала хорошее отношение количества выигрышных сделок к проигрышным сделкам (85%).
Анализируя полученные параметры forex индикаторов видно, что их значения меняются в широких пределах и, что более важно, не прослеживается определенных тенденций в их изменении. Очевидно, их изменчивость связана с изменениями в поведении цены валюты. Можно подсчитать, что значение параметра OPT1 равное 6 встречается 7 раз, равное 10 – 3 раза, равное 26 – 4 раза и равное 14 всего 2 раза. Аналогичные вычисления можно проделать для OPT2 и OPT3.
Можно сделать вывод, что большая изменчивость параметров форекс индикатора и несоответствие рекомендованных значений 14, 30 и 70 оптимальным делают невозможным использование осциллятора RSI в том виде как рекомендовано классической литературой по техническому анализу.
Системы на основе STOCYASTIC
Стохастический осциллятор представлен двумя линиями. Главная - %К и дополнительная - %D, скользящее среднее от %K.
Стохастический осциллятор имеет четыре переменных:
N1 –количество временных периодов используемых при расчете стохастики.
N2 – период сглаживания (1 - быстрая стохастика, 3 – медленная).
N3 – период сглаживания используемый при расчете %D.
N4 – метод используемый для расчета %D (экспоненциальное, среднее взвешенное сглаживание).
Формула для %K имеет следующий вид:
%K=100*[(C-L)/(H-L)], где
C – цена закрытия,
L – самый низкий уровень цены за период N1,
H - самый высокий уровень цены за период N1.
%D расчитывается как скользящее среднее от %K за N3 периодов сглаженный методом N4 [4].
Осциллятор изменяется от 0% до 100%, сигнальные уровни проходят на уровнях 20% и 80%.
Правила построения торговой системы полностью совпадают с правилами построения системы на основе RSI.
В терминах языка формул MetaStock это выглядит следующим образом:
Enter long: Ref( Stoch(5,3), -1) <= 20 AND Stoch(5,3) > 20
Close long: Stoch(5,3) < 20
Enter short: Ref(Stoch(5,3), -1) >= 80 AND Stoch(5,3) < 80
Close short: Stoch(5,3) > 80
При тестировании использовались следующие параметры:
· Подсчет прибыли осуществлялся в пунктах,
· Комиссионные за открытие позиции составляют 10 пунктов.
После тестирования системы были получены следующие результаты:
profit
|
total
|
win
|
Avg. w/l
| |
Jpy
|
-1779
|
240
|
95
|
1,14
|
Eur
|
-888
|
172
|
66
|
1,17
|
Gbp
|
-3778
|
265
|
90
|
0,78
|
Chf
|
-2104
|
291
|
111
|
1,3
|
Как видно из таблицы убытки от работы данной системы оказались более значительными, чем убытки от работы системы на основе RSI. Показательным является то, что большие потери прибыли системы на основе STOCH наблюдаются на фоне довольно большого отношения среднего выигрыша к среднему проигрышу (больше 1), в то время как меньшие потери прибыли от работы системы на основе RSI наблюдались при меньшем отношении среднего выигрыша к среднему проигрышу (0,7).
Для тестирования на трехнедельных наборах данных проводились следующие изменения в параметрах системы:
OPT1 (20% сигнальная линия) от 8 до 44 с шагом 4
OPT2 (80% сигнальная линия) от 60 до 96 с шагом 4
Были получены следующие результаты:
Таблица 1.1 Результаты тестирования STOCH на часовом фунте
profit
|
total
|
win
|
Av w/l
|
Opt1
|
Opt2
| |
1
|
243
|
7
|
3
|
2,31
|
8
|
96
|
2
|
155
|
14
|
8
|
0,79
|
12
|
88
|
3
|
160
|
6
|
3
|
1,79
|
8
|
88
|
4
|
189
|
15
|
7
|
1,56
|
8
|
80
|
5
|
97
|
25
|
11
|
1,47
|
12
|
72
|
Таблица 1.1 Результаты тестирования STOCH на часовой евро
profit
|
total
|
win
|
Av w/l
|
Opt1
|
Opt2
| |
1
|
472
|
5
|
4
|
10,77
|
8
|
92
|
2
|
391
|
12
|
6
|
3,25
|
12
|
88
|
3
|
269
|
22
|
10
|
1,96
|
8
|
72
|
4
|
470
|
28
|
15
|
2,05
|
20
|
80
|
5
|
305
|
15
|
10
|
1,5
|
16
|
88
|
Таблица 1.1 Результаты тестирования STOCH на часовой йене
profit
|
total
|
win
|
Av w/l
|
Opt1
|
Opt2
| |
1
|
497
|
24
|
13
|
1,66
|
16
|
84
|
2
|
208
|
41
|
14
|
2,57
|
36
|
64
|
3
|
449
|
17
|
11
|
1,38
|
28
|
92
|
4
|
428
|
16
|
11
|
1,31
|
12
|
84
|
5
|
484
|
8
|
5
|
3,10
|
16
|
92
|
Таблица 1.1 Результаты тестирования STOCH на часовом франке
profit
|
total
|
win
|
Av w/l
|
Opt1
|
Opt2
| |
1
|
585
|
30
|
17
|
1,79
|
28
|
72
|
2
|
74
|
45
|
13
|
2,16
|
28
|
72
|
3
|
117
|
19
|
9
|
2,23
|
40
|
96
|
4
|
381
|
6
|
3
|
4,04
|
8
|
92
|
5
|
42
|
15
|
6
|
1,11
|
20
|
96
|
При сравнении результатов тестирования с результатами темтирования RSI можно заметить, что система на основе STOCH дает меньшую прибыль. Так же заметно, что количество сделок вырабатываемых данной системой больше чем у предыдущей. Относительно оптимизируемых параметров системы можно сказать, что нижняя сигнальная линии (20% в первоисточниках) была равна 8 – 6 раз, 12 – 4 раза, 16 – 3 раза, 20 – 2 раза и 28 – 4 раза; налицо факт уменьшения уровня нижней сигнальной линии. Верхняя сигнальная линии (80%) показала следующие результаты: 64 –1 раз, 72 – 4 раза, 80 –2 раза, 82 –4 раза, 92 –4 раза, 96 –3 раза.
Модификация систем
Существует два основных состояния рынка: тренд и канал. Все технические индикаторы можно разделить на две группы: одни приспособлены к работе на рынке в стадии тренда (классический пример - скользящие средние), другие лучше проявляют себя в боковом (канальном) рынке. Для того чтобы сделать окончательные выводы о жизнеспособности исследуемых систем необходимо провести их тестирование на каждом виде рынка.
Для этого в системы вводились дополнительные ограничительные условия. Для выявления типа рынка используем простые скользящие средние (SMA)[1].
Считаем, что рынок находится в тренде, если выполняется одно из условий: три скользящих средних располагаются следующим образом – mov(x)>mov(y)>mov(z) либо mov(x)<mov(y)<mov(z) при x>y>z.
Считаем, что рынок находится в канале, если: самое короткое mov лежит между длинным и средним.
В нашем примере скользящее среднее вычисляется по цене закрытия и имеет следующие периоды усреднения: короткое - 24 часа (сутки), среднее – 60 часов (неделя) и длинное 120 часов (2 недели).
Введя дополнительные условия на открытие позиций, мы заставили работать систему либо только на тренде, либо только в канале.
На основе RSI
Применим все вышеизложенное к системе форекс торговли основанной на RSI. В терминах языка формул MetaStock переписанные условия выглядят таким образом:
· Тренд:
Enter long: Cross( RSI(opt1), opt2 ) AND Mov(C, 24, S)> Mov(C, 60, S)>Mov(C, 120, S)
Enter short: Cross( opt3, RSI(opt1)) AND Mov(C, 24, S)<Mov(C, 60, S)<Mov(C, 120, S)
· Канал
Enter long: Cross( RSI(opt1), opt2 ) AND (((Mov(C, 120, S) > Mov(C, 24, S)) AND (Mov(C, 24, S) > Mov(C, 60, S))) OR ((Mov(C, 60, S) > Mov(C, 24, S)) AND (Mov(C, 24, S) > Mov(C, 120, S))))
Enter short: Cross( opt3, RSI(opt1)) AND (((Mov(C, 120, S) > Mov(C, 24, S)) AND (Mov(C, 24, S) > Mov(C, 60, S))) OR ((Mov(C, 60, S) > Mov(C, 24, S)) AND (Mov(C, 24, S) > Mov(C, 120, S))))
Тесты проводились на всех валютах. Полученные результаты представлены в таблицах:
[1] Простые скользящие средние (SMA) показывают среднее значение данных за определенный период времени. В нашей записи mov(5) показывает среднюю цену за последние 5 дней.
Таблица 1.1 Результаты тестирования “трендового” RSI
profit
|
total
|
Win
|
Av w/l
|
MIDD[1]
|
Opt1
|
Opt2
|
Opt3
| |
Chf
|
510
|
10
|
7
|
2,16
|
267
|
22
|
48
|
68
|
Eur
|
1159
|
15
|
14
|
2,03
|
274
|
10
|
24
|
64
|
Gbp
|
796
|
2
|
2
|
-
|
207
|
26
|
24
|
72
|
Jpy
|
474
|
4
|
3
|
0,9
|
376
|
30
|
36
|
68
|
Таблица 1.1 Результаты тестирования “канального” RSI
profit
|
total
|
Win
|
Av w/l
|
MIDD
|
Opt1
|
Opt2
|
Opt3
| |
Chf
|
1062
|
15
|
8
|
7,51
|
232
|
6
|
28
|
92
|
Eur
|
83
|
15
|
10
|
0,68
|
1344
|
14
|
40
|
60
|
Gbp
|
526
|
18
|
8
|
5,81
|
175
|
10
|
44
|
84
|
Jpy
|
1114
|
8
|
6
|
2,84
|
515
|
30
|
40
|
76
|
Сравнивая полученные результаты с результатами, полученными для “чистой” системы можно сказать, что:
· Модифицированные системы дают прибыль на всех рынках в отличии от простой системы которая показывает значительные убытки. Данный факт говорит о том, что система, работающая на трендовых участках рынка и оптимизированная на них, показывает себя с лучшей стороны, чем система оптимизированная на всем интервале и система работающая на канальных рынках и оптимизированная на них показывает себя с лучшей стороны, чем система оптимизированная на всем интервале.
· Возросло отношение среднего выигрыша к среднему проигрышу (в 3 и более раз).
· По большему отношению среднего проигрыша к среднему выигрышу для канальной системы можно сделать вывод, что RSI лучше работает на канальных рынках.
На основе STOCH
Применяя вышеизложенные принципы к стохастическому осциллятору, получим следующие формулы:
· Тренд
Enter long: Ref( Stoch(5,3), -1) <= opt1 AND Stoch(5,3) > opt1 AND Mov(C, 24, S)> Mov(C, 60, S)>Mov(C, 120, S)
Enter short: Ref(Stoch(5,3), -1) >= opt2 AND Stoch(5,3) < opt2 AND Mov(C, 24, S)< Mov(C, 60, S)<Mov(C, 120, S)
· Канал
Enter long: Ref( Stoch(5,3), -1) <= opt1 AND Stoch(5,3) > opt1 AND (((Mov(C, 120, S) > Mov(C, 24, S)) AND (Mov(C, 24, S) > Mov(C, 60, S))) OR ((Mov(C, 60, S) > Mov(C, 24, S)) AND (Mov(C, 24, S) > Mov(C, 120, S)))).
Enter short: Ref(Stoch(5,3), -1) >= opt2 AND Stoch(5,3) < opt2 AND (((Mov(C, 120, S) > Mov(C, 24, S)) AND (Mov(C, 24, S) > Mov(C, 60, S))) OR ((Mov(C, 60, S) > Mov(C, 24, S)) AND (Mov(C, 24, S) > Mov(C, 120, S)))).
Тестирование проводилось на франке, евро, фунте и йене. Полученные результаты представлены в таблицах:
Таблица 1.1 Результаты тестирования “трендового” STOCH
profit
|
total
|
Win
|
Av w/l
|
MIDD
|
Opt1
|
Opt2
| |
Chf
|
-593
|
15
|
4
|
1,32
|
1111
|
8
|
92
|
Eur
|
766
|
17
|
12
|
3,54
|
304
|
8
|
92
|
Gbp
|
294
|
5
|
3
|
2,08
|
442
|
8
|
96
|
Jpy
|
193
|
3
|
1
|
2,95
|
648
|
8
|
96
|
Таблица 1.1 Результаты тестирования “канального” STOCH
profit
|
total
|
Win
|
Av w/l
|
MIDD
|
Opt1
|
Opt2
| |
Chf
|
386
|
19
|
8
|
2,13
|
520
|
12
|
92
|
Eur
|
195
|
20
|
10
|
1,41
|
229
|
12
|
84
|
Gbp
|
111
|
30
|
14
|
1,34
|
360
|
20
|
72
|
Jpy
|
1122
|
31
|
19
|
1,91
|
408
|
28
|
84
|
Проанализировав результаты можно сделать выводы:
· Модифицированные системы показали прибыль на всех рынках (кроме как на франке трендовой системой) в отличие от простой стохастики показавшей убытки. Данный факт говорит о том, что система, работающая на трендовых участках рынка и оптимизированная на них, показывает себя с лучшей стороны, чем система оптимизированная на всем интервале и система работающая на канальных рынках и оптимизированная на них, показывает себя лучше, чем система оптимизированная на всем интервале.
· Увеличилось отношение среднего выигрыша к среднему проигрышу, хотя не так значительно как для RSI.
· Значительно (более чем в 10 раз) уменьшилось количество сделок совершаемых системой.
Выводы
На основании проделанной работы можно сделать вывод о неприменимости простых торговых систем на основе RSI и STOCH. Возможно использование данных осцилляторов в других более сложных торговых системах совместно с другими индикаторами.
Хорошим правилом при составлении системы будет разработка системы для конкретного типа рынка (трендового и канального) и установка фильтров ограничивающих ее работу только на данном типе рынка.
Параметры индикаторов, рекомендуемые классической литературой по техническому анализу, не являются оптимальными, и должны быть пересчитаны применительно к конкретному рынку и торговой системе.
Постоянное изменение рыночных условий влечет за собой изменение оптимальных параметров индикаторов, что в свою очередь не дает возможности полностью оптимизировать систему для использования ее в будущем.
Литература
1. Джон Дж. Мэрфи «Технический анализ фьючерсных рынков: теория и практика». Издательство «Сокол», 1996.
2. Томас Р. Демарк «Технический анализ – новая наука». Москва, 1997
3. В.Н. Лиховидов, В.И. Сафин «Введение в технический анализ финансовых рынков». Владивосток, 1997.
4. Steven B. Achelis «Technical Analysis from A to Z»