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

 
mytarmailS:

обычные горизонтальные объемы!! . Боже! люди от куда вы? ))  А , я забыл что это форекс форум) 


В маленьком окошке? На левом мониторе?

 
Sergey Chalyshev:

Что не так ?

У самого такая проблема. Кто то может подсказать, из за чего такое может происходить? 

 
Mikhail Khlestov:

У самого такая проблема. Кто то может подсказать, из за чего такое может происходить? 

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

 
Igor Makanu:

1.попробую в вольном переводе процитировать Хайкина: набор данных должен содержать как положительные так и отрицательные примеры

с положительными примерами вроде как ясно, осталось выяснить как отрицательные примеры учить?   

2.шум тоже нужно подавать, но это не совсем же отрицательный пример?

1. Эт вы верно отметили. Но забыли - соотношение между положительными и отрицательными должно соответствовать практике. Тоже цитата по памяти.

Учить так же. Подавать на вход в смеси с положительными.

2. Из 1. следует - шум не нада.

Если у вас есть только положительные и нет отрицательных, следовательно вы сами не представляете того чему учите.

 
Igor Makanu:

1. не забыл, ибо не знаю - забывать нечего, читать еще и читать, но вот с этих вот мелочей все и начинается!

2. индивидуально все, имхо, ну и цели у меня благие - не хочу прогнозировать не прогнозируемое, хочу адаптировать адаптивное )))

Кстати, откуда брать отрицательные. Т.к. задачи не знаю, то в общем виде.

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

 
Vizard_:

radikal.ru/video/m9Ct2f9xDCn

мля.. ну и музыку ты слушаешь ))

 

Кароч, на счет флетов, если кто помнит я поднимал тему как можно алгоритмизировать флеты. Внятных ответов не получил так что пришлось думать самому...

С начала я екпериментировал с распределениями те  - чем больше цена шаталась на одном уровне и чем больше было этих "шатаний"  вероятней флет, но у метода есть свои недостатки и я от него отказался

Второй способ получился получше и им с вами я хочу поделиться, если кому это вообще интересно..

Для второго способа я использовал автокорреляцию цены, я достаточно долго искал признаки флета в показаниях АКФ и нашел два простых признака.

Так выглядит цена и акф построеная по ней

код на R-ке

layout(1:2)
x <- cumsum(rnorm(100))
plot(x,t="l")
acf(x,plot = T,lag.max = length(x))

Теперь про признаки

Первый признак - ето количество экстремумов в  акф  (синие)

Второй признак - количество пересечений акф нулевой линии (красные)

Чем больше пересечений и экстремумов - тем сильнее флет

Функция которая возвращает два вышеописанных признака или параметра

get_parameters <- function(x){
  ac <- acf(x,lag.max = length(x),plot = F)
  
  
  library(quantmod)
  
  xx <- ac$acf
  
  pi <- findPeaks(xx)
  va <- findValleys(xx)
  length(c(pi,va))
  
  flet <- rep(0,length(xx))
  for(i in 5:length(xx)){
    
    if(xx[i-1]>0 && xx[i]<0)  flet[i] <- 1
    if(xx[i-1]<0 && xx[i]>0)  flet[i] <- 1
  }
  
  x1 <- length(c(pi,va))
  x2 <- sum(flet)
  
  return(c(x1,x2))
}

У метода есть недостаток - это  скользящее окно фиксированого размера, но его можно обойти , хотя алгоритм замедлиться в сотни раз, что есть плохо...


Ну теперь собственно результат

Флетом считаем ситуацию когда первый и второй признак больше 7-ми

алгоритм в скользящем окне размером 30 точек

алгоритм в скользящем окне размером 200 точек

и сам код

layout(1:1)
x <- cumsum(rnorm(1000))
plot(x,t="l")
n <- 200  # length roll window
for(i in n:length(x)){
  ii <- (i-(n-1)):i
  gp <- get_parameters(x[ii])
 flat <- gp[1]>=8 && gp[2]>=8
if(flat){
   rect(i-length(ii), min(x[ii]), i, max(x[ii]), col = "aquamarine3",border = "aquamarine3")
 }}
lines(x,t="l")


Если кто знает как можно улучшить алгоритм то не стесняйтесь

 
mytarmailS:

Кароч, .....

алгоритм в скользящем окне размером 30 точек

алгоритм в скользящем окне размером 200 точек

То есть если принять за окно всю историю, то будет флет от начала до конца?

 
Renat Akhtyamov:

То есть если взять окно размером всю историю, то будет флет от начала до конца?

почему?

 
mytarmailS:

почему?

просто интересно, что будет?
Причина обращения: