Objetivos construídos no módulo genético
4 respostas
Rom
7 anos atrás #115271
Estou interessado em todos os comentários, mesmo os mais críticos.....
Vamos considerar o método genético, .
Ele começa "semeando", ou seja, criando um conjunto aleatório de estratégias iniciais. Na configuração, vejo a opção de definir os objetivos: Configurações > Opções genéticas > > Condições iniciais da população. Tenho um plano ambicioso de criar uma estratégia que se aproxime das tendências em dados diários. Assim, estou menos preocupado, por exemplo, com um parâmetro win% baixo e mais preocupado com uma taxa de ganhos e perdas mais alta. Também busco uma expectativa decente (nada sofisticado aqui, é apenas uma semente). Ao mesmo tempo, não quero nessa população inicial nenhum retorno negativo na parte fora da amostra dos dados. Considero essas restrições razoáveis.
Ao ser iniciado, o programa tenta criar a população inicial. No entanto, se for necessário mais do que o número predeterminado de iterações para fazê-lo, o programa pausa e exibe a mensagem de erro: "can not generate valid initial candidates. "
Até o momento, determinei que o número de restrições, e não o valor delas, desempenha um papel fundamental na "semeadura" da população inicial.
Por que as restrições são importantes? A "semente" ruim terá uma forte tendência de convergir para estratégias igualmente ruins. Essa é minha experiência até agora, depois de usar o programa por vários meses.
Por tentativa e erro, brincando com o número de objetivos e seus valores, consegui forçar o programa a criar algumas estratégias aleatórias que pareciam decentes. Tentei "colhê-las", ou seja, salvá-las e coletar um número decente delas para iniciar a evolução, mas acho que isso não é possível.
A semente inicial para o módulo genético parece ser transmitida em um mecanismo aleatório. Por que ele não pode durar mais, o tempo necessário para preencher a "semente"?
Como alternativa, por que não posso "colher" várias estratégias de diferentes tentativas de semear e implementá-las para "evolução"?
gentmat
7 anos atrás #137885
Você pode.
Faça um sorteio aleatório de, digamos, 1.000 ou um milhão (armazene-os no banco) e coloque regras que todas essas estratégias devem ter, como lucro líquido > 0
Com taxa de vitória bla bla bla.
Interrompa a geração aleatória quando estiver satisfeito.
Agora, use a estratégia genética (antes disso, salve as estratégias aleatórias por segurança).
Vá para as configurações genéticas e escolha genetic from bank (genética do banco).
É isso aí
Rom
7 anos atrás #137896
Entendi, obrigado
Rom
7 anos atrás #137935
Ok, mas o algoritmo genético deve tentar convergir para objetivos construídos. Isso não acontece. Quando o número de objetivos criados é >2, o programa não consegue criar a semente no modo genético. Pelo que entendi, a semente deve ser aleatória e o algoritmo deve convergir para os objetivos. Se eu entender os objetivos, ou seja, se eu souber que tipo de propriedades espero da construção, o programa deverá ser capaz de me ajudar. Agora, devido ao fato de a geração inicial ser aleatória, a "evolução" pode falhar, e tudo bem, posso tentar novamente. Infelizmente, isso não acontece dessa forma.
A alternativa (geração aleatória com restrições) está fadada ao fracasso do ponto de vista matemático.
gentmat
7 anos atrás #138190
O random não falhará, muitos aqui usam apenas o random. Teorias são apenas teorias.
Se quiser gerar algo que você acha que funciona melhor, você pode fazer o seguinte.
criar uma estratégia no sq3, digamos
comprar se rsi > 60
vender se < 40
colocar sl e tp com base em atr ou fixo.
Agora, vá para a seção de aprimoramento da estratégia e coloque (adicionar à primeira regra e à segunda) e você terá a genética com o espírito de estratégia que está procurando
Visualizando 4 respostas - 1 até 4 (de um total de 4)