Discussione sull’articolo "3 Metodi di accelerazione degli indicatori mediante l'esempio della regressione lineare"
Onestamente bajan, su questo è già cinque anni come noto sul quarto forum.
Ma penso che sarà interessante per i principianti.
L'articolo dimostra ancora una volta che i metodi statistici implementati negli indicatori standard sono la regola, non sottovalutarli.
. a proposito, esistono anche formule di regressione del secondo ordine attraverso i mashki.
- www.mql5.com
Onestamente bajan, su questo è già cinque anni come noto sul quarto forum.
Ma credo che i nuovi arrivati saranno interessati.
Sì, l'articolo è orientato più ai principianti.
L'articolo dimostra ancora una volta che i metodi statistici implementati negli indicatori standard sono fondamentali, non bisogna sottovalutarli.
Questo è certo. Penso che gli indicatori integrati nel terminale (iMA, ecc.) funzionino velocemente non solo grazie alla conoscenza dei metodi di ottimizzazione da parte degli sviluppatori del terminale, ma anche grazie al fatto che vengono eseguiti come parte di un file exe. In altre parole, a differenza degli indicatori esterni, si tratta di una vera e propria compilazione, non di un codice pi greco. Forse hanno un accesso diretto ad alta velocità ai timer, che non è disponibile per gli indicatori esterni.
Ho provato a usare masha non integrati per il metodo della convoluzione - anche se sono ottimizzati bene, sono molto più lenti di quelli integrati.
Dialogo con l'autore. Alexander Smirnov. questa è la seconda discussione su questo argomento, la prima risale al 2006.
. a proposito, esistono anche formule per la regressione del secondo ordine tramite mashki.
Sì, ho visto argomenti simili. Ma da nessuna parte era chiaro, passo dopo passo, come si otteneva la convoluzione. Ho dovuto ricavare io stesso tutte le formule (ho scritto diversi fogli di bozze) per poter raccontare tutte le sfumature dell'articolo. C'è un punto delicato con la numerazione delle barre per il LWMA, ad esempio.
Ecco la prova. Cioè, un po' prima di Urain che ha dato il link.
Non rivendico la priorità :). In generale, si tratta di un fatto quasi banale.
P.S. Se non ho dimenticato tutto, il risultato del confronto delle velocità era ancora a favore del calcolo classico - ma significativamente ottimizzato (la differenza non è grande, ma comunque; vedi i post di Candid' a). Tuttavia, una tecnica simile applicata a regressioni di ordine superiore (quadratiche, cubiche, ecc.) sembra in grado di mostrare il vantaggio del metodo della "convoluzione" rispetto a quello classico.
- www.mql5.com
Articolo molto buono e utile ma ho una domanda.
Se utilizziamo il metodo dei totali mobili è vero che l'indicatore guadagna molta velocità ma questo significa aggiungere 4 buffer ausiliari che aumentano il consumo di memoria.
Quindi la domanda è: qual è il metodo migliore, quello Standard che usa meno memoria o quello dei Totali Mobili che usa più memoria ma è più veloce?
C'è qualcosa di sbagliato nell'implementazione:
Quando LRMethod == LR_M_Sum
si scopre che Sx e Sxx sono costanti:
Sxx = ExtBufSxx[prevbar];
ExtBufSxx [bar] = Sxx;
Se questo è il caso, perché i buffer?
Forse sarebbe ancora più veloce se si contassero SMA e LWMA con il metodo della somma mobile e si contasse il risultato come una convoluzione.
Inoltre, sarebbe opportuno conoscere la pendenza della regressione, che può essere calcolata anche tramite SMA e LWMA.
L'ho implementato su 4: https://www.mql5.com/it/code/10642
- voti: 3
- 2012.03.08
- Vladislav Eremeev
- www.mql5.com
Ciao,
crea una funzione di regressione ad ogni barra (in base al numero definito delle ultime barre) e mostra quale valore dovrebbe avere in quella barra''.
Ma come posso calcolare la pendenza dell'ultima linea di regressione (conosco solo l'ultimo punto che forma la curva)...
Grazie per l'aiuto
Petr
Ciao
Grazie per questo articolo. Ma potresti dirmi come chiamare i tuoi metodi all'interno del mio codice MQL5? Non capisco come fare, non capisco l'elenco dei parametri all'interno dei vostri metodi. come posso ottenere il valore restituito dalla regressione lineare in un dato momento all'interno del mio codice dopo aver integrato il vostro?
- App di trading gratuite
- Oltre 8.000 segnali per il copy trading
- Notizie economiche per esplorare i mercati finanziari
Accetti la politica del sito e le condizioni d’uso
Il nuovo articolo 3 Metodi di accelerazione degli indicatori mediante l'esempio della regressione lineare è stato pubblicato:
L'articolo tratta i metodi di ottimizzazione degli algoritmi di calcolo degli indicatori. Ciascuno troverà il metodo più adatto alle proprie esigenze. Qui sono descritti tre metodi. Uno di questi è abbastanza semplice, il successivo richiede una solida conoscenza della matematica e l'ultimo richiede un po' di arguzia. Gli indicatori o le funzionalità di progettazione del terminale MetaTrader5 vengono utilizzati per realizzare la maggior parte dei metodi descritti. I metodi sono abbastanza universali e possono essere utilizzati non solo per l'accelerazione del calcolo della regressione lineare, ma anche per molti altri indicatori.
gnifica che questo ritardo è causato dalla SMA e dalla LWMA appena create che stavano eseguendo alcuni calcoli in quel momento. Anche la durata di questi calcoli deve essere considerata, quindi valuteremo tutto il tempo "ininterrottamente" - dall'inizializzazione dell'indicatore di regressione fino alla fine dei suoi calcoli.
Per notare la differenza tra le velocità dei diversi metodi in modo più accurato, tutte le valutazioni vengono condotte utilizzando un enorme array di dati - intervallo di tempo M1 con profondità della cronologia massima accessibile. Sono più di 4 milioni di barre. Ciascun metodo sarà valutato due volte: con 20 e 2000 barre in regressione.
I risultati sono i seguenti:
Autore: ds2