Андрей Дибров
Нейросетевая торговая система Meta Trader 4 + MATLAB. Пошаговая разработка. Издание второе

Нейросетевая торговая система Meta Trader 4 + MATLAB. Пошаговая разработка. Издание второе
Андрей Дибров

Книга для новичков и продвинутых трейдеров, желающих раздвинуть горизонты традиционного анализа рынка. Пошаговая инструкция и шаблон для разработки системы ведения автоматической торговли на финансовых рынках в терминале MT4, основанной на анализе рыночной ситуации нейронными сетями MATLAB. Неограниченные возможности модернизации, творческий подход, не требует глубоких знаний в программировании, не перегружает торговый комплекс. Для лучшего восприятия я рекомендую читать книгу в формате PDF.

Предисловие

Во второе издание включена глава ” Шаблон автоматической нейросетевой торговой системы на стандартных индикаторах”. Используя данный шаблон, представляющий пошаговую инструкцию (с кодами скриптов и экспертов MT4 и Matlab) построения нейросетевой торговой системы, вы сможете приступить к созданию своей торговой стратегии на основе предложенной системы либо развивать нейросетевую систему самостоятельно.

По прочтению этой главы – вы самостоятельно создадите исполняемый файл ExpertPrimer.exe, который представляет собой обученную нейронную сеть. В главе “Нейросети Matlab+MT4” вы найдете инструкцию, как оформить интерфейс этой программы с помощью GUI Matlab. Ниже представлены индикаторы, скрипты и эксперты, которые вы будете использовать при создании своей первой нейронной сети.

А здесь вы можете посмотреть пример результата работы с шаблоном https://youtu.be/o9DAvnzCDlU. Как мы видим, после всей подготовительной работы по выстраиванию системы и на ее основе торговой стратегии, весь этот процесс занимает несколько минут. В конце видео показана для сравнения работа автоматической торговой системы готовой к реальной работе. По завершению тестирования на графике выводятся индикаторы, которые используются торговым экспертом. Одним из достоинств данной системы является то, что она кроме двух простейших индикаторов, использует в эксперте только ценовые данные. Все остальное делает нейросеть.

Почему я написал – первой? Эта нейросеть будет для вас шаблоном, который в дальнейшем вы сможете использовать для создания рабочей торговой системы, и на основе которой вы будете разрабатывать различные торговые стратегии. Например, вот какие индикаторы, скрипты и эксперты, я использую в системе, которую так же описываю в главе “Нейросети Matlab+MT4”.

Ниже, как пример результативности работы данной системы приведен отчет по ее тестированию.

Обратим внимание на тот факт, что тестирование проводилось в динамике. Т.е. в процессе совершенствования торговой стратегии, основанной на нейросистеме и в течение длительного времени примерно четырех лет.

В главе “Критические ошибки при разработке нейросетевой системы” я попытался рассказать о ”подводных камнях” при ее подготовке. И выделить особенно важный аспект – проведения тестов нейронной системы. Некоторую часть главы “Нейросети Matlab+MT4” мне также пришлось посвятить этой проблеме на примере рабочей нейросетевой системы – так как этот процесс неотъемлем от разработки торговой стратегии.

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

Видеоуроки, облегчающие понимание обучения, тренировки и тестирования нейросетей и видеоролики примеров работы с пользовательскими индикаторами можно посмотреть на канале https://www.youtube.com/channel/UCScAAn_sRRaKHdNIxl0aI9A?view_as=subscriber

Для приобретения программных кодов индикаторов, скриптов и экспертов данной нейросетевой системы вы можете связаться с автором по адресу электронной почты a[email protected]

Книга написана с учетом интересов всех категорий трейдеров, а так же тех читателей, которые готовятся заняться трейдингом. Хочется обратить внимание на тот факт, что в данной книге вы не найдете никакого теоретического материала по проблемам нейросетей и самого трейдинга. В любой литературе посвященной этим двум направлениям есть список трудов различных уважаемых авторов. Мне так же хотелось бы снабдить эту книгу таким же списком. Однако, увы, я этого не могу сделать, так как максимально постарался уйти от какой либо теории и психологии, которым в основном посвящена литература о трейдинге. Однако это не значит, что в свое время я не изучал подобную литературу и, что от нее нет пользы. Вот не полный список авторов, труды которых мною изучались – Чарльз Лебо и Дэвид В. Лукас, Юрий Жваколюк, Д. Ю. Пискулов, В. С. Сафонов, Шерри Де Ковни и Кристин Такки, Анна Эрлих, Александр Элдер, Джон Дж. Мэрфи. Но для понимания и практического применения материала представленного мною, в принципе, достаточно теоретической информации, которая подается на сайтах дилинговых компаний и официального сайта Matlab. То есть, любой читатель имеющий представление о трейдинге может выполнить пошаговую инструкцию из моей книги и получить готовую автоматическую нейросетевую систему торговли. Причем, при кажущейся сложности системы в итоге вы прейдете к пониманию, что конечный результат в плане применения программных кодов поразительно легок, но в тоже время самодостачен и функционален. Ведь основная нагрузка в данной системе происходит при обучении нейросетей. Но и здесь, вникнув в процесс, вы обнаружите, что настроив систему, обучение не занимает много времени, а можно даже сказать, что занимает мало времени. Однако нам все равно придется немного пофилософствовать в следующем разделе на тему логического обоснования обучения нейросетей на принятие решения. От этого обоснования во многом зависит конечный результат.

Важно! Данная книга ориентирована на Matlab. Программа Matlab не поставляется с этой книгой. Прежде чем приступать к изучению и разработки автоматической нейросетевой системы торговли, вы должны приобрести ее отдельно и установить.

Видео с визуализацией работы исполняемых файлов нейронных сетей совместно с MT4 также можно посмотреть по ссылкам https://youtu.be/5GwhRnSqT78 – при обучении и компиляции использовалась программа Matlab, https://youtu.be/cIegQGJKbhY– при обучении и компиляции использовалась программа NeuroSolutions 6.

Логическое обоснование обучения нейросетей на принятие решения.

Прежде чем приступать к разработке любой торговой системы, мы задаемся вопросом – на каких принципах данная система будет функционировать? У нас есть два основополагающих принципа – использования флэтов и продолжение тенденции. Пока не будем рассматривать более узкие производные от них – внутри дневная торговля или нет, на фундаментальных данных, на новостях, на открытии рынков и т.д. Мне пришлось сталкиваться с описанием нейросетевых продуктов, где их авторы в примерах использования предлагали прогнозирование каких либо курсов – акций, валют и т.д. Приведем пример, используя платформу NeuroSolutions. Весь процесс повторять не обязательно, так как данную платформу мы в построении нашей системы использовать не будем, а я в данном случае использую ее как пример. Напишем скрипт для получения ценовых данных в MT4. Хочется обратить внимание на то, что при копировании программного кода из файла в формате PDF не сохраняется его стиль – все строки при переносе сохраняются без отступов. Так же могут быть скопированы номера страниц. Для текстовых редакторов эта проблема отсутствует.

//+-+

//|History.mq4 |

//| Copyright © 2009, Andrey Dibrov. |

//| "https://www.youtube.com/channel/UCScAAn_sRRaKHdNIxl0aI9A?view_as=subscriber"|

//+-+

#property copyright "Copyright © 2009, Andrey Dibrov."

#property link “ https://www.youtube.com/channel/UCScAAn_sRRaKHdNIxl0aI9A?view_as=subscriber (https://www.youtube.com/channel/UCScAAn_sRRaKHdNIxl0aI9A?view_as=subscriber)”

#property version "1.00"

#property strict

int file=FileOpen("history.csv",FILE_CSV|FILE_READ|FILE_WRITE,";");

//+–+

//| Script program start function |

//+–+

void OnStart()

{

//–

FileWrite(file,"Open;OpenD;HighD;LowD;CloseD;Max;Min;Date");

if(file>0)

{

Alert("Идет запись файла");

for(int i=iBars(NULL,60)-1; i>=0; i–)

{

FileWrite(file,

iOpen(NULL,60,i),

iOpen(NULL,1440,iBarShift(NULL,1440,iTime(NULL,60,i))),

iHigh(NULL,1440,iBarShift(NULL,1440,iTime(NULL,60,i))),

iLow(NULL,1440,iBarShift(NULL,1440,iTime(NULL,60,i))),

iClose(NULL,1440,iBarShift(NULL,1440,iTime(NULL,60,i))),

iCustom(NULL,60,"Max",0,1440,60,0,i),

iCustom(NULL,60,"Min",0,1440,60,0,i));

TimeToStr(iTime(NULL,60,i)));

}
Новости
Библиотека
Обратная связь
Поиск