Criar sistema comunitário
DDH
Janus,
Continuo sem perceber se pretendes calcular um valor único final que usarias como base do cálculo do risco aconselhado. Ou se pretendes calcular um valor que varia ao longo do tempo.
Tentei fazer o cálculo da primeira hipotese... Comecei por exportar para ASCII a evolução diaria do DD, que depois li no metastock. Criei um indicador que mostra o HIGH de cada barra. De seguida mudei a escala para mensal e o indicador mostra-me o máximo do DD em cada mês. Coloquei depois o desvio padrão (azul) e uma média móvel simples (verde), com periodos que abrangem os dados desde 1992.
O desvio padrão em 2003 do DDH mensal é de 374.77.
A média móvel simples em 2003 do DDH mensal é de 429.65.
O resultado daria, 429.65 + (3 x 374.77) = 1553.96 (capital constante de 10000)
Que corresponderia a 15.5 % de DD
Gostaria de perceber melhor o teu raciocício.
pdf
Continuo sem perceber se pretendes calcular um valor único final que usarias como base do cálculo do risco aconselhado. Ou se pretendes calcular um valor que varia ao longo do tempo.
Tentei fazer o cálculo da primeira hipotese... Comecei por exportar para ASCII a evolução diaria do DD, que depois li no metastock. Criei um indicador que mostra o HIGH de cada barra. De seguida mudei a escala para mensal e o indicador mostra-me o máximo do DD em cada mês. Coloquei depois o desvio padrão (azul) e uma média móvel simples (verde), com periodos que abrangem os dados desde 1992.


O resultado daria, 429.65 + (3 x 374.77) = 1553.96 (capital constante de 10000)
Que corresponderia a 15.5 % de DD
Gostaria de perceber melhor o teu raciocício.
- Anexos
-
- DDH_mensal.gif (16.29 KiB) Visualizado 1609 vezes
Tens de obter uma série de DD historicos e depois fazer a analise numa folha de calculo.
O WL dá-te apenas o valor máximo do DD, mas se tiveres uma média (mensal, anual) dos DD + 2 desvio padrão tens uma medida mais indicada.
Alternativamente, podes usar o Risk Of Ruin (RoR), ajustando assim o position sizing à tua curva de preferências...
O WL dá-te apenas o valor máximo do DD, mas se tiveres uma média (mensal, anual) dos DD + 2 desvio padrão tens uma medida mais indicada.
Alternativamente, podes usar o Risk Of Ruin (RoR), ajustando assim o position sizing à tua curva de preferências...
Janus
Janus,
Não sei se entendi... Como calcularias o desvio padrão do DDH ?
Obrigado,
pdf
Não sei se entendi... Como calcularias o desvio padrão do DDH ?
Obrigado,
"...é primeiramente saber que drawdown ele daria numa situação limite, e depois ajustar a alavancagem para um valor que origine um DD máximo que ache aceitável e do qual não seja penoso recuperar"
eu NUNCA usaria o drawdown histórico (DDH) como ponto de partida mas sim 2 ou 3 desvios-padrão desse mesmo DDH.
eu NUNCA usaria o drawdown histórico (DDH) como ponto de partida mas sim 2 ou 3 desvios-padrão desse mesmo DDH.
A questão do drawdown máximo e da alavancagem.
Este sistema anti-trend dá rentabilidades elevadíssimas em acções tecnológicas como as do Nasdaq, vejam que aqueles 44% são feitos com uma alavancagem de 1! Ou seja, nem seria preciso uma conta margem, futuros ou CFD. O principal problema é que é um sistema um pouco selvagem e sujeito a dar sustos com empresas em queda livre, e a questão da alavancagem ou risco a assumir é muito importante, não interessa nada ganhar 100% ao ano para depois perder tudo!
O raciocínio que faço para escolher a boa alavancagem para um sistema, é primeiramente saber que drawdown ele daria numa situação limite, e depois ajustar a alavancagem para um valor que origine um DD máximo que ache aceitável e do qual não seja penoso recuperar. 25% ou 30% são os valores máximos que considero sensatos... mas isto fica ao critério de cada um. Podemos até decidir que durante 1 ano vamos desafiar a sorte porque temos pouco capital e não é muito grave perder tudo...
Eu só consegui arranjar bases de dados minimamente boas desde 1992, o que deixa de fora o crash de 1987, que acho importante incluir porque é um excelente teste, se resiste ao que se passou em 87, então promete.
Fiz uma simulação do sistema de 1986 a 2003, com as bases de dados que tenho, mas para termos uma noção do DD que este sistema daria em 1987, teremos de olhar essencialmente para o SP100 ou SP500, porque no NASDAQ 100, poucas são as empresas que já lá estavam em 1987...
Os valores andam à volta de 25% a 30% no S&P e 35% a 40% no Nasdaq. Mas não podemos tirar grandes conclusões, os valores para os portofólios do Nasdaq não nos dizem quase nada. Os valores para os portofolios do S&P são mais realistas mas são empresas diferentes... Uma coisa parece certa, usar alavancagens superiores a 1 durante muito tempo não é boa ideia.
Proponho uma tabela de alavancagens para este sistema consoante o perfil de risco dos investidores:
0 a 0.6 – Investidores cautelosos
0.6 a 1.2 – Investidores dispostos a assumir algum risco.
1.2 a 2 – investidores dispostos a assumir bastante risco.
> 2 – Investidores com sorte ou suicidas.
Lembro que estes valores de alavancagem podem ser definidos nas configurações do sistema.
pdf.
O raciocínio que faço para escolher a boa alavancagem para um sistema, é primeiramente saber que drawdown ele daria numa situação limite, e depois ajustar a alavancagem para um valor que origine um DD máximo que ache aceitável e do qual não seja penoso recuperar. 25% ou 30% são os valores máximos que considero sensatos... mas isto fica ao critério de cada um. Podemos até decidir que durante 1 ano vamos desafiar a sorte porque temos pouco capital e não é muito grave perder tudo...
Eu só consegui arranjar bases de dados minimamente boas desde 1992, o que deixa de fora o crash de 1987, que acho importante incluir porque é um excelente teste, se resiste ao que se passou em 87, então promete.
Fiz uma simulação do sistema de 1986 a 2003, com as bases de dados que tenho, mas para termos uma noção do DD que este sistema daria em 1987, teremos de olhar essencialmente para o SP100 ou SP500, porque no NASDAQ 100, poucas são as empresas que já lá estavam em 1987...
Os valores andam à volta de 25% a 30% no S&P e 35% a 40% no Nasdaq. Mas não podemos tirar grandes conclusões, os valores para os portofólios do Nasdaq não nos dizem quase nada. Os valores para os portofolios do S&P são mais realistas mas são empresas diferentes... Uma coisa parece certa, usar alavancagens superiores a 1 durante muito tempo não é boa ideia.
Proponho uma tabela de alavancagens para este sistema consoante o perfil de risco dos investidores:




Lembro que estes valores de alavancagem podem ser definidos nas configurações do sistema.
pdf.
- Anexos
-
- DD_1987.gif (9.9 KiB) Visualizado 1711 vezes
Nasdaq100
Estes são os resultados da simulação do sistema no Nasdaq100 com a versão final.
pdf
- Anexos
-
- perf_nas100.gif (10.31 KiB) Visualizado 1732 vezes
-
- NP_nas100.gif (9.37 KiB) Visualizado 1730 vezes
-
- Pdist_nas100.gif (13.7 KiB) Visualizado 1718 vezes
-
- MaxFavMaxAdv_nas100.gif (25.13 KiB) Visualizado 1715 vezes
Versão final
Boa tarde,
Encontrei uma combinação de parametros que me parece equilibrada para este sistema, para já fica como definitiva. Tem uma boa rentabilidade anual, cerca de 45% no Nasdaq100 e 53% no Nasdaq 299, um trade médio de cerca de 2%, uma boa distribuição dos lucros ao longo do tempo, dá lucro mesmo de 2000 a 2002. E tem um drawdown razoavel.
Os parametros e regras do sistema ficam assim:
Compra empresas ao mercado, na abertura.
Apenas compra empresas com um RSI menor que 30, sendo o RSI calculado com a média móvel exponencial de 3 dias do RSI de 7 dias.
Apenas compra empresas com tendência de longo-prazo ascendente (LRS(250) >0).
Apenas compra empresas com volatilidade superior a 2.5%, medida pela média móvel exponencial de 40 dias do TrueRange percentual.
Compra até um máximo de 5 empresas simultaneamente.
Vende as empresas com ordens Limit a um preço 1.5 x ATR(20) acima do preço de abertura.
Vende obrigatóriamente na abertura do 6 dia (detem a empresa um máximo de 5 dias).
O capital usado em cada trade é igual ao capital total, dividido por 5 (máximo de trades simultaneas), sendo ainda ajustado consoante a volatilidade da empresa. Empresas muito voláteis têm menos capital e empresas pouco voláteis têm mais capital.
Ficam os resultados com vários portofólios, de 1992 a 2003, Nasdaq 100, Nasdaq 299, S&P100, S&P500, DJI, e duas selecções de empresas voláteis.
pdf
Encontrei uma combinação de parametros que me parece equilibrada para este sistema, para já fica como definitiva. Tem uma boa rentabilidade anual, cerca de 45% no Nasdaq100 e 53% no Nasdaq 299, um trade médio de cerca de 2%, uma boa distribuição dos lucros ao longo do tempo, dá lucro mesmo de 2000 a 2002. E tem um drawdown razoavel.
Os parametros e regras do sistema ficam assim:








Ficam os resultados com vários portofólios, de 1992 a 2003, Nasdaq 100, Nasdaq 299, S&P100, S&P500, DJI, e duas selecções de empresas voláteis.
- Anexos
-
- final.gif (9.73 KiB) Visualizado 1761 vezes
-
Pataniscas
Pata-Hari,
Parece que está a funcionar bem, as empresas que aparecem aí são aquelas que têm tendência de longo-prazo ascendente e têm um RSI menor que 30, de entre as que tens na base de dados que escolheste.
Se estivesses a negociar com esse sistema, irias de seguida escolher as que têm menor RSI e comprá-las na segunda feira, às 14h30m
Nota que o número de acções que ele manda comprar são para quem investe com 10,000 dolars, que é o está defenido no indicador "__SistComunitario__MoneyManagement", terás de colocar aí o capital que queres usar e a alavancagem.
pdf
Parece que está a funcionar bem, as empresas que aparecem aí são aquelas que têm tendência de longo-prazo ascendente e têm um RSI menor que 30, de entre as que tens na base de dados que escolheste.
Se estivesses a negociar com esse sistema, irias de seguida escolher as que têm menor RSI e comprá-las na segunda feira, às 14h30m

Nota que o número de acções que ele manda comprar são para quem investe com 10,000 dolars, que é o está defenido no indicador "__SistComunitario__MoneyManagement", terás de colocar aí o capital que queres usar e a alavancagem.
Y,
O RSI é realmente uma boa forma de encontrar as empresas mais sobrevendidas. Esperar que o RSI corte na ascendente um determinado nível evita comprar facas, mas faz com que se perca parte da reacção, e a inicial costuma ser a mais violenta
Em relação ao periodo não notei nenhum 'valor mágico', pelo contrário os resuldados vão variando progressivamente, quanto mais curto o periodo mas reactivo fica e mais trades gera... Mas de menor qualidade.
O WLD é o melhor software que existe para os pobres
No final faço uma versão simplificada do script que estou a usar para os testes e incluo no pacote.
Vset,
O melhor DD é zero... mas impossível. Quanto menor melhor, quer se negoceie com um sistema ou sem ele. A questão é a mesma, custa muito recuperar de um DD de por exemplo 40%... Eu costumo orientar-me por um valor máximo à volta dos 25%, e regulo a alavancagem para que num caso extremo como um crash não provoque muito mais que isso...
Uma coisa que falta fazer neste sistema é testá-lo no crash de 1987 para poder aconselhar alavancagens.
Pata-Hari,
Tens razão, nem me ocorreu essa questão... converti para Metastock 6.5 que já dá para todos.
pdf
O RSI é realmente uma boa forma de encontrar as empresas mais sobrevendidas. Esperar que o RSI corte na ascendente um determinado nível evita comprar facas, mas faz com que se perca parte da reacção, e a inicial costuma ser a mais violenta

Em relação ao periodo não notei nenhum 'valor mágico', pelo contrário os resuldados vão variando progressivamente, quanto mais curto o periodo mas reactivo fica e mais trades gera... Mas de menor qualidade.
O WLD é o melhor software que existe para os pobres

Vset,
O melhor DD é zero... mas impossível. Quanto menor melhor, quer se negoceie com um sistema ou sem ele. A questão é a mesma, custa muito recuperar de um DD de por exemplo 40%... Eu costumo orientar-me por um valor máximo à volta dos 25%, e regulo a alavancagem para que num caso extremo como um crash não provoque muito mais que isso...
Uma coisa que falta fazer neste sistema é testá-lo no crash de 1987 para poder aconselhar alavancagens.
Pata-Hari,
Tens razão, nem me ocorreu essa questão... converti para Metastock 6.5 que já dá para todos.
- Anexos
-
SistemaComunitario_10Beta.zip
- (27.85 KiB) Transferido 234 Vezes
sistema
Apenas hoje tive oportunidade de descobrir este post "de ouro".
De facto o teu trabalho é meritório.
Eu em tempos desenvolvi um sistema com base no RSI bastante simples:
Estipular duas bandas de RSI. Quando "atravessa" a de baixo ascendentemente comprar, quando "atravessa" a de cima descendentemente vender (e eventualmente shortar).
Os resultados foram interessantes. O q me saltou logo à vista foi a clara vitória do RSI6 e do RSI9 face aos outros. Ainda estou para perceber o pq destes valores... mas secalhar n tem mesmo explicação
Fica a dica dos RSI's
Agora gostava de te pedir algo. Se disponibilizas em metastock, podias disponibilizar tb em WL, pois sou mais um dos q se rendeu ao WL
Y
De facto o teu trabalho é meritório.
Eu em tempos desenvolvi um sistema com base no RSI bastante simples:
Estipular duas bandas de RSI. Quando "atravessa" a de baixo ascendentemente comprar, quando "atravessa" a de cima descendentemente vender (e eventualmente shortar).
Os resultados foram interessantes. O q me saltou logo à vista foi a clara vitória do RSI6 e do RSI9 face aos outros. Ainda estou para perceber o pq destes valores... mas secalhar n tem mesmo explicação


Agora gostava de te pedir algo. Se disponibilizas em metastock, podias disponibilizar tb em WL, pois sou mais um dos q se rendeu ao WL

Y
-
Y
Primeira versão para Metastock.
Está aqui uma versão muito Beta do sistema para Metastock, fiz uns docs rudimentares para explicar os passos de utilização, inclui também uma folha excel para gerir as posições abertas. Gostava que experimentassem e dissessem se está compreensível, e dessem sugestões. Eu tenho dificuldade em perceber se está claro ou não...
bom resto de fim de semana,
pdf
bom resto de fim de semana,
- Anexos
-
SistemaComunitario_10Beta.zip
- (11.98 KiB) Transferido 272 Vezes
eheh Kopas,
E já fizeste a receita?? É delicioso...
"Sistema Pataniscas" não parece lá muito sério... mas tem 1 voto, eu por enquanto abstenho-me
Janus,
Não tenho acesso directo a esses valores, podemos olhar para a curva de NetProfit ou eventualmente fazer um pequeno script para saber os valores exactos. De qualquer maneira a distribuição é muito uniforme ao longo dos 12 anos de dados, quebrando claramente de 2000 a 2002.
Gostava de futuramente fazer uma simulação mais realista usando reinvestimento e money mamagement para recriar exactamente o que se passaria na implementação real. Porque nestas simulações, se o capital cai 15%, continuamos a investir o mesmo, enquanto que na realidade se baixaria 15%...
Abraços,
pdf
E já fizeste a receita?? É delicioso...

"Sistema Pataniscas" não parece lá muito sério... mas tem 1 voto, eu por enquanto abstenho-me

Janus,
Não tenho acesso directo a esses valores, podemos olhar para a curva de NetProfit ou eventualmente fazer um pequeno script para saber os valores exactos. De qualquer maneira a distribuição é muito uniforme ao longo dos 12 anos de dados, quebrando claramente de 2000 a 2002.
Gostava de futuramente fazer uma simulação mais realista usando reinvestimento e money mamagement para recriar exactamente o que se passaria na implementação real. Porque nestas simulações, se o capital cai 15%, continuamos a investir o mesmo, enquanto que na realidade se baixaria 15%...
Abraços,
- Anexos
-
- NP1.gif (9.49 KiB) Visualizado 1422 vezes
Sistema
Oi pdf,
Isso do nome, nem tem conversa, “Sistema Pataniscas”
.
Já agora deixo abaixo a receita das PdF.
Pataniscas de Frango
Ingredientes:
2 peitos de frango, 1 chávena (de chá) de farinha, 1 ovo, 1 cebola, 1 colher (de sopa) de azeite, 1,5 dl de leite, sumo de 1 limão, água, sal, óleo e salsa q.b.
Preparação:
Coza os peitos de frango em água temperada de sal. Retire, escorra e desfie. Para confeccionar a polme, coloque a farinha num recipiente, junte o ovo, o sal, a cebola, e a salsa picada, o azeite, o leite e o sumo de limão. Adicione os pedaços de frango e aqueça o óleo numa frigideira. Assim que estiver quente, retire colheradas da polme e coloque-as a fritar. Escorra sobre papel absorvente.
Um abraço,
Kopas
Isso do nome, nem tem conversa, “Sistema Pataniscas”

Já agora deixo abaixo a receita das PdF.
Pataniscas de Frango
Ingredientes:
2 peitos de frango, 1 chávena (de chá) de farinha, 1 ovo, 1 cebola, 1 colher (de sopa) de azeite, 1,5 dl de leite, sumo de 1 limão, água, sal, óleo e salsa q.b.
Preparação:
Coza os peitos de frango em água temperada de sal. Retire, escorra e desfie. Para confeccionar a polme, coloque a farinha num recipiente, junte o ovo, o sal, a cebola, e a salsa picada, o azeite, o leite e o sumo de limão. Adicione os pedaços de frango e aqueça o óleo numa frigideira. Assim que estiver quente, retire colheradas da polme e coloque-as a fritar. Escorra sobre papel absorvente.
Um abraço,
Kopas
Recta final
Boa noite,
Após descansar alguns dias, volto à carga para terminar este sistema, ou assim espero. Estes testes todos um pouco massudos permitiram ter uma ideia do que se pode conseguir mudando os parametros. E agora há-que encontrar uma combinação equilibrada.
Acho que é melhor chegar rapidamente a uma versão final, mesmo que depois se modifique ou melhore em outras versões. Caso contrário seria possível ficar eternamente a testar combinações de parametros...
Ora bem, O portofolio constituido pelas acções do S&P100 foi eliminado porque claramente não era o mais indicado para este sistema. Em vez dele vou usar um portoifólio feito com as 299 empresas com maior capitalização do Nasdaq, eliminando ADRs e também empresas que começaram a cotar depois de 2000. Esta base de dados não está totalmente livre de erros mas serve bem para ter uma ideia de como o sistema se comportaria com um portofólio mais numeroso do que o Nasdaq 100.
Outra alteração foi o ajuste da alavancagem que é feito consoante a volatilidade da empresa negociada. Até aqui, acções com uma variação média diária de 2% teriam alavancagem 1. Mas como no Nasdaq essa variação média é superior a 3%, a partir de agora uma empresa terá alavancagem 1 quando a sua variação média diária for de 3%, será menor que 1 para valores superiores a 3% e maior que 1 para valores inferiores a 3%.
O que isto dá é simplesmente o uso de uma alavancagem média superior nas simulações, originando mais NetProfit e mais drawdown. Desta forma a alavancagem média usada ficará mais perto de 1 e os valores serão mais realistas.
Terceira alteração, é que de 1992 a 2003 são 12 anos e não 11
ooops. Portanto os resultados ficaram ligeiramente piores mas mais realistas!
Deixo os resultados de uma simulação com parametros que dão bons resultados. 41% de rentabilidade anualizada no Nasdaq 100, com pouco mais de 18% de DD máximo.
Devo dizer que acho estes resultados (que ainda podem melhorar um pouco) bastante bons. Eu uso um sistema com uma filosofia semelhante para negociar empresas do nasdaq, e apesar de ser mais sofisticado e dar rentabilidades maiores, este sistema com o RSI não fica muito muito atrás. Tendo mesmo tido ideias novas que deverei introduzir no meu sistema.
Vou começar a pensar numa forma de passar isto para o Metastock para poder ser usado de forma prática. Entretanto podiamos pensar num nome para o sistema
Ideias?
pdf
Após descansar alguns dias, volto à carga para terminar este sistema, ou assim espero. Estes testes todos um pouco massudos permitiram ter uma ideia do que se pode conseguir mudando os parametros. E agora há-que encontrar uma combinação equilibrada.
Acho que é melhor chegar rapidamente a uma versão final, mesmo que depois se modifique ou melhore em outras versões. Caso contrário seria possível ficar eternamente a testar combinações de parametros...
Ora bem, O portofolio constituido pelas acções do S&P100 foi eliminado porque claramente não era o mais indicado para este sistema. Em vez dele vou usar um portoifólio feito com as 299 empresas com maior capitalização do Nasdaq, eliminando ADRs e também empresas que começaram a cotar depois de 2000. Esta base de dados não está totalmente livre de erros mas serve bem para ter uma ideia de como o sistema se comportaria com um portofólio mais numeroso do que o Nasdaq 100.
Outra alteração foi o ajuste da alavancagem que é feito consoante a volatilidade da empresa negociada. Até aqui, acções com uma variação média diária de 2% teriam alavancagem 1. Mas como no Nasdaq essa variação média é superior a 3%, a partir de agora uma empresa terá alavancagem 1 quando a sua variação média diária for de 3%, será menor que 1 para valores superiores a 3% e maior que 1 para valores inferiores a 3%.
O que isto dá é simplesmente o uso de uma alavancagem média superior nas simulações, originando mais NetProfit e mais drawdown. Desta forma a alavancagem média usada ficará mais perto de 1 e os valores serão mais realistas.
Terceira alteração, é que de 1992 a 2003 são 12 anos e não 11

Deixo os resultados de uma simulação com parametros que dão bons resultados. 41% de rentabilidade anualizada no Nasdaq 100, com pouco mais de 18% de DD máximo.
Devo dizer que acho estes resultados (que ainda podem melhorar um pouco) bastante bons. Eu uso um sistema com uma filosofia semelhante para negociar empresas do nasdaq, e apesar de ser mais sofisticado e dar rentabilidades maiores, este sistema com o RSI não fica muito muito atrás. Tendo mesmo tido ideias novas que deverei introduzir no meu sistema.
Vou começar a pensar numa forma de passar isto para o Metastock para poder ser usado de forma prática. Entretanto podiamos pensar num nome para o sistema

Ideias?
- Anexos
-
- result2.gif (7.14 KiB) Visualizado 1478 vezes
Teste no Dow Jones
O Janus sugeriu testar o sistema no Dow Jones Industrial e ver que resultados teria. Uma espécie de "Se resulta aqui resulta em qualquer lado". Testei desde 1986, e os resultados são aquilo que esperava, nada brilhantes mas positivos. Com drawdown forte feito neste Bear Market (2002).
pdf
- Anexos
-
- DJI_perf.gif (9.3 KiB) Visualizado 1533 vezes
-
- DJI_NP.gif (5.26 KiB) Visualizado 1534 vezes
Número de trades simultaneas
Boa tarde,
Mais um teste de orientação... Ver que resultados dá usar um número de trades simulataneas diferente, de 1 a 8 (até aqui tinha sido sempre de 4). Lembro que o capital de cada trade é sempre dividido pelo número máximo de trades. Se se comprar apenas 1 empresa, ela terá sempre 100% do capital, Se se comprar até 4 empresas, cada uma terá sempre 25% do capital (isto não contando com o ajuste de volatilidade).
De forma simples, o que acontece é que comprar poucas empresas ao mesmo tempo aumenta bastante o drawdown, porque bastam alguns trades maus para fazer um rombo grande no capital. Por outro lado, como são menos trades, é mais fácil estar 100% investido.
No lado oposto, se comprarmos muitas empresas ao mesmo tempo, não pomos os ovos todos no mesmo cesto e resistimos melhor a ecatombes individuais das empresas. O inconveniente é que é mais difícil estar 100% investido já que as oportunidades de negócio são limitadas.
Os resultados surpreenderam-me um pouco, já que comprar mais empresas, 5 ou 6, dá melhores resultados no Nasdaq, baixa um pouco a rentabilidade mas baixa muito mais o drawdown máximo, pelo que pode ser mais interessante aumentar de 4 para 5 ou 6 o numero máximo de trades. E torna o sistema mais resistente a Parmalats
Entretanto fiz outros testes sem grandes resultados. Alterar o periodo da regressão linear produz piores resultados, assim como não usar esse filtro.
Claro que as combinações de parametros são quase infinitos e não é possivel testar tudo. É por isso que estes testes têm sido apenas de orientação, para saber o tipo de influência de cada paramentro. E perceber um pouco mais como funciona este sistema.
Daqui para a frente tentarei encontrar boas soluções finais. Procurando a maior rentabilidade possível em relação ao DD máximo, mantendo um bom trade médio e uma curva de NP saudável...
Mais um teste de orientação... Ver que resultados dá usar um número de trades simulataneas diferente, de 1 a 8 (até aqui tinha sido sempre de 4). Lembro que o capital de cada trade é sempre dividido pelo número máximo de trades. Se se comprar apenas 1 empresa, ela terá sempre 100% do capital, Se se comprar até 4 empresas, cada uma terá sempre 25% do capital (isto não contando com o ajuste de volatilidade).
De forma simples, o que acontece é que comprar poucas empresas ao mesmo tempo aumenta bastante o drawdown, porque bastam alguns trades maus para fazer um rombo grande no capital. Por outro lado, como são menos trades, é mais fácil estar 100% investido.
No lado oposto, se comprarmos muitas empresas ao mesmo tempo, não pomos os ovos todos no mesmo cesto e resistimos melhor a ecatombes individuais das empresas. O inconveniente é que é mais difícil estar 100% investido já que as oportunidades de negócio são limitadas.
Os resultados surpreenderam-me um pouco, já que comprar mais empresas, 5 ou 6, dá melhores resultados no Nasdaq, baixa um pouco a rentabilidade mas baixa muito mais o drawdown máximo, pelo que pode ser mais interessante aumentar de 4 para 5 ou 6 o numero máximo de trades. E torna o sistema mais resistente a Parmalats

Entretanto fiz outros testes sem grandes resultados. Alterar o periodo da regressão linear produz piores resultados, assim como não usar esse filtro.
Claro que as combinações de parametros são quase infinitos e não é possivel testar tudo. É por isso que estes testes têm sido apenas de orientação, para saber o tipo de influência de cada paramentro. E perceber um pouco mais como funciona este sistema.
Daqui para a frente tentarei encontrar boas soluções finais. Procurando a maior rentabilidade possível em relação ao DD máximo, mantendo um bom trade médio e uma curva de NP saudável...
- Anexos
-
- Max_dias.gif (21.93 KiB) Visualizado 1548 vezes
Olá Ming,
Sim, eu conheço mais ou menos essa técnica, mas não sou grande fã dela
Em certos casos é muito útil e mesmo recomendavel, mas talvez não neste caso. Para já porque existem poucos anos de dados (mais ou menos 10), e reduzir a metade seria complicado. Também acho que essa técnica serve mais para validar um sistema base e não tanto para o optimizar que é o que tenho tentado fazer (sem sobre-optimizar.
Outra questão é que o mercado é muito diferente de 1995 a 2000 e 2000 a 2003, naturalmente que os resultados serão diferentes. Também existem menos empresas perto de 1992 do que 2003. Tudo isto torna menos viável essa abordagem.
O que gosto de fazer e parece-me suficiente para saber se não estou a sobre-optimizar, é usar o maior numero de anos possível abrangendo várias condições de mercado. Olhar para a curva de NetProfit e ver se ela é relativamente constante. E testar o sistema em vários portofólio diferentes (isto acaba por ser parecido com usar dados out of sample).
Sobre as referências a artigos, gostava de as ter sim, obrigado
pdf
Sim, eu conheço mais ou menos essa técnica, mas não sou grande fã dela

Outra questão é que o mercado é muito diferente de 1995 a 2000 e 2000 a 2003, naturalmente que os resultados serão diferentes. Também existem menos empresas perto de 1992 do que 2003. Tudo isto torna menos viável essa abordagem.
O que gosto de fazer e parece-me suficiente para saber se não estou a sobre-optimizar, é usar o maior numero de anos possível abrangendo várias condições de mercado. Olhar para a curva de NetProfit e ver se ela é relativamente constante. E testar o sistema em vários portofólio diferentes (isto acaba por ser parecido com usar dados out of sample).
Sobre as referências a artigos, gostava de as ter sim, obrigado

- Anexos
-
- NP.gif (19.34 KiB) Visualizado 1554 vezes
Esse tipo de problemas está bem estudado.
A solução que normalmente é recomendada é optimizar o sistema sobre um conjunto de dados "de treino" (por exemplo 5 anos de 1993 a 1998), fazendo sobre esses dados toda a definição de métodos e parâmetros.
Depois usar outro período (por exemplo os 4 anos de 1999 a 2003) para "validação" do sistema já escolhido.
Parte-se do princípio que os resultados obtidos sobre o período de validação são muito mais representativos do que o sistema consegue fazer em dados out-of-sample (ou seja dados reais ainda não conhecidos) do que o obtido sobre os dados iniciais de treino...
Se quiseres dou-te referências de artigos sérios que discutem isso em profundidade...
A solução que normalmente é recomendada é optimizar o sistema sobre um conjunto de dados "de treino" (por exemplo 5 anos de 1993 a 1998), fazendo sobre esses dados toda a definição de métodos e parâmetros.
Depois usar outro período (por exemplo os 4 anos de 1999 a 2003) para "validação" do sistema já escolhido.
Parte-se do princípio que os resultados obtidos sobre o período de validação são muito mais representativos do que o sistema consegue fazer em dados out-of-sample (ou seja dados reais ainda não conhecidos) do que o obtido sobre os dados iniciais de treino...
Se quiseres dou-te referências de artigos sérios que discutem isso em profundidade...
Earthlings? Bah!
- Mensagens: 1541
- Registado: 20/11/2003 11:37
Número máximo de dias dos trades
Olá,
Testei o sistema alterando o número máximo de dias dos trades, dos habituais 8. Os resultados não adiantam nada de especial...
De seguida vou fazer simulações alterarando o número de trades simultaneas, que tem sido sempre de 4. Depois disso ficam testadas as principais variaveis do sistema individualmente, e vou começar a tentar encontrar boas conbinações de parametros.
Estou com vontade de substituir o SP100 por outro portofólio mais interessante, ou simplesmente juntar um outro mais abranjente, tipo nasdaq 200 ou 300... ainda estou a pensar no portofolio ideal... sugestões como sempre são bem vindas. Penso que uma das caracteristicas deverá ser o numero de acções, maior que as 100 do NDX. Mas também não muito grande de modo a incluir empresas demasiado pequenas e pouco sólidas.
Aproveito para deixar algumas reflexões acerca das limitações e validade destas simulações... Algumas que consigo imaginar são:
Estamos a usar 2 portofolios nas simulações, NASDAQ100 e S&P100, cada um com 100 empresas. Mas essas empresas são as que actualmente constituem esses índices e não as que constituiam há 1 ano, 2, 5 e muito menos há 10 anos atrás. Aliás, algumas das empresas que fazem hoje parte destes índices não existiam ou não estavam cotadas há 5 anos atrás. Então como é que podemos simular a negociação real? A resposta é não podemos, apenas conseguimos uma aproximação.
A base de dados que temos (Yahoo no caso), contem cotações ajustadas de dividendos e splits, e isso impede-nos de saber a quanto cotava por exemplo a Microsoft em 1995... No caso deste sistema acaba por não ser importante. Mas seria importante se quisessemos negociar empresas que cotassem acima de 5 USD ou 2 USD... não haveria forma fácil de saber.
Nada é perfeito no mundo real.
Fica outro pensamento em forma de pergunta... Oiço muitas vezes dizer que um sistema é testado para dar X% de rendimento mas que não devemos esperar que ele nos dê tanto na negociação real. Ou que um bom sistema nos deverá dar 100% nas simulações para ter interesse...
E aquilo que eu penso é que depende muito daquilo de que estamos a falar. De como e faz as simulações, de qual é o número de anos das simulações e em que activos foi testado. Claro que é muito mais fácil fazer um sistema que nos dá 100%/ano nos ultimos 2 anos, do que um sistema que nos dá 100%/ano nos ultimos 10 anos (esta ultima seria de sonho).
Também é muito mais fácil ter resultados muito bons usando meia dúzia de empresas ou índices escolhidos à mão. E muito provavelmente não será possível ter resultados tão bons na negociação real.
Creio que isso é "Curve Fitting", optimização excecissa que retira cosnsitência ao sistema.
Por outro lado, se temos um sistema que nos dá resultados consistentes ao longo de 10 ou 15 anos, usando empresas ou índices aleatóriamente de um leque real, então penso que podemos confiar muito mais nesses resultados, como estando mais próximos da realidade. E também quererá dizer que o sistema é sólido e aguenta bem os vários tipos de mercados e o passar do tempo. Será assim?
pdf
Testei o sistema alterando o número máximo de dias dos trades, dos habituais 8. Os resultados não adiantam nada de especial...
De seguida vou fazer simulações alterarando o número de trades simultaneas, que tem sido sempre de 4. Depois disso ficam testadas as principais variaveis do sistema individualmente, e vou começar a tentar encontrar boas conbinações de parametros.
Estou com vontade de substituir o SP100 por outro portofólio mais interessante, ou simplesmente juntar um outro mais abranjente, tipo nasdaq 200 ou 300... ainda estou a pensar no portofolio ideal... sugestões como sempre são bem vindas. Penso que uma das caracteristicas deverá ser o numero de acções, maior que as 100 do NDX. Mas também não muito grande de modo a incluir empresas demasiado pequenas e pouco sólidas.
Aproveito para deixar algumas reflexões acerca das limitações e validade destas simulações... Algumas que consigo imaginar são:


Nada é perfeito no mundo real.
Fica outro pensamento em forma de pergunta... Oiço muitas vezes dizer que um sistema é testado para dar X% de rendimento mas que não devemos esperar que ele nos dê tanto na negociação real. Ou que um bom sistema nos deverá dar 100% nas simulações para ter interesse...
E aquilo que eu penso é que depende muito daquilo de que estamos a falar. De como e faz as simulações, de qual é o número de anos das simulações e em que activos foi testado. Claro que é muito mais fácil fazer um sistema que nos dá 100%/ano nos ultimos 2 anos, do que um sistema que nos dá 100%/ano nos ultimos 10 anos (esta ultima seria de sonho).
Também é muito mais fácil ter resultados muito bons usando meia dúzia de empresas ou índices escolhidos à mão. E muito provavelmente não será possível ter resultados tão bons na negociação real.
Creio que isso é "Curve Fitting", optimização excecissa que retira cosnsitência ao sistema.
Por outro lado, se temos um sistema que nos dá resultados consistentes ao longo de 10 ou 15 anos, usando empresas ou índices aleatóriamente de um leque real, então penso que podemos confiar muito mais nesses resultados, como estando mais próximos da realidade. E também quererá dizer que o sistema é sólido e aguenta bem os vários tipos de mercados e o passar do tempo. Será assim?
- Anexos
-
- Dias.gif (22.47 KiB) Visualizado 1595 vezes
Quem está ligado: