L'apprendimento automatico nel trading: teoria, modelli, pratica e algo-trading - pagina 234

 
mytarmailS:

Per favore, aiutatemi a capire...

Che diavolo sta succedendo? Tutto sembra andare bene, c'è un bug o qualcosa del genere?

===============================================================

Qui sotto c'è un esempio di come ottenere (un possibile!) ciò di cui avete bisogno. Anche se non è chiaro perché ne hai bisogno? O non capisco la sua domanda?

X <- rep(0,1000)
Y <- rep(999,100)
dat <- sample(c(X, Y))
table(dat)
0  999
1000  100
#Возьмем последние 100 значения вектора dat
s <-tail(dat,100)
# Определим индексы этого куска
# в которых Значения не = 0
which(s!=0)
[1]  2  6  9 11 19 20 21 35 36 43 51 59 80
[14] 90 98
# Проверим визуально
> s
[1]   0 999   0   0   0 999   0   0 999   0
[11] 999   0   0   0   0   0   0   0 999 999
[21] 999   0   0   0   0   0   0   0   0   0
[31]   0   0   0   0 999 999   0   0   0   0
[41]   0   0 999   0   0   0   0   0   0   0
[51] 999   0   0   0   0   0   0   0 999   0
[61]   0   0   0   0   0   0   0   0   0   0
[71]   0   0   0   0   0   0   0   0   0 999
[81]   0   0   0   0   0   0   0   0   0 999
[91]   0   0   0   0   0   0   0 999   0   0
# Запишем все это красиво
require(magrittr)
# Преобразуем вектор в матрицу
d <- matrix(dat, ncol = 100, byrow = T)%>%
# пройдемся по строкам и определим индексы
# ненулевых значений  
  apply(., 1, function(x) which(x != 0))%>%
# пройдемся по списку и отберем последние
# три индекса
  lapply(., function(x) tail(x, 3))%>%
# преобразуем список в вектор
  unlist()%>%
# преобразуем вектор в матрицу
  
matrix(., ncol = 3, byrow = T)
> d
[,1] [,2] [,3]
[1,]   64   72   93
[2,]   66   79   84
[3,]   73   87   92
[4,]   62   85  100
[5,]   94   97   98
[6,]   83   93   94
[7,]   52   65   74
[8,]   63   70   99
[9,]   61   62   79
[10,]   75   76   98
[11,]   80   90   98
 
Vladimir Perervenko:
Ниже пример получения (один из возможных!) того, что Вам нужно. Хотя и не понятно зачем Вам это? Или я не понял вопрос?

"999" è un livello di supporto o di resistenza, non ha molta importanza, solo un "livello".

Il livello non è su ogni candela, succede quando vuole, ecco perché la vista

0 999   0   0   0 999   0   0 999   0

Così, quando creo una data del treno e scrivo ogni candela, voglio ricordare gli ultimi tre livelli precedenti.

Questo è un po' il punto. :)

 

Alcuni post sono stati cancellati...
Ripeto ad Andrey Dik, che si vantava dei suoi "codici":

Do this Challenge Plz -https://numer.ai/

Risultato R assemblato da "cubi" (funzioni e librerie standard) = 0.69121https://numer.ai/ai/dr_tr
Non molto, ma sopra la media,
e considerando che qualsiasi scolaretto può costruire un tale modello dai dadi e insegnarlo con le istruzioni per mezz'ora, è un risultato decente.

Tutti possono vantarsi e insegnare... Questo risultato dirà molto di più sulla persona.

 
Dr.Trader:

Alcuni post sono stati cancellati...
Ripeto ad Andrey Dik, che si vantava dei suoi "codici":

Do this Challenge Plz -https://numer.ai/

Risultato R, assemblato da "cubi" (funzioni e librerie standard) = 0.69121https://numer.ai/ai/dr_tr
Non molto, ma sopra la media,
E considerando che qualsiasi scolaretto può costruire un tale modello dai dadi e insegnarlo con le istruzioni per mezz'ora, è un risultato decente.

Tutti possono vantarsi e insegnare... Questo risultato dirà molto di più sulla persona.

Quindi continuerai a "punzecchiare"?

Cosa ti fa pensare che io cada nel "come ti permetti?"? Che interesse ho in questo?

Non mi stavo vantando dei miei codici, stavo affermando un fatto. Migliaia di persone (assolutamente gratis) usano effettivamente l'algoritmo genetico dell'articolo (o le sue modifiche) nei loro progetti. Mi contattano e chiedono di integrarlo nei loro progetti se non riescono a farlo. Questa era una parata sul tipo di affondo "sei un troll e non hai fatto un cazzo", piuttosto che un vanto.

 

Dal newsfeed ho ricevuto informazioni su Random Forests for Survival, Regression and Classification (RF-SRC). Il pacchetto si chiama randomForestsSRC.

L'ideologia Random Forest for Survival è Survival.

Ho cercato cosa sia la sopravvivenza in generale.

Nella nostra ideologia, per esempio, 'Survival' è un guadagno di 100 pip. In medicina, dove si applicano tali modelli, è la morte.

Il modello stesso richiede una variabile "tempo di vita". Il numero di barre prima di raggiungere 100 pips nel mio esempio è suggerito come una tale variabile.

Costruiamo un insegnante per il modello.

ZZ dà le inversioni. Segniamo le spalle con zero e uno.

La seconda variabile - il tempo di sopravvivenza - è necessaria nei modelli

In PZ impostiamo il profitto minimo in pip.

Poi torniamo indietro e formiamo il numero di barre prima di quel pivot. Se PZ si è dispiegato più tardi del suo parametro, tutte le barre che ci garantiscono un profitto sono contrassegnate allo stesso modo. Questo è il momento di vivere. Otteniamo un vettore della seguente forma:

1,1,1,..1,2,3,4... n

La barra numero "n" corrisponde a un'inversione ZZ. E da 1 a n dà il profitto, che abbiamo impostato come parametro ZZ.


PS.

Ci sono molti modelli di Survival. Personalmente non ho prestato molta attenzione a loro, perché sono usati in medicina. Anche se "morti" e "curati" usati in questi modelli sono molto ben interpretati nel trading come takeprofit, stop loss, drawdown, cioè alcune condizioni limite che causano ordini di trading successivi.


 
Dr.Trader:

Alcuni post sono stati cancellati...
Ripeto ad Andrey Dik, che si vantava dei suoi "codici":

Do this Challenge Plz -https://numer.ai/

Risultato R, assemblato da "cubi" (funzioni e librerie standard) = 0.69121https://numer.ai/ai/dr_tr
Non molto, ma sopra la media,
E considerando che qualsiasi scolaretto può costruire un tale modello dai dadi e insegnarlo con le istruzioni per mezz'ora, è un risultato decente.

Tutti possono vantarsi e insegnare... Questo risultato dirà molto di più sulla persona.

ML battle gotAI qui i ragazzi hanno 0,69033 e se ne vergognano
 
mytarmailS:

"999" è un livello di supporto o di resistenza, non ha molta importanza, solo un "livello".

Il livello non è su ogni candela, succede quando vuole, ecco perché la vista

0 999   0   0   0 999   0   0 999   0

Così, quando creo una data del treno e scrivo ogni candela, voglio ricordare gli ultimi tre livelli precedenti.

Questo è un po' il punto. :)

==================================

Ahh, beh, questo deve essere cambiato un po'. Usate una larghezza della finestra scorrevole di 100.

 
lucky_teapot:
ML battle gotAI qui i ragazzi hanno 0.69033 e se ne vergognano

Thread interessante, grazie, specialmente il compagno "NO"

Vladimir Perervenko:

Già fatto, grazie

 

Mi è capitato di guardare il profilo di lucky_teapot, c'era un thread sul forum con un link all'articolo. Penso che sia stato trasferito dal forum mql4.com, che non ho quasi mai studiato, grazie a MetaQuotes se è stato davvero da lì.
L'articolo ha quasi 9 anni, ma ho trovato un sacco di cose utili che potrei anche provare ora. Credo di aver capito anche lo spazio di ritardo dimensionale, che Alexei ha già menzionato un paio di volte in questo thread.
L'articolo stesso, lo trovo molto utile -https://www.mql5.com/ru/articles/1506

Tutte le lezioni di questo corso, anche interessanti -http://www.intuit.ru/studies/courses/2255/139/info

 
Dr.Trader:

Ho guardato per caso nel profilo di lucky_teapot, c'era un thread del forum con un link a un articolo. Penso che sia stato trasferito dal forum di mql4.com, che non ho davvero studiato, grazie a MetaQuotes se è stato davvero da lì.
L'articolo ha quasi 9 anni, ma ho trovato un sacco di cose utili che potrei anche provare ora. Credo di aver capito anche lo spazio di ritardo dimensionale, che Alexei ha già menzionato un paio di volte in questo thread.
L'articolo stesso, lo trovo molto utile -https://www.mql5.com/ru/articles/1506

Tutte le lezioni di questo corso, anche interessanti -http://www.intuit.ru/studies/courses/2255/139/info

===========================================================================

All'epoca l'articolo fu letto con grande interesse. Oggi è un po' irritante - 'gioco', 'indovinato'. Molta matematica, per quanto accademica, ma questi sono i dettagli, naturalmente. La cosa principale per me da allora - solo indicatori per gli ingressi, non usare metriche standard, solo classificazione e determinazione dinamica del volume del lotto.

A quel tempo non c'erano molti pacchetti per reti neurali (per esempio FANN), e collegarli con MT4 era un'avventura. Ora, naturalmente, la scelta dei programmi è molto più ampia. Non si può stare al passo con loro tutto il tempo.

Buona fortuna

Motivazione: