На радость нейросетевикам, быстрая и бесплатная библиотека для MT4 - страница 12
![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Пока не попробуете не поймете, сложно оценить преимущества даваемые входами, на одном участке может лучше работать одно, на другом другое. А средний результат можно постаравшись получить на почти любых входах. В голом это без предобработки, "0-1" это просто частный вид нормализации, уже хорошо, но может оказаться мало... Предобработка это целая наука, имхо сложнее самих нейро сетей, и сжатие, и выбелевание, и кодирование и наверно много еще чего. Для начала можете посмотреть статейки Крисилова В.А., можно взять http://neuroschool.narod.ru/ . То о чем задумались Вы, засунуть ЗЗ в НС, я использую лишь в виде составной части сложной комбинации входов, не более.
а Вы конкретно добились каких-либо вменяемых результатов? Без предобработки в FANN пихать "голые" данные бесполезно ИМХО, ненормализованные данные можно попробовать протестить в STATISTICA, там при тестинге выдается комитет из 5 сеток, обученных по разным алгоритмам. И то используя статистику я пришел к не очень точным результатам, написал Вам в личку сообщение.
а Вы конкретно добились каких-либо вменяемых результатов? Без предобработки в FANN пихать "голые" данные бесполезно ИМХО, ненормализованные данные можно попробовать протестить в STATISTICA, там при тестинге выдается комитет из 5 сеток, обученных по разным алгоритмам. И то используя статистику я пришел к не очень точным результатам, написал Вам в личку сообщение.
Результат как раз именно всего лишь вменямый есть, используется, но вот сказать что это заслуга ЗЗ я не могу)
Выдается там не коммитет, а просто несколько (кол-во задается) сеток отобраных по минимальной ошибке, но вот то, что Statisticу стоит кормить неподготовленными данным это заблуждение точно. Конечно в поиске решений можно пробовать всякое, но валить все в сеть, а она пусть варится, не проходит, это Вам тут любой скажет.
То есть, выходит, что 16 сеток инициализированных случайными весами от -1 до 1, после первого же выполнения ann_runs(...) с одним InputVector[], мы получаем (судя по логам) 16 одинаковых выходов с точностью до 8-ми знаков??? Нет. Тут какой-то баг.
Вы сами писали, что тему нейросетей просто так не поднять. Так что трэба разобраться...
Поиск бага в данном случае нужно вести на месте. Дистанционно можно только домысливать. В упомянутом Вами случае, я лично не видел, чтобы было ранее конкретизировано как сетки обучались, прежде чем оказалось по логу видно что ответы всех сеток одинаковы при одном опросе, при другом -- другие, но то же одинаковые. И сейчас ситуация не стала понятнее, потому что ann_runs всего лишь выполняет сетки, но не обучает. Могу лишь посоветовать наставить отладочных принтов при всех вызовах библиотеки. Только этот разбор, имхо, относится больше к логике кода, чем к самим сеткам.
Поиск бага в данном случае нужно вести на месте. Дистанционно можно только домысливать.
Простите, но я думал, что мы здесь обсуждаем советник Юрия выложенный им в Codebase (пост на 3-ей странице ).
Итак:
-- В советнике ничего не изменял, добавил только отладочные принты.
-- Очищаем директорию ANN
-- Запускаем советник в режиме тестирования
-- Вроде все работает, но при просмотре лога видим, что ответы всех сетей одинаковые! :-(
При новом обучении сетки начальные веса инициализируются случайными числами. Поскольку начальные веса разные, то и обучение для сеток тоже будет различаться и конечный результат, также будет иметь отличия.
Было подозрение при создании сетей не происходит рандомизация весов. Но это не подтвердилось. Архив файлов сетей сохраненых сразу же после их создания и инициализации так же прилагаю.
Посмортите плиз. Куда копать дальше не знаю. Если только в глубины dll ?
Советник-то один, но люди все разные и тестируют его на разных данных, при разных условиях ;-). Я его один раз посмотрел, проблемы такой как у Вас не имел, но уяснил для себя, что заниматься им в текущем виде не имеет смысла, а переписывать некогда.
Да хрен бы с ним с советником. Да и переписывать, и заниматься им не надо.
Есть подозрение на некорректную работу самой библиотеки, и здесь надо разобраться так это и нет. Иначе смысла двигаться дальше нет.
Если у вас проблем с ним не было, то, не сочтите за труд, выложите лог теста FANN-EA, с параметром DebugLevel = 3
Ребят, а точно библиотека не "кривая"?
Ситуация такая: регулярно вылазит сообщение об ошибке и то, что терминал будет закрыт.
Вот текст сообщения:
There has been a critical error
Time : 2009.12.23 22:55
Program : Client Terminal
Version : 4.00 (build: 225, 10 Jul 2009)
OS : Windows XP Professional 5.1 Service Pack 3 (Build 2600)
Processors : 2 x X86 (level 6)
Memory : 1047532/161248 kb
Exception : C0000005
Address : 02086AD8
Access Type : read
Access Addr : FFFFFFFF
Registers : EAX=FFFFFFFF CS=001b EIP=02086AD8 EFLGS=00010206
: EBX=FFFFFFFF SS=0023 ESP=0291B8E8 EBP=0291B8E8
: ECX=09104830 DS=0023 ESI=00000000 FS=003b
: EDX=09104830 ES=0023 EDI=0000015C GS=0000
Stack Trace : 02011D13 00463E17 00455691 FFFFFFFF
: 00000000 00000000 00000000 00000000
: 00000000 00000000 00000000 00000000
: 00000000 00000000 00000000 00000000
Modules :
1 : 00400000 002B1000 c:\program files\metatrader - alpari\terminal.exe
2 : 01750000 00327000 c:\windows\system32\xpsp2res.dll
3 : 02010000 0000A000 c:\program files\metatrader - alpari\experts\libraries\fann2mql.dll
4 : 02030000 00039000 c:\windows\system32\tbb.dll
5 : 02070000 00034000 c:\windows\system32\fanndoublemt.dll
6 : 14240000 00020000 c:\program files\drweb\drwebsp.dll
7 : 5B260000 00038000 c:\windows\system32\uxtheme.dll
8 : 61EC0000 0000E000 c:\windows\system32\mfc42loc.dll
9 : 698B0000 00058000 c:\windows\system32\hnetcfg.dll
10 : 71A30000 00040000 c:\windows\system32\mswsock.dll
11 : 71A70000 00008000 c:\windows\system32\wshtcpip.dll
12 : 71A80000 00008000 c:\windows\system32\ws2help.dll
13 : 71A90000 00017000 c:\windows\system32\ws2_32.dll
14 : 72CD0000 00008000 c:\windows\system32\msacm32.drv
15 : 72CE0000 00009000 c:\windows\system32\wdmaud.drv
16 : 73D90000 000FE000 c:\windows\system32\mfc42.dll
17 : 746E0000 0004C000 c:\windows\system32\msctf.dll
18 : 75310000 0002E000 c:\windows\system32\msctfime.ime
19 : 76350000 00005000 c:\windows\system32\msimg32.dll
20 : 76360000 0001D000 c:\windows\system32\imm32.dll
21 : 76380000 00049000 c:\windows\system32\comdlg32.dll
22 : 76770000 0000C000 c:\windows\system32\cryptdll.dll
23 : 769A0000 000B5000 c:\windows\system32\userenv.dll
24 : 76B20000 0002E000 c:\windows\system32\winmm.dll
25 : 76C20000 0002E000 c:\windows\system32\wintrust.dll
26 : 76C80000 00028000 c:\windows\system32\imagehlp.dll
27 : 76D50000 00019000 c:\windows\system32\iphlpapi.dll
28 : 77110000 0008B000 c:\windows\system32\oleaut32.dll
29 : 773C0000 00103000 c:\windows\winsxs\x86_microsoft.windows.common-controls_6595b64144ccf1df_6.0.2600.5512_x-ww_35d4ce83\comctl32.dll
30 : 774D0000 0013D000 c:\windows\system32\ole32.dll
31 : 77A70000 00096000 c:\windows\system32\crypt32.dll
32 : 77B10000 00012000 c:\windows\system32\msasn1.dll
33 : 77BC0000 00007000 c:\windows\system32\midimap.dll
34 : 77BD0000 00015000 c:\windows\system32\msacm32.dll
35 : 77BF0000 00008000 c:\windows\system32\version.dll
36 : 77C00000 00058000 c:\windows\system32\msvcrt.dll
37 : 77C60000 00025000 c:\windows\system32\msv1_0.dll
38 : 77DC0000 000AC000 c:\windows\system32\advapi32.dll
39 : 77E70000 00092000 c:\windows\system32\rpcrt4.dll
40 : 77F10000 00049000 c:\windows\system32\gdi32.dll
41 : 77F60000 0007C000 c:\windows\system32\shlwapi.dll
42 : 77FE0000 00011000 c:\windows\system32\secur32.dll
43 : 78480000 0008E000 c:\windows\winsxs\x86_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.30729.4148_x-ww_d495ac4e\msvcp90.dll
44 : 78520000 000A3000 c:\windows\winsxs\x86_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.30729.4148_x-ww_d495ac4e\msvcr90.dll
45 : 7C800000 000F8000 c:\windows\system32\kernel32.dll
46 : 7C900000 000B3000 c:\windows\system32\ntdll.dll
47 : 7C9C0000 01979000 c:\windows\system32\shell32.dll
48 : 7E360000 00091000 c:\windows\system32\user32.dll
Call stack :
До использования советника на FANN такое не выпадало.
А у Вас все работает как часы?
Ситуация такая: регулярно вылазит сообщение об ошибке и то, что терминал будет закрыт.
Регулярно относительно чего ? После выхода новостей?
У меня было пару вылетов терминала в процессе работы советника, но они напрямую связаны с кодом советника.
Hапример: вызов процедуры deinit() в конце процедуры init()
Просто библиотека расчитана на пользователя понимающего что и зачем он делает. И это ни сколько не умаляет её достоинств...
Регулярно относительно ее использования. При тестировании и при установке советника на торговлю.
Советника на FANN я написал сам, по абсолютно отличающемуся от Решетовского принципу организации входов-выходов, да и процесса оптимизации.
Поэтому последнюю Вашу фразу я считаю глупостью.