L'apprentissage automatique dans la négociation : théorie, modèles, pratique et algo-trading - page 239

 
Andrey Dik:
Essayez de décrire la bougie par deux nombres, chacun dans l'intervalle [-1,0 ; 1,0]. Ce sont les positions de O et C par rapport à H et L.
Dans votre exemple, cela ressemblerait à ceci :
1. [-0.8 ; 0.8]
2. [-0.2 ; 0.2]
3. [-0.9 ; -0.1]
comment faire ?
 
mytarmailS:
Comment faites-vous cela ?
Dans la hauteur H est 1, L est -1, exprimez respectivement O et C par rapport à H et L.
Cela décrit clairement la forme, quelle que soit la taille de la bougie.

 
Andrey Dik:
Par la hauteur H est 1, L est -1, exprimez respectivement O et C par rapport à H et L.
Cela décrit clairement la forme, quelle que soit la taille de la bougie.

La volatilité de la bougie n'est pas prise en compte ici, tous les calculs vont à l'intérieur de la bougie, et quel type de bougie c'est, une bougie de gap ou un petit dojiq le MO ne voit pas

Je pense que le plus normal, ce sont les incréments en %, mais je ne les compte pas correctement.

 
mytarmailS:

La volatilité de la bougie n'est pas prise en compte ici, tous les calculs se font à l'intérieur de la bougie, et quel type de bougie c'est, une bougie de gap ou un petit dojiq le MO ne voit pas

Je pense que le plus normal est l'incrément en %, mais je n'y arrive pas.

la volatilité est exactement ce que vous ne devez pas prendre en compte. et les écarts doivent être supprimés (décaler la bougie de la distance de l'écart).
 
Andrey Dik:
La volatilité ne doit pas être prise en compte, mais les gaps doivent être supprimés (chandeliers décalés de la distance du gap).
Au contraire, les lacunes doivent être mémorisées - et prises en compte. Puisque les écarts sont statistiquement fermés de toute façon. Une fois, j'ai cherché un indicateur pour les écarts - je ne l'ai pas trouvé, j'ai fait le piégeage moi-même en utilisant des fractales. Mais j'ai encore besoin d'un bon indicateur.
 
Les gars, il y a un indicateur appelé CandleCode, il encode les bougies qui sont exactement les mêmes et ont le même code, en tenant compte du spread. Pourquoi tu inventes un vélo, je ne comprends pas :-(
 
Vizard_:
La leçon est terminée))))

Merci, je crois que j'ai trouvé. Ça semble très simple, je n'y crois pas, mais je vais vérifier.

Il est également étrange que le signe soit un prédicteur distinct, je rendrais simplement la taille de la bougie négative si elle est en baisse. Je devrais essayer ça aussi.

 
Dr. Trader:

Merci, je crois que j'ai compris. Ça semble très simple, je n'y crois pas, mais je vais vérifier.

Il est également étrange que le signe soit un prédicteur distinct, je rendrais simplement la taille de la bougie négative si elle est en baisse. Je devrais essayer ça aussi.

Je ne comprends pas, cependant.

Comment faire une cible ?

D'où vient la formule ?

 

Je continue de croire que si l'on ne sélectionne pas les prédicteurs en fonction de leur impact sur la variable cible, tout le reste n'est pas pertinent. C'est la toute première étape. Soit nous supprimons les prédicteurs de bruit et alors nos chances de construire un modèle NON réentraîné augmentent, soit les prédicteurs de bruit restent, ce qui entraînera nécessairement un réentraînement. Et puisque le comportement du modèle recyclé dans le futur n'est en aucun cas lié à son comportement dans le passé, un tel modèle recyclé n'est pas nécessaire.

Une autre approche intéressante pour déterminer l'importance des prédicteurs. Les algorithmes multiples pour déterminer l'importance desprédicteurs ne sont pas utilisés.

Voici le code exécuté de ce post

> n <- 10000
>
> x1 <- runif(n)
> x2 <- runif(n)
> y <- -500 * x1 + 50 * x2 + rnorm(n)
>
> model <- lm(y ~ 0 + x1 + x2)
>

 

 


> # 1a. Standardized betas
> summary(model)$coe[,2]
        x1         x2
0.02599082 0.02602010
> betas <- model$coefficients
> betas
        x1         x2
-500.00627   50.00839

 

 


> imp <- abs(betas)/sd.betas
Ошибка: объект 'sd.betas' не найден
> sd.betas <- summary(model)$coe[,2]
> betas <- model$coefficients
> imp <- abs(betas)/sd.betas
> imp <- imp/sum(imp)
> imp
       x1        x2
0.9091711 0.0908289

 

 


> imp1 <- abs(model$coefficients[1] * sd(x1)/sd(y))
> imp2 <- abs(model$coefficients[2] * sd(x2)/sd(y))
>
> imp1 / (imp1 + imp2)
       x1
0.9095839

 

 


> imp2 / (imp1 + imp2)
       x2
0.0904161

 

 


> # 2. Standardized variables
> model2 <- lm(I(scale(y)) ~ 0 + I(scale(x1)) + I(scale(x2)))
> summary(model2)

Call:
lm(formula = I(scale(y)) ~ 0 + I(scale(x1)) + I(scale(x2)))

Residuals:
       Min         1Q     Median         3Q        Max
-0.0236475 -0.0046199  0.0000215  0.0046571  0.0243383

Coefficients:
               Estimate Std. Error t value Pr(>|t|)    
I(scale(x1)) -9.932e-01  6.876e-05  -14446   <2e-16 ***
I(scale(x2))  9.873e-02  6.876e-05    1436   <2e-16 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 0.006874 on 9998 degrees of freedom
Multiple R-squared:      1,     Adjusted R-squared:      1
F-statistic: 1.058e+08 on 2 and 9998 DF,  p-value: < 2.2e-16

 

 


> abs(model2$coefficients)/sum(abs(model2$coefficients))
I(scale(x1)) I(scale(x2))
  0.90958355   0.09041645

How important is that variable?
  • 2016.12.03
  • Andrés Gutiérrez
  • hagutierrezro.blogspot.nl
When modeling any phenomena by including explanatory variables that highly relates the variable of interest, one question arises: which of the auxiliary variables have a higher influence on the response? I am not writing about significance testing or something like this. I am just thinking like a researcher who wants to know the ranking of...
Raison: