Nel calcolo ha un doppio loop di periodo medio per ogni barra (periodo*periodo sub-loop, non diventa molto più lento di così). Per evitarlo per il calcolo dei periodi lunghi l'unica soluzione (senza un modo di calcolo completamente diverso) è limitare il numero di barre calcolate. Allego una versione che può farlo.
Inoltre, se l'indicatore viene salvato con un nome diverso dall'originale, in multi time frame non funzionerà e rallenterà notevolmente il PC. Anche questo è stato corretto.
The_Snowman: Ha funzionato bene per te? Ne ho messo un paio e mi ha rallentato il computer! Grazie per aver postato
nel calcolo ha un doppio loop di periodo medio per ogni barra (periodo*periodo sub-loop, non diventa molto più lento di così). Per evitarlo per il calcolo dei periodi lunghi, l'unica soluzione (senza un modo di calcolo completamente diverso) è di limitare il numero di barre calcolate.
Inoltre, se l'indicatore viene salvato con un nome diverso dall'originale, in multi time frame non funziona e rallenta notevolmente il PC
.
Anche questo è stato corretto.
Grazie per lo sforzo, ma ne ho messi 4 su 1 grafico (200, 50, 20 & 10) e molto lento a vedere il grafico quando passo da Daily a 4 ore a 1 ora, qualche idea su questo?
Limitate le barre visualizzate (impostate il parametro MA_BarsToCount a qualche piccolo valore - da 3 a 4 centinaia dovrebbe andare bene) Se lo provate su tutte le barre, la sua complessità vi ucciderà quando cambierete time frame o simboli (ad esempio per un periodo 200 si riavvolge 40.000 volte su ogni singola barra). Se vogliamo mantenere i valori originali (senza fare approssimazioni) l'unico modo è limitare il numero di barre calcolate ...
Ma anche allora, i lunghi periodi di calcolo vi rallenteranno: l'indicatore ricalcolerà fino a 3 ultime barre e per un periodo di ma impostato a 200 significa 120.000 cicli per calcolare i pesi appropriati ...
The_Snowman: Grazie per lo sforzo, ma ne ho messi 4 su 1 grafico (200, 50, 20 & 10) e molto lento a vedere il grafico quando passo da Daily a 4 ore a 1 ora, qualche idea su questo?
Sta usando la forza bruta di una dll in c++ per rendere il tutto molto più veloce. Allegate anche il sorgente c++ (nel file zip). Scompattate la dll dal file zip (se c'è qualche problema con la decompressione, usate 7zip da questo link: 7-Zip ) e copiatela nella sottocartella experts\libraries di metatrader. Ha ancora la limitazione delle barre, ma vedrai che funziona molto più velocemente
The_Snowman: Grazie per lo sforzo, ma ne ho messi 4 su 1 grafico (200, 50, 20 & 10) e sono molto lento a vedere il grafico quando passo da Daily a 4 ore a 1 ora, qualche idea?
Utilizza la stessa dll della versione per metatrader 4 (non c'è bisogno di cambiare nulla nella dll per utilizzarla in metatrader 5) Come aggiunta, questa ha una colorazione della pendenza già fatta. Per far funzionare correttamente l'indicatore, copiate la iDWma.dll dal post superiore alla cartella MQL5\Libraries
mladen: O meglio ancora, usate questo. Sta usando la forza bruta di una dll in c++ per rendere il tutto molto più veloce. Allegato anche il sorgente c++ (nel file zip). Scompattate la dll dal file zip (se c'è qualche problema con la decompressione, usate 7zip da questo link: 7-Zip ) e copiatela nella sottocartella experts\libraries di metatrader. Ha ancora la limitazione delle barre, ma vedrete che funziona molto più velocemente
Ora va molto meglio, devi essere un programmatore al lavoro per fare tutto questo?
Ora abbiamo bisogno di un buon sistema per fornire segnali di trading; qualche suggerimento?
Dovremmo tutti essere grati al nostro amico per ricordare e contribuire qui.
Chi è il tuo amico?
permanente parlando .. amico .. amico ... su molti thread.
Media mobile con concetto interessante: Stimatore ponderato in base alla distanza - Wikipedia, l'enciclopedia libera
Media mobile pesata sulla distanza inversa (IDWma) - MQL4 Code Base
Media mobile con concetto interessante: Distance-weighted estimator - Wikipedia, l'enciclopedia liberaInverse Distance Weighted Moving Average (IDWma) - MQL4 Code Base
Ha funzionato bene per te? Ne ho messi un paio e mi hanno rallentato il computer!
Grazie per aver postato
Non ho problemi di consumo di CPU con l'indicatore. Sto ancora studiando l'indicatore, ha alcune caratteristiche interessanti (strane?).
...
Ci sono 2 ragioni per cui può farlo:
Ha funzionato bene per te? Ne ho messo un paio e mi ha rallentato il computer! Grazie per aver postato
Ci sono 2 ragioni per cui può farlo:
Grazie per lo sforzo, ma ne ho messi 4 su 1 grafico (200, 50, 20 & 10) e molto lento a vedere il grafico quando passo da Daily a 4 ore a 1 ora, qualche idea su questo?
...
Limitate le barre visualizzate (impostate il parametro MA_BarsToCount a qualche piccolo valore - da 3 a 4 centinaia dovrebbe andare bene) Se lo provate su tutte le barre, la sua complessità vi ucciderà quando cambierete time frame o simboli (ad esempio per un periodo 200 si riavvolge 40.000 volte su ogni singola barra). Se vogliamo mantenere i valori originali (senza fare approssimazioni) l'unico modo è limitare il numero di barre calcolate ...
Ma anche allora, i lunghi periodi di calcolo vi rallenteranno: l'indicatore ricalcolerà fino a 3 ultime barre e per un periodo di ma impostato a 200 significa 120.000 cicli per calcolare i pesi appropriati ...
Grazie per lo sforzo, ma ne ho messi 4 su 1 grafico (200, 50, 20 & 10) e molto lento a vedere il grafico quando passo da Daily a 4 ore a 1 ora, qualche idea su questo?
iDwma dll versione ...
O meglio ancora, usa questo.
Sta usando la forza bruta di una dll in c++ per rendere il tutto molto più veloce. Allegate anche il sorgente c++ (nel file zip). Scompattate la dll dal file zip (se c'è qualche problema con la decompressione, usate 7zip da questo link: 7-Zip ) e copiatela nella sottocartella experts\libraries di metatrader. Ha ancora la limitazione delle barre, ma vedrai che funziona molto più velocemente
Grazie per lo sforzo, ma ne ho messi 4 su 1 grafico (200, 50, 20 & 10) e sono molto lento a vedere il grafico quando passo da Daily a 4 ore a 1 ora, qualche idea?
iDWma versione metatrader 5 ...
Ecco una versione metatrader 5 di iDWma.
Utilizza la stessa dll della versione per metatrader 4 (non c'è bisogno di cambiare nulla nella dll per utilizzarla in metatrader 5) Come aggiunta, questa ha una colorazione della pendenza già fatta. Per far funzionare correttamente l'indicatore, copiate la iDWma.dll dal post superiore alla cartella MQL5\Libraries
O meglio ancora, usate questo. Sta usando la forza bruta di una dll in c++ per rendere il tutto molto più veloce. Allegato anche il sorgente c++ (nel file zip). Scompattate la dll dal file zip (se c'è qualche problema con la decompressione, usate 7zip da questo link: 7-Zip ) e copiatela nella sottocartella experts\libraries di metatrader. Ha ancora la limitazione delle barre, ma vedrete che funziona molto più velocemente
Ora va molto meglio, devi essere un programmatore al lavoro per fare tutto questo?
Ora abbiamo bisogno di un buon sistema per fornire segnali di trading; qualche suggerimento?