2. Знаком с Forex c 2007 года
Веду блог http://cpp-forex.blogspot.com
Первую МТС написал в 2008
Торговля на бирже для меня хобби, когда есть свободное
время
Темы торговли на бирже, нейронных сетей и генетических
алгоритмов очень объѐмны. Здесь же я представил всѐ в
сжатом виде. Если что будет не раскрыто полностью –
задавайте вопросы прямо по ходу доклада!
3. Forex – если просто - это межбанковская валютная биржа
Почему Forex? - Сейчас и сам не знаю
Как торговать? Через дилеров при помощи торговых
терминалов.
Дилер это ваш друг и враг!
Наиболее распространѐнный терминал для торговли на
Forex – Metatrader (http://www.metaquotes.net/)
Вы можете заработать? ДА. Однако
По статистике только 3% людей зарабатывают на Forex
И если решитесь. НИ В КОЕМ СЛУЧАЕ НЕ НАЧИНАЙТЕ
ТОРГОВЛЮ С БОЛЬШИХ СУММ.
И если не последуете последнему моему совету, то….
4.
5. МТС – это механическая торговая система. Почему
механическая? Не спрашивайте – не знаю
Терминал Metatrader позволяет писать МТС при помощи
своего встроенного языка mql4, mql5
Может ли МТС торговать? Проверьте это посетив чемпионат
МТС http://championship.mql5.com
6. Я тоже решил поучаствовать в 2008 году
График торговли моего советника на исторических данных 2008 года
И... закономерный результат депозит был слит за 2 недели
7. Входы Веса Ячейка Аксон Выход
X1
W1
X2 W2 Y
S
W3
X3
…… Wn
Xn
Состояние нейрона
f’(x) = af(x)(1-f(x))
Активационная функция
8. Входы Слой 1 Слой 2 Слой 3
X1
Y1
X2
Y
X3
Обычно нейронная сеть выглядит так!
9. • Способов Очень Много
• Однако можно разделить на 2 класса
• Детерминистские
• Стохастические
10. X1
W11
1
W11
Обучающая пара (Результат)
Обучающая пара (Образец)
W12 W12
W13 W13
W11
X2 W21 W21 Y
W22 W22 W12
W23 W23
W13
W31 W31
X3 W32 W32
W32 W32
Случайно Установка весов Разница
11. X1
W11 W11
Обучающая пара (Результат)
Обучающая пара (Образец)
W12 W12
W13 W13
W11
X2 W21 W21 Y
W22 W22 W12
W23 W23
W13
W31 W31
X3 W32 W32 Целевая функция
W32 W32 (Значение
разницы)
Размножение
Набор обучающих Активационная
Случайно пар
Веса
функция
Особь
12. Особи Целевая функция
1. Особь 30 1000
2. Особь 2 588 Зона
выживания
3. Особь 5 500
4. Особь 11 458
5. Особь 31
Особь 7 400
399
…………………
N-2. Особь 31
Особь 57 400
100
399
0
Зона смерти
N-1. Особь 32
Особь 4 300
34
0
N. Особь 18
33 40
10
0
13. Есть много вариантов решений и мы можем в
них застрять
Лучшее решение
Экстремумы
Генетический алгоритм позволит этого
избежать (теоретически )
15. Широкое возможности по конфигурации сети
X1
W11 W11
Обучающая пара (Результат)
Обучающая пара (Образец)
W12 W12
W13 W13
W11
X2 W21 W21 Y
W22 W22 W12
W23 W23
W13
W31 W31
X3 W32 W32
W32 W32
Набор обучающих Активационная Количество слоѐв
Веса
пар функция или нейронов
17. 1. Обмен генетическим материалом позволяет ускорить поиск
оптимального решения в разы по сравнению с простым
случайным выбором
2. Небольшая Мутация необходима для осуществления
качественных изменений, Сильная мутация ведѐт к остановке
развития
3. Обмен генетического материала с потомками ведѐт к
остановки развития
4. Как ни странно крайне необходим обмен генетичесткого
материала со слабейшими - это ведет к качественным
скачкам в развитии.
18. Советник
выгрузки
данных
2. Файл с
1. Котировки в данными (Цены 3. Обучение
терминале открытия, закры нейронной сети
тия и т.д.)
Программа
обучения
5. Запуск в 4. Файл с
6. Запуск в на
тестере параметрами
демо счѐте
терминала нейронной сети
6. Запуск в на Торговый
реальном счѐте Советник
26. Так как мы теперь не привязаны к Metatraderу то выбор
инструмента ограничен только нашей фантазией
Mathcad, Matlab и т.д.
Готовые библиотеки
AForge.NET http://www.aforgenet.com/
FANN http://leenissen.dk/fann/wp/
Собственный код – Это мой Выбор!
27. Я делаю в своей программе
Рассмотрим как в ней происходит обучение
28. Будем предсказывать не цену а сигнал на
покупку или продажу
Цены
Индикаторы (MA, MACD и т.д.)
День недели Buy?
Наличие текущей покупки или S or
Sell?
продажи
Текущий профит
И т.д. и т.п.
30. Использую генетический алгоритм для обучения
Нейронная
сеть, созданная на базе Эмулируем реальную работу
особи терминала
X1 Buy
Входные
данные на
историчес X2
Sell
ком Вычисляем целевую функцию
периоде X3
Определяем лучшего
Генерирую особь