Машинное обучение в трейдинге: теория, модели, практика и алготорговля - страница 238

Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- Форексный VPS бесплатно на 24 часа
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Я сейчас сделал адекватный подбор параметров модели, обучил, спрогнозировал, теперь получил 0.69102. С прошлым датасетом было 0.69121, на этой неделе лучше, но это за счёт случайности, модель по сути та-же самая. На следующей неделе меня опять куда-то на +- 0.0002 кинет.
Для меня пока-что в этом предел, у меня модель обучена на исходных 21 предикторах, без всяких трюков. Для форекса я например с терминала выгружаю разные индикаторы, подбираю их параметры, итд. Т.е. из 4 предикторов (ohlc) получаю тысячи, потом их отсеиваю, оставляю всего штук тридцать, и обучаю модель.
Для проверки отправил им ещё файлик со всеми прогнозами=0.5, оценка = 0.69315 , можно использовать для сравнения.Мне по идее надо как-то из этих 21 numerai предикторов тоже наделать тысячи, и поотсеивать лишнее. Вот только индикаторы работают с ohlc рядами, а не с с такими равномерно распределёнными, надо подумать как бы из них нагенерировать побольше новых.
Нет....
понял, тогда прекращаю засерать ветку этой темой
такими равномерно распределёнными, надо подумать как бы из них нагенерировать побольше новых.
Я сейчас сделал адекватный подбор параметров модели, обучил, спрогнозировал, теперь получил 0.69102. С прошлым датасетом было 0.69121...
а у меня слетело всё, хуже стало, 0.69120 минимум на RF, пробовал MLP но вообще фигня выходит
ЗЫ смотрю тут трут посты по какому то странному алгоритму((
Да все подобные ветки беспонтовы и засраны))) И все кончаются одинаково. Это нормально + и форум уже давно барыжный. А эксперемент можно провести.
Тем более что положительные моменты в нем тоже есть. Просто посмотри потом как деревья строятся на рандомах и из вр. Как будет выглятить модель-тс
на разных рандомах. И пр. и т.д. Я лет десять назад совал в сетки и мэи и астроиндюки, и данные о приливах в разных портах мира, и меграционные пути
животных и пр. что нормальному человеку и в голову не придет))) Пиши и юзай че хочешь, просто с выводами не торопись.
#Сгенирировать рандом, не менее 10К наблюдений
write.csv2(x, file = "D:/1.csv", row.names = FALSE, quote = FALSE) #запись в файл 1.csv на диск D:/
-----------
Какое окно))) Кстати этот челенж хоть и беспонтовен, но есть и интересные моменты. Например как участники закидывают колибровочные данные,
что позволяет строить предположения о используемой предобработке данных авторами задания...
С форестом уже давно проехали, он был только в первых двух постах, потом я писал что начал отбирать паттерны "своим способом" те тем который когда то описывал когда ищутся хорошие кластера - они же паттерны..
прикрепляю модель.
Это обученый кохонен
подаете в него последние 10 значений median price
MD <- median price
MD <- scale(MD,T,T) # нормализируете именно так как здесь
library(SOMbrero) # запускаем пакет с кохоненом
MD[is.na(MD)] <- 0 # заменяем возможные НА-шки
pred <- predict(model,MD) предсказываем кластер
если кластер будет под номером 41 (pred==41)то ето покупка, стоп тейк по вкусу...
попробуйте, а вдруг и у вас сработает
Думаю но не могу придумать)) , У кого какие мысли....
есть у нас две свечных конфигурации
По картинке видно что по сути свечной паттерн то один и тот же, разница в волатильности , как можно привести матиматически эти два паттерна к эдиному целому?
Вы скажете да нормализировать и все тут , но при нормализации точка нуля сместиться, а это важно...
как на картинке
Поясню, представьте что мы хотим знать цвет текущей, предыдущей и пред-предыдущей свечи, что мы делаем :
close-open , close[-1]-open[-1] , close[-2]-open[-2]
Получим график как на картинке "1", все четко и понятно, все что выше нуля это белая свеча все что ниже нуля это черная свеча.
Теперь осталась решить проблему волатильности(ту что всплыла на самом первом графике), нужно привести график в какой то единый диапазон те нормализовать, то что на картинке "2" но после нормализации мы получаем новую нулевую ось, которая уже не несет никакой информации, МО с такой нормализацыей уже не будет знать белая это свеча или черная
как данные нормализировать так чтобы и "ноль был честным" и проблему с волатильностю устранить??? какие мысли?
как данные нормализировать так чтобы и "ноль был честным" и проблему с волатильностю устранить??? какие мысли?
Я это так делал -
Всего у вас есть 8 точек на графике - O(0), H(0), L(0), C(0), O(1), H(1), L(1), C(1)
Дальше, этим точкам O(0), H(0), L(0), C(0), O(1), H(1), L(1), C(1) можно присвоить порядковые значения 1,2,3,4,5,6,7,8
OHLC - open, high, low, close
(0) и (1) - номер бара
Эти точки можно расположить по убыванию цены на графике, от большей до меньшей - H(0), H(1), O(0), C(1), L(0), C(0), O(1), L(1)
И теперь H(0), H(1), O(0), C(1), O(0), L(0), O(1), L(1) можно превратить в вектор (2, 6, 1, 8, 3, 4, 1, 7), а его уже и нормализовать в 0-1 при желании.
И получится что оба графика будут иметь одинаковый "паттерн" (2, 6, 1, 8, 3, 4, 1, 7), который описывает порядок в котором эти точки идут вниз на графике
К сожалению мне из этого не удалось выжать выгоды. Имея всего 2 свечи может быть 40320 паттернов. Три свечи = (4*3)! = 479001600 паттернов, итд. Реально будет поменьше, т.к. например H всегда больше O,H,L в этой-же свече; а C меньше. Но число паттернов всё равно огромно.
Т.е. можно любой конфигурации свечей присвоить некий вектор чисел, и по нему распознавать такие-же конфигурации в будущем. Но, число возможных конфигураций полученных таким способом настолько огромно, что найти какой-то граальный паттерн после которого цена всегда пойдёт вверх/вниз - наверное невозможно. В стратегии "фракталы Билла Вильямса" например паттерн состоит из 5 свечей, и торгуется только пара комбинаций из всех миллиардов возможных.
Вот на картинке немного наглядней, для 3 свечей например.
Спасибо не надо))) Я лишь предложил рандомы с разных машин...
Вы не поняли идеи, шум я и себя могу сгенерировать несколько раз и не надо по разным машинам его пихать)
Суть идеи в том что..
Я тренирую МО на развороты, в истории котировок разворотов не так уж и много... Котировки движутся волнообразно(волнами) и по сути если подумать то количество вариантов для разворота вполне конечно, это разные мутации головы и плечей, двойных вершин, тройных вершин и.т.п и эти фигуры появляються не от того что они имеют какое то мифическое влияние на рынок а по тому что в волновом движении сами варианты разворота конечны, либо так, либо, так либо так и никак иначе и по сути если мы построим график что рынка, что кумулятивного рандома, или еще чего то подобного с волновой структурой то мы увидим что развороты происходят одинаковыми фигурами, те и в рандоме будут те же головы и плечи...
Так вот, в той статье что кидал D.Trader , автор рассказал что можно генерировать некую похожую выборку для сети, помимо той выборки что уже есть и тем самым мы увеличиваем базу знаний у сети и таким путем увеличиваем точность сети.
Так вот по скольку разворотов на рынке не так уж и много я смикнул что через кум. рандом я могу получить бесконечную базу знаний по разворотам...
Понимаете? никакой мифической силы способной предсказать рынок я в рандоме не ищу )))) поймите) , и проверив эту теорию я получил результат который и выкладывал, как по мне результат оптимистичный.
как данные нормализировать так чтобы и "ноль был честным" и проблему с волатильностю устранить??? В %
Я это так делал -
Спасибо, буду пробовать....
Я это так делал...........
Если я все правильно понял то метод слишком груб..
Давайте возьмем самый простой паттерн из одной свечи
у нас три три варианта
все они подойдут под один логический паттерн
O<H , O<C , O>L
H>O , H>C , H>L
C>O , C>L , C<H
L<O , L<C , L<H
если я правильно понял то ваш метод класифицирует все три свечи как один паттерн, а это не есть гуд
как данные нормализировать так чтобы и "ноль был честным" и проблему с волатильностю устранить??? В %
как именно вы считали разность?
например разность между хайем и злоузом
а = хай
б = клоуз
(a*100)/б так ?
у меня таким методом ничего не получилось, сеть вообще распознает черти что, даже цвета свечей путает
Если я все правильно понял то метод слишком груб.