O preço de procurar
Uma procura de 15.000 configurações, julgada em 156 operações, fabrica 0,317 de um R por operação antes de o mercado ter feito seja o que for, e esse número sai apenas das duas contagens, sem um único preço lá dentro. Aplica a mesma aritmética à procura da aula 63: a estatística t da sua vencedora, 3,65, tem de ultrapassar 3,54 e não 1,65, e ultrapassa. Depois fixa um número que aquele backtest nunca imprimiu — quantas operações uma regra tinha de fechar para poder ganhar — e o veredicto sobre a mesma vencedora passa de um em 147 para cara ou coroa, sem que mude um único preço.
Pré-requisitos: A aula 63, pela procura de 253 células cuja vencedora esta página volta a julgar, a aula 19, pelo que uma estatística t sobre sete operações pode e não pode suportar, e aula 62, pela frase com que uma regra tem de ser escrita antes de qualquer disto se aplicar.
O que a contagem sozinha já te diz
Supõe que todas as regras que estás prestes a testar não valem nada. Não mal desenhadas, não azaradas: sem valor, no sentido exato de a sua vantagem verdadeira ser zero. Cada uma devolve na mesma um número, porque um registo finito de operações é uma amostra e as amostras oscilam. Testa uma e obténs uma oscilação. Testa muitas e ficas com a maior oscilação que encontraste, porque ficar com a maior é exatamente o que uma procura faz. O maior de muitos zeros ruidosos não é zero, e o seu tamanho é fixado por quantas extraíste, não por aquilo de que as extraíste.
Esta última oração é a aula inteira e vale a pena ser direto. Quanta vantagem uma procura fabrica não depende do instrumento, nem do período, nem do ano, nem de o mercado ter tido tendência. Depende de duas contagens: quantas configurações experimentaste e sobre quantas operações cada uma foi julgada. Ambas são conhecidas antes de correres o que quer que seja.
Escreve a estatística t de uma configuração como de costume: a sua operação média dividida pelo erro padrão dessa média. Sob o pressuposto de vantagem nula, o t de cada configuração é uma extração de uma normal padrão, e uma procura sobre N configurações fica com a maior de N extrações dessas. O valor esperado dessa maior extração tem uma forma fechada com exatidão melhor do que um por cento, que é o resultado que López de Prado apresentou em 2014 com Bailey, Borwein e Zhu:
E[max of N] ≈ (1 − γ) Φ−1(1 − 1/N) + γ Φ−1(1 − 1/(N e)), γ = 0.5772156649
Uma substituição, feita por inteiro, para que aqui nada tenha de ser aceite por confiança. Com 15.000 configurações, 1 a dividir por N dá 0,0000667, e o valor da normal padrão que deixa essa massa na cauda superior é 3,82022. Depois N vezes e dá 40.774, 1 a dividir por isso dá 0,0000245, e o seu valor normal é 4,06011. Ponderando os dois por 0,4228 e 0,5772 obtém-se 3,95869. Isto é uma estatística t. Para a transformar em vantagem por operação, divide pela raiz quadrada do número de operações: a raiz de 156 é 12,49, e 3,95869 a dividir por 12,49 dá 0,317. Nada sobre mercado nenhum entrou nesse cálculo.
A mesma fórmula responde à pergunta que um profissional de facto tem, que não é quanto marca a melhor regra sem valor mas que resultado teria surpreendido. Exigir que uma procura sobre N configurações sem valor produza algo acima de t apenas cinco vezes em cem coloca a fasquia no valor normal de 0,95 elevado a 1/N. O teste é unilateral em toda esta página, porque uma regra que perde não é uma descoberta, e é por isso que uma única configuração fica em 1,645 e não no 1,96 bilateral. É a terceira coluna abaixo.
| Configurações | Melhor t esperado | Fasquia aos cinco por cento | R por operação, 156 operações |
|---|---|---|---|
| 1 | 0,000 | 1,645 | 0,000 |
| 10 | 1,575 | 2,568 | 0,126 |
| 100 | 2,531 | 3,283 | 0,203 |
| 253 | 2,841 | 3,537 | 0,228 |
| 1.000 | 3,255 | 3,884 | 0,261 |
| 15.000 | 3,959 | 4,499 | 0,317 |
| 100.000 | 4,391 | 4,887 | 0,352 |
Lê a primeira coluna contra a terceira e a forma é a parte útil. Passar de uma configuração para 253 sobe a fasquia de 1,645 para 3,537, e é aí que está quase todo o dano. Passar de 253 para 100.000 é 395 vezes mais procura e sobe-a apenas mais 1,350. A penalização cresce com o logaritmo da contagem, por isso uma procura modesta sai cara e uma enorme é mal pior do que uma grande. Isto corta nos dois sentidos, e o sentido em que corta contra ti ninguém o menciona: não é preciso uma grelha de dez mil para estares mal exposto. Cem já está em 3,283.
A folha que este módulo abriu na aula 62 ganha aqui uma terceira coluna, ao lado da frase e ao lado do par de números que a aula 63 acrescentou. A fasquia que esta configuração tinha de ultrapassar, e a contagem a partir da qual foi calculada. Uma linha cujo t não excede a sua própria fasquia não mostrou nada, e uma linha que não leva a contagem não pode ter fasquia nenhuma. Quase ninguém contra quem negoceias anota essa contagem. Custa um único número inteiro, escrito antes da procura em vez de recordado depois, e a razão de raramente lá estar é que só pode fazer um resultado parecer pior.
A mesma vencedora, julgada de cinco maneiras
A aula 63 procurou entre 253 configurações de médias móveis sobre sessenta fechos e ficou com a de maior total líquido: uma média de 2 barras contra uma de 5, sete operações, 9,84 por ação depois de custos, t de 3,65. Contra a tabela acima, 253 configurações põem a fasquia em 3,537, portanto a vencedora ultrapassa-a. Parece uma aprovação limpa, e vale a pena ver porque não é.
Conta as operações que cada uma das 253 configurações fechou realmente sobre aqueles fechos. A menor é 1, a mediana é 1, o valor a três quartos é 2, e a maior é 16. Mais de metade da grelha nunca fechou uma segunda ida e volta. A procura era portanto nominalmente larga 253, e a maior parte dessa largura eram configurações que mal negociaram, cuja média é uma média sobre um ou dois números e cuja estatística t é, em consequência, selvagem. A fórmula pressupõe 253 testes comparáveis. Foram-lhe entregues 253 testes de peso completamente desigual.
A reparação habitual é um mínimo: uma configuração só pode ganhar se fechou pelo menos tantas operações. Ninguém discute isso. O que ninguém imprime é o número. Volta então a correr a nula da aula 63 — os 59 movimentos de barra a barra extraídos com reposição, 4.000 séries, semente 20260903, a mesma procura de 253 células em cada uma — e regista com que frequência a melhor configuração admissível alcança o 3,65 da vencedora, com cinco mínimos.
| Operações mínimas | Células admissíveis | Melhor t sobre os sessenta fechos | Procuras sem estrutura que alcançam 3,65 |
|---|---|---|---|
| 2 | 115 | 6,24 | 0,5048 |
| 3 | 50 | 6,24 | 0,2210 |
| 5 | 20 | 3,79 | 0,0385 |
| 7 | 11 | 3,65 | 0,0068 |
| 10 | 4 | 1,03 | 0,0031 |
Com um mínimo de sete operações, exatamente as que a vencedora fechou, 0,68 por cento das procuras sem estrutura alcança 3,65: cerca de uma em 147, e um resultado que qualquer pessoa publicaria. Com um mínimo de duas, alcançam-no 50,5 por cento. A vencedora está inalterada, os fechos estão inalterados, as 253 configurações estão inalteradas, e a mesma estatística t é uma descoberta de um em 147 ou o lançamento de uma moeda consoante um inteiro que não aparece em parte alguma de um relatório de backtest.
A correção por ter procurado tem um botão só dela.
Daquela tabela caem mais duas coisas, e ambas são piores do que o título. O mínimo não se limita a filtrar a vencedora, muda qual configuração ganha: com mínimos de dois e de três, o melhor t da grelha é 6,24, obtido por um par de 3 e 11 sobre quatro operações, e a vencedora de 2 e 5 não é sequer a melhor célula. E com um mínimo de dez operações, o melhor t em qualquer ponto das 253 é 1,03. Cada migalha da vantagem aparente nesta série vive em configurações que negoceiam menos de dez vezes, que é justamente o regime em que uma estatística t tem menos direito a ser acreditada.
A forma fechada é portanto uma estimativa de bolso e não um veredicto. Deu 3,537 para esta grelha; a simulação dá um ponto aos cinco por cento de 3,397 com um mínimo de cinco, o que fica perto, e de 9,57 com um mínimo de três, o que não fica nada perto. Usa a fórmula para saberes por alto contra o que estás antes de começar, e simula no mínimo que realmente usaste antes de acreditares em seja o que for.
Faz isto esta noite: escreve a tua contagem de configurações e o teu mínimo de operações antes de olhares para qualquer resultado, e calcula a fasquia a partir da primeira.
O que isto não resolve
Que as configurações sejam independentes. Não são de todo: um cruzamento de 2 e 5 e um cruzamento de 2 e 6 negoceiam quase as mesmas barras, portanto as 253 extrações sobrepõem-se muito e a fasquia verdadeira para testes independentes ficaria abaixo de 3,537. A fórmula corrige a mais numa grelha correlacionada, e esse é o sentido que serve a prudência e não o leitor. Continua a ser um limite que convém conhecer, mas uma página que o cite como resposta está a citar um limite superior no lugar de uma medição.
Que sessenta fechos consigam suportar isto. Cinquenta e nove movimentos, uma vencedora com sete operações e mínimos que esvaziam a grelha aos dez: cada número da segunda tabela é calculado sobre uma série curta o bastante para que os mínimos e o comprimento da amostra fiquem enredados. Sobre duas mil barras, um mínimo de dez deixaria de pé quase toda a grelha, e a viragem entre um em 147 e cara ou coroa aconteceria, se acontecesse, com outros mínimos. O mecanismo não depende do comprimento. Os números concretos dependem dele por inteiro.
Que a estatística t seja a estatística certa. Pressupõe que as operações de uma configuração são extrações independentes de igual variância, e operações consecutivas de uma regra sobre uma série não são nem uma coisa nem outra: sobrepõem-se em regime, partilham a volatilidade das mesmas semanas, e uma regra que aguenta mais tempo toma-as maiores e menos numerosas. É precisamente por isso que o número de operações varia tanto ao longo da grelha, de modo que o defeito que o mínimo remenda e o pressuposto em que a estatística assenta são o mesmo defeito visto duas vezes.
Que a nula reamostrada seja a nula certa. Extrair os movimentos com reposição destrói o agrupamento de volatilidade juntamente com tudo o resto, e esse agrupamento é justamente o que decide quantas operações uma configuração de cruzamento fecha. A nula gera então números de operações que uma série real não daria, e as contagens de células admissíveis da segunda tabela ficam, por essa razão, algo desviadas. Um bootstrap por blocos manteria o agrupamento e é o passo honesto seguinte; esta página não o corre, pela mesma razão que a aula 63.
Que escolher o mínimo seja inocente. Não é, e esta página acabou de executar a técnica contra a qual avisa: cinco mínimos foram corridos e os cinco estão impressos, o que é honesto, mas quem corre cinco e relata aquele em que a sua regra ultrapassa a fasquia subiu a procura um nível e anda agora a procurar entre mínimos. A contagem que vai para a folha tem de incluir todas as dimensões que fizeste variar, e o mínimo é uma delas a partir do momento em que experimentas mais do que um.
E a concessão que mais custa. A aula 63 terminou sem conseguir contar as configurações que nunca foram escritas, e esta página não resolve isso; torna-o mais afiado e mais incómodo. A fasquia é função da contagem, a contagem só é conhecida para a grelha programada, e o gráfico que olhaste, o parâmetro que mexeste e puseste de volta, o instrumento que abandonaste por ser feio são todos configurações que sobem a fasquia e não deixam rasto. A fórmula converte um problema incontável num contável apenas para a parte da procura que foi honesta o bastante para ser escrita. A aula 65 é onde a contagem é forçada até um e o preço é pago em tempo: com uma única configuração a fasquia cai de 4,499 para 1,645, e um backtest de 15.000 células precisa por isso de 7,48 vezes mais operações do que um registo ao vivo para sustentar a mesma afirmação.
Problemas
- Conta a tua grelha. Pega na última estratégia que otimizaste e conta as configurações que programaste: cada valor de cada parâmetro, multiplicado, incluindo as que correste e descartaste. Mete essa contagem na fórmula da fasquia, ou lê-a na primeira tabela. Dez minutos, e ficas com um número na mão, o t que a tua vencedora tinha de bater, que quase de certeza não é 1,65.
- Encontra onde o teu veredicto vira. Pega na mesma procura e volta a corrê-la com mínimos de 2, 5 e 10 operações, anotando em cada caso a configuração vencedora e o seu t. Meia hora, e ficas com um número na mão, o mínimo a partir do qual a tua vencedora deixa de ganhar, que te diz quanto do teu resultado era sustentado por configurações que mal negociaram.
- Simula a fasquia que enfrentas de facto. Reamostra com reposição as variações de barra a barra do teu instrumento, volta a correr toda a tua procura sobre cada série sintética no mínimo por que optaste, e fá-lo mil vezes a partir de uma semente que escrevas. Conta com que frequência a melhor configuração admissível alcança o t da tua vencedora real. Uma noite, e ficas com um número na mão, essa fração, que é a única versão da fasquia que sabe o que as tuas configurações têm em comum.
Fontes. David H. Bailey, Jonathan M. Borwein, Marcos López de Prado e Qiji Jim Zhu, «Pseudo-Mathematics and Financial Charlatanism: The Effects of Backtest Overfitting on Out-of-Sample Performance» (Notices of the American Mathematical Society, 2014), pela fórmula do máximo esperado em que esta página substitui e pelo comprimento mínimo de backtest que dela decorre. David H. Bailey e Marcos López de Prado, «The Deflated Sharpe Ratio: Correcting for Selection Bias, Backtest Overfitting, and Non-Normality» (The Journal of Portfolio Management, 2014), pela mesma correção expressa como corte sobre um número publicado em vez de como fasquia a ultrapassar. Campbell R. Harvey e Yan Liu, «Backtesting» (The Journal of Portfolio Management, 2015), pelo argumento de que o número de tentativas é a primeira coisa que quem lê um backtest devia pedir, que é a coluna da folha que esta aula acrescenta. Halbert White, «A Reality Check for Data Snooping» (Econometrica, 2000), pelo procedimento de reamostragem sobre o qual a segunda tabela é construída, herdado da aula 63.
O backtesting como prova
A procura de 253 células cuja vencedora esta aula volta a julgar contra a sua própria fasquia.
Ler a aula →Quanto tempo até saberes
O que uma estatística t sobre sete operações pode e não pode suportar.
Ler a aula →O que teria de acontecer
A frase com que uma regra tem de ser escrita antes de se aplicar qualquer correção.
Ler a aula →Apenas para fins educativos. Negociar envolve risco substancial de perda. Não é aconselhamento financeiro. Resultados passados não garantem resultados futuros.
💬 Discussão (0 comentários)
A carregar comentários…
Pronto para operar com a Signal Pilot?
Põe a tua formação em prática com indicadores profissionais e ferramentas de análise de mercado em tempo real.
Voltar à Signal Pilot →