Генерация нейросетевых торговых стратегий

 
Здравствуйте, прошу сообщество форума поддержать проект генератора нейронных сетей для финансовых рынков.

Суть проекта в попытке найти оптимальную структуру и обучить нейронную сеть прогнозировать направление движения цены базового актива.

На данный момент одна из основных проблем нейронных сетей в том, что для их обучения требуется очень много вычислений, так как необходимо считать производные функций в большом объеме. Из-за этого для решения задачи прогнозирования финансовых рынков надо организовать вычисления на большом пуле компьютеров. Данный проект как раз собирает такой пул.

Вам предлагается установить программное обеспечение, которое будет в автоматическом режиме генерировать, обучать и тестировать нейронные сети. Те из сетей, которые показали "прибыль" по итогам тестирования, сохраняются на вашем компьютере и их копии отправляются на сервер для дополнительных проверок. При накоплении достаточного количества статистики и самих сетей, на сайте проекта они будут представлены в публичный доступ. В дальнейшем данные сети можно использовать для реальной автоматизированной торговли.

Вся работа выполняется полностью в автоматическом режиме, от вас не требуются специфические знания, необходимо лишь установить программное обеспечение. В среднем приложение использует 10-30% мощности процессора в зависимости от его максимальной частоты, что не повлияет на работу остальных программ. Приложение в рабочем виде занимает до 50Мб места на жестком диске и потребляет около 10 мб. трафика в месяц.

Скачать приложение можно на официальном сайте проекта http://hsrw.ru

Вопросы и комментарии можете писать в этой теме.
 

Это реклама?

Насколько я знаю. На этом форуме многие создавали и обучали сети безо всякого пула (и я в том числе) . Или у Вас неверная постановка задачи, или это реклама?

 

сети не причем, реклама причем...  

тема будет удалена 

 

Здравствуйте, это не реклама, я ничего не продаю, не размещаю рекламы на сайте и прочее.

Десять сетей создать и обучить действительно проблем нет. Но вопрос ставится следующем образом: какая структура сети эффективна для прогнозирования временного ряда на N шагов вперед, при M мерном векторе входных значений? Если вы попробуете решить её 5-10 компьютерах, то очень быстро поймете что в этой жизни решение найти не удастся (либо вы очень везучий) :)

Если помните Ю. Решетов лет 5 назад выкладывал на этом форуме программу SSB (не уверен что именно так она называлась), там был перебор индикаторов для поиска оптимальной стратегии, не знаю чем закончилось все, но этот проект частично похож на его подход

 
Помню один аспирант в нашем институте писал диссертацию о том что разрабатывать электронные схемы можно быстрее и лучше если собрать базу данных всех предыдущих разработок данного типа схемы и выбрать ту разработку из базы, которая наиболее близко отвечает требованиям. Была также попытка позволить компьютеру модифицировать эту схему анализируя все другие схемы в базе и собирая самые лучшие решения. Это было 30 лет назад. А схемы по прежнему разрабатываются вручную, за исключением логических. Вижу что данное предложение о нейронных сетях из той же области: попытка заменить грамотную разработку сети и мучительный поиск подходящих входных данных статистическим выбором лучшего из хлама. А каким образом будем определять лучшую сеть? Тем как она работает на форварде? Вот тут проблема заглядывания в будущее. Вы можете утверждать что дескать все эти сети разрабатывались на прошлых данных и значит заглядывания в будущее нет. Но на самом деле заглядывание есть. Если я вам дам бесконечное множество сетей разработанных на прошлых данных и позволю вам выбрать сеть которая хорошо работает на форварде, то математически это эквивалентно оптимизации всех сетей на будущих данных из форварда и выборе наиболее оптимальной сети. Простой логической проверкой проблемы заглядывания в будущее есть следующий вопрос: если будущее вам неизвестно, как выбрать и обучить такую сеть которая хорошо предсказывала будущее? Если ваш ответ нуждается в знание будущего чтобы определить такую сеть, то у вас будет заглядывание.
 
gpwr:
Помню один аспирант в нашем институте писал диссертацию о том что разрабатывать электронные схемы можно быстрее и лучше если собрать базу данных всех предыдущих разработок данного типа схемы и выбрать ту разработку из базы, которая наиболее близко отвечает требованиям. Была также попытка позволить компьютеру модифицировать эту схему........

Возможно дело в специфике нейронных сетей, не придумано пока алгоритма выбора оптимальной структуры сети, поэтому приходится опираться на статистику, это в общем то вынужденная мера.

Но в данном проекте по сути и происходит мучительный поиск подходящих входных данных :) Потому что компьютеры пользователей создают не абсолютно произвольные сети, а с определенными параметрами и эти параметры продумываются заранее, поэтому хлама я конечно стараюсь избежать. По поводу конкретно входных данных, то работа ведется и с методом главных компонент, и с упругими картами, поэтому фильтрация мусора происходит еще до генерации нейросетей.

Не уверен что правильно понят вас по поводу заглядывания, но фактически будущие данные при обучении сети не используются. Возможно вы имеете в виду теорию цикличности рынка? Качество сетей определяется тестированием + опять же статистическими тестами.

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

Форвард - это тоже прошлое. Чтобы привести свои мысли в порядок ответьте самому себе на вопрос: как определить, что абитуриент имеет способности к обучению, без вступительных экзаменов, если у того нет золотой или серебрянной медали?

Да собственно, никак. Даже проходной бал на вступительном экзамене вовсе не гарантия того, что будущий студент освоит будущую специальность. А всего лишь оценка того, готов ли он к дальнейшему обучению или ему надобно подтянуться с репетитором. А иначе в будущем вместо того, чтобы читать лекции по программе, придётся студентам разжевывать элементарные вещи из школьного курса.

Также и форвардные тесты вовсе не являются попыткой выбрать лучшую сетку, а всего лишь отсеивание заведомо непригодных для дальнейшего трейдинга. А как поведёт себя сетка за пределами форварда - это ещё вилами писано.

Алгоритмы машинного обучения не способны заглядывать в будущее. Их способности ограничены заглядыванием в прошлое, т.е. в обучающую выборку и интерпретацией этих самых прошлых информационных данных с признаками на которые нужно дать ответ. Форвардные тесты и отвечают на вопрос, способна ли сетка более или менее адекватно интерпретировать текущую обстановку и принимать решения или нет. При этом никакой гарантии, что рынок не изменится и всё предыдущее обучение сети пойдёт коту под хвост.

НС в некоторых случаях могут классифицировать, интерполировать, аппроксимировать, но не могут экстраполировать.

Отсеянные форвардным тестом сетки являются заведомо непригодным для дальнейшего трейдинга. Обратное не всегда верно, т.е. прошедшие форвардные тесты сетки не обязательно являются профитными в будущем.

 
Reshetov:

Какой критерий оценки успешности форвард-теста?

Например, делим наблюдения на обучающую и тестовую выборку. На обучающей строим модель. Прогоняем ее на тестовой. У меня максимум что было - адекватность модели на интервале тестовой выборки примерно 10% от размера обучающей. Далее - неадекватность, которая требует переобучения.

Насколько я знаю западные исследования (правда, они по фондовому рынку) там также адекватность модели, примерно. на размере тестовой выборки 10-20 % от обучающей

 
Ну, я догадываюсь, что древние русы в Лемурии обладали сокровенным знанием об этом, но насколько я знаю, они были утеряны еще 10 000 - 30 000 лет назад?
 
Demi:

Какой критерий оценки успешности форвард-теста?

Например, делим наблюдения на обучающую и тестовую выборку. На обучающей строим модель. Прогоняем ее на тестовой. У меня максимум что было - адекватность модели на интервале тестовой выборки примерно 10% от размера обучающей. Далее - неадекватность, которая требует переобучения.

Насколько я знаю западные исследования (правда, они по фондовому рынку) там также адекватность модели, примерно. на размере тестовой выборки 10-20 % от обучающей

Мне критерии "успешности" доселе неизвестны. Применяю только критерии отбраковки.

20% под тестовую выборку - это несерьёзно, особенно в трейдинге. Менее 50% не практикую.

 
Отношение размера обучающей выборки к тестовой - 2:1 и адекватность модели на всем протяжении тестовой выборки?