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

 
elibrario:

Scopro come funziona ogni rete separatamente. E cosa ottenere dalle loro uscite è una questione di gusto).

A proposito, sto guardando il codice del tuo file - c'è una formula diversa, non come nell'articolo, cioè n

Sembra che l'autore abbia modificato la formula.

Quindi forse non 3 ingressi (come nella formula originale), ma ancora 8... Non ho ancora capito l'essenza della nuova formula.


Stai leggendo l'articolo sbagliato :) qui
 

Sono lavori diversi. Non c'è bisogno di combinarli.

in una variabile

v0=blah blah blah blah

v1=blah blah blah blah

v2=blah blah blah blah

v3=blah blah blah blah

v4=blah blah blah blah

v5=blah blah blah blah

v6=blah blah blah blah

v7=blah blah blah blah

i valori degli ingressi sono registrati. poi il tutto viene inserito nella funzione

double getBinaryClassificator1(double v0, double v1, double v2, double v3, double v4, double v5, double v6, double v7) {

//нормализация данных
   double x0 = 2.0 * (v0 + 1189.0) / 2047.0 - 1.0;
   double x1 = 2.0 * (v1 + 810.0) / 2247.0 - 1.0;
   double x2 = 2.0 * (v2 + 1636.0) / 2155.0 - 1.0;
   double x3 = 2.0 * (v3 + 558.0) / 1252.0 - 1.0;
   double x4 = 2.0 * (v4 + 139.0) / 494.0 - 1.0;
   double x5 = 2.0 * (v5 + 74.97643) / 144.15451 - 1.0;
   double x6 = 2.0 * (v6 + 1026.56016) / 1938.48639 - 1.0;
   double x7 = 2.0 * (v7 + 4167.0) / 7074.0 - 1.0;
   
//полином он же сеть он же ИИ он же ГУРу и т.д. Но данные уже нормализованны.


double decision = 3.162907268170426 * sigmoid(x0)
  -1.0554004772410066 * sigmoid(x1 + x2 + x3)
  + 3.8921930574940347 * sigmoid(x0 + x1 + x4)
  -1.3775531643479957 * sigmoid(x1 + x2 + x3 + x4)
  -0.44704575810784447 * sigmoid(x0 + x5)
  -0.012703915477316044 * sigmoid(x0 + x1 + x5)
  -7.231026668467576 * sigmoid(x2 + x5)
  -0.059339966683175004 * sigmoid(x2 + x4 + x5)
  -2.786314588867378 * sigmoid(x0 + x1 + x2 + x4 + x5)
  + 2.1339726561913768 * sigmoid(x0 + x1 + x6)
  -0.49562529077183975 * sigmoid(x0 + x4 + x6)
  + 5.2147434454399475 * sigmoid(x0 + x3 + x4 + x6)
  -2.890797352663095 * sigmoid(x5 + x6)
  + 0.10933021175693726 * sigmoid(x0 + x5 + x6)
  -1.6844056248405446 * sigmoid(x1 + x2 + x5 + x6)
  -0.18093137034202272 * sigmoid(x1 + x3 + x5 + x6)
  + 0.6607987033451893 * sigmoid(x1 + x7)
  -1.8854921735476415 * sigmoid(x0 + x1 + x3 + x7)
  -1.1169615655906233 * sigmoid(x2 + x5 + x7)
  -0.6844731589452674 * sigmoid(x4 + x6 + x7)
  -0.4231236774571158 * sigmoid(x1 + x2 + x3 + x4 + x6 + x7)
  + 5.763615625891075 * sigmoid(1.0 + x1 + x2 + x3 + x5)
  -0.3138985187519697 * sigmoid(1.0 + x0 + x1 + x4 + x5)
  -1.8910224663455044 * sigmoid(1.0 + x1 + x3 + x4 + x5)
  + 2.1204658352467995 * sigmoid(1.0 + x2 + x3 + x4 + x5)
  + 6.219005597826903 * sigmoid(1.0 + x2 + x3 + x4 + x6)
  -3.740916662914772 * sigmoid(1.0 + x0 + x1 + x3 + x4 + x5 + x6);
   return decision;
}
 

Reshetov:

VS foresta decisionale a due classi e regressione logistica:

Reshetov vince questo con una valanga di voti

File:
HARD.txt  7 kb
 
Maxim Dmitrievsky:

Reshetov:

VS foresta decisionale a due classi e regressione logistica

Beh, Reshetov vince questo con una valanga di voti.


Se hai eseguito il dataset Hard, allora il mio risultato è il 72% di generalizzazione, a proposito, prendi il modello che ho già calcolato dal file HARD.mql e confrontalo. E cosa significa una vittoria secca, ammetto che è difficile interpretare il risultato.
 
Mihail Marchukajtes:

Se esegui il dataset Hard, allora il mio risultato è 72% di generalizzazione, a proposito, prendi il modello che ho caricato, è già calcolato dal file HARD.mql e confrontalo. E cosa significa "vittoria secca", ammetto che è difficile interpretare il risultato.

È un risultato ridotto, è quello che ho allegato. Vedi True positive e True negative, cioè il numero di previsioni di successo per comprare e vendere, R ha più previsioni di successo, 65% contro il 45% di altri modelli. Cioè il suo modello darebbe un profitto e altri darebbero una perdita.
 
elibrario:

Io estenderei il neurone a 10 ingressi...
Ma dobbiamo aggiungere le regole al 1024:

r0 = (1 - A) * (1 - B) * (1 - C) * p0
r1 = (1 - A) * (1 - B) * C * p1
r2 = (1 - A) * B * (1 - C) * p2
r3 = (1 - A) * B * C * p3 A) * B * C * p3
r4 = A * (1 - B) * (1 - C) * p4
r5 = A * (1 - B) * C * p5
r6 = A * B * (1 - C) * p6
r7 = A * B * C * p7


.....

r1023 =


Fa paura :D
File:
rnn_10.mq5  115 kb
 
Ildottor Trader:

Fa paura :D

Ahem, ahem.... sembra davvero, direi addirittura terrificante.....
 
Ildottor Trader:

Fa paura :D
Spero che non sia stato messo insieme a mano? È stato fatto in cicli? Manualmente ci sarebbero volute ore...
 
elibrario:
Spero che questo non sia stato compilato manualmente? Era in qualche modo a cicli? Manualmente ci sarebbero volute ore...

Manualmente, penso che si possano fare degli errori...
 
Ildottor Trader:

Fa paura :D

Spaventoso e un po' inutile, perché ci vorrà molto tempo nell'ottimizzatore :) nel cloud si può ancora