Resposta

Geração genética vs. aleatória

12 respostas

Morningbull

Cliente, bbp_participante, comunidade, 40 respostas.

Perfil da visita

5 anos atrás #237379

Olá, gostaria de saber sua opinião e suas experiências usando os dois métodos diferentes de geração. É verdade que a geração genética criará uma estratégia mais ajustada?

0

Ilya

Cliente, bbp_participante, comunidade, 105 respostas.

Perfil da visita

5 anos atrás #237380

Hi,

Isso é verdade, pois a evolução genética é um sistema de aprendizado de máquina, e esses sistemas "treinam" em um determinado conjunto de dados, executando-o repetidamente para melhorar e, portanto, adaptando-se aos dados em que foram treinados.

Obviamente, a geração aleatória tem um risco muito menor de sobreajuste, pois os parâmetros são gerados aleatoriamente e, em seguida, o sistema é executado em seu conjunto de dados, sem que haja "treinamento". Isso se tornará um problema se você não verificar a robustez suficientemente bem ou se otimizar os parâmetros da estratégia com muito vigor.

Mas, felizmente, o SQ X tem alguns recursos excelentes para evitar o ajuste excessivo:

1) Teste de robustez extensivo.

2) Use pelo menos 2 períodos de OOS que sejam pelo menos 30% dos dados (que são tratados como um "novo conjunto de dados não vistos" para o sistema, o modelo não está sendo treinado nele)

3) otimizar a estratégia apenas levemente (apenas o coeficiente SL ou TP, por exemplo)

4) Use um grande conjunto de dados para ter certeza de que não está treinando com "ruído".

 

- Gosto de gerar uma boa quantia inicial aleatoriamente em cerca de 2 anos de dados (para negociações de 1H), resultando em cerca de 1.000 estratégias e, em seguida, usando-as como população inicial para genético evolução com pelo menos 10 ilhas de 100 estratégias cada, desta vez em dados de 15 anos com alguns anos de inatividade. O SQ X torna esse processo muito fácil...

Ilya

2

Morningbull

Cliente, bbp_participante, comunidade, 40 respostas.

Perfil da visita

5 anos atrás #237383

Como você define dois períodos de OOS? É automático ou você testa novamente as estratégias adicionando o segundo período de OOS?

0

Ilya

Cliente, bbp_participante, comunidade, 105 respostas.

Perfil da visita

5 anos atrás #237384

No SQ X, você pode definir quantos OOS quiser na guia de dados, se quiser integrá-los à geração. Caso contrário, você pode simplesmente deixar de fora os últimos 6 meses durante a construção e, em seguida, testar novamente os modelos nesses 6 meses no retester, por exemplo. É a mesma coisa... apenas uma questão de conforto e preferência de filtragem (classificação). Assim, por exemplo, você pode definir dois sistemas de filtragem durante a criação, um para IS e outro para OOS, automatizando assim o primeiro processo de reteste, por exemplo:

 

0

Morningbull

Cliente, bbp_participante, comunidade, 40 respostas.

Perfil da visita

5 anos atrás #237386

Ah, sim, acabei de encontrar a opção de definir mais de um OOS, obrigado.

0

tníquel

Customer, bbp_participant, community, sq-ultimate, 489 replies.

Perfil da visita

5 anos atrás #237409

Eu uso no sq 3.8.2 apenas a geração genética.

O motivo é claro. Com a geração genética, você encontrará estratégias melhores.

 

Você pode fazer alguns testes.

a) gerar aleatório b) gerar genético com os mesmos blocos de construção

Compare os resultados após os testes de robustez

 

explicação:

O espaço de busca para encontrar boas estratégias é muito alto para a geração aleatória. Você terá que esperar milhões de anos para encontrar boas estratégias.

A genética é mais direcionada. Se você tiver uma boa função de pesquisa para o algoritmo genético. A função de destino contém, por exemplo, (profitfaktor, stability, Retdd, maxDD)...

 

===============

4.115

No SQ 4.115, não tenho certeza se é melhor aleatório ou genético. Acho que no SQ 4.115 há muitos bugs no momento.

É possível que no algoritmo genético também haja erros? Não sei...

====

Em geral, prefiro a geração genética

thomas

https://monitortool.jimdofree.com/

0

hankeys

Cliente, bbp_participant, community, sq-ultimate, 487 respostas.

Perfil da visita

5 anos atrás #237421

Não se trata de saber o que é melhor ou pior - é uma abordagem totalmente diferente

Toda construção genética começará com a geração aleatória da população inicial e tentará encontrar a melhor estratégia com alguns métodos - você precisa saber que, com esse método, obterá resultados muito mais rápidos, mas o problema é o ajuste excessivo - como disse Ilya

Mas esteja ciente de que você não precisa de um backtest melhor, você precisa de uma estratégia mais robusta, que tenha probabilidade de funcionar no futuro - o comportamento passado não importa. As "melhores" estratégias serão, em sua maioria, excessivamente ajustadas e falharão

Você quer ser um algotrader lucrativo? Começamos a usar o software StrateQuant no início de 2014. Atualmente, temos um grande know-how para criar EAs para todos os tipos possíveis de mercados. Compartilhamos esse know-how, aplicativos, ferramentas e também todas as estratégias finais com traders reais. Se você quiser se juntar a nós, preencha o formulário FORMULÁRIO.

0

Morningbull

Cliente, bbp_participante, comunidade, 40 respostas.

Perfil da visita

5 anos atrás #237424

Supondo que se use a evolução genética, o SQ4 tem instrumentos suficientes para encontrar as estratégias que realmente não se ajustam demais?

Tenho um pouco de experiência no uso de outro software semelhante e, depois de vários meses executando algumas estratégias em uma conta pequena, eu as descartei porque o resultado não era o mesmo que o mostrado no backtest.

É claro que antes de executar essas estratégias eu as testei com alguns testes manuais de robustez, mas talvez isso não tenha sido suficiente, e essa é a razão pela qual eu queria começar essa experiência com o SQ4, mas é claro que estou cheio de dúvidas.

0

tníquel

Customer, bbp_participant, community, sq-ultimate, 489 replies.

Perfil da visita

5 anos atrás #237425

Sim, o ajuste excessivo é o grande problema. 99,9% de todas as estratégias geradas são excessivamente ajustadas.

O Genetic Building é a máquina de sobreajuste.

Mas na geração aleatória há o mesmo problema com o ajuste excessivo. Não é tão grande, mas está disponível

https://monitortool.jimdofree.com/

1

Morningbull

Cliente, bbp_participante, comunidade, 40 respostas.

Perfil da visita

5 anos atrás #237426

Então, seria uma boa ideia começar com a geração aleatória e, apenas no caso de não ter sido encontrada uma boa estratégia, continuar a desenvolvê-la por meio da evolução genética?

0

Ilya

Cliente, bbp_participante, comunidade, 105 respostas.

Perfil da visita

5 anos atrás #237427

Tenho uma opinião muito diferente sobre a geração aleatória do Thomas, especialmente com o SQ X, que é muito mais rápido. Quando você gera uma população aleatoriamente, digamos 200 estratégias, e tenta melhorá-la por meio de 20 gerações, por exemplo, se ela não conseguir atingir a aptidão desejada e seus filtros (o que geralmente acontece), você está basicamente perdendo tempo com o backtesting de 4.000 estratégias que são jogadas fora, em comparação com 200 ao usar a geração aleatória, portanto, perdendo X 20 vezes mais tempo. Com a geração aleatória, em um sistema de 32 threads, preciso de um dia para gerar 1.000 estratégias viáveis (PF > 1,5, Ret/DD > 2, Estabilidade > 0,7, Winning%>50% e a condição mencionada abaixo). Para mim, o genetic evo é uma maneira fabulosa de gerar estratégias ainda melhores em dados maiores, usando uma população muito boa que foi gerada aleatoriamente, mas usar o genetic do zero, até agora, pela minha experiência, foi uma grande perda de tempo.

Dica rápida (crédito para Notch): A geração aleatória com um pequeno teste de robustez NO PROCESSO DE CONSTRUÇÃO (ordem de negociação aleatória com nível de confiança 99% > 1) produzirá estratégias de qualidade muito mais alta na geração aleatória...

Ilya

2

Morningbull

Cliente, bbp_participante, comunidade, 40 respostas.

Perfil da visita

5 anos atrás #237431

Tenho outra pergunta para você que, para mim, não está clara: após o curso de Zdenek Zanka, ele disse que as estratégias geradas sem o uso de take profit têm melhor desempenho no backtest, mas geralmente menos na negociação real, enquanto as estratégias com take profit têm mais possibilidade de refletir o desempenho mostrado no backtest. Essa afirmação é verdadeira para você? Não consigo entender a lógica por trás dela.

0

ERP

Cliente, bbp_participante, comunidade, 1 respostas.

Perfil da visita

2 anos atrás #276791

Muito obrigado por compartilhar essa dica. Como um novo usuário do SQX, achei isso muito criativo e extremamente útil! Vou informá-lo sobre o resultado.

Construir. Testar. Trade.

0

Visualizando 12 respostas - 1 até 12 (de um total de 12)