CURSO: COMO DESENVOLVER SISTEMAS AUTOMÁTICOS EFICIENTES


Por Hindemburg Melão Jr.

Até 100 anos atrás, os investidores que baseavam suas decisões em Análise Técnica tinham um imenso trabalho para compilar bases de dados com preços de ativos, plotar os dados em papel milimetrado, traçar retas e curvas, analisar várias vezes os dados para tentar identificar padrões, fazer exaustivos cálculos para conseguir desenhar médias móveis, desvios-padrão etc. Para desenhar uma média móvel de 20 períodos durante cerca de 200 períodos era preciso dedicar várias horas. As ordens eram transmitidas por telefone ou telégrafo, geralmente as cotações chegavam com atraso, entre outros problemas. Isso para não falar de como era 200 anos atrás, antes do telefone e do telégrafo, em que a pessoa precisava estar fisicamente no ambiente das negociações, submetida a níveis de estresse difíceis de se imaginar.

Na década de 1980, com a disseminação dos computadores pessoais, plotar uma média móvel de 20 períodos durante milhares de períodos se tornou possível em questão de segundos. Na década de 1990, com a popularização da Internet, os home brokers tornaram possível o envio de ordens de compra e venda muito mais rapidamente e facilmente, além de possibilitar ao investidor receber cotações numa fração de segundo, em que os dados entram diretamente no gráfico e são imediatamente plotados, bem como os indicadores são automaticamente atualizados, tornando todo o processo muito mais fácil. Mas a maior de todas as facilidades veio com o terceiro milênio: os sistemas totalmente automatizados. Na verdade estes sistemas já existiam, mas só agora começaram a se tornar populares, pois demandam grande poder de processamento, muita memória RAM, grandes HDs etc., e só nos últimos 5 anos é que se atingiu este nível nos PCs caseiros. Além disso, os avanços no campo da Inteligência Artificial foram de suma importância e hoje em dia é uma realidade que alguém dedique alguns meses ou anos para desenvolver um sistema automático que depois trabalhará por si pelo resto da vida, liberando o humano da situação estressante de acompanhar as oscilações dos preços e tentar tomar as decisões certas, muitas vezes sujeito ao cansaço, à ansiedade, à ganância, à impaciência e outros “inimigos internos”.

Até 10 anos atrás, investir era um jogo, envolvendo uma combinação de habilidade, treinamento, controle emocional e sorte. Com os sistemas automáticos, tornou-se uma Ciência em que o treinamento e o controle emocional perdem a importância, a habilidade é usada sem pressão do tempo e o fator “sorte” se transforma em “prognóstico estatístico”, porque em vez de tomar decisões com base em poucos meses de teste de uma estratégia com parâmetros não-otimizados, usa-se uma estratégia com vários anos de teste e cujos parâmetros foram meticulosamente calibrados, mediante dezenas de milhares de experimentações de diferentes combinações destes parâmetros no mesmo período, até encontrar os valores realmente ótimos. Em vez de usar IFR 30 e 70 com 9 períodos, pode-se encontrar quais os valores realmente mais adequados para que os ganhos sejam máximos, além de usar simultaneamente vários indicadores e calibrar os parâmetros para todos eles conjuntamente.

Agora não se trabalha no Mercado, diretamente, mas no desenvolvimento de um sistema que trabalhará no Mercado. Os erros já não acontecem de forma imprevisível e em tempo real, mas nos testes de calibração, de modo que podem ser evitados ou minimizados. A pessoa não entra no Mercado sem saber quanto vai ganhar ou perder, mas já entra sabendo com boa aproximação com quanto vai terminar o mês, o ano etc. Isso desde que o sistema seja bom e o teste seja confiável. E aí é que residem os problemas. Não fosse isso, qualquer pessoa poderia enriquecer muito facilmente.

Uma das maiores dificuldades enfrentadas pelos desenvolvedores de Automated Trading Systems é a realização de back tests confiáveis. Depois de vários dias aprimorando sua estratégia, testando-a e otimizando os parâmetros, finalmente você decide colocar tudo em prática. Seu sistema funciona admiravelmente bem no back test, transformando poucos milhares de dólares virtuais em muitos milhões, em questão de poucos meses. Você acredita que finalmente encontrou a solução definitiva de como ganhar dinheiro e coloca seu sistema para operar em tempo real. Se você fez isso com uma conta demonstrativa, a decepção deve ter sido menos dolorosa, mas se colocou em conta real, além da decepção, você provavelmente amargou um considerável prejuízo. Isso não é nada agradável, mas faz parte do aprendizado e agora você descobriu que os back tests, embora representem um extraordinário apoio para aprimorar suas estratégias, se não forem realizados corretamente, acabam lhe causando aborrecimentos, frustrações e perdas monetárias.

Há até uma fórmula mágica para conseguir um sistema falsamente lucrativo: use um critério bobo qualquer para compra e venda e defina ordens suficientemente curtas de stop loss, take profit e trailing stop. Em poucas horas você pode desenvolver e otimizar um sistema destes, que faz seu dinheiro fictício crescer quase linearmente no back test, com drawdown em torno de 5% e balanço consistente de 200% ao ano durante vários anos. Então você tenta operar em tempo real e descobre que o resultado é sistematicamente negativo! Geralmente não adianta usar uma base minuto a minuto e não adianta usar modelagem com qualidade 90%, o problema persistirá.

Existem vários procedimentos que ajudam a atenuar o problema, mas há poucas soluções verdadeiramente eficientes e que asseguram para o back test praticamente os mesmos resultados obtidos em tempo real no mesmo período. Em nosso curso você aprenderá o que é necessário para que seu back test seja confiável.

Veja no exemplo abaixo os gráficos do “MySystem”, um sistema automático disponível para download gratuito no site Meta Quotes:

O primeiro gráfico mostra a performance do MySystem no período de 1/1/2006 até 9/12/2006, com time frame de 15 minutos, usando a base EURUSD 1 minuto da MetaQuotes, com qualidade de modelagem de 90%. O sistema usou as configurações originais (Take Profit 86, Stop Loss 60, Trailing Stop 10), exceto os lotes, que foram mudados para 1. O sistema realizou 179 operações, com lucro de 163,46% em menos de 1 ano, tendo máximo drawdown de 29,67%, que não é muito em comparação ao ganho anual de mais de 160%, portanto seria possível reduzir muito o drawdown mediante redução dos lotes em cada operação, naturalmente implicando também redução nos lucros. Das 179 negociações, 48% foram lucrativas, o que é bom, tendo em conta que cada ganho é quase 50% maior do que cada perda (86 pips por Take Profit e 60 pips por Stop Loss), pois o fator de lucro resultante é 1,29. Um resultado estimulante. Agora vejamos como se sai o mesmo sistema, nas mesmas condições, no mesmo período, porém usando para teste nossa base tick by tick:

A primeira diferença que salta à vista é o comportamento do gráfico, muito diferente do observado na base de 1 minuto. Na melhor das hipóteses, não houve perda. O lucro foi de 9,11% em quase um ano, com drawdown de 45,19%, muito grande em comparação à expectativa anual de menos de 10%. Além disso a quantidade de operações realizadas foi 145, e ocorreram em momentos diferentes, a preços diferentes. O fator de lucro foi 1,02, assustadoramente perto de 1, que é o limiar entre a perda e o ganho.

Usando outras bases de 1 minuto (da Alpari, por exemplo), os gráficos também são diferentes, porque muitas bases de 1 minuto apresentam várias distorções. Mas o importante não é a diferença entre a base tick by tick e a melhor base minuto a minuto. O que mais importa é a semelhança entre a base tick by tick e as operações em tempo real. Ainda assim não são idênticas, inclusive porque se você abrir o Meta Trader 4 no mesmo ativo e mesmo time frame, porém em vários brokers diferentes, perceberá que as cotações não são iguais em todos eles, especialmente nos momentos de maior volatilidade, podendo variar até 5 pips. Este fator impossibilita que se consigam modelagens de 100%, além disso o Meta Trader faz back tests com spreads constantes, enquanto o mercado real apresenta oscilações. Devido a estas limitações, nosso cálculo é de que a melhor modelagem que podemos ter fica em torno de 98,6%, isto é 600% mais precisa do que a modelagem de 90% nas melhores bases de 1 minuto, ou seja, os erros são 7 vezes menores.

Outro detalhe importante é que se uma base difere da outra em cerca de 5 pips ou mais no mesmo período, isso não é relevante, desde que esta diferença seja aproximadamente estável, ou seja, se uma base apresenta preço sistematicamente 5 pips maior que na outra, isso não interfere no back test porque a forma do gráfico permanece a mesma em ambas e bastaria empurrar um conjunto de dados 5 pips para cima ou para baixo. Um problema real, porém pequeno, é quando a diferença oscila muito, como ficar 5 pips acima numa base, e poucos minutos depois ficar 5 pips abaixo, mesmo assim não interfere muito desde que sejam mudanças suaves e, embora ocorram diferenças punctuais nos períodos considerados, o back test acaba sendo suficientemente semelhante aos realizados em períodos diferentes, de modo que o Mercado pode ter diferenças particulares naquele período específico, mas preserva suas propriedades gerais (isotropia em larga escala), que é o que importa para a eficiência do teste. O maior problema é quando os candles são artificialmente maiores e com tamanhos aproximadamente uniformes (pouca variância nos comprimentos de candles), que é um erro comum presente em muitas bases, porque isso, durante a otimização dos parâmetros, força os resultados para valores inverossímeis. Um exemplo: se candles de 15 minutos tivessem cerca de 40 pips de comprimento, em média, durante períodos suficientemente longos, e oscilando pouco de tamanho, como acontece em muitas bases, seria muito fácil ganhar com scalping usando bandas de Bollinger e realizando dezenas de operações por dia. O algoritmo de otimização do Meta Trader, ao lidar com uma base com este problema, torna as bandas de Bollinger suficientemente estreitas e o resultado é altamente lucrativo na teoria, porém causa sérios prejuízos na prática. Prejuízos para o investidor, porém gera lucros para as corretoras. Por isso suspeito que alguns brokers intencionalmente distorcem suas bases com a finalidade de incentivar os investidores a adotarem estratégias que façam dezenas de operações por dia, assim os brokers ganham mais corretagem. E para isso basta esticarem os candles e deixar que o algoritmo de otimização do Meta Trader se encarrega de persuadir o investidor a fazer muitas operações. Como resultado, as modelagens de 90% têm qualidade real bem inferior a 20%. Com uma base tick by tick o problema dos candles distorcidos praticamente desaparece e a qualidade real da modelagem chega em quase 99%.

A fórmula usada pelo Meta Trader para indicar a qualidade da modelagem não possibilita gerar resultados acima de 90%, por isso você continuará recebendo do software a informação de que a modelagem é 90%, mas na verdade é próxima a 99%. Também ao usar time frame de M1 você consegue modelagem próxima a 99% em nossa base tick by tick, embora o Meta Trader indique 25%.

Além de uma base de alta qualidade, você precisa de boas ferramentas matemáticas à sua disposição, de bons critérios para eleger as ferramentas mais adequadas a montar uma estratégia eficiente, de boa metodologia para otimizar os parâmetros, de boa compreensão do que está acontecendo para que possa perceber a necessidade de adicionar ou suprimir parâmetros, entre outros atributos.

Parte do que você precisa é dedicação, vontade de aprender e certa aptidão natural para lidar com problemas quantitativos, e nisso não temos como colaborar. Mas no que diz respeito às informações, aos recursos bibliográficos e tecnológicos, treinamento etc., podemos lhe oferecer um suporte que certamente o ajudará a maximizar suas possibilidades de sucesso.

Veja um pouco mais sobre sistemas automáticos em nosso artigo: http://www.sigmasociety.com/auto_trading.htm.

Veja também este excelente artigo http://articles.mql4.com/163, indicado por Tatyana Vorontsova, da Meta Quotes, elogiado por nosso amigo Fernando Botti.

Para participar de nosso curso você precisa ter alguns conhecimentos básicos, cuja bibliografia lhe é enviada no ato da inscrição (inclusive a apostila do curso em DVD). A data do curso será agendada quando houver 40 inscritos. Se o número mínimo de inscritos não for atingido no prazo de 2 meses, o curso poderá ser realizado com as pessoas inscritas até o momento. A data será agendada de acordo com a disponibilidade dos participantes.

As inscrições estarão abertas a partir de 20/12/2006.

Os inscritos neste curso terão condições especiais em nosso próximo curso sobre sistemas automáticos. Entre em contato para mais detalhes.

O curso expõe diversos temas complexos de forma acessível, porém a aplicação eficiente do conteúdo abordado no curso depende de muito esforço. Você não deve se iludir pensando que sairá do curso, chegará em casa e desenvolverá um sistema automático para ficar rico no dia seguinte e deve desconfiar de quem lhe prometer algo assim. Embora o curso dure apenas 2 dias, você precisará trabalhar duro durante meses até conseguir implementar com sucesso sua estratégia num sistema que funcione a contento. Não será fácil, mas depois que conseguir isso, poderá deixar o sistema trabalhando para você 24 horas por dia, e ao final de cada mês terá apenas que ir conferir quanto lucrou. Em nosso curso você receberá a vara, a linha, iscas, anzóis e tudo o mais de que precisa para pescar. O quanto conseguirá pescar dependerá de seu trabalho.

Solicite formulário para inscrição e dados para depósito aqui: http://www.sigmasociety.com/contatos/sigma_formulario.asp