![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Почему бы не использовать внешние NN-системы
Что-то вроде NeuroShell, TS или Joone с открытым исходным кодом? Вы можете вызвать внешнюю dll из Metatrade. Время и усилия должны быть потрачены на выбор входов (индикаторы или хорошие стратегии) и обучение, а не на написание NN-системы на MQL4. Я бы пошел таким путем.
Это хорошая идея, я сейчас посмотрю. Спасибо.
-Томми
Что-то вроде NeuroShell, TS или Joone с открытым исходным кодом? Вы можете вызвать внешнюю dll из Metatrade. Время и усилия должны быть потрачены на выбор входов (индикаторы или хорошие стратегии) и обучение, а не на написание NN-системы на MQL4. Я бы пошел таким путем.
Joone выглядит очень хорошо, но знаете ли вы, как написать файл импульсов, который бы включал индикатор и учил предсказывать его сигналы? Я не могу понять, что это такое, и не могу найти ничего об этом на форумах. спасибо.
Я думаю, есть два пути, один - использовать библиотеку индикаторов Java и кормить Joone массивами чисел, как это сделал этот парень: http://www.jooneworld.com/wiki/tiki-index.php?page=FinancialForecastTutorial#comments.
Другой - это моя идея, мы можем написать советника, который создает входные файлы (возможно, также файлы проверки) при запуске в тестере стратегий, затем обучить Joone с этими файлами.
И наконец, после обучения, когда мы будем использовать его в реальных условиях, мы должны использовать советника для общения с Joone. Для меня все это не сложно (просто займет некоторое время). Самое сложное - что использовать в качестве входных данных (определенно не сырые данные, это должна быть комбинация индикаторов). Структура и количество скрытых нейронов также неизвестны, но мы могли бы найти их, повторяя процесс обучения.
Joone выглядит очень хорошо, но знаете ли вы, как написать импульсный файл, который бы включал индикатор и учил предсказывать его сигналы? Я не могу понять, что это такое, и не могу найти ничего об этом на форумах. спасибо.
Например, если вы хотите использовать MA в качестве входных данных, просто напишите советника, который сохраняет значения MA в CSV-файл для каждого бара, запустите советника в тестере, если вы получите данные за два года истории, CSV-файл будет содержать значения MA за два года. Затем вы можете использовать его в качестве входного файла.
Я думаю, есть два пути, один из них - использовать библиотеку индикаторов Java, и кормить Joone массивами чисел, как это сделал этот парень: http://www.jooneworld.com/wiki/tiki-index.php?page=FinancialForecastTutorial#comments.
Еще одна моя идея - мы можем написать советника, который создает входные файлы (возможно, также файлы проверки) при запуске в тестере стратегий, а затем обучать Joone с помощью этих файлов.
Наконец, после обучения, когда мы используем его по-настоящему, мы должны использовать советник для общения с Joone. Для меня все это не сложно (просто займет некоторое время). Самое сложное - что использовать в качестве входных данных (определенно не сырые данные, это должна быть комбинация индикаторов). Структура и количество скрытых нейронов также неизвестны, но мы могли бы найти их, повторяя процесс обучения.Искусственный_интеллект EA
Здравствуйте:
Я нашел этот советник, но не уверен, на каких стратегиях основан этот советник...
Может ли кто-нибудь взглянуть и объяснить здесь, пожалуйста?
Я приложил советник и результат бэктестинга.
Все это основано на акселераторе/децелераторе Вильямса, формула которого такова
AO = SMA(медианная цена, 5)-SMA(медианная цена, 34)
AC = AO-SMA(AO, 5)
вот код в советнике
extern int x1 = 135;
extern int x2 = 127;
extern int x3 = 16;
extern int x4 = 93;
double w1 = x1 - 100;
double w2 = x2 - 100;
double w3 = x3 - 100;
double w4 = x4 - 100;
double a1 = iAC(Symbol(), 0, 0);
double a2 = iAC(Symbol(), 0, 7);
double a3 = iAC(Symbol(), 0, 14);
double a4 = iAC(Symbol(), 0, 21);
return(x1 * a1 + x2 * a2 + x3 * a3 + x4 * a4);
так что в итоге получается
return(35 * ac(этот бар) + 27 * ac(7 баров назад) + -84 * ac(14 баров назад) ) + -7 * ac(21 бар назад) );
Если это значение больше 0, то он покупает, а если меньше, то продает. Похоже, что он всегда в рынке. Однако он открывает только 1 ордер за раз.
Похоже на разновидность Аллигатора от Вильямса, но он использует 4 AC вместо 3.
Как они выбирают номера x1, x2, x3, x4? Я не знаю, мне кажется случайным.![](https://c.mql5.com/forextsd/smiles/smile.png)
Почему они отнимают по 100 от каждого из них? Не знаю, надо было просто ввести меньшее число.![](https://c.mql5.com/forextsd/smiles/smile.png)
Мои 2 цента, Нейронные сети на самом деле не работают, насколько я могу судить, я провел бесчисленное количество часов, кодируя и тестируя таких зверей, и мне нечего показать.
При оценке таких методов важно понимать, что происходит на самом деле, чтобы отсечь все лишнее. Нейронные сети - это не магия, а просто нелинейнаярегрессия, и как таковые они могут проделать удивительную работу по подгонке тестовых данных, но ничего не сказать вам о будущем. Другое ошибочное предположение, которое применяется к NN и Forex, заключается в том, что в данных существует некий "скрытый паттерн", который NN выведет, но я не обнаружил, что это так. По моему опыту, чем больше степеней свободы у системы, тем больше она склонна к чрезмерной подгонке данных, следовательно, не дает никакой ценности в диапазонах данных за пределами тестовых данных.
Спасибо!
WOW.
Получил ответ так быстро.
Большое спасибо. Хорошего отдыха!
Все основано на ускорителе/замедлителе Уильямса, формула которого такова
AO = SMA(медианная цена, 5)-SMA(медианная цена, 34)
AC = AO-SMA(AO, 5)
вот код в советнике
extern int x1 = 135;
extern int x2 = 127;
extern int x3 = 16;
extern int x4 = 93;
double w1 = x1 - 100;
double w2 = x2 - 100;
double w3 = x3 - 100;
double w4 = x4 - 100;
double a1 = iAC(Symbol(), 0, 0);
double a2 = iAC(Symbol(), 0, 7);
double a3 = iAC(Symbol(), 0, 14);
double a4 = iAC(Symbol(), 0, 21);
return(x1 * a1 + x2 * a2 + x3 * a3 + x4 * a4);
так что в итоге получается
return(35 * ac(этот бар) + 27 * ac(7 баров назад) + -84 * ac(14 баров назад) ) + -7 * ac(21 бар назад) );
Если это значение больше 0, то он покупает, а если меньше, то продает. Похоже, что он всегда в рынке. Однако он открывает только 1 ордер за раз.
Похоже на разновидность Аллигатора от Вильямса, но он использует 4 AC вместо 3.
Как они выбирают числа x1, x2, x3, x4? Я не знаю, мне кажется, это случайность.![](https://c.mql5.com/forextsd/smiles/smile.png)
Почему они -100 от каждого из них? Не знаю, надо было просто ввести меньшее числоNn
NN основан на распознавании образов для прогнозирования будущего ...производительность зависит от количества данных и хорошей оптимизации сети.....
NN может изучать данные, как наш мозг, когда распознает что-то неизвестное.
==================
Коллекция индикаторов Форекс