una strategia di trading basata sulla teoria dell'onda di Elliott - pagina 272

 
a Candid

<br/ translate="no"> Non voglio dare l'impressione di essere una specie di scoraggiatore...


Pensavo di essere io a cercare di convincerti a usare Hirst. Non puoi dissuadermi dall'usarlo. Statistiche, però. :о)))

Al momento ho tutto in Matkadec. Sto pensando di fare una versione per MT per i test. L'unica domanda è: in modalità test al momento dell'inizio di qualsiasi funzione (per esempio, previsione) che richiede un tempo lungo per il calcolo (per esempio, 1-7 ore), il tester fornirà le quotazioni durante il calcolo o aspetterà il completamento della funzione?
 
L'unica domanda è: quando è in modalità test all'inizio di una funzione (per esempio la previsione) che richiede un lungo tempo di calcolo (per esempio 1-7 ore), il tester fornirà le quotazioni durante il calcolo o aspetterà che la funzione sia completata?

Non lo so. Faccio sempre dei test in un terminale standalone.
 
Вот только вопрос: при режиме тестирования на момент запуска какой либо функции (например, прогноза), требующей продолжительное время для расчета (например, 1-7 часов), тестер во время расчета будет поставлять котировки или будет ждать завершения выполнения функции?

Non lo so. Faccio sempre dei test nel terminale offline.


Mi riferivo alla stessa modalità. Intendevo se il tester emula i nuovi arrivi mentre la previsione viene calcolata (1-7 ore)
 
Vuoi dire che le previsioni saranno contate nel dll? Non lo so comunque. Non sarebbe meglio scrivere la previsione su un file in anticipo e leggerla da lì?
 
Вот только вопрос: при режиме тестирования на момент запуска какой либо функции (например, прогноза), требующей продолжительное время для расчета (например, 1-7 часов), тестер во время расчета будет поставлять котировки или будет ждать завершения выполнения функции?

Не знаю. Я всегда тестирую в автономном терминале.


Mi riferivo alla stessa modalità. Intendevo se il tester emula i nuovi arrivi mentre la previsione viene calcolata (1-7 ore)


Il tester non tiene conto del fattore tempo. Conterà prima la vostra funzione start() fino alla fine e poi passerà al nuovo tick successivo.
 
grasn ha scritto il 19.05.07 17:41
<br / translate="no"> Intendevo la stessa modalità. Intendevo dire che il tester emulerà i nuovi arrivi mentre la previsione viene calcolata (1-7 ore)



Un tempo di calcolo sospettosamente lungo.
 
a solandr

<br/ translate="no"> Il tester non tiene conto del fattore tempo. Prima calcola la tua funzione start() fino alla fine e poi passa al nuovo tick successivo.


Grazie, è quello che ho supposto teoricamente. Questo è proprio quello che serve per i test "oggettivi". Per quanto ho capito, funzionerà anche nei test su un conto demo? Cioè l'Expert Advisor aspetterà che la funzione start() venga eseguita completamente e non sarà in grado di realizzare un controllo parallelo del processo basato sulle quotazioni in entrata fino a quando la funzione start() non sarà calcolata?

A Rosh


Un tempo di calcolo sospettosamente lungo.


Ho un AMD Athlon 64 Processor 3800+ 2.4 GHz, 2 GB di RAM. Il calcolo di Hearst per un campione di 600 campioni richiede circa 20 minuti, ma il calcolo viene eseguito in MathCAD. Nessun errore evidente nell'algoritmo di calcolo, cioè calcola in modo ottimale dal punto di vista della programmazione di MathCAD. Ma è una piccola parte di ciò che è, per esempio, l'entropia è considerata circa 40-50 minuti per lo stesso campione.

Tale durata di calcolo, dovuta al punto uno della mia strategia: "si determina il campione che è il minimo in termini di forza della relazione tra gli elementi, calcolato sulla base del criterio di correlazione. Otteniamo un campione totale su cui ha senso cercare qualcosa" e un modello piuttosto "artificioso". Il numero di campioni richiesti varia da 300 a diverse migliaia, a seconda dei dati analizzati.

I risultati in MathCAD sono abbastanza soddisfacenti (più che soddisfacenti), ma capisco che non è sufficiente. Così, ho deciso di implementare la versione semplificata in MT per il momento, solo per testare. Guarderò i risultati.
 
a solandr

Il tester non tiene conto del fattore tempo. Prima conta la tua funzione start() fino alla fine e poi passa al nuovo tick successivo.


Grazie, è quello che ho supposto teoricamente. Questo è esattamente ciò che serve per i test "oggettivi". Per quanto ho capito, funziona anche quando si testa su un conto demo? Cioè, l'Expert Advisor aspetterà l'esecuzione completa della funzione start() e non sarà in grado di realizzare un controllo parallelo basato sulle quotazioni in arrivo finché la funzione start() non sarà calcolata?

Lavorare su un conto demo significa lavorare in tempo reale. MT4 naturalmente terminerà la vostra funzione start(), non importa quanto tempo ci voglia. Ma solo durante questo periodo si riceveranno nuove quotazioni. Se alla fine della vostra funzione lunga start() volete fare una negoziazione, dovrete usare la funzione RefreshRates(), che aggiorna i dati di mercato attuali, compresi gli attuali Ask e Bid. Cioè, con i valori di Bid e Ask che esistevano qualche ora fa (al momento dell'inizio del calcolo) non sarà possibile aprire un ordine su un conto demo (e su uno reale, ovviamente). Ma potete aprire un ordine solo per quelli attuali, dopo aver usato la funzione RefreshRates().
 
to solandr

Тестер фактор времени не учитывает. Сначала он досчитает Вашу функцию start() до конца, а потом перейдёт к следующему новому тику.


Спасибо, я так теоретически и предполагал. Это как раз то, что нужно для «объективного» тестирования. На сколько я понял, это так же будет работать и при тестировании на демо счете? Т.е. эксперт будет ждать полного выполнения функции start(и всего того, что в ней напихано) и реализовать параллельный контроль процесса на основе поступающих котировок не удастся, пока не завершиться расчет функции start()?

Lavorare in un conto demo significa lavorare in tempo reale. MT4, naturalmente, finirà la vostra funzione start(), non importa quanto tempo ci voglia. Ma solo durante questo periodo si riceveranno nuove quotazioni. Se alla fine della vostra funzione lunga start() volete fare una negoziazione, dovrete usare la funzione RefreshRates(), che aggiorna i dati di mercato attuali, compresi gli attuali Ask e Bid. Cioè, con i valori di Bid e Ask che esistevano qualche ora fa (al momento dell'inizio del calcolo) non sarà possibile aprire un ordine su un conto demo (e su uno reale, ovviamente). Ma potete aprire un ordine solo per quelli attuali, dopo aver usato la funzione RefreshRates().


Grazie mille per il suggerimento. Dovrò prestare la dovuta attenzione al controllo del processo dopo il calcolo. Dopo tutto sarà necessario controllare la correttezza delle previsioni.
 
grasn 20.05.07 18:32

<br / translate="no"> a Rosh


Il tempo di calcolo è sospettosamente lungo.


Ho un processore AMD Athlon 64 3800+ 2.4 GHz, 2 GB di RAM. Il calcolo di Hearst per 600 campioni richiede circa 20 minuti, ma il calcolo è fatto in MathCAD. Nessun errore evidente nell'algoritmo di calcolo, cioè calcola in modo ottimale dal punto di vista della programmazione di MathCAD. Ma è una piccola parte di ciò che è, per esempio, l'entropia è considerata circa 40-50 minuti per lo stesso campione.

Tale durata di calcolo, dovuta al punto uno della mia strategia: "si determina il campione che è il minimo in termini di forza della relazione tra gli elementi, calcolato sulla base del criterio di correlazione. Otteniamo un campione totale su cui ha senso cercare qualcosa" e un modello piuttosto "artificioso". Il numero di campioni richiesti varia da 300 a diverse migliaia, a seconda dei dati analizzati.

I risultati in MathCAD sono abbastanza soddisfacenti (più che soddisfacenti), ma capisco che non è sufficiente. Così, ho deciso di implementare la versione semplificata in MT per il momento, solo per testare. Guarderò i risultati.



Il mio calcolo Hearst per un campione di 3000 bar in MQL4 richiede circa 40 millisecondi. Se non mi sbaglio cercherò di usare il codice di Hirst in MQL4, ma se è così, preferisco usare MathCad come sostituto.

In ogni caso c'è qualcosa di sbagliato nei calcoli. La mia email è rosh AT metaquotes DOT ru.
Motivazione: