Sunday 4 March 2018

Falha no sistema de negociação


Forex Mecânico.


Negociação no mercado FX usando estratégias mecânicas de negociação.


Que falha no sistema de negociação significa: Definição e quantificação da falha na estratégia, Parte 1.


Um dos aspectos mais importantes da negociação algorítmica é a remoção de estratégias de negociação de contas ao vivo quando elas falham. Saber quando uma estratégia falhar é extremamente importante, pois nos permite evitar perder e perder oportunidades, ao mesmo tempo que nos dá a chance de reafectar nosso capital para usar estratégias que possam estar melhor desempenho nas condições atuais do mercado. No entanto, a maioria das pessoas não tem um plano verdadeiramente racional para a falha do sistema e outros consideram a falha em apenas um escopo muito limitado que é realmente melhor para a esperança do que para uma análise racional das características estatísticas de uma estratégia comercial. Dentro dessas postagens, quero discutir com você o que significa falha do sistema comercial e como essa falha pode ser quantificada para permitir que você descarte estratégias comerciais, progressivamente (próxima parte) ou inteiramente em um determinado limite (artigo de hoje ). Passaremos por problemas com a definição de falhas, problemas com remoção de estratégias e possíveis soluções para essas questões.


O que significa para um sistema falhar? Muitos comerciantes dirão que eles têm algum tipo de "horizonte de falhas" # 8221; após o que um sistema será removido da sua conta de negociação. Isso geralmente é uma medida de perda histórica # 8211; como um determinado múltiplo da redução máxima & # 8211; Depois disso, o comerciante comprometeu-se a abandonar a negociação da estratégia. No entanto, tais visualizações de & # 8220; perda total & # 8221; são excessivamente simplistas e não contam nem a maneira como o sistema chega a essa retirada, nem a duração do período perdedor, também não são responsáveis ​​pela perda de oportunidade (falta de geração de lucro) e "# 8211" mais importante & # 8211; eles não têm nenhuma base estatística forte. Por que você usaria um múltiplo N da redução máxima como um horizonte de falha? Por que não 2N ou 3N? É importante, portanto, ter uma definição clara de falha no sistema (o que não é subjetivo) e, em seguida, aplicá-lo de forma racional e em toda a extensão às estratégias de negociação em uso.


Como podemos definir falhas? A falha é sempre uma medida relativa porque algo só falha quando comparado com um padrão, podemos chamar o & # 8220; sucesso & # 8221 ;. No caso da negociação algorítmica, um sistema terá sucesso quando ele for igual ou melhor do que as simulações históricas usadas para criar o sistema e ele falhará quando ele for pior. Mas como comparamos nosso sistema (o que é comercializado ao vivo) contra um resultado histórico? Precisamos comparar a distribuição dos retornos do nosso sistema com a distribuição dos retornos obtidos em nossas back-tests e julgar objetivamente quando um deles é inerentemente diferente do outro. Você precisa avaliar se a distribuição dos retornos que você obteve através da sua negociação ao vivo provavelmente será uma sub-amostra da distribuição histórica dos retornos. Se você pode rejeitar essa hipótese dentro de um determinado nível de confiança (geralmente 95%), você pode dizer que seu sistema falhou porque "# 8211" com toda a probabilidade & # 8211; já não se comporta do mesmo modo que o sistema que você criou.


Usar este critério é extremamente poderoso porque você eliminará os sistemas que falham por muitas razões diferentes. Os sistemas que adquirem planos de velocidade muito rápidos, sistemas que se acumulam por muito tempo, sistemas que não conseguem gerar lucro, etc. Ele evolui para além da simplicidade das medidas de redução simples.


Como você avalia se a distribuição ao vivo é uma sub-amostra da distribuição de back-testing? Existem muitas técnicas para fazê-lo, mas é extremamente importante evitar cair em pressupostos simplistas. Por exemplo, você pode usar simulações de Monte Carlo para amarrar a falha contra uma distribuição para algumas medidas específicas para sua estratégia. A falha dentro de uma simulação de Monte Carlo sempre deve ser determinada contra o mesmo número de negócios que você tem em sua negociação ao vivo, porque a técnica gera cenários de pior caso associados a números de comércio específicos. Você poderia gerar um cenário de pior cenário de Monte Carlo com base em 1000 negócios e isso será extremamente diferente dos cenários pior cenário de Monte carlo gerados para 55 ou 100 negócios porque a expectativa de profundidade, comprimento, etc. mudará à medida que o número de negociações se tornar maior ou menor. Não é o mesmo para entrar em uma redução de 10% em 20 negócios do que para entrar no mesmo saque em 50 negócios. Um valor de redução que pode não ser um pior caso em 400 negócios pode ser o pior caso em 20 negócios, porque a probabilidade de entrar em uma redução da mesma profundidade com um número menor de negócios pode ser um desenho muito menor a partir da distribuição histórica dos retornos . Em geral, encontrei as simulações de Monte Carlo para serem impraticáveis ​​porque são computacionalmente caras e precisam ser atualizadas com muita frequência (dependendo do número comercial).


No caso de sistemas de negociação altamente lineares (R & gt; 0,98 e distribuição normal de resíduos), você também pode avaliar cenários de pior caso usando violações da hipótese linear, usando um múltiplo 3.5 do desvio padrão de retornos que você pode dizer com uma confiança de 99% que a estratégia de negociação falhou. Esta maneira de avaliar os piores casos é muito mais simples e não requer uma reavaliação constante dos cenários do pior cenário, pois a equação linear usada para avaliar a falha do sistema é uma constante determinada a partir dos resultados históricos da estratégia. Nesta técnica, você está avaliando a hipótese de falha geral (é a distribuição de uma sub-amostra da distribuição histórica) de forma mais específica, aproveitando o fato de que os resultados históricos da estratégia se encaixam em um modelo estatístico muito bem definido.


Gostaria também de salientar que a falha do sistema nunca deve ser subjetiva. Quando você avalia um pior caso, você não pode escolher quais escolher e quais ignorar com base em alguma percepção subjetiva de se o sistema falhou ou não. Por exemplo, você não pode realizar uma simulação de 500 Monte Monte de comércio e usá-lo como pior caso ao ignorar o pior caso em uma simulação de Monte Carlo 50, porque você deve considerar, em geral, se a sua distribuição de retornos ao vivo é uma sub-amostra do distribuição histórica. Você não pode avaliar quais maneiras & # 8220; count & # 8221; e quais maneiras não contam. Teste estatístico seletivo é algo que costuma acontecer quando as pessoas têm uma razão forte para # 8220; acreditar & # 8221; em um sistema de comércio. Quando o anexo & # 8211; devido a razões econômicas, psicológicas, etc. é muito bom, um comerciante sempre terá problemas para dizer que um sistema falhou, porque o ônus da falha pode ser maior que o fardo das perdas financeiras se o sistema continuar a negociar. Por esta razão, também é extremamente importante ter algum método para gerar estratégias rapidamente e eficientemente para substituir aqueles que falharam.


Finalmente, gostaria de salientar que o fracasso de uma perspectiva estatística é um ponto de nunca recuperação. Uma vez que uma estratégia falha, nunca será capaz de voltar ao ponto em que poderia caber novamente na distribuição histórica dos retornos. Uma estratégia pode se recuperar do cenário desencadeado / falta de lucro, mas a mudança nas estatísticas causadas por esse período tornou a estratégia um fracasso (para sempre) em relação aos resultados históricos anteriores. Claro, se a estratégia se recuperar, você pode reconsiderar se deseja trocar, mas você não medirá mais a falha em relação ao padrão anterior, mas você precisará usar as novas estatísticas (as que falharam contra seu padrão original) como parte de sua nova estimativa. Minha experiência me diz que é melhor simplesmente gerar novas estratégias para substituir sistemas que falharam ao invés de negociar uma estratégia que se recuperou com um padrão menor de falha.


Observe que existem outras maneiras de descartar estratégias que não envolvem "limites rígidos" # 8221; (descarte progressivo), algo que estaremos discutindo na minha próxima publicação. Se você gostaria de saber mais sobre os piores casos e a geração do sistema e como você também pode gerar e substituir estratégias de forma eficaz, considere se juntar a Asirikuy, um site repleto de vídeos educacionais, sistemas de negociação, desenvolvimento e uma abordagem sólida, honesta e transparente para automatizado negociação em geral. Espero que tenha gostado deste artigo ! : o)


One Response to & # 8220; O que a falha do sistema comercial significa: Definição e quantificação da falha na estratégia, Parte 1 e # 8221;


Eu vi muito sobre comerciantes algorítmicos que mudaram para a negociação de freqüência média devido ao superlotação na negociação de alta freqüência, que eliminou todos os lucros. Parece que essa tendência continuará em frequências mais baixas e baixas de negociação até que seja extremamente difícil ganhar dinheiro através de negociação algorítmica. Esse é o começo do fim?


Forex Mecânico.


Negociação no mercado FX usando estratégias mecânicas de negociação.


Compreender a natureza da falha no sistema de negociação: por que os sistemas de negociação falham.


Durante as últimas duas postagens, falei sobre falhas do sistema comercial e como podemos detectar isso através do uso de & # 8220; blunt & # 8221; e medidas progressivas. Em particular, falo sobre a falha do sistema como um ponto em que um sistema já não corresponde às estatísticas esperadas dos testes históricos e como há medidas estatísticas claras que podem detectar esse ponto. No entanto, um aspecto mais interessante da falha do sistema comercial é entender por que isso acontece. Por que um sistema começa a executar abaixo o que é esperado de seus testes? Por que um sistema construído com baixo viés de mineração de dados começa a se deteriorar? Talvez o mais importante, como podemos evitar que isso aconteça (ou pelo menos atenuar)? Na publicação de hoje, vou discutir por que os sistemas de comércio falham e o que podemos fazer dentro do processo de desenvolvimento para garantir que a probabilidade de isso acontecer seja tão baixa quanto possível. Falaremos do processo de construção do sistema, da quantidade de dados de mercado utilizados e da influência que isso tem no processo de teste direto.


Quando você desenvolve um sistema usando dados históricos, você está trabalhando fundamentalmente sob o pressuposto de que В ineficiências que existem dentro do seu histórico de negociação serão repetidas ao longo do futuro. Este pressuposto básico é a razão pela qual todos os sistemas devem eventualmente enfrentar falhas (falhar em executar em suas estatísticas de testes históricos), pois o número de condições de mercado potenciais é infinito, enquanto o número de condições de projeto é limitado. Se você se esforça para desenvolver sua estratégia de negociação, levando em consideração o viés de mineração de dados, seu sistema não falha porque a ineficiência encontrada no passado não foi & # 8220; real & # 8221; mas porque o mercado mudou para um conjunto de características que já não incluem essa ineficiência. Seu sistema foi construído para enfrentar algo que deixou de existir sob novas condições de mercado.


Um erro comum que eu vi ao criar estratégias de negociação diz respeito à forma como os dados utilizados para construir sistemas são escolhidos. Muitas pessoas acreditam que, quando você troca prazos inferiores, você precisa usar menos dados porque o número de pontos que você possui no seu teste é maior. Por exemplo, alguns comerciantes acreditam que, se você estiver negociando um sistema 1H, você pode usar 2 anos de dados em vez de 10 para um sistema equivalente nos gráficos diários, porque você tem 24 vezes mais dados e, portanto, precisa de menos tempo para obter o mesmo número de trades e a mesma relevância estatística. É verdade que quanto mais barras você tiver, mais certo você pode estar com menos tempo de teste que você está desenvolvendo um sistema acima do viés de mineração de dados, mas isso não tem nada a ver com a robustez de sua estratégia. Ao construir um sistema de negociação no gráfico 1H usando 2 anos de dados, você pode ter certeza de que você pode obter o mesmo viés de mineração de dados do que com um sistema 4H em 8 anos de dados. Isso significa que você pode estar tão seguro no 1SH # 8211; Sistema de 2 anos como você está no 4H & # 8211; Sistema de 8 anos sobre a existência de uma ineficiência real do mercado para esses períodos. No entanto, há uma diferença chave aqui, você deve desenhar uma distinção entre a robustez e o viés de mineração de dados.


Se um sistema falhar porque as novas condições de mercado não se assemelham a nada dentro do período de teste, é racional assumir que uma estratégia robusta deve ser testada em mais condições de mercado. Se já viu mais condições de mercado, é adequado para sobreviver a mais condições, isso é simples. No entanto, as condições do mercado mudam em ciclos que são independentemente dos pontos de dados, porque mudam em relação a fatores macroeconômicos que atravessam certos intervalos de tempo. Isso significa que sua estratégia de 1 segundo do segundo semestre pode ter detectado uma ineficiência real durante esses 2 anos, mas simplesmente falhou porque essa ineficiência era inexistente quando o mercado avançou. No entanto, sua estratégia de 4H-8 anos e # 8211; que tinha visto um ambiente macroeconômico que era diferente. foi capaz de acomodar melhor as novas condições, porque se pareciam com algo que a estratégia havia visto no passado. A diferença aqui foi que, com a estratégia 4H, tínhamos visto mais condições de mercado, apesar de termos tido a mesma certeza quanto ao viés de mineração de dados.


Isso significa que o prazo de sua estratégia é completamente irrelevante quando se fala sobre a robustez do seu sistema, a robustez é determinada apenas pelo escopo das condições do mercado em que sua estratégia é capaz de sobreviver e não com quantos negócios ou quantos pontos de dados sua estratégia foi simulada. Uma estratégia diária & # 8211; com desempenho acima do viés de mineração de dados & # 8211; O comércio em 25 anos é mais robusto do que uma estratégia de 1H simulada em 2 anos, embora a estratégia do 1S possa ter mais negócios e mais pontos de dados simplesmente não viu uma variedade de condições de mercado tão amplas. Talvez todo o período de 2 anos para a estratégia do IH tenha sido localizado dentro de um intervalo diário anormalmente apertado, enquanto as condições fora desse período são completamente diferentes.


Ao desenvolver estratégias de negociação, mais condições significam sempre mais robustez e, portanto, usar a maior quantidade possível de dados é sempre uma boa idéia. Algumas pessoas dizem que não usam dados de mercado anteriores porque agora são irrelevantes, pois tais condições de mercado nunca mais ocorrerão. No entanto, o fato é que isso agora não é conhecido e, às vezes, condições de mercado semelhantes às do passado distante podem aparecer. Se você leu minha postagem sobre as condições atuais do mercado em relação à volatilidade no EUR / USD, você pode ter percebido que as condições atuais do mercado são realmente semelhantes às condições de negociação em 1996. Mesmo que as condições não sejam exatamente as mesmas e a microestrutura do mercado realmente mudou significativamente, a volatilidade geral e a direccionalidade se comportaram de forma semelhante ao longo do ano. Uma vez que você nunca sabe quais condições de mercado podem ser repetidas, a robustez adicional é sempre um profissional. É claramente mais difícil encontrar sistemas que funcionem em mais condições de mercado, mas quando esses sistemas são encontrados (com cuidado evidente para desenvolvê-los acima do viés de mineração de dados), você obtém uma maior chance de enfrentar com sucesso algo no futuro.


O acima não significa que sistemas imunes a falhas podem ser criados. Como eu disse, as condições de mercado disponíveis para a criação do sistema são finitas, mas as possíveis variações das condições de mercado no futuro são praticamente infinitas. Isso significa que, apesar de seus esforços, sempre pode haver um conjunto de condições de mercado que irão tornar sua estratégia insuficiente e alcançar uma falha estatística formal. A chave aqui é ter uma grande variedade de estratégias explorando ineficiências não correlacionadas, de modo que a probabilidade de falha ao mesmo tempo seja mínima. Outros dois aspectos principais são a capacidade de detectar falhas rapidamente e a capacidade de criar novos sistemas sob demanda, pois as estratégias precisam ser substituídas (com uma forte implementação de mineração de dados). Se você quiser saber mais sobre detecção de falhas e criação de sistema algorítmico, considere se juntar a Asirikuy, um site repleto de vídeos educacionais, sistemas de negociação, desenvolvimento e uma abordagem sólida, honesta e transparente para negociação automatizada em geral. Espero que tenha gostado deste artigo ! : o)


3 Responses to & # 8220; Compreender a natureza da falha no sistema de negociação: por que os sistemas de negociação falham e # 8221;


Wise post Daniel que eu só posso confirmar. Eu tenho um sistema que está operando no prazo de 5 minutos (!) Que inicialmente foi otimizado em dados de 1. janeiro de 1999 a 1. janeiro de 2018. Então, isso tem cem mil pontos de dados para o backtest. Ainda está lutando agora em 2018 porque o mercado mudou tanto e está em um comportamento que não existia os 14 anos inicialmente otimizados.


Então eu confirmo, não importa o tempo que sua estratégia é, importa quanto tempo (em anos) o horizonte é que você otimizou para adaptá-lo a tantos cenários de mercado quanto possível.


Oi Daniel & # 8211; você já tentou colocar um peso adicional nos últimos anos ao desenvolver uma estratégia? & # 8211; em caso afirmativo, quais foram os resultados / conclusões?


Obrigado por publicar: o) Se você fizer isso, simplesmente faz uma suposição sobre o comportamento do mercado no futuro, mais como um comportamento de mercado no passado recente. Isso pode ser bom ou ruim, dependendo do que aconteça no futuro. Se o futuro cumpre esta suposição, então você fará muito, se não acontecer (como aconteceu em 2008), você fará mal. Se você não sabe nada sobre o futuro, então não é uma suposição segura. Eu sou todo por apenas sistemas de negociação para os quais o passado recente foi lucrativo, mas eu não peso isso mais fortemente do que resultados no passado distante. Espero que isso responda sua pergunta: o)


Forex Mecânico.


Negociação no mercado FX usando estratégias mecânicas de negociação.


Que falha no sistema de negociação significa: Definição e quantificação da falha na estratégia, Parte 1.


Um dos aspectos mais importantes da negociação algorítmica é a remoção de estratégias de negociação de contas ao vivo quando elas falham. Saber quando uma estratégia falhar é extremamente importante, pois nos permite evitar perder e perder oportunidades, ao mesmo tempo que nos dá a chance de reafectar nosso capital para usar estratégias que possam estar melhor desempenho nas condições atuais do mercado. No entanto, a maioria das pessoas não tem um plano verdadeiramente racional para a falha do sistema e outros consideram a falha em apenas um escopo muito limitado que é realmente melhor para a esperança do que para uma análise racional das características estatísticas de uma estratégia comercial. Dentro dessas postagens, quero discutir com você o que significa falha do sistema comercial e como essa falha pode ser quantificada para permitir que você descarte estratégias comerciais, progressivamente (próxima parte) ou inteiramente em um determinado limite (artigo de hoje ). Passaremos por problemas com a definição de falhas, problemas com remoção de estratégias e possíveis soluções para essas questões.


O que significa para um sistema falhar? Muitos comerciantes dirão que eles têm algum tipo de "horizonte de falhas" # 8221; após o que um sistema será removido da sua conta de negociação. Isso geralmente é uma medida de perda histórica # 8211; como um determinado múltiplo da redução máxima & # 8211; Depois disso, o comerciante comprometeu-se a abandonar a negociação da estratégia. No entanto, tais visualizações de & # 8220; perda total & # 8221; são excessivamente simplistas e não contam nem a maneira como o sistema chega a essa retirada, nem a duração do período perdedor, também não são responsáveis ​​pela perda de oportunidade (falta de geração de lucro) e "# 8211" mais importante & # 8211; eles não têm nenhuma base estatística forte. Por que você usaria um múltiplo N da redução máxima como um horizonte de falha? Por que não 2N ou 3N? É importante, portanto, ter uma definição clara de falha no sistema (o que não é subjetivo) e, em seguida, aplicá-lo de forma racional e em toda a extensão às estratégias de negociação em uso.


Como podemos definir falhas? A falha é sempre uma medida relativa porque algo só falha quando comparado com um padrão, podemos chamar o & # 8220; sucesso & # 8221 ;. No caso da negociação algorítmica, um sistema terá sucesso quando ele for igual ou melhor do que as simulações históricas usadas para criar o sistema e ele falhará quando ele for pior. Mas como comparamos nosso sistema (o que é comercializado ao vivo) contra um resultado histórico? Precisamos comparar a distribuição dos retornos do nosso sistema com a distribuição dos retornos obtidos em nossas back-tests e julgar objetivamente quando um deles é inerentemente diferente do outro. Você precisa avaliar se a distribuição dos retornos que você obteve através da sua negociação ao vivo provavelmente será uma sub-amostra da distribuição histórica dos retornos. Se você pode rejeitar essa hipótese dentro de um determinado nível de confiança (geralmente 95%), você pode dizer que seu sistema falhou porque "# 8211" com toda a probabilidade & # 8211; já não se comporta do mesmo modo que o sistema que você criou.


Usar este critério é extremamente poderoso porque você eliminará os sistemas que falham por muitas razões diferentes. Os sistemas que adquirem planos de velocidade muito rápidos, sistemas que se acumulam por muito tempo, sistemas que não conseguem gerar lucro, etc. Ele evolui para além da simplicidade das medidas de redução simples.


Como você avalia se a distribuição ao vivo é uma sub-amostra da distribuição de back-testing? Existem muitas técnicas para fazê-lo, mas é extremamente importante evitar cair em pressupostos simplistas. Por exemplo, você pode usar simulações de Monte Carlo para amarrar a falha contra uma distribuição para algumas medidas específicas para sua estratégia. A falha dentro de uma simulação de Monte Carlo sempre deve ser determinada contra o mesmo número de negócios que você tem em sua negociação ao vivo, porque a técnica gera cenários de pior caso associados a números de comércio específicos. Você poderia gerar um cenário de pior cenário de Monte Carlo com base em 1000 negócios e isso será extremamente diferente dos cenários pior cenário de Monte carlo gerados para 55 ou 100 negócios porque a expectativa de profundidade, comprimento, etc. mudará à medida que o número de negociações se tornar maior ou menor. Não é o mesmo para entrar em uma redução de 10% em 20 negócios do que para entrar no mesmo saque em 50 negócios. Um valor de redução que pode não ser um pior caso em 400 negócios pode ser o pior caso em 20 negócios, porque a probabilidade de entrar em uma redução da mesma profundidade com um número menor de negócios pode ser um desenho muito menor a partir da distribuição histórica dos retornos . Em geral, encontrei as simulações de Monte Carlo para serem impraticáveis ​​porque são computacionalmente caras e precisam ser atualizadas com muita frequência (dependendo do número comercial).


No caso de sistemas de negociação altamente lineares (R & gt; 0,98 e distribuição normal de resíduos), você também pode avaliar cenários de pior caso usando violações da hipótese linear, usando um múltiplo 3.5 do desvio padrão de retornos que você pode dizer com uma confiança de 99% que a estratégia de negociação falhou. Esta maneira de avaliar os piores casos é muito mais simples e não requer uma reavaliação constante dos cenários do pior cenário, pois a equação linear usada para avaliar a falha do sistema é uma constante determinada a partir dos resultados históricos da estratégia. Nesta técnica, você está avaliando a hipótese de falha geral (é a distribuição de uma sub-amostra da distribuição histórica) de forma mais específica, aproveitando o fato de que os resultados históricos da estratégia se encaixam em um modelo estatístico muito bem definido.


Gostaria também de salientar que a falha do sistema nunca deve ser subjetiva. Quando você avalia um pior caso, você não pode escolher quais escolher e quais ignorar com base em alguma percepção subjetiva de se o sistema falhou ou não. Por exemplo, você não pode realizar uma simulação de 500 Monte Monte de comércio e usá-lo como pior caso ao ignorar o pior caso em uma simulação de Monte Carlo 50, porque você deve considerar, em geral, se a sua distribuição de retornos ao vivo é uma sub-amostra do distribuição histórica. Você não pode avaliar quais maneiras & # 8220; count & # 8221; e quais maneiras não contam. Teste estatístico seletivo é algo que costuma acontecer quando as pessoas têm uma razão forte para # 8220; acreditar & # 8221; em um sistema de comércio. Quando o anexo & # 8211; devido a razões econômicas, psicológicas, etc. é muito bom, um comerciante sempre terá problemas para dizer que um sistema falhou, porque o ônus da falha pode ser maior que o fardo das perdas financeiras se o sistema continuar a negociar. Por esta razão, também é extremamente importante ter algum método para gerar estratégias rapidamente e eficientemente para substituir aqueles que falharam.


Finalmente, gostaria de salientar que o fracasso de uma perspectiva estatística é um ponto de nunca recuperação. Uma vez que uma estratégia falha, nunca será capaz de voltar ao ponto em que poderia caber novamente na distribuição histórica dos retornos. Uma estratégia pode se recuperar do cenário desencadeado / falta de lucro, mas a mudança nas estatísticas causadas por esse período tornou a estratégia um fracasso (para sempre) em relação aos resultados históricos anteriores. Claro, se a estratégia se recuperar, você pode reconsiderar se deseja trocar, mas você não medirá mais a falha em relação ao padrão anterior, mas você precisará usar as novas estatísticas (as que falharam contra seu padrão original) como parte de sua nova estimativa. Minha experiência me diz que é melhor simplesmente gerar novas estratégias para substituir sistemas que falharam ao invés de negociar uma estratégia que se recuperou com um padrão menor de falha.


Observe que existem outras maneiras de descartar estratégias que não envolvem "limites rígidos" # 8221; (descarte progressivo), algo que estaremos discutindo na minha próxima publicação. Se você gostaria de saber mais sobre os piores casos e a geração do sistema e como você também pode gerar e substituir estratégias de forma eficaz, considere se juntar a Asirikuy, um site repleto de vídeos educacionais, sistemas de negociação, desenvolvimento e uma abordagem sólida, honesta e transparente para automatizado negociação em geral. Espero que tenha gostado deste artigo ! : o)


One Response to & # 8220; O que a falha do sistema comercial significa: Definição e quantificação da falha na estratégia, Parte 1 e # 8221;


Eu vi muito sobre comerciantes algorítmicos que mudaram para a negociação de freqüência média devido ao superlotação na negociação de alta freqüência, que eliminou todos os lucros. Parece que essa tendência continuará em frequências mais baixas e baixas de negociação até que seja extremamente difícil ganhar dinheiro através de negociação algorítmica. Esse é o começo do fim?


Forex Mecânico.


Negociação no mercado FX usando estratégias mecânicas de negociação.


O pior caso: Determinar a falha do sistema comercial para sistemas altamente lineares.


A falha do sistema de negociação é uma das áreas mais importantes na negociação algorítmica porque lida com os diferentes mecanismos que permitem aos comerciantes remover estratégias de negociação antes de gerar grandes perdas nas contas de negociação. Em mercados como o Forex, a detecção de falhas no sistema de negociação e a remoção rápida são críticas porque a falta de remoção de um sistema que não tem expectativa positiva pode resultar em perdas intensas com o passar do tempo. No entanto, a definição de falha do sistema não é precisa e depende da confiança que um trader deseja ao julgar que um sistema perdeu sua vantagem estatística. Há também várias maneiras pelas quais a perda de uma vantagem & # 8201; pode acontecer, dependendo de qual aspecto do corpo estatístico do sistema se comportam anormalmente contra novas condições de mercado. No artigo de hoje, estaremos discutindo algumas das maneiras pelas quais os sistemas de negociação altamente lineares podem falhar e quais ferramentas podem nos ajudar a detectar se essas falhas ocorrem, bem como o risco inevitável de fazer um julgamento falso positivo.


Comecemos primeiro por definir a falha do sistema. Para este artigo, vou tomar uma falha do sistema como uma evolução das características estatísticas de um sistema, de modo que a distribuição dos retornos do sistema possa ser considerada fundamentalmente diferente da distribuição dos retornos obtidos com os resultados históricos com um 95 % nível de confiança. Isso significa que precisamos estabelecer alguns limiares estatísticos que o sistema não pode violar e devemos declarar falha assim que estes níveis sejam violados. Note-se que esses níveis também devem evoluir à medida que o sistema de negociação é obtido à medida que o histórico é expandido, de tal forma que um comerciante também pode abandonar uma estratégia ou reduzir o risco se os limiares para remover a estratégia se tornem muito profundos.


Existem muitas variáveis ​​que podem ser consideradas para diagnosticar a falha do sistema, entre elas podemos considerar a redução máxima, o comprimento máximo de retirada, o número de perdas consecutivas, etc. Outra medida extremamente importante é a velocidade com a qual os cortes são alcançados. Obviamente, não é o mesmo para um sistema de negociação alcançar uma redução de 20% em 2 anos contra a redução de 20% em 10 dias. Um sistema pode estar se comportando dentro de suas características esperadas, se demorar 2 anos para atingir um desconto de 20%, enquanto ele pode ser descartado muito facilmente se atingir um período de rebaixamento profundo muito rápido. Uma redução profunda e rápida pode ser suficiente para diagnosticar a falha do sistema porque a distribuição histórica dos retornos pode não conseguir alcançar essa profundidade de redução dentro desse número comercial.


As simulações de Monte Carlo nos permitem obter os limiares acima muito facilmente para qualquer estratégia de negociação dada (desde que as estratégias não tenham correlação em série), mas também podemos empregar um modelo muito mais simples para estratégias que possuem características altamente lineares. Para sistemas altamente lineares, podemos usar a regressão linear de um teste não composto para determinar os limites de falha. Nós também podemos usar critérios mais simples & # 8211; como uma violação de um determinado múltiplo do desvio padrão dos resíduos & # 8211; para descartar uma estratégia como sendo muito desviada do modelo linear. O teste de violação de desvio padrão é muito útil para abandonar os sistemas que têm períodos de retirada pronunciados, uma vez que a violação de desvio padrão está naturalmente preparada para lidar com excursões rápidas para a desvantagem e descartar uma estratégia rapidamente. Por outro lado, a técnica de violação de desvio padrão também é útil para evitar comprimentos de retirada extremamente longos, já que os sistemas serão descartados se sua curva de equidade se mover horizontalmente, enquanto a regressão linear espera uma progressão para o lado oposto.


Estatisticamente, gostaríamos de usar pelo menos um desvio-padrão de 3-3,5 múltiplo para descartar uma estratégia de negociação com confiança suficiente, pois descartar em múltiplos múltiplos pode levar a abandono prematuro. Uma boa maneira de avaliar o quão boa a barreira de desvio padrão também pode ser olhar para a violação máxima do desvio padrão da linha de regressão dentro dos back-tests e ver se o nível escolhido constitui um limite realista para um pior caso estatístico. In general a highly linear system (R^2 > 0.98) won’t have any breach above the 2.5 multiple of the standard deviation and systems with larger breaches should be considered carefully as the probability of sharp downside excursions has already been present within the back-testing results.


Another way in which we can determine system failure on linear systems is to carry out new regressions as time goes by including new data. A system that had a very linear profile with a very high correlation coefficient will inevitably start to lose this linearity as time goes by, if the R^2 coefficient drops below a defined threshold for linearity (for example 0.95) the system can be stopped from trading. The IR (Ideal R) can also be used to carry out a similar test, a drop in the ideal R would imply that the system is losing linearity and should be discarded. The IR is also faster reacting than the traditional R used in linear regressions and should therefore allow for faster discarding at breaches of acceptable levels.


It is important to remember that a system fitting a linear model must also match all the statistical requirements for lineal behavior. These include linearity (relationship between time and balance should be proportional), independence (no serial correlation), В homoscedasticity of errorsВ В (constant variance) and normality of the error distribution. A breach of any of these characteristics implies a breach of linear behavior and with this the discarding of the trading strategy should be considered. As time progresses the model can be expanded to include new data and the error distribution, error variance and correlation coefficient (linearity) can be examined to determine whether the system has become non-linear in nature.


Highly linear systems – besides their higher historical expectation of positive OS results – allow us to use simpler models to determine system failure that do not require the use of computationally more intensive methods (such as Monte Carlo simulations). The linear model can easily be expanded on new data and the current situation of the strategy can be easily evaluated. If you would like to learn more about building highly linear systems and trading them within a powerful and professional C frameworkВ please consider joiningВ Asirikuy, a website filled with educational videos, trading systems, development and a sound, honest and transparent approach towards automated trading in general . I hope you enjoyed this article ! : o)


One Response to “The Worst Case: Determining Trading System Failure for Highly Linear Systems”


Statisics is always my weaknes and that is main hudle currently I face when it comes to understanding such failure. Thanks for your easy explaination.


Forex Mecânico.


Negociação no mercado FX usando estratégias mecânicas de negociação.


Forex Trading System Failure: Building Systems for the Worst Case.


An invariable, unstoppable characteristic of trading strategies is that all of them eventually fail — by “fail” I mean that they fall below the expectations derived from historical testing. This makes no distinction between historical development methods – such as regular optimization, walk forward analysis, machine learning, etc – because it’s a consequence of the unpredictability of financial time series and the incompleteness of historical results to account for all possible variations of trading instruments. Even if a system has a high degree of adaptability that has proved successful in the past (as machine learning or walk forward analysis might generate) it does not imply that a set of market conditions won’t come where this adaptability will be completely useless. Eventual system failure – what we can call system death – is an inevitable consequence of an edge developed on a finite amount of information on a market with potentially infinite variations. В.


The next question is: so what can we do about it? Even if system failure is inevitable, it does not mean that we cannot make a profit before it happens. However it is important to note that the detection of system failure comes at a price. This is a consequence of the natural drawdown cycles that systems go through. Since a system might have “normal” losing periods, we must go into some sort of abnormal losing period in order to be able to discard a system. The detection of this abnormal drawdown requires some degree of loss to be attained. It’s extremely difficult to be able to foresee system failure with any degree of accuracy, so you are obliged to at least live through enough of this failure as to detect it. Here is where the interesting stuff happens, the degree of loss needed for failure detection depends fundamentally on the characteristics of the system you’re trading and the risks В you are taking.


Things such as the risk to reward ratio, the winning percentage and the trading frequency can heavily influence the amount of loss needed in order to discard a strategy. For example if you’re trading a system with a 3:1 reward to risk ratio and a winning percentage of 30%, you most likely have historically long drawdown periods within your back-tests. If you have a 600 period historical drawdown and 25 consecutive losing trades, then Monte Carlo simulations are bound to suggest worst cases that are in the order of double these amounts. The opportunity cost – time trading a bad strategy before you can tell it went bad – as well as the actual money lost is very significant for strategies under such circumstances. Another big problem of such strategies is that they are heavily reliant on a small number of highly successful trades. The missing of a few trades due to broker dependency will highly influence drawdown depth and length.


However the extreme opposite case is not better than this. A system with a risk to reward ratio of 0.2 and an 80% winning rate has equally bad problems. Although it takes only a few loses to make you decide to stop trading a strategy, these loses are much larger than your average profit. In this case taking additional loses due to things like broker dependency also poses great problems because it might put two accounts under completely different scenarios when they are trading the same strategy. If an accounts takes an additional loss it might be enough to discard the strategy on that account while another accounts might be far away from the same scenario. Although drawdown period lengths are usually short under such systems – meaning that the opportunity cost is small – the drawdown periods are usually very sharp in nature and therefore it becomes very difficult to discard systems on a per-trade-number Monte Carlo simulation.


The ideal statistical setup for discarding a system is actually the middle ground. The best possibility to discard a trading system with the least possible loss with the least broker dependency materializes when you have a trading strategy for which the risk to reward ratio is close to 1 and the winning percentage is just 50-65%. Around the 50% level it’s better to be above than below, because systems with winning percentages below 50% put an additional strong psychological pressure for the trader executing the strategy. В Winning more often is much better psychologically and it also leads to a faster probability of failure detection on consecutive loss counts. Loses and profits are of similar magnitude so there is no uneven scenario that could heavily skew strategies due to things such as broker dependency.


Another point worth discussing is trading frequency. In an ideal world – where system failure doesn’t exist – it is a no-brainer to choose trading systems with the highest possible trading frequency, as compounding is obviously faster in this case. Given a permanent positive expectancy, the highest turnover clearly gives the best long term returns. However, in the real world – where system failure happens – high frequency is a bad choice because it includes a possibility for very fast/deep failure short-lived changes in market conditions. A system that trades 4 times per week will have 16 consecutive loses on a month where the market is “misbehaving” according to the system’s expectations while a system with only 2 trades per week would face half the loses. The chances of the second system of coming out of the bad conditions without being discarded is much higher (assuming they are otherwise statistically the same, only differing on trading frequency). However you also need to have enough historical results as to have confidence in the historical statistics generated, so all-in-all you want to have a trading frequency that exceeds at least 10 trades per year with historical tests that will be in the +10-20 year range.


In conclusion, systems should be built with statistical characteristics that reflect the quickest and best chances of statistically detecting system failure with the least В possible loss. Designing systems that are based on a hypothesis of “endless edges” is irrational, since we know that failure is guaranteed to eventually happen. From this perspective it makes much more sense to design several systems with limited frequency and a middle-ground risk to reward ratio and winning percentage perspective where the losing of an edge can be detected promptly but the losing of the overall edge (all systems failing) is unlikely. While a fast frequency trading strategy with the highest possible mathematical expectancy would be the obvious choice if system failure didn’t exist (best expectation of profit) in reality we must design systems that minimize the worst case scenario (statistical system failure detection) and not systems that maximize the best case scenario.


If you would like to learn more about trading system creation and how you too can generate your own trading systemsВ please consider joiningВ Asirikuy, a website filled with educational videos, trading systems, development and a sound, honest and transparent approach towards automated trading in general . I hope you enjoyed this article ! : o)


6 Responses to “Forex Trading System Failure: Building Systems for the Worst Case”


I remember you mentioning once Mike Harris and a few ideas you got from him related to starting Kantu. Since then I’m following his blog and his analysis has convinced me to avoid forex trading at all costs. This is one of the posts that made me change my mind: priceactionlab/Blog/2018/11/frequent-retail-forex-trading-is-a-losing-negative-sum-game/


Thanks for posting :o) This is actually true if you’re following random entries, because the forex market is a negative sum game with no bias. What Mike Harris is showing here is merely that you cannot be profitable by mere luck in FX trading (while you can by just going long in equities due to the positive long term bias).


If you’re using a system with a long term edge you might put things in your favor as he says himself:


Of course, there will always be cases that escape the boundaries of this simulation that was restricted to frequent retail trading, like for example infrequent trend-following or some other strategy based on skill or an algorithm.


That said, Forex trading will be harder than ANY market with a long term positive bias . There are only two reasons to trade FX, one is the potential for higher leverage and therefore lower capital requirements (or the potential for higher risk bets) and the second is the lack of correlation between FX strategies and equity strategies (to decrease overall portfolio beta).


Of course if you want to have the highest chances of long term profits, then you should trade a market with a positive bias, because there is an inherent wealth creation effect in the market. Forex is extremely hard and speculative, no doubt. Thanks again for posting :o)


PS: Note that my analysis on this article is pertinent to any system (equities, commodities, etc) not just forex systems.


I never understood why a system can fail at a certain moment under a new market conditions but the same systems can’t start again to work profitably after some time.


As said market conditions change continuously and all system eventually fail, but not forever.


Thanks for posting :o) The thing is that failure must be defined clearly and statistically (a system doesn’t fail simply because it started to go into a drawdown period) because you cannot hope to trade a system until it drops your balance to 0. If a system “fails” it simply means that it went through a drawdown phase that exceeds expectations derived from the system’s distribution of returns (obtained through Monte Carlo simulations — not simply those of back-test!). It simply means that the system doesn’t behave anymore as you expected it to. If it eventually recovers and reaches a new equity high you can rerun your Monte Carlo simulations and decide whether you’re comfortable with re-including the system with its changes statistical characteristics. You need to understand very well how failure is defined statistically. Thanks again for posting!


nice to see here some activity again on this blog :)


Also, I agree on the points you’ve made pertaining to failure detection. However, I think what you said about trading frequency did not hit the mark. To be more precise, one should look at the entry signal frequency and the effective time in market. If you take for example Sunqu, usually there is a trading signal every day (although the number of trades (broker transactions) is much lower) and the time in market is nearly 100%. Similar things could be said about Kantu (of course depending on parameters). If you would like to have only 1 metric to judge about a strategy, I would prefer time in market over trading frequency: 2 of our best strategies (GGATR+WFE BB) have a trading frequency around once a week and a win rate around 60%, and a rather short trade duration (usually hours). They are very selective on entry and can not be fooled easily by the market. I would appreciate if we could find more strategies like these using win rate and time in market as the selection criteria. Being out of the market is the only way to limit risk.


Thanks for posting :o) I completely agree with your comment. This is the reason why I introduced the “bars out” variable in Kantu that allows you to sort systems for their “time outside the market” rather than their frequency. Checkout my last post on TL based systems, which I think you’ll enjoy :o) I do agree that we need some more systems in the likes of those you’ve just mentioned. Obrigado novamente por publicar,

No comments:

Post a Comment