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

 
Dr.Trader:
Я делаю вручную, просто создаю модели в цикле.
можете кодом показать как создаются модели в цикле?
 

Создание комитета, и тестирование:

library(randomForest)

data(iris)

totalModels <- 100

trainSample <- sample(1:nrow(iris), round(nrow(iris)*2/3))
validationSample <- setdiff(1:nrow(iris), trainSample)

#train
modelVector <- c()
for(i in 1:totalModels){
        modelVector[[i]] <- randomForest(x=iris[trainSample, 1:(ncol(iris)-1)], y=iris[trainSample, ncol(iris)])
}

#validate
predictionMatrix <- matrix(NA, ncol=length(validationSample), nrow=0)
for(i in 1:totalModels){
        prediction <- predict(object = modelVector[[i]], newdata = iris[validationSample, 1:(ncol(iris)-1)])
        predictionMatrix <- rbind(predictionMatrix, prediction)
}
finalPrediction <-c()
for(i in 1:length(validationSample)){
        finalPrediction <- c(finalPrediction, names(sort(table(predictionMatrix[,i]), decreasing=TRUE)[1]))
}
"Accuracy:"
mean(finalPrediction == as.numeric(iris[validationSample, ncol(iris)]))

Есть проблема в том что оригинальные классы типа фактор, а результат в матрице конвертируется в соответствующие факторам порядковые номера. Поэтому в конце сравнение идёт через as.numberic().

Что бы всё работало нормально с факторами, нужно predictionMatrix создавать как data.frame, но после этого у меня функция rbind выдавала варнинги, нужно что-то ещё менять, я не разбирался что там не так.

 
Dr.Trader:

Создание комитета, и тестирование:

благодарю

 

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

 

Сдалка у меня выбилась по БУ, как видите... Просто ездил за витаминами, поэтому не рисковал, перевёл в БУ, но как грица, ставишь БУ, БУ и получаешь. Закон работает... 

 
Mihail Marchukajtes:

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

 

Сдалка у меня выбилась по БУ, как видите... Просто ездил за витаминами, поэтому не рисковал, перевёл в БУ, но как грица, ставишь БУ, БУ и получаешь. Закон работает... 

 

 а как  в пятницу от торговал алгоритм

 
Dr.Trader:

Создание комитета, и тестирование:

Есть проблема в том что оригинальные классы типа фактор, а результат в матрице конвертируется в соответствующие факторам порядковые номера. Поэтому в конце сравнение идёт через as.numberic().

Что бы всё работало нормально с факторами, нужно predictionMatrix создавать как data.frame, но после этого у меня функция rbind выдавала варнинги, нужно что-то ещё менять, я не разбирался что там не так.

Спасибо за полезный код.
 

Подскажите ... А если прогнать эти данные через Ваше машинное обучение ... Что можно выявить ?

# SL
 trailing stop rise
1
-40-5
0
2
-9
-
0
3
-23
70
91
4
-26
-14
21
5
-42
-
0
6
-43
-8
5
7
-11
12
65
8
-64
-12
0
9
-14 99 126
10
-32
-
10


# - номер сделки, SL - размер стоп-лосса,  trailing stop - трейлинг стоп, красный - закрытие с убытком, зеленый - закрытие с прибылью, прочерк - закрытие по стоп-лоссу,

rise - размер движения которое можно было взять, 0 - не было движения (возможный профит который можно было взять по этой сделке). Все указано в пунктах ...

Take Profit - отсутствует. 


Если кто знает если прогнать эти три переменные-кривые через MatLab или Statistica - какие данные можно получить ?

 
Itum:

Подскажите ... А если прогнать эти данные через Ваше машинное обучение ... Что можно выявить ?

 какие данные можно получить ?

 вопрос поставлен не корректно,  вопрос что вы хотите получить от этих данных ?

 ответ на ваш данный вопрос - ничего 

 
mytarmailS:

 вопрос поставлен не корректно,  вопрос что вы хотите получить от этих данных ?

 ответ на ваш данный вопрос - ничего 

  • Хочу получить насколько эти переменные связаны  между собой (есть ли тенденция), есть ли между ними корреляция.
  • Насколько просадка влияет на будущее движение (восстановление)
  • Нужны показатели которые максимально покажут-спрогнозируют дальнейшую тенденцию.
 
Itum:
  • Хочу получить насколько эти переменные связаны  между собой (есть ли тенденция), есть ли между ними корреляция.
  • Насколько просадка влияет на будущее движение (восстановление)
  • Нужны показатели которые максимально покажут-спрогнозируют дальнейшую тенденцию.

1) можно построить корреляционную матрицу

2) наверное нужно построить зависимость просадки от будущего движения 

3) строите модель которая прогнозирует тенденцию и смотрите важность переменных в ней

 

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

Причина обращения: