Económico.Fórum

Fóruns Think Finance => Fórum de Bolsa => Tópico iniciado por: Thorn Gilts em 2010-06-12 13:25:27



Título: Backtesting - topico de discussão sobre enviesamentos e outras questões.
Enviado por: Thorn Gilts em 2010-06-12 13:25:27
Lista de potenciais bias para discussão futura:

Overfitting;
Data snooping;
Placebo effect;
Ad-Hoc interference with non experimental data;
Splippage;
Up ward bias;
Bid-ask bounce;
Survivorship bias;
Lock up period bias.

Lista de metodos para evitar enviesamentos para discussão futura:

Bootstraping;
Optimize in sample test out of the sample;
Later Rule;
Nyquist frequency;
White's Reality Check;
Profitability of the rules.

A minha proposta é que fossemos aumentando a lista de enviesamentos possiveis em backtesting e apresentar as possíveis soluções para os mitigar.


Título: Re:Backtesting - topico de discussão sobre enviesamentos e outras questões.
Enviado por: Thorn Gilts em 2010-06-12 13:44:59
Vou começar por colocar aqui um primeiro caso:

Eu uso a Later rule de forma a minimizar o efeito de slippage e bid-ask bounce.

Anteriormente usava sempre o preço de fecho do dia N como trigger e o preço de fecho do dia N+1 para executar o trade. Depois alterei o preço de fecho do dia N+1 para o preço de abertura do dia N+1 por considerar que o enviesamento é mitigado da mesma forma e que não fica sujeito a variações anormais que podem ocorrer durante esse dia.

A entrada aos preços do dia seguinte com o trigger aos preços do dia anterior era feita sem condicionalismos, quer isto dizer que o sistema comprava ao preço de abertura do dia seguinte indiferente aos preços desse dia (N+1).

É possivel criar uma regra que só permita a entrada no dia seguinte N+1 caso o trigger se mantenha valido, mas isso é simplesmente duplicar procedimentos, pois nesse caso a diferente entre entrar em N no close ou em N+1 no open, é indiferente, já que a entrada depende sempre de regras que são observadas depois de marcar o preço (ou seja, a posterior) - embora com sistemas de negociação automáticos e mercados muito líquidos seja possivel executar essas ordens a esses preços.

Acontece é que, com a "later rule", os resultados ficam sujeitos a um valor aleatório (por não controlável ou medido) que é a diferença do preço do dia anterior (no close) para o dia seguinte (no open). O valor dessa "aleatoriedade" pode ser medido e estimado em face da volatilidade do activo ou pela diferença histórica, mas mesmo assim fica sujeita a eventos extraordinários, tipo apresentação de resultados ou outros factos relevantes.

Resumindo, a "later rule" mitiga alguns enviesamentos, mas cria outras, tais como a impossibildiade de controlo efeito do sistema, já que o trigger pode ser dado a um preço e efectuado a outro diferente.

Nos tens que tenho feito, a later rule consegue rebentar com mais de 50% dos retornos.

Eu estou a fazer o back test num sistema de pair trading, pois em outra sistema em que uma ordem não estivesse condicionada a outra, o meu problema era facilmente resolvido com uma ordem a preço fixo de acordo com o trigger. Mas no pairs trading não é possivel pois o preço de uma ordem depende do preço da outra.

Resultado, não encontrei solução para resolver este problema. Sendo que a única solução mais realista é usar o close EOD tirado no dia do trigger, já que o sistema consegue executar a ordem em milésimas de segundo e por isso garantir esse preço.

Aguardo sugestões e ideias.

Outra pergunta que queria colocar é como é que vocês fazem para estimar a slippage?

No meu caso eu consigo estimar com grande exactidão devido a um factor particular, mas no geral como é que fazem? Médias?


Título: Re:Backtesting - topico de discussão sobre enviesamentos e outras questões.
Enviado por: Incognitus em 2010-06-12 14:01:58
Para operações que não sejam muito grandes, não parece fazer grande sentido estar a estimar slippage. O preço a que vais executar andará em média ao preço do sinal, umas vezes ligeiramente acima, outras ligeiramente abaixo. Só se fosses alterar sistematicamente esse preço devido ao impacto no mercado, é que valeria a pena preocupares-te com isso, penso eu.


Título: Re:Backtesting - topico de discussão sobre enviesamentos e outras questões.
Enviado por: Thorn Gilts em 2010-06-12 14:19:57
Para operações que não sejam muito grandes, não parece fazer grande sentido estar a estimar slippage. O preço a que vais executar andará em média ao preço do sinal, umas vezes ligeiramente acima, outras ligeiramente abaixo. Só se fosses alterar sistematicamente esse preço devido ao impacto no mercado, é que valeria a pena preocupares-te com isso, penso eu.

Pois, mas isto é para um paper, pelo que tenho de o estimar e porque o sinal é dado ao preço da ultima ordem, o que significa que a compra/venda pode não ser feita a esse valor, mas sim ao preço do bid-ask. Em EOD não há crise, porque ambos os preços são iguais, mas eu queria estimar isso no real time.

Se o trigger fosse dado em cima do bid-ask, até podia medir a profundidade e estimar o impacto e se queria ou nao. Alias, o meu sistema tem essa funcionalidade e se eu quiser ligo esse filtro e ele só executa se houver mercado para a ordem ser realizada, mas como é para um paper tenho de resolver isto.


Por experiência real, a diferença não é grande


Título: Re:Backtesting - topico de discussão sobre enviesamentos e outras questões.
Enviado por: Incognitus em 2010-06-12 14:44:05
Ah, bem, nesse caso penso que deverias separar o custo do slippage, do custo de pular o spread bid/ask.


Título: Re:Backtesting - topico de discussão sobre enviesamentos e outras questões.
Enviado por: Thorn Gilts em 2010-06-12 17:00:21
Ah, bem, nesse caso penso que deverias separar o custo do slippage, do custo de pular o spread bid/ask.

Como fazer isso?

Olha, a seguinte justificação serve?

As ordens de entrada ou saída são dadas no mesmo dia do trigger. Nenhuma later rule é aplicada. No entanto, para evitar up ward bias, bid-ask bounce e custo do slippage o trigger é dado pelo preço do close com dados EOD e a ordem executada a esse mesmo valor. Todos os activos considerados são activos com elevada liquidez (ou com market maker), onde as ordens normais não criem distorções ou aumento os custos por fazerem, elas próprias, variar o preço.

Coloca-se a questão de aplicar ou não uma later rule, onde, por exemplo, o trigger fosse dado ao preço do close do dia N e a ordem executada ao preço do open do dia N+1, tendo em conta que os dados são EOD, portanto, já depois do mercado fechado, do preço encontrado, o que deixa a dúvida se o preço de execução adequado não deverá ser o próximo disponivel para negociação que é o da abertura do próximo dia.

Achamos que não por várias razões.

1- Aplicar uma later rule desse género iria comportar para o modelo um componente arbitraria e incontrolável, que é a variação do preço de um dia para o outro, entre o close do dia N e o open do dia N+1. Tal aspecto é altamente relevante quando a estratégia assenta em limites de negociação bastante estreitos como é o caso de se usar prazos curtos e desvio padrao pequeno, extremamente ampliado em alturas onde o preço é afectado por ajustes (de dividendos, direitos, etc) ou factos relevantes (apresentação de resultados, ofertas, etc). Ou seja, os preços de entrada não dependeriam apenas dos sinais dados pela estratégia, mas passariam a depender, sobremaneira, de uma forte componente arbitraria e indesejável, com consequência evidente ao nível dos resultados.

2- Não aplicar uma later rule não torna o modelo irreal ou inexequível, uma vez que, apesar de para efeitos de backtest se estar a usar dados EOD, portanto preços conhecidos à posterior da sua realização, a verdade é que qualquer sistema automático permite realizar esses negócios em tempo real em menos de 10ms, sem necessidade de aguardar pelo dia seguinte para executar as ordens dadas por preços do dia anterior.

Os resultados dos 10 melhores activos com later rule e no delay rule, sao signficativos apresentado os seguintes resultados:

Later Rule
xxxxx

Delay Rule
xxxxx

Later Rule vs Dealy Rule
xxxx

Considerando a premissa anterior, colocou-se a necessidade de estimar o custo de "pular o ask-bid spread", tendo em conta que esse é um custo de "trader" apressado, ou seja, da necessidade de se realizar imediatamente a ordem a quando o trigger carregado.

Para isso nos custos de transação foi considerado o custo de pular o ask-bid spread" que calculamos de acordo com:

COMO CALCULAR, ALGUEM SABE AO CERTO? Médias entre o ask bid?

Acham que esta bem defendida esta parte?

Sugestões?


Título: Re:Backtesting - topico de discussão sobre enviesamentos e outras questões.
Enviado por: Incognitus em 2010-06-12 18:44:46
Não lhe chames "pular" o bid/ask. O custo do spread fica melhor. Para o estimares, podes usar uma média do spread no titulo.

Mas olha, um sistema EOD que usa o preço de fecho para executar os negócios, já não é um sistema EOD, tem que estar em tempo real, próximo do fecho, a preparar-se para iniciar ou não o trade.


Título: Re:Backtesting - topico de discussão sobre enviesamentos e outras questões.
Enviado por: Thorn Gilts em 2010-06-12 23:15:16
Não lhe chames "pular" o bid/ask. O custo do spread fica melhor. Para o estimares, podes usar uma média do spread no titulo.

Mas olha, um sistema EOD que usa o preço de fecho para executar os negócios, já não é um sistema EOD, tem que estar em tempo real, próximo do fecho, a preparar-se para iniciar ou não o trade.

Sim, deixa de ser EOD no real, mas no backtest é mesmo EOD. A questão é saber se entre o real e o backtest existe diferença, eu acho que não existe grande diferença se fizer como descreves.

Eu usei o termo pular para seguir o teu raciociono. o texto acima é só um exemplo, claro que o vou ter de melhorar.

Sabes onde saco a media do spread do titulo?


Título: Re:Backtesting - topico de discussão sobre enviesamentos e outras questões.
Enviado por: Thorn Gilts em 2010-06-12 23:19:45
BACKTEST ACTIVO A

Com Later Rule
Total Return 112.35%
Annualized Return 28.50%
Drawdown 61.68%
Max Conseq Loser 4
Max Conseq 7.54%
Largest Losing trade 6.08%
Largest Winning trade 11.3%
Max Holding Period 27
Min Holding Period 1
Av. Holding Period 8
Sharpe Ratio 46.01



Título: Re:Backtesting - topico de discussão sobre enviesamentos e outras questões.
Enviado por: JDSousa em 2010-06-12 23:32:35
É bem interessante a possibilidade de utilizar um sistema mecânico a agir no próprio dia, com uma base de dados EOD. Eu já o fiz há muitos anos, ganhei durante 2 anos, depois o sistema deixou de render e abandonei-o.

A ideia é, cerca de meia hora antes do fecho, importar as cotações mais recentes para a base de dados (BD) e considerá-las como um fecho. Depois aplicar um sistema mecânico que tenha sido desenhado a partir de estudos históricos (por exemplo, do System Tester do MetaStock).

A vantagem é que o sistema não estará a trabalhar com 1 dia de atraso. Estará a actuar no próprio dia. O facto de o "fecho antecipado" poder ficar diferente do fecho real, não é um grande problema: qualquer sistema mecânico nunca pode aspirar a ganhar sempre, basta que tenda a ganhar em média para valer a pena; por isso, as aproximações são aceitáveis.

O inconveniente é a logística: ter-se-há que importar cotações a toda a velocidade, provavelmente de muitas empresas (das que se estiver a acompanhar), fazer isso a meia-hora do fim, fazer o programa calcular se há sinais de compra ou venda recomendados, telefonar ao corretor e dar as ordens, tudo isto em tempo recorde. Ter-se-á também que decidir se vale a pena dar a ordem se o bid/ask for largo, e outras coisas.




Título: Re:Backtesting - topico de discussão sobre enviesamentos e outras questões.
Enviado por: Incognitus em 2010-06-12 23:57:49
Agora é possível, fácil até, de ter um programa a receber os dados em tempo real, nem se trata bem de ter que fazer download e importação de cotações. Já várias corretoras têm APIs para negociar ou obter as cotações, como a interactivebrokers, a tradestation, etc.


Título: Re:Backtesting - topico de discussão sobre enviesamentos e outras questões.
Enviado por: vset em 2010-06-13 00:00:03
É bem interessante a possibilidade de utilizar um sistema mecânico a agir no próprio dia, com uma base de dados EOD. Eu já o fiz há muitos anos, ganhei durante 2 anos, depois o sistema deixou de render e abandonei-o.

A ideia é, cerca de meia hora antes do fecho, importar as cotações mais recentes para a base de dados (BD) e considerá-las como um fecho. Depois aplicar um sistema mecânico que tenha sido desenhado a partir de estudos históricos (por exemplo, do System Tester do MetaStock).

A vantagem é que o sistema não estará a trabalhar com 1 dia de atraso. Estará a actuar no próprio dia. O facto de o "fecho antecipado" poder ficar diferente do fecho real, não é um grande problema: qualquer sistema mecânico nunca pode aspirar a ganhar sempre, basta que tenda a ganhar em média para valer a pena; por isso, as aproximações são aceitáveis.

O inconveniente é a logística: ter-se-há que importar cotações a toda a velocidade, provavelmente de muitas empresas (das que se estiver a acompanhar), fazer isso a meia-hora do fim, fazer o programa calcular se há sinais de compra ou venda recomendados, telefonar ao corretor e dar as ordens, tudo isto em tempo recorde. Ter-se-á também que decidir se vale a pena dar a ordem se o bid/ask for largo, e outras coisas.




Viva,

porque pensas que deixou de funcionar?

Quais eram os seus princípios?


Título: Re:Backtesting - topico de discussão sobre enviesamentos e outras questões.
Enviado por: JDSousa em 2010-06-13 00:18:15
Só utilizei o sistema em 1998-99 e só com futuros do PSI 20. Apurei o sistema com o System Tester, testando-o no passado. Ele era baseado simplesmente no Rate of Change (ROC), ou seja, variação de cotação de um dia para o outro, entre os dias N-2 e N-1 e entre N-1 e N. Ou seja, trabalhava simplesmente com 2 ROCs. Se fossem 2 subidas acima de certo valor, era sinal de entrar longo e ao contrário era de entrar curto. Mas havia mais alguns sinais como sair de longo, sair de curto, stops. O sistema ganhou durante os 2 anos, depois ficou uns meses em que em média não ganhava ou até perdia pouco, e aí abandonei-o. Teve a ver com um aumento radical da volatilidade que apareceu desde esse período e se mantém até hoje.


Título: Re:Backtesting - topico de discussão sobre enviesamentos e outras questões.
Enviado por: vset em 2010-06-13 00:33:35
Só utilizei o sistema em 1998-99 e só com futuros do PSI 20. Apurei o sistema com o System Tester, testando-o no passado. Ele era baseado simplesmente no Rate of Change (ROC), ou seja, variação de cotação de um dia para o outro, entre os dias N-2 e N-1 e entre N-1 e N. Ou seja, trabalhava simplesmente com 2 ROCs. Se fossem 2 subidas acima de certo valor, era sinal de entrar longo e ao contrário era de entrar curto. Mas havia mais alguns sinais como sair de longo, sair de curto, stops. O sistema ganhou durante os 2 anos, depois ficou uns meses em que em média não ganhava ou até perdia pouco, e aí abandonei-o. Teve a ver com um aumento radical da volatilidade que apareceu desde esse período e se mantém até hoje.

O conceito não era intemporal  :-[




Título: Re:Backtesting - topico de discussão sobre enviesamentos e outras questões.
Enviado por: Thorn Gilts em 2010-06-13 00:39:45
Agora é possível, fácil até, de ter um programa a receber os dados em tempo real, nem se trata bem de ter que fazer download e importação de cotações. Já várias corretoras têm APIs para negociar ou obter as cotações, como a interactivebrokers, a tradestation, etc.

O programa em questão realiza os trades em tempo real. Na verdade, é ainda mais rápido do que isso e mais eficiente do que usando EOD, para além de mais seguro. Faz isso via API.

O que estou a fazer é simplesmente a comparar um sistema com dados EOD e com trigger e execução no mesmo dia ao preço do close e um sistema com dados EOD trigger num dia ao preço do close e execução no seguinte ao preço do open. Isto para um paper que estou a escrever.

Daqui a pouco já publico os resultados executados sem delay mas mesmo assim apenas com valores do fecho. O sistema em real time bate largamente os resultados do EOD com preço do close, mesmo que sem delay.

Mais uma coisa foi engraçada, mesmo em Later Rule, o sistema recuperou muito bem do drawdown. O drawdown acontece devido, salvo erro, a aumento de volatilidade de um dia para o outro, o close e o open, na altura do trigger e da execução respectivamente, foi de tal forma distanciado que a ordem entrou numa altura em os preços já nao eram minimamente aceitaveis. Mas também só o fez porque esta em modo de alta-frequencia. Eu consigo aplicar a later rule em prazos mais longos e com STD mais elevado (eu uso 1STD, com 2STD parte do problema do later rule desaparece, principalmente se em prazos mais longos).



Título: Re:Backtesting - topico de discussão sobre enviesamentos e outras questões.
Enviado por: Thorn Gilts em 2010-06-13 01:13:22
BACKTEST ACTIVO A

Com Later Rule
Total Return 112.35%
Annualized Return 28.50%
Drawdown 61.68%
Max Conseq Loser 4
Max Conseq 7.54%
Largest Losing trade 6.08%
Largest Winning trade 11.3%
Max Holding Period 27
Min Holding Period 1
Av. Holding Period 8
Sharpe Ratio 46.01



BACKTEST ACTIVO A

No delay Rule (EOD data)
Total Return 135.20%
Annualized Return 32.95%
Drawdown 10.84%
Max Conseq Loser 4
Max Conseq Winners 45
Max Conseq 8.99%
Largest Losing trade 3.94%
Largest Winning trade 5.54%
Max Holding Period 27
Min Holding Period 1
Av. Holding Period 9
Sharpe Ratio 82.22

As comissões aplicadas, tanto neste caso, como no outro, são de 0.02 por acção.

Reparem que em termos de retorno, quase que é ela por ela (mas há outros casos onde não é)... o de sublinhar é o drawdown.

O sistema safa mesmo com a later rule, desde que não existam eventos que alterem o valor de um dia para ou outro (overnight) de forma significativa.


Título: Re:Backtesting - topico de discussão sobre enviesamentos e outras questões.
Enviado por: John_Law em 2012-06-08 18:39:03
Vou usar este tópico para pôr uma dúvida acerca dos backtest no MT4. É possível monitorizar o valor das variáveis num backtest?

Em testes de programas normais usaria uma função de print ou alert, ou breakpoints em programas que mostrassem os dados das variáveis, mas em backtest essas funções são ignoradas durante a execução do programa e o MT não mostra o valor das variáveis em nenhuma altura.

Citar
Some functions are processed/passed without output
These are Sleep(), Alert(), SendMail(), PlaySound(), MessageBox(), WindowFind(), WindowHandle(), WindowIsVisible()

http://articles.mql4.com/72

Há alguma solução?


Título: Re:Backtesting - topico de discussão sobre enviesamentos e outras questões.
Enviado por: Incognitus em 2012-06-08 18:55:50
Usa o print, as mensagens sairão no Journal e nos logs do teste.


Título: Re:Backtesting - topico de discussão sobre enviesamentos e outras questões.
Enviado por: zel em 2012-06-08 19:02:57
se comprares nos ultimos segundos tens uma slippage tao pequena que qs pode ser ignorada para sistemas end of day com 30 trades anuais ou parecido


Título: Re:Backtesting - topico de discussão sobre enviesamentos e outras questões.
Enviado por: John_Law em 2012-06-08 19:04:55
Isso soluciona o meu problema.

Obrigado.


P.S. Fiz um programa de teste para experimentar essa solução e enganei-me, corrigi este comentário na sequência da detecção do erro.


Título: Re: Sistemas EOD
Enviado por: leprechaun em 2012-06-08 19:08:17
...um sistema EOD que usa o preço de fecho para executar os negócios, já não é um sistema EOD, tem que estar em tempo real, próximo do fecho, a preparar-se para iniciar ou não o trade.


Essa linguagem parece contraditória... ou é ou não é EOD!

Nevermind... o que eu queria saber é se pode ou não fazer-se programação automática, tipo EA, para executar trades ao preço de fecho (ou na abertura, como diz o TG). Ou será que o EOD tem de ser obrigatoriamente manual?!

Como nada sei de programação, não vejo por que razão a variável tempo não pode ser incluída num programa, por exemplo, suponho ser possível programar um EA para "saber" os máximos e mínimos de um determinado timeframe e poder usá-los como trigger de um certo evento... tipo breakout.

Em suma: pode fazer-se isto ou não em programação?!


Título: Re: Automático ou manual?!
Enviado por: leprechaun em 2012-06-08 19:12:28
se comprares nos ultimos segundos tens uma slippage tao pequena que qs pode ser ignorada para sistemas end of day com 30 trades anuais ou parecido

Repito a pergunta que fiz agora ao Inc: mas uma compra ou venda no final da sessão (EOD) só pode ser executada manualmente ou é possível programá-la num sistema automático? Já agora, caso não o seja, qual a razão?!

I'm unable to see none... not even a trading nun!  ^-^


Título: Re:Backtesting - topico de discussão sobre enviesamentos e outras questões.
Enviado por: Thorn Gilts em 2012-06-08 19:16:23
Pode ser com preço EOD no dia do fecho e automático.

Na altura de consolidação de ofertas o sistema pode estimar, nas ultimas milésimas de segundo qual o preço a que ira fechar já considerando o eventual impacto da sua ordem, pelo que se com esse preço estimado para EOD o trigger despoletar o sistema pode executar a ordem.

No dia seguinte, para sistemas que trabalhem com pequenas variações, pode destruir a estrategia, até porque a variação é maior, em média, do que o slippage.


Título: Re:Backtesting - topico de discussão sobre enviesamentos e outras questões.
Enviado por: zel em 2012-06-08 19:28:38
Pode ser com preço EOD no dia do fecho e automático.

Na altura de consolidação de ofertas o sistema pode estimar, nas ultimas milésimas de segundo qual o preço a que ira fechar já considerando o eventual impacto da sua ordem, pelo que se com esse preço estimado para EOD o trigger despoletar o sistema pode executar a ordem.

No dia seguinte, para sistemas que trabalhem com pequenas variações, pode destruir a estrategia, até porque a variação é maior, em média, do que o slippage.

as ordens do open nao funcionam como as market-on-close?


Título: Re: Sistemas EOD
Enviado por: Incognitus em 2012-06-08 21:04:01
...um sistema EOD que usa o preço de fecho para executar os negócios, já não é um sistema EOD, tem que estar em tempo real, próximo do fecho, a preparar-se para iniciar ou não o trade.


Essa linguagem parece contraditória... ou é ou não é EOD!

Nevermind... o que eu queria saber é se pode ou não fazer-se programação automática, tipo EA, para executar trades ao preço de fecho (ou na abertura, como diz o TG). Ou será que o EOD tem de ser obrigatoriamente manual?!

Como nada sei de programação, não vejo por que razão a variável tempo não pode ser incluída num programa, por exemplo, suponho ser possível programar um EA para "saber" os máximos e mínimos de um determinado timeframe e poder usá-los como trigger de um certo evento... tipo breakout.

Em suma: pode fazer-se isto ou não em programação?!

Pode fazer-se em programação mas se vais utilizar o preço EOD do próprio dia, então o sistema teria que estar programado para comprar nos segundos finais (e não depois do fecho).


Título: Re:Backtesting - topico de discussão sobre enviesamentos e outras questões.
Enviado por: Kin2010 em 2012-06-08 22:24:45
Muito interessante questão. Eu agora já não faço day trade mas fi-lo durante 2 anos no passado, com futuros PSI 20. Utilizava um sistema EOD inventado por mim e fundamental era assumir que a cotação perto do fim da sessão seria a final, e agir rapidamente. Mas bastava-me ser 15 minutos antes do fim, não era preciso ser segundos -- nem seria logisticamente possível, pois eu dava as ordens por telefone.


Título: Re: Sistemas EOD... pré-close!
Enviado por: leprechaun em 2012-06-08 22:44:07
Pode fazer-se em programação mas se vais utilizar o preço EOD do próprio dia, então o sistema teria que estar programado para comprar nos segundos finais (e não depois do fecho).


Ah! isso assim já me soa mais lógico e abre também algumas possibilidades muito interessantes! Ou seja, e na sequência do que escrevi ontem no tema do Pouquinhos, a 1ª solução que eu testei com algum êxito para contrabalançar o excessivo risco do anti-trend end-of-day implicava saber a cotação às 14h (Nova Iorque), ou 2 horas antes do fecho.

Ora isto significa que talvez seja possível estabelecer um EOD antecipado que dê melhores resultados num determinado trading system do que o fecho propriamente dito. Só estou a considerar as 2 últimas horas da sessão como timeframe para este close artificial e até posso tentar ver isso nesse estudo antigo para o sistema do Pouquinhos.

Para mim, a questão aqui mantém-se invariavelmente a mesma, isto é, descobrir padrões estatísticos que possam ser usados vantajosamente no longo prazo. O SPX parece-me o índice ideal para isso, talvez por ser o mais negociado, mas seja qual for a razão dele estou enamorado! :D

Penso nela a toda a hora...

Rui leprechaun

(...pelo dia e noite fora! :))


Título: Re: Sistemas EOD... pré-close!
Enviado por: Thorn Gilts em 2012-06-08 22:51:04
Pode fazer-se em programação mas se vais utilizar o preço EOD do próprio dia, então o sistema teria que estar programado para comprar nos segundos finais (e não depois do fecho).


Ah! isso assim já me soa mais lógico e abre também algumas possibilidades muito interessantes! Ou seja, e na sequência do que escrevi ontem no tema do Pouquinhos, a 1ª solução que eu testei com algum êxito para contrabalançar o excessivo risco do anti-trend end-of-day implicava saber a cotação às 14h (Nova Iorque), ou 2 horas antes do fecho.

Ora isto significa que talvez seja possível estabelecer um EOD antecipado que dê melhores resultados num determinado trading system do que o fecho propriamente dito. Só estou a considerar as 2 últimas horas da sessão como timeframe para este close artificial e até posso tentar ver isso nesse estudo antigo para o sistema do Pouquinhos.

Para mim, a questão aqui mantém-se invariavelmente a mesma, isto é, descobrir padrões estatísticos que possam ser usados vantajosamente no longo prazo. O SPX parece-me o índice ideal para isso, talvez por ser o mais negociado, mas seja qual for a razão dele estou enamorado! :D

Penso nela a toda a hora...

Rui leprechaun

(...pelo dia e noite fora! :))

Qual o racional por trás dessa ideia? testaste alguma coisa para medir uma eventual vantagem?


Título: Re: Ah! o (ir)racional! :)
Enviado por: leprechaun em 2012-06-09 00:10:20
Só testei aquilo que acabo de escrever agora no tema do Pouquinhos (http://forum.economico.pt/index.php?topic=19735.msg475458#msg475458), baseado em estudos estatísticos acerca das 2 últimas horas de negociação nos índices americanos, considerado o período dos traders profissionais e que também é usado como um indicador... já não me lembro bem para quê! ;D

Ou seja, não há propriamente nenhum racional por trás desta hipótese ou possibilidade, é apenas uma ideia que me parece poder ser testada... resta é saber como!

Mas, de facto, até existe uma justificação para isto, pois tenho descoberto ultimamente que pequenas modificações em alguns parâmetros (para cálculo de cotações) podem produzir melhorias consideráveis nos somatórios totais.

Anyway... não consigo adiantar ou explicar melhor do que isto, eu sou apenas bom em ter ideias, possivelmente pouco convencionais só porque não sei mais!  ^-^

É a apologia da ignorância...

Rui leprechaun

(...como recurso de última instância! :))