Aprendizaje automático en el trading: teoría, práctica, operaciones y más - página 908

 
Mihail Marchukajtes:

Vtreat.R.

Gracias.

¿Es algo en R?

Probé mi kit en Rattle - Seleccioné el aprendizaje en todas las redes, pero finalmente obtuve un error después de muchas reflexiones


 
Elibrarius:

En ciclos)).

Pero todas las combinaciones y PCs contarán durante veinticuatro horas...
10 predictores, combinaciones 2^10 = 1024.

20 predictores, = 2^20 = 1048576

Esa es la cantidad de veces que hay que entrenar a un bosque/norte.

No tengo prisa... Podría ponerlo en un ordenador aparte y dejar que cuente por sí mismo.

Pero, ¿qué software digno tiene usted?

 
Mihail Marchukajtes:

Vtreat.R

¿Cómo puedo ejecutarlo? Llamo avtrear() y frunce el ceño.

--- Пожалуйста, выберите зеркало CRAN для использования в этой сессии ---
пробую URL 'https://cran.univ-paris1.fr/bin/windows/contrib/3.5/vtreat_1.0.4.zip'
Content type 'application/zip' length 975668 bytes (952 KB)
downloaded 952 KB

пакет ‘vtreat’ успешно распакован, MD5-суммы проверены

Скачанные бинарные пакеты находятся в
        C:\Users\S_V_A\AppData\Local\Temp\RtmpeQVyba\downloaded_packages
> local({pkg <- select.list(sort(.packages(all.available = TRUE)),graphics=TRUE)
+ if(nchar(pkg)) library(pkg, character.only=TRUE)})
> vtrear()
Ошибка в vtrear() :не могу найти функцию "vtrear"
> utils:::menuInstallPkgs()
 
Maxim Dmitrievsky:

¿alguna foto? deja de hablar de nada, tampoco necesitas ninguna buena, lol :)

Ni siquiera sé... Doc también dio todos los códigos de MKUL para que el modelo pueda ser utilizado inmediatamente en MT. Lo único que no me ha gustado de elmnn es que no importa cuántas veces lo haya entrenado, siempre da el mismo resultado en OOS. Así que, no importa cuántas veces lo entrene, siempre da el mismo resultado :-) Pero el trabajo acaba de empezar y necesito más pruebas para tener un veredicto seguro...

 
Aleksey Vyazmikin:

¿Cómo puedo ejecutarlo? Llamo avtrear() y frunce el ceño.

forexFeatures<-forexFeatures1[i:n_rw,1:n_enter+1]
set.seed(1234)
#designTreatmentsC  подходит только для классификации с двумя классами
treatmentsC <- designTreatmentsC(dframe = forexFeatures,
                                varlist=colnames(forexFeatures)[-ncol(forexFeatures)], #названия  колонок с предикторами (тут - все кроме последней колонки)
                                 outcomename = colnames(forexFeatures)[ncol(forexFeatures)], #названия  колонок с таргетом (тут - последняя колонка)
                                 outcometarget = "1") #текст  или цифра одного из классов
#обработка,  сортировка результата
treatmensC_scores <- treatmentsC$scoreFrame[order(treatmentsC$scoreFrame$sig),]
treatmensC_scores <- treatmensC_scores[!duplicated(treatmensC_scores$origName),]
treatmensC_scores <- treatmensC_scores[,c("origName","sig")] 
treatmensC_scores$is_good <- treatmensC_scores$sig <= 1/nrow(forexFeatures)
treatmensC_scores

En fin, la cosa va así. Pero es la evaluación para la clasificación de objetivos donde sólo hay 0 y 1. Para la regresión es muy diferente...

 

Cómo interpretar correctamente el resultado de un modelo de bosque aleatorio: ¿es bueno o malo?

Summary of the Random Forest Model
==================================

Number of observations used to build the model: 282752
Missing value imputation is active.

Call:
 randomForest(formula = as.factor(arr_Sell) ~ .,
              data = crs$dataset[crs$sample, c(crs$input, crs$target)],
              ntree = 500, mtry = 5, importance = TRUE, replace = FALSE, na.action = randomForest::na.roughfix)

               Type of random forest: classification
                     Number of trees: 500
No. of variables tried at each split: 5

        OOB estimate of  error rate: 0.85%
Confusion matrix:
      -1      0 class.error
-1 21438   1825 0.078450759
0    584 258905 0.002250577

Analysis of the Area Under the Curve (AUC)  
==========================================

Call:
roc.default(response = crs$rf$y, predictor = as.numeric(crs$rf$predicted))

Data: as.numeric(crs$rf$predicted) in 23263 controls (crs$rf$y -1) < 259489 cases (crs$rf$y 0).
Area under the curve: 0.9596

95% CI: 0.9579-0.9614 (DeLong)

Variable Importance
===================

                                 -1      0 MeanDecreaseAccuracy
arr_iDelta_MN1               138.27 133.11               140.22
arr_iDelta_H6                125.08 121.39               133.93
arr_iDelta_H12               123.70 122.14               133.35
arr_Regresor                 128.66 115.53               127.84
arr_iDelta_W1                139.04 113.42               127.63
arr_iDelta_Min_D1            116.08 109.00               118.71
arr_LastBarPeresekD_Up_M15   104.77 115.87               118.67
arr_LastBarPeresekD_Down_M15 101.57 111.98               114.99
arr_TimeH                    109.29 110.21               111.94
arr_iDelta_Max_H1            106.04 102.77               109.00
arr_DonProcVisota             95.92 109.61               106.40
arr_iDelta_D1                116.65  90.42               103.11
arr_iDelta_Max_D1             96.33  94.41               101.86
arr_iDelta_H4                 78.47  90.86                90.15
arr_DonProc_M15               78.25  84.56                85.65
arr_Den_Nedeli                83.49  81.88                83.28
arr_DonProc                   58.30  84.22                76.08
arr_iDelta_H3                 55.64  64.18                62.44
arr_RSI_Open_H1               70.07  47.21                58.58
arr_LastBarPeresekD_Up        49.16  59.19                56.28
arr_iDelta_Min_H1             47.12  60.19                55.55
arr_Vektor_Week               53.23  52.12                54.44
arr_iDelta_H1                 41.20  48.63                46.96
arr_Vektor_Don_M15            46.79  40.64                45.61
arr_LastBarPeresekD_Down      33.46  42.79                39.32
arr_Vektor_Day                31.94  32.05                32.78
arr_Vektor_Don                18.94  22.51                21.50
arr_BB_Center                 19.91  21.46                21.07
arr_RSI_Open_M1               24.14  15.21                18.13
arr_BB_Down                   18.22  13.54                15.41
arr_BB_Up                     11.74  12.82                13.13
                             MeanDecreaseGini
arr_iDelta_MN1                        1786.84
arr_iDelta_H6                         1257.97
arr_iDelta_H12                        1286.82
arr_Regresor                          1162.09
arr_iDelta_W1                         1611.97
arr_iDelta_Min_D1                     1009.56
arr_LastBarPeresekD_Up_M15             990.33
arr_LastBarPeresekD_Down_M15          1051.66
arr_TimeH                             1718.65
arr_iDelta_Max_H1                      945.35
arr_DonProcVisota                     1146.33
arr_iDelta_D1                         1179.92
arr_iDelta_Max_D1                     1036.35
arr_iDelta_H4                         1182.16
arr_DonProc_M15                       1102.40
arr_Den_Nedeli                        1185.70
arr_DonProc                            699.24
arr_iDelta_H3                         1163.34
arr_RSI_Open_H1                        228.25
arr_LastBarPeresekD_Up                 839.31
arr_iDelta_Min_H1                      760.00
arr_Vektor_Week                        278.21
arr_iDelta_H1                          778.78
arr_Vektor_Don_M15                     220.85
arr_LastBarPeresekD_Down               731.15
arr_Vektor_Day                         155.12
arr_Vektor_Don                         215.34
arr_BB_Center                          155.38
arr_RSI_Open_M1                         99.55
arr_BB_Down                             82.22
arr_BB_Up                               56.65

Time taken: 1.26 hours

Rattle timestamp: 2018-05-14 04:12:32 S_V_A
======================================================================

Sobre los datos de la prueba (15%)

Error matrix for the Random Forest model on Pred_023.csv [test] (counts):

      Predicted
Actual   -1     0 Error
    -1 4502   409   8.3
    0   125 55555   0.2

Error matrix for the Random Forest model on Pred_023.csv [test] (proportions):

      Predicted
Actual  -1    0 Error
    -1 7.4  0.7   8.3
    0  0.2 91.7   0.2

Overall error: 0.9%, Averaged class error: 4.25%

Rattle timestamp: 2018-05-14 12:48:08 S_V_A

Así es como no pude dividirlo en dos archivos, nadie puede explicarlo claramente :(

 
Aleksey Vyazmikin:

¿Cómo puedo ejecutarlo? Llamo avtrear() y frunce el ceño.

El paquete se llama de otra manera y necesita:

library(vtreat)

El paquete contiene varias funciones, ¿es demasiado perezoso para abrir la documentación?

 
Mihail Marchukajtes:

Eso es todo. Pero se trata de una estimación para la clasificación del objetivo, donde sólo hay 0 y 1. Para la regresión es diferente...

Entonces, ¿no tiene un shell gráfico? ¿Cómo se invoca?

 
SanSanych Fomenko:

El paquete se llama de otra manera y debería serlo:

library(vtreat)

El paquete contiene varias funciones, ¿le da pereza abrir la documentación?

¿Dónde conseguir la documentación?

 
Aleksey Vyazmikin:

Entonces, ¿no tiene shell gráfico? ¿Cómo se invoca un shell?

No. Pero escribí un script que sube todo a Excel y luego hago mi magia allí. No puedo darte el guión porque es mi cerebro.... Bueno, he hecho una cosa muy original. No sé cómo estimas los predictores, pero el resultado es una tabla muy legible para el análisis posterior... Así...