Discussão do artigo "Importância da qualidade do gerador de números aleatórios no desempenho dos algoritmos de otimização" - página 12
Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
Não há nenhum elemento no circuito que seja responsável e/ou afete a robustez? Qual é esse elemento?
Pode haver muitas formas de generalização e é desejável tentar todas elas para identificar a mais eficaz. Desse ponto de vista, o fluxograma será ampliado de forma diferente, dependendo da abordagem.
Por exemplo, pode haver um "Pós-processamento" (para agrupamento) após o bloco "Resultado" (que deve ser renomeado para "Resultados" porque o agrupamento precisa de todos os resultados, não apenas de um).
Ou algum "Controlador" entre "Função de aptidão" e "Algoritmo de otimização", que pode executar todos os tipos de funções, em particular, adicionar ruído aleatório.
Além disso, o diagrama claramente carece de "Dados de entrada". Então, ele poderia ser dividido em IS/OOS e aplicar blocos a eles em paralelo, verificando à medida que avançamos.
Por fim, há a conhecida abordagem de otimização Walk-Forward (embora específica para séries temporais, não para otimização em geral). Para ele, o esquema atual é apenas um estágio de otimização, que, na verdade, deve ser preparado em vários estágios por algum "gerente" de bloco externo - por exemplo, várias otimizações de 12 meses com uma mudança de mês. E então uma nova dimensão para a pesquisa se abre - figurativamente falando, vemos como o FF "respira" com o tempo e aprendemos a prever sua próxima forma (como? - uma nova série de artigos será necessária aqui). Ou vice-versa - vemos que ele muda de forma tão imprevisível que ou o TS ou o instrumento financeiro claramente não se adequam um ao outro... ou precisamos reduzir a etapa de avanço para 1 semana para que funcione. Não se trata apenas de uma questão de estabilidade, mas também da duração dessa estabilidade.
Pode haver muitas formas de generalização e é desejável tentar todas elas para identificar a mais eficaz. Desse ponto de vista, o fluxograma será preenchido de diferentes maneiras, dependendo da abordagem.
Por exemplo, pode haver "Pós-processamento" (para agrupamento) após o bloco "Resultado" (que deve ser renomeado para "Resultados" porque o agrupamento exige todos os resultados, não apenas um).
Ou algum "Controlador" entre "Função de adequação" e "Algoritmo de otimização", que pode fazer todo tipo de coisa, como adicionar ruído aleatório.
Além disso, o diagrama claramente carece de "Dados de entrada". Então, ele poderia ser dividido em IS/OOS e aplicar blocos a eles em paralelo, verificando-os à medida que avançamos.
Por fim, há a conhecida abordagem de otimização Walk-Forward (embora específica para séries temporais, não para otimização em geral). Para ele, o esquema atual é apenas um estágio de otimização, que, na verdade, deve ser preparado em vários estágios por algum "gerente" de bloco externo - por exemplo, várias otimizações de 12 meses com uma mudança de mês. E então uma nova dimensão para a pesquisa se abre - figurativamente falando, vemos como o FF "respira" com o tempo e aprendemos a prever sua próxima forma (como? - uma nova série de artigos será necessária aqui). Ou vice-versa - vemos que ele muda de forma tão imprevisível que o TS ou o instrumento financeiro claramente não são adequados um para o outro... ou precisamos reduzir a etapa de avanço para uma semana para que funcione. Não se trata apenas de uma questão de estabilidade, mas também da duração dessa estabilidade.
O que você mencionou tem o direito de ser e, em muitos casos, deveria ser, mas ele se refere ao "tratamento sintomático", não aborda os motivos da robustez ou não robustez dos resultados obtidos e é uma medida externa (como fazer um diagnóstico por meio de medições periódicas da temperatura do paciente - isso não é ruim nem bom, apenas pode não dar a oportunidade de obter uma anamnese objetiva).
Na verdade, tudo o que realmente afeta a robustez dos resultados já está nesse esquema.
O que você mencionou - tem o direito de ser e, em muitos casos, deveria ser, mas se refere ao "tratamento sintomático", não considera os motivos da robustez ou não robustez dos resultados obtidos e é uma medida externa (como fazer um diagnóstico por meio de medições periódicas da temperatura do paciente - isso não é ruim nem bom, apenas pode não dar a oportunidade de obter um histórico objetivo).
De fato, tudo o que realmente afeta a robustez dos resultados já está nesse esquema.
Então esperamos por explicações e demonstrações sobre os testes.
Em seguida, aguardamos esclarecimentos e demonstrações sobre os testes.
Certo. Gostaria de ouvir a visão de Saber e Andrei, além disso, como participantes da discussão sobre robustez.
Se eu publicar um método de trabalho para obter resultados robustos de sistemas em processos não estacionários, receberei imediatamente um Prêmio Nobel e um monumento feito de um pedaço sólido de malaquita, o que é muito atraente, mas dificilmente viável. Mas, pelo menos, já é bom entender o que pode influenciar a robustez dos resultados e o que não pode.
A questão é o que fazer em seguida com o conjunto desses conjuntos com "topos de morro". Anteriormente, tínhamos um máximo global como solução do algoritmo de otimização, digamos que agora temos 50 deles. Mas eles não chegam nem perto de resolver o problema de estabilidade.
Digamos que o TC possa capturar um padrão relativamente estável em determinadas configurações. Ao mesmo tempo, o máximo global do OnTester não se enquadra nessas configurações, e não sabemos qual FF escolher para atingir o alvo desejado.
Se algum padrão de preços puder ser reproduzido pelo TS, então o conjunto procurado corresponderá a algum topo local do FF. Alguns topos altos corresponderão a cisnes brancos não sistemáticos que estavam na amostra. Por causa disso, conjuntos de entrada mais baixos, mas potencialmente estáveis, são perdidos nas AOs clássicas.
Uma afirmação simples que pode ser facilmente testada na prática. Considere praticamente qualquer TS com um grande número de posições não sobrepostas. Por exemplo, 10 dessas posições por dia. Encontre o máximo global de InputsMax1 para todo o ano de 2023 e InputsMax2 para o verão de 2023. Obviamente, no verão de 2023, nenhum AO encontrará InputsMax1 sequer próximo. Mas você verá que, entre os vértices locais do verão de 2023, há um que está muito próximo de InputsMax1.
Volto à pergunta. Os 50 vértices encontrados devem ser executados em OOS. E se for encontrada uma InputsMax1 condicional entre eles, continuaremos investigando. Caso contrário, jogue-o fora (mude o símbolo).
Certamente não há nada no esquema que afete a robustez
Há apenas coisas no circuito que afetam o ajuste. Quanto melhor for o esquema, melhor será o ajuste.
Se estivermos falando de FF, ele não tem efeito sobre a robustez.
Afinal, é absolutamente óbvio que, se você obtiver uma nova superfície FF todos os dias, por exemplo, ao "otimizar" dois parâmetros e, em seguida, colar os quadros obtidos, obterá algo assim:
E se você tiver pego a colina certa? É uma colina da história, mas não do futuro. Qual é o objetivo?
Portanto, concordo com Dmitrievsky. Adaptar-se à história ainda é adaptar-se, mesmo que você chame isso de otimização pelo método Macaca, Crane ou Octopus.
Por exemplo, um exemplo ilustrativo.
Tomamos a estratégia de dez harmônicos, que devem ser somados para obter uma linha de extrapolação para tomar uma decisão sobre a abertura de negociações.
Cada harmônico tem três parâmetros: amplitude, frequência, mudança de fase. Total de 10*3=30 parâmetros necessários.
É claro que você pode calculá-los usando a Transformada Rápida de Fourier em alguns milissegundos, mas não vamos procurar maneiras fáceis e escolheremos a melhor combinação desses 30 parâmetros usando otimização por força bruta, algoritmo genético e os artigos de Dick.
Esperamos que, em um bom supercomputador, consigamos a combinação certa de 30*10000 = 300.000 combinações de todos os 30 parâmetros em alguns dias após a pesquisa genética e, assim, toda semana, otimizaremos novamente essa estratégia no fim de semana.
E aqui está o que obteremos no gráfico semanal:
Como você pode ver, a linha de extrapolação vermelha não nos ajudará muito na negociação, apesar das centenas de quilowatts de energia queimados durante a otimização :))) Porque o mercado está mudando o tempo todo.
A moral dessa fábula: É necessário não procurar parâmetros, mas calculá-los no processo de negociação dentro do TS para não queimar energia desnecessária. Para ser MUITO breve
Há sempre uma "transformada rápida de Fourier" para qualquer parâmetro.