Construindo modelos de trade
Postado por jonatas em 21/01/2011 em Blog, ChaosHunter | Sem comentários até o momento
Escolhendo uma saída para o modelo
Para construir modelos de trade com o ChaosHunter, a saída escolhida não deve ser o resultado da fórmula computada. O objetivo de construir um modelo de trade é ganhar mais dinheiro, e não fazer uma previsão sobre algo. Portanto a saída deve ser um preço na série temporal em que a negociação será feito. Geralmente esse preço será o preço de abertura (Open) da barra. Desde que a negociação é simulada para ser depois da abertura da barra a qual a fórmula é computada, isso é melhor usar o Open no preço (não selecione “scaling”); entretanto a negociação não será simulada até o final da próxima barra ao invés do início. A maneira em que essa saída é usada e como a decisão é tomada sobre quando negociar será explicado a seguir.
Indicadores técnicos como entradas
De arquivos de dados
As entradas para modelos de trade não devem ser apenas com os preços de abertura, fechamento, mais alto, mais baixo e volume. Você deve usar alguns indicadores técnicos para aumentar as chances de construir um modelo lucrativo. Se você exportar os seus dados de um programa como NeuroShell Trader, então será facil de incluir alguns indicadores em seu arquivo de dados. Indicadores importados de arquivos de dados serão tratados como valores ao invés de indicadores com parâmetros que serão otimizados.
Criado com ChaosHunter
ChaosHunter tem um número de indicadores técnicos para utilizar se você não têm nos seus dados ainda. ChaosHunter irá mesmo procurar os melhores parâmetros para utilizar nesses indicadores técnicos. Se você escolher alguns no ChaosHunter e tiver apenas preços de abertura, fechamento, mais alto, mais baixo e volume para alimentar seus arquivos, então não selecione nenhuma entrada. Ao invés disso, selecione quais destes preços quer usar para alimentar como entrada dos indicadores técnicos na aba Fórmula.
A maioria dos modelos de trade efetivos que nós (Ward Systems) temos uma saída realmente real, usamos (Threshold range) ao invés de saída Verdadeira ou Falsa. De qualquer forma o objetivo é ganhar mais. Se a otimização ocorrer com a opção “Smooth equity curve”, então o otimizador irá tentar lucrar mais, mas irá tentar aumentar os lucros de forma que o saldo aumente suavemente. Essa suavidade também significa que o modelo tem experimentado quedas menos severas.
Como ‘Buy/Sell Signals’ funciona
O ChaosHunter quer comprar e vender. Se você não está posicionado quando uma venda ocorre, então você irá ter uma posição “short”. A compra subsequente “covers” (cobre) a posição “short”. Enquanto um sinal de compra liberado pelo modelo será uma posição “long”. Um sinal de venda subsequente será o fechamento da posição “long”.
Alguns acreditam que seja mais eficiente reverter uma posição de “long” para uma “short” ou vice e versa, por exemplo, sair de uma posição ao mesmo tempo que entrar em outra. Geralmente isso é feito quando você está comprando ou vendendo, e não irá dobrar a sua posição. Se você quer esse tipo de modelo selecione a opção “True reversal”.
Como usar comissões
Você deve escolher o número de cotas (shares) para simular a negociação enquanto está construindo o modelo. Você deve ver as comissões não como um método de melhoria de performance nos resultados, mas mais como uma ferramenta que afeta como o modelo é construído. Especificamente comissões maiores irão resultar em modelos de trade menos frequentes; estabelecendo comissões baixas irá resultar em modelos com pontos de entrada mais frequentes. Não tenha medo de tentar diferentes montantes na comissão.
Estabelecendo limite (Threshold)
No método com limite (Threshold), ChaosHunter produz sinais de compra ou venda baseados em se a fórmula está sobre um certo limite (compra) ou abaixo de outro limite (venda). A única maneira de forçar estes limites serem o mesmo é estabelecendo um limite deste valor para + ou – zero, no caso ambos os limites são zero. Você estabelece um intervalo limite baseado em um intervalo limite que você acredita que a fórmula irá ter. Se você está construindo redes neurais, por exemplo, + ou – 1 é provavelmente bom. Se todas as suas entradas estão dentro de um intervalo, então você deve tentar aquele intervalo, assumindo que a fórmula não irá envolver expansões muito fora dos intervalos.
Mantenha em mente os dez axiomas de Steve Ward (copyright 2008):
- Trade é uma arte, não uma ciência. Os métodos científicos normais não são aplicáveis.
- Métodos estatísticos geralmente não se aplicam tambem, pois o número de estudos tem provado que os mercados não são normalmente distribuídos.
- Nenhum modelo que você construir será perfeito, e mesmo os melhores modelos terão percas. Você deve estar procurando um modelo que na média no tempo ganhe dinheiro.
- Modelos são simplesmente estimados, e você não deve se sentir preocupado sobre pequenas imprecisões em dados, cálculo do lucro, etc. Você está construindo um modelo guiado grosseiramente ao futuro, sem precisão. Você está construindo um modelo bruto para o futuro e não um relógio de precisão.
- Alguns mercados são previsíveis por algum tempo, mas não existe mercado previsível para sempre. Senão todo mundo seria rico. Para mim (Steve Ward), essa é a verdadeira definição para “mercados eficientes”.
- Nenhum modelo baseado em padrões do passado pode garantir um funcionamento futuro. Isso irá apenas quando os mesmos padrões se repetirem no futuro.
- O passado é apenas um prólogo que você tem para o futuro a não ser que você seja físico.
- Subitamente as notícias podem mesmo arruinar com seu melhor modelo. Para confirmar isso, apenas faça uma busca no Google por “LTCM”.
- Todos os modelos são construídos sobre observações passadas e carregam o risco de não se encaixarem. A otimização apenas aumenta o risco, por que a otimização encontra a melhor maneira de extrair padrões. Nada é de graça.
- Quanto mais analítico você for, mais você irá ignorar estes axiomas, jogue fora os bons modelos, e pense que você não é bem sucedido.
Chaos Input
A maioria das definições de funções caóticas provê uma entrada qual será o último valor produzido pela fórmula. Se você ativar essa opção, isso significa que está acreditando que as saídas atuais são afetadas pelas anteriores ou você está de fato lidando com o caos. Nós (Ward Systems) sentimos que o preço na série temporal em quase sempre é afetado. Não temos nenhum guia para valor inicial exceto dizer que ele pode ser um valor experimental.
Para a linha atual dos dados, o programa usa os valores computados com base nos valores das linhas anteriores. Na primeira linha a variável caótica (ChaosVar) é estabelecida com um valor inicial (zero por padrão). A fórmula sai da primeira linha e é calculada na linha seguinte com o uso do resultado anterior e assim por diante. Perceba que isso pode demorar algumas linhas antes de tornar um valor significativo (não é possível determinar quantas linhas são necessárias para isso, geralmente entre 10 e 50). Com isso em mente, seguem algumas considerações:
Testando com massa de dados
- Se você está buscando um teste de massa de dados, o ChaosVar pode ser iniciado com valor. Isso significa que você pode adiantar as coisas em algumas linhas até que a fórmula esteja realmente pronta para rodar. Testar massas de dados é realmente mais preciso se a fórmula teve algum cálculo que inclua o ChaosVar. Então, quando usado para trade, por exemplo, os sinais de entrada serão mais precisos se houver uma massa de dados do que apenas um conjunto de dados validados por si mesmo.
Insira a fórmula no gráfico
Se existir um número de barras anteriores no histórico do gráfico e a fórmula utilizar o ChaosVar, os sinais de trade irão ser mais precisos para iniciar as negociações.
Repetição de resultados
Se você tentar comparar sinais de trade da sua plataforma com os sinais mostrados no ChaosHunter, você não irá comparar “maçãs com maçãs” se o ChaosVar estiver na fórmula, a não ser que ambos o ChaosHunter e o início da estratégia estejam exatamente na mesma barra.
Accesso nas plataformas de trade
Com o objetivo de inserir a fórmula usando ChaosVar no gráfico, sua plataforma de trade deve estar apta a acessar o último valor da fórmula. (NeuroShell Trader Professional, por exemplo, não é capaz de fazer isso). Se sua plataforma não for capaz você irá gerar fórmulas sem o ChaosVar ou inserir sua fórmula chamando ChaosHunter Runtime Server (como NeuroShell Trader Professional faz).
Posts relacionados:
