На радость нейросетевикам, быстрая и бесплатная библиотека для MT4 - страница 40
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Вы поймите одно, что "базовый" советник - простейший, служит для демонстрации работы самой библиотеки в общем и использовании ее в качестве нейрофильтра в частности. Если ставите Н1, то период
обучения должен включать "различные" движения - как тренд, так и флет (на Н1 обучите сеть с нач 2008г - 31 июля 2010г., далее форвард с 1 авг 2010 по наст время - и гляньте), при условии достаточного кол-ва сделок (у каждого свои критерии отбора - во всяком случае не ниже 200-300 сделок - т.н. "репрезентативность" выборки), когда я знакомился с библиотекой у меня базовый советник вообще не обучался при кол-ве сделок < 700, может я что-то сам не так делал - к этому вопросу позже вернусь. Советники во вложении изменены. Пробуйте свои варианты - кто знает - главное, чтобы фильтр работал, и на форварде показывал такие же показатели (с допусками, как в одну, так и в другую сторону), как и на участке обучения...
Форвард при использовании сетей будет всегда врать, это необычный советник, где все фиксировано, при каждом прогоне он может показывать разные резы.
У меня еще два вопроса: При оптимизации (повторной, допустим я захотел его через двое суток прооптить), нужно ли папку ANN очищать или нужно обучать "поверх"? Просто я обучил поверх, у меня график оптимизации странный какой то получается.
Вопрос номер два: как к какому либо другому советнику применить данную библиотеку и как это происходит и что это даст? О как.
И в чем там конкретно изменения?? Я не кодер, мне код ниочем не скажет,я эти отличия просто не увижу.
Почему я пристал с мэджиком, просто я на следующей неделе хочу портфель советников на один демо счет запустить и посмотреть, т.е. не каждого по отдельности, а несколько на одном счете, для этого мне во всех них нужен мэджик.
Форвард при использовании сетей будет всегда врать, это необычный советник, где все фиксировано, при каждом прогоне он может показывать разные резы.
У меня еще два вопроса: При оптимизации (повторной, допустим я захотел его через двое суток прооптить), нужно ли папку ANN очищать или нужно обучать "поверх"? Просто я обучил поверх, у меня график оптимизации странный какой то получается.
Вопрос номер два: как к какому либо другому советнику применить данную библиотеку и как это происходит и что это даст? О как.
1. Папку ANN очищать при повторном обучении НС.
2. К "подобному - другому" советнику данную библиотеку можно применять в качестве фильтра, для этого нужно заменить условия входа в сделки, условия
выхода из позиции - в базовой версии выход осуществляется только по тейку либо стоп-лоссу, более детально подойти к обработке вх параметров для сетки (поаказаний индикаторов (в данном случае)- их нормированию и много еще чего - но это основное... Нужно детально заниматься этими вопросами.
3. Что касается маджика, то в базовой версии советника (из статьи) его номер здесь (указан жирным), далее в коде он меняется (но это сути не меняет -
в любом случае он уникальный):
// Подключаем библиотеку FANN2MQL
#include <Fann2MQL.mqh>
// Определение глобальных переменных
#define ANN_PATH "C:\\ANN\\"
// Имя советника
#define NAME "NeuroMACD"
//---- входные параметры
extern double Lots=0.1;
extern double StopLoss=180.0;
extern double TakeProfit=270.0;
extern int FastMA=18;
extern int SlowMA=36;
extern int SignalMA=21;
extern double Delta=-0.6;
extern int AnnsNumber=16;
extern int AnnInputs=30;
extern bool NeuroFilter=true;
extern bool SaveAnn=false;
extern int DebugLevel=2;
extern double MinimalBalance=100;
extern bool Parallel=true;
// Глобальные переменные
// Путь к каталогу c нейросетями
string AnnPath;
// Magic number для торговли
int MagicNumber=65536;
// AnnsArray[ann#] - массив нейросетей
int AnnsArray[];
// флаг статуса загрузки всех нейросетей
-----------------------------------
--------------------------------
Далее, при открытии позиции советник указывает этот магик:
здесь в коде
------------------------
/* Длинных позиций нет */
if(LongTicket==-1)
{
/* сигнал BUY */
if(BuySignal)
{
/* если установлен NeuroFilter,
используем мудрость нейросети для принятия решения:) */
if(!NeuroFilter || ann_wise_long()>Delta)
{
LongTicket=
OrderSend(Symbol(),OP_BUY,Lots,Ask,3,
Bid-StopLoss*Point,
Ask+TakeProfit*Point,
NAME+"-"+"L ",MagicNumber,0,Blue);
}
/* Запоминаем входы нейросети */
for(i=0;i<AnnInputs;i++)
{
LongInput[i]=InputVector[i];
}
}
--------------------------------------------------------
---------------------------------------------------------
закрываются позы по тейку или лоссу. В любом случае советник открывает ордера с уникальным "своим" магиком. Если у Вас другой вариант эксперта внесите соответствующие изменения в код.
Т.е. у себя в портфеле его использовать можно независимо от других экспертов. Он с уникальным магиком. Единственно, конечно, чтобы другие эксперты
портфеля также работали только со своими ордерами - открытие и закрытие поз по условиям (торговым критериям) только по соответствующим советникам магикам.
П.С. При попытке вставки кода в виде кода у меня страничка вылетает в обычный режим, поэтому код отображен в виде текста, в прикрепленном файле эксперт из статьи.
Роман, спасибо заответ. "Единственно, конечно, чтобы другие эксперты
портфеля также работали только со своими ордерами - открытие и закрытие поз по условиям (торговым критериям) только по соответствующим советникам магикам." -это я понял, сейчас привинчиваю к ним мэджик:)))
Хм, начал ковырят ваш советник, чуток недопонял, хочу его заоптить нужно ли там там в SaveANN-ставить тру при оптимизации? Что означает параметр Parallel? DebugLevel?
Хм, начал ковырят ваш советник, чуток недопонял, хочу его заоптить нужно ли там там в SaveANN-ставить тру при оптимизации? Что означает параметр Parallel? DebugLevel?
Вы прочитайте статью - там все есть...более, чем подробно... SaveANN-ставить тру, Parallel - если Ваш проц поддерживает параллельную обработку (чего-то там), то ставьте тру, иначе - фалсе, если проц - не поддерживает и стоит тру, то терминал вылетает с ошибкой. Перечитайте статью.
Кому интересно, тест на дэмо за три недели.
Кому интересно, тест на дэмо за три недели.
Красиво идет, особенно в последнее время... :-)))
Ага, 8 прибыльных подряд:)) Но последнюю сделку он вообще тупо совершил, продал на 3250 хотя и ежу было ясно что остановка будет, но я за чистоту эксперимента:))