Машинное обучение в трейдинге: теория, модели, практика и алготорговля - страница 1343
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Задача искусственная, сделана на генераторе шума, и так, чтобы теоретически этот шум можно было прогнозировать. Поробовал на несколько отсчетов вперед.
Если не секрет, на каких принципах сделан искусственный ряд? Просто к шуму подмешана грубо говоря синусоида, или как-то сложнее?
И кстати,
этот результат работы НС на генераторе шума ещё раз подтверждает возможность "зарабатывания на СБ", возможность "зарабатывания на монетке". Хотя у многих это не укладывается в голове.
Ну это так, к слову.
Ну это абсурд, как вечный двигатель в физике, то есть конечно не совсем очевидный абсурд, помнится в 7 лет я сделал свой вариант вечного двигателя, но после того как дед разъяснил законы сохранения, легко врубился что все попытки тщетны, так же и с попытками торговать СБ, хотя новичкам это простительно и даже рекомендуется к проработке))
Ну это абсурд, как вечный двигатель в физике, то есть конечно не совсем очевидный абсурд, помнится в 7 лет я сделал свой вариант вечного двигателя, но после того как дед разъяснил законы сохранения, легко врубился что все попытки тщетны, так же и с попытками торговать СБ, хотя новичкам это простительно и даже рекомендуется к проработке))
ну цирк то уехал а клоуны остались
умники, подумайте хорошенько, что такое генератор шума.
ты увидел это словосочетание на крышечке. Молодец какой.
Если не секрет, на каких принципах сделан искусственный ряд? Просто к шуму подмешана грубо говоря синусоида, или как-то сложнее?
Уж, коли к моему посту появилось несколько вопросов, надо ответить, сразу на все скопом.
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Машинное обучение в трейдинге: теория и практика (торговля и не только)
Yuriy Asaulenko, 2019.02.17 21:01
Поробовал на Питоне обучить нейросеть. Пакет - scikit-learn, сама НС - sklearn.neural_network.MLPRegressor. Нейронов за 100, скрытых слоев -7, входов -19, выход - 1. Задача - прогнозирование случайного процесса.
Задача искусственная, сделана на генераторе шума, и так, чтобы теоретически этот шум можно было прогнозировать. Поробовал на несколько отсчетов вперед.
Результат сравнения прогноза с реалом на 5 тыс случайно выбранных точек:
По Х - прогноз, по У - реальное значение. Лежат все очень близко к 45 град. прямой. Т.е., предсказание практически идеально (на искусственной выборке).
Обучение оч. быстрое - 24 эпохи. По времени, примерно - 10 с.
Надо сказать, оч. удивлен. Я оч. старался данные запрятать. Удивительно, что нашла. Вообще, близко к мистике.)
Выводы: НС sklearn.neural_network.MLPRegressor вполне пригодна к эксплуатации. Классификатор пока не пробовал.
С рынком уже пробовал что-то делать, результатов пока ноль. Не ищет, говорит - нет там ничего, хотя задача того-же класса, что и искусственно сформированная.
Сразу скажу - вечный двигатель не изобретал, фокусов не показывал, и если кто и сочтет это фокусом, то исключительно по незнанию.
Вначале немного теории. Случайные процессы можно прогнозировать, включая даже бросание монетки. Все зависит от постановки задачи прогнозирования. Скажем, прогноз - завтра будет дождь, на 90% верен. Однако мы не сказали когда будет дождь - рано утром, днем или поздно вечером, а может вообще будет лить целый день, т.к. такой прогноз уже будет недостоверен.
Можно ли прогнозировать временные ряды - можно, при определенных условиях. Одним из таких возможных условий является ограниченность спектра ВР - чем шире спектр, тем меньше интервал прогноза, чем уже - тем больше интервал прогноза.
Рыночный временной ряд имеет неограниченный спектр, так что о каком-нибудь реальном прогнозировании цены на 5 мин или на час вперед - задача не оч. выполнимая. Я такой задачи перед собой не ставил.
Теперь о подготовке данных для обучения.
1. Из генератора случайных чисел (ГСЧ) получаем ряд и преобразованиями приводим его к виду близкому к рыночному. Такой ряд имеет неограниченный спектр, и прогнозировать его значения не оч. реально.
2. пропускаем ряд через фильтр НЧ (ФНЧ). Получили случайный ряд имеющий ограниченный спектр и возможность прогнозирования на n-отсчетов вперед, однако, этот ряд не оч похож на рыночный.
3. С помощью ГСЧ генерируем ряд с М=0, и после танцев с бубном, складываем его с рядом получившемся после ФНЧ. Получаем опять ряд, близкий к рыночному. Этот ряд мы и будем использовать для обучения.
4. В качестве целевой функции берем ряд по п.2 пропущенный через ФНЧ и сдвинутый на N отсчетов назад, что соответствует прогнозу на N отсчетов вперед.
Далее, подаем входной и целевой ряды на НС, обучаем и проверяем результаты обучения. Затем повторяем действия по пп. 1-4, подаем ряд по п.3 на НС и сравниваем выход НС со сдвинутым на N отсчетов рядом п.4. Результат на картинке.
Все. Никаких чудес. Это все можно сделать и без НС. Что меня оч. удивило, так это то, что НС с этим справилась за секунды, и всего-то за 24 цикла обучения. И это при нехилом шуме, там эту НЧ составляющую уже и не видно. Потрясающе.
Почему не получилось с рыночным ВР. Любой ФНЧ имеет значительные задержки, и его кривая сдвинута вправо относительно ВР. Т.е., в каждой точке ряда мы имеем уже задержанный НЧ сигнал, и, таким образом, интервал прогнозирования оказывается больше допустимого, и прогноз становится нереальным. Мы даже не можем построить реальную целевую для обучения.
Yuriy Asaulenko:
Понятие спектра определяется только для стационарного процесса. Цена не является таковой, хотя бы из-за роста дисперсии со временем.