Нейросетевая торговая система Meta Trader 4 + MATLAB. Пошаговая разработка. Издание второе
Шрифт:
Предисловие
Во второе издание включена глава ” Шаблон автоматической нейросетевой торговой системы на стандартных индикаторах”. Используя данный шаблон, представляющий пошаговую инструкцию (с кодами скриптов и экспертов 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
Для приобретения программных кодов индикаторов, скриптов и экспертов данной нейросетевой системы вы можете связаться с автором по адресу электронной почты andreydib@yandex.ru.
Книга написана с учетом интересов всех категорий трейдеров, а так же тех читателей, которые готовятся заняться трейдингом. Хочется обратить внимание на тот факт, что в данной книге вы не найдете никакого теоретического материала по проблемам нейросетей и самого трейдинга. В любой литературе посвященной этим двум направлениям есть список трудов различных уважаемых авторов. Мне так же хотелось бы снабдить эту книгу таким же списком. Однако, увы, я этого не могу сделать, так как максимально постарался уйти от какой либо теории и психологии, которым в основном посвящена литература о трейдинге. Однако это не значит, что в свое время я не изучал подобную литературу и, что от нее нет пользы. Вот не полный список авторов, труды которых мною изучались – Чарльз Лебо и Дэвид В. Лукас, Юрий Жваколюк, Д. Ю. Пискулов, В. С. Сафонов, Шерри Де Ковни и Кристин Такки, Анна Эрлих, Александр Элдер, Джон Дж. Мэрфи. Но для понимания и практического применения материала представленного мною, в принципе, достаточно теоретической информации, которая подается на сайтах дилинговых компаний и официального сайта 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”
#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)