Discussione sull’articolo "Algoritmi di ottimizzazione della popolazione: Semina e Crescita degli Alberelli (Saplings Sowing and Growing up - SSG)" - pagina 6

 
Andrey Dik #:
Sto solo cercando di far capire che è possibile evitare cinque ottimizzazioni e raggiungere la regione verde in una sola volta, con un'unica ottimizzazione. a tal fine, è necessario introdurre il FF principale rispetto al FF minore. il FF principale dovrebbe descrivere la regione verde ed è il massimo globale.
Quindi, il FF sulla figura non è quello che ci serve, ma un FF in cui dobbiamo cercare il massimo globale.
È difficile spiegarlo con le dita, ma è possibile farlo nell'articolo))))

È chiaro che con un approccio competente nessuno ottimizza con lo stesso criterio di equilibrio. Si cerca di prendere in considerazione l'assenza di superamenti, il numero statisticamente significativo di transazioni, ecc.

Ho scritto qualcosa sull'argomento qui.

Dovreste ottenere un quadro simile delle operazioni in ogni passaggio. In questo caso si possono notare le transazioni non corrette e i mattoni TC.


Per formare il criterio di ottimizzazione, è auspicabile scartare le operazioni che sono anomale.

Ma questo è il tema della formazione di un FF conveniente. Anche se è completamente privo di picchi e ha una natura collinare, queste colline non saranno trovate da un solo passaggio. Ecco perché lo faccio in questo modo.

Forum sul trading, sui sistemi di trading automatizzati e sulla verifica delle strategie di trading

Discussione dell'articolo "Algoritmi di ottimizzazione delle popolazioni: Algoritmo di semina e crescita degli alberelli (SSG)"

fxsaber, 2023.03.22 00:32

Trovo indirettamente locale attraverso l'interruzione forzata dell'ottimizzazione quando sono coinvolti un gran numero di core. Grosso modo, se ci sono 20 agenti in Tester, interrompo l'ottimizzazione dopo 2000 passaggi.

Ma questo è molto approssimativo. È più affidabile buttare via la collina migliore e ripetere l'ottimizzazione.
Уменьшаем выборку - увеличиваем стат. значимость?
Уменьшаем выборку - увеличиваем стат. значимость?
  • 2022.01.28
  • www.mql5.com
Торговый робот должен (условно) удовлетворять следующим условиям: Совершать достаточно много сделок на интервале настройки (оптимизации). Показывать столь же стабильный результат вне интервала
 
fxsaber criterio di ottimizzazione).

Se si esegue un'ottimizzazione completa per una TC con due parametri ogni giorno per un anno o due per ottenere un fotogramma simile, e poi si forma un video da questi fotogrammi, si otterrà qualcosa del genere:


Sarebbe ingenuo supporre che la superficie rimanga statica.
Quindi la domanda è:
Qual è lo scopo?

 
Andrey Dik gruppo che è cresciuto troppo viene cacciato dal gruppo, che è costretto a formare gruppi in estremi separati.

Francamente, questo non è un desiderio specifico, ma uno strumento che deve essere incluso in un software serio per l'algo-trading - Tester.

Ma è realistico metterlo a punto da soli.

Forum sul trading, sui sistemi di trading automatizzati e sul test delle strategie di trading.

Discussione dell'articolo "Algoritmi di ottimizzazione della popolazione: Algoritmo di semina e crescita degli alberelli (SSG)".

fxsaber, 2023.03.23 19:51

se hai i dati dell'area da tagliare, puoi fare molto facilmente (anche nel normale Tester) l'ottimizzazione senza la posizione dello spazio.

Ma mi manca completamente la competenza su come definire l'area intorno al massimo globale trovato nei risultati GA.

Gli algoritmi GA sono abbastanza diversi. Suppongo che se viene trovato un massimo in 1000 passaggi e l'algoritmo si ferma, allora gli ultimi 100 passaggi sono punti intorno al massimo trovato. Quindi prendiamo questi 100 punti e formiamo immediatamente l'area da scartare nelle ottimizzazioni future.

In linea di principio, se lo stesso GA regolare viene eseguito una sola volta, allora le ultime 100 voci nel file opt dovrebbero essere questi punti. Tuttavia, non sono sicuro che questo sia il caso di un approccio multi-core. Ecco perché è necessario un qualche tipo di clustering. Ci sono molti articoli su questo argomento, dovreste studiarli.

 
Nikolai Semko #:

Sarebbe ingenuo pensare che la superficie rimanga statica.

Ho bisogno di un punto relativamente statico in questa superficie gorgogliante. Li ho trovati.

Eppure non dovremmo ridurre l'argomento all'abilità e al significato di cucinare. Serve una pentola per cucinare.

 
fxsaber #:

Tuttavia, non riducete l'argomento all'abilità e al significato di cucinare. È necessaria una pentola per cucinare.

+++

 
fxsaber #:

Francamente non si tratta di un desiderio specifico, ma di uno strumento che deve essere incluso in un software di algo-trading serio - Tester.

Ma potete davvero metterlo a punto da soli

Gli algoritmi GA sono molto diversi. Suppongo che se viene trovato un massimo per 1000 passaggi e l'algoritmo si ferma, gli ultimi 100 passaggi sono punti intorno al massimo trovato. Allora prendiamo questi 100 punti e formiamo immediatamente una regione da buttare via nelle ottimizzazioni future.

In linea di principio, se lo stesso GA regolare viene eseguito una sola volta, allora le ultime 100 voci nel file opt dovrebbero essere questi punti. Tuttavia, non sono sicuro che questo sia il caso di un approccio multi-core. Ecco perché è necessario un qualche tipo di clustering. Ci sono diversi articoli su questo argomento, devo fare delle ricerche.


Credo che le ultime 100 voci saranno sorprendentemente diverse per i diversi algoritmi. per esperienza posso permettermi di pensarlo, quindi è ragionevole notare che la scelta degli algoritmi per i compiti ha senso, non solo prendere il migliore dalla tabella....
pertanto, trovo utile l'idea di creare una tabella di classificazione di questo tipo.
compito specifico - intendevo proprio un compito di questo tipo, non uno raro. c'è una necessità, quindi dovrebbe essere presa in considerazione nella piattaforma, preferibilmente.

 
Gli ultimi 100 record non corrisponderanno a picchi diversi, ma saranno tutti incentrati sull'ultimo picco trovato.
 
Andrey Dik #:

Credo che gli ultimi 100 record saranno sorprendentemente diversi per i diversi algoritmi. per esperienza posso permettermi di crederlo, quindi è ragionevole notare che la scelta degli algoritmi per le attività ha senso, non solo prendere il migliore dalla tabella...

Pertanto, trovo utile l'idea di creare una tabella di valutazione di questo tipo.

Ecco la classifica! Più oggettività. Ma sono ancora un po' confuso. Sto ancora esaminando i problemi pratici che sto affrontando.

Compito specifico - intendevo specificamente tale, non raro. c'è una necessità, quindi dovrebbe essere presa in considerazione nella piattaforma, preferibilmente.

Nel Tester aggiungerei un segno di spunta "butta via le aree dei massimi trovati delle ottimizzazioni precedenti".

Poi la prima esecuzione senza questa spunta, le altre con la spunta attivata. Eseguire 20 ottimizzazioni - ottenere 20 picchi.

Quindi caricarle in OOS-check (20 corse singole) e valutarle, valutando contemporaneamente l'intero TS/FF.

 
fxsaber #:

Ho bisogno di un punto relativamente statico in questa superficie gorgogliante. Ho trovato questi...

ma comunque, credo che trovare tali punti abbia un carattere probabilistico.
Il mio messaggio è che non ci dovrebbero essere parametri di ingresso che richiedono "ottimizzazione" all'ingresso della CT. Tali parametri trasformano la ST in una moneta.
Anche l'auto-ottimizzazione dei parametri interni è un auto-inganno.

 
fxsaber #:

In Tester, aggiungerei una casella di spunta "scarta le aree dei massimi trovati delle ottimizzazioni precedenti".

Implementazione indipendente:

  1. Ho letto l'ultimo file opt e ho generato una regione dagli ultimi 100 passaggi (comprensibilmente, questo non è del tutto corretto).
  2. Ho aggiunto quest'area al file comune.
  3. L'Expert Advisor legge queste aree dal file comune in OnInit. E c'è anche un controllo per cui, se l'input colpisce queste aree, viene eseguito INIT_FAILED.
Tutto è pronto! È importante solo formare correttamente l'area al punto 1.