Читаем Нейросетевая торговая система Meta Trader 4 + MATLAB. Пошаговая разработка. Издание второе полностью

iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_MAIN,1),

iWPR(NULL,0,14,0),

iStochastic(NULL,0,5,3,3,MODE_SMA,1,MODE_MAIN,0),

iRVI(NULL,0,10,MODE_MAIN,0),

iRSI(NULL,0,14,PRICE_CLOSE,0),

iOsMA(NULL,0,12,26,9,PRICE_CLOSE,0),

iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_MAIN,0));

FileWrite(handleDate,Date);

}

}

//+–+

В папке /tester/files каталога данных MT4 мы получим также два файла Date.csv и Test.csv. В первом мы записали дату и почасово время тестового множества. Во втором непосредственно значения, по которым мы будем получать отклик нейросети.

Файлы Date.csv и Test.csv мы перенесем в папку …\MQL4\Files.

Запустим Matlab, нажмем Ctrl+N и в открывшемся окне вставим ниже представленный код и сохраним его как скрипт Primer.m в папке “Matlab” на рабочем столе. Путь к этой папке укажем в соответствии с ее расположением на жестком диске нашего компьютера. То же самое сделаем и в отношении других файлов используемых при обучении нейросети.

Input= xlsread('C:\Users\Администратор\AppData\Roaming\MetaQuotes\Terminal\287469DEA9630EA94D0715D755974F1B\MQL4\Files\In.csv','In')';

Out= xlsread('C:\Users\Администратор\AppData\Roaming\MetaQuotes\Terminal\287469DEA9630EA94D0715D755974F1B\MQL4\Files\Out.csv','Out')';

Test= xlsread('C:\Users\Администратор\AppData\Roaming\MetaQuotes\Terminal\287469DEA9630EA94D0715D755974F1B\MQL4\Files\Test.csv','Test')';

[~, ~, Date] = xlsread('C:\Users\Администратор\AppData\Roaming\MetaQuotes\Terminal\287469DEA9630EA94D0715D755974F1B\MQL4\Files\Date.csv','Date');

trainFcn = 'trainlm';

hiddenLayerSize = 10;

net = fitnet(hiddenLayerSize,trainFcn);

net.divideParam.trainRatio = 70/100;

net.divideParam.valRatio = 15/100;

net.divideParam.testRatio = 15/100;

[net,tr] = train(net,Input,Out);

Net=net(Test)';

xlswrite('C:\Users\Администратор\Desktop\Matlab\Indicator.csv',Date,'','1A');

xlswrite('C:\Users\Администратор\Desktop\Matlab\Indicator.csv',Net,'','1B');

Запустив данный скрипт, дождемся окончания его работы. Результатом исполнения скрипта в рабочем окне Workspace мы получим набор файлов.

Файл net.mat (обученную нейросеть) сохраним в папке Primer, которую предварительно создадим в папке Matlab. Отмечу, что папку Matlab мы назначим рабочим каталогом программы. Потом вы, конечно же, можете все настроить, как вам будет удобнее.

Так же в папке Matlab, скрипт создаст файл Indicator.csv. Это отклик нейросети, который мы будем использовать как индикатор для разработки торговой стратегии.

Откроем этот файл. В ячейке C5 вставим формулу, которую вы видите в строке формул на рисунке выше. Заполним этой формулой колонку “С”. Скопируем данные и через специальную вставку заполним ячейки данной колонки значениями формул.

Сохраним файл в формате csv.

Данный файл скопируем и вставим в папки /MQL4/Files и /tester/files. Для удобства я рекомендую ярлыки этих папок разместить рядом с папкой Matlab.

Запустим индикатор 1.mq4.

//+–+

//| 1.mq4 |

//| CopyrightAndreyDibrov. |

//|"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 indicator_separate_window

#property indicator_buffers 2

#property indicator_color1 Red

#property indicator_color2 Blue

string File_Name="Indicator.csv";

double Buf_0[];

double Buf_1[];

double Str0;

double Str1;

datetime Date0;

datetime Date1;

int Handle;

int i;

//+–+

//| Custom indicator initialization function |

//+–+

int init

{

SetIndexBuffer(0,Buf_0);

SetIndexBuffer(1,Buf_1);

IndicatorBuffers(2);

IndicatorDigits(4);

SetIndexStyle(0,DRAW_LINE,STYLE_SOLID,1);

SetIndexStyle(1,DRAW_LINE,STYLE_SOLID,1);

SetLevelValue(0,0.5);

return(0);

}

//+–+

//| |

//+–+

int start

{

Handle=FileOpen(File_Name,FILE_CSV|FILE_READ,";");

while(i==0)

{

Date0=StrToTime(FileReadString(Handle));

i++;

}

FileClose(Handle);

Перейти на страницу:

Похожие книги

100 абсолютных законов успеха в бизнесе
100 абсолютных законов успеха в бизнесе

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

Брайан Трейси

Деловая литература / Маркетинг, PR, реклама / О бизнесе популярно / Финансы и бизнес