Você está na página 1de 17

Vencendo o mini-índice com

A Teoria de Schotgues das Operações


Contra a Tendência

e considerações sobre como operar

Flávio Schotgues
ADVERTÊNCIA: Este é um estudo teórico com um exemplo que consiste em um EA ou “robô” e sua
descrição. Não estou recomendando que esta teoria ou este EA sejam utilizados em operações
reais no mercado financeiro, ou que sejam feitas operações de qualquer natureza. Não posso me
responsabilizar pelo uso que venha a ser dado deste material, aqueles que forem operar no
mercado financeiro deve estar ciente dos riscos e assumi-los. Estes riscos envolvem a possibilidade
de perdas financeiras que podem ser superiores ao capital investido.

Inicialmente parece um contra-senso operar contra a tendência. Estamos


acostumados a andar no trânsito na mão certa, a entrar em filas, a respeitar a lei, a
acatar ordens. Então, por que andar na contra-mão, desobedecer a lei, quebrar as
regras, remar contra a maré?
Foi operando a favor da tendência e tendo resultados medíocres que trabalhei duro e
concluí que o melhor seria operar contra ela. Antes de ver como e por que operar
contra a tendência, vamos estudar as operações a favor da tendência para entender
quais são as suas desvantagens.
A teoria clássica diz que devemos sempre seguir a tendência. Para isso, devemos
buscar sinais que indiquem que há uma tendência e qual a sua direção. Contudo, há
vários problemas em fazer isso. Primeiro, determinar que há uma tendência. Todas
as formas de fazê-lo inevitavelmente darão sinais atrasados, na medida em que
determinar que há uma tendência consome parte dela. Quanto mais fortes as
indicações de que há uma tendência, mais ela terá transcorrido e menos dela restará
para que a acompanhemos.
Uma vez que tenhamos entrado a favor da tendência é difícil prever a sua duração,
ou o que resta dela. Ainda seguindo a teoria clássica, devemos aguardar sinais do
final da tendência para sair. Assim como os sinais da entrada são atrasados, os da
saída também são. Então, da mesma forma, as chances são de que saiamos da
tendência depois que ela terminou. Com isso deixamos de ganhar ao perder o início
da tendência e perdemos ao sair depois do seu fim.
O mercado é variável e imprevisível por natureza, e alterna cenários de tendência e
de lateralização com durações aleatórias. Então, mesmo que consigamos evitar
satisfatoriamente as lateralizações, estaremos sujeitos às variações da duração das
tendências. Isso nos deixa diante de um impasse: se estamos perdendo o início das
tendências e saindo das operações depois do final delas, é bem possível que
acabemos entrando na operação quando a tendência estiver terminando, e que
saiamos depois que o preço já andou bastante na direção contrária à nossa operação.
Ou seja, se a tendência for especialmente curta, teremos prejuízo. Se o mercado
estiver em uma fase de tendências curtas sucessivas, a progressão de operações
levará a prejuízos crescentes.
Paliativamente poderemos incluir targets e stops que interrompam prematuramente
as operações de modo a limitar os prejuízos e maximizar os ganhos, mas ainda assim
estaremos sujeitos às dificuldades da detecção das tendências e aos prejuízos
causados pelas tendências de curta duração.
Outro problema de operar a favor da tendência é o mecanismo de entrada nas
operações. Como na tendência o preço está se deslocando rapidamente em uma
direção e queremos colocar a ordem na direção que reforça a tendência, teremos que
fazer isso rápido para não perdermos o ponto de entrada. Assim, qualquer atraso no
caminho entre colocar a ordem e esta efetivamente ser executada nos prejudica, e o
costume é colocar ordens de entrada a mercado para não perder a oportunidade, o
que pode custar spread e slippage caros.
Sem dúvida podem ser encontradas soluções que permitam que os lucros superem
os prejuízos no longo prazo, mas à custa de grandes e indesejáveis flutuações no
saldo que limitam o volume operado e trazem insegurança quanto ao sucesso do
método.
Em oposição às operações a favor da tendência, é possível operar contra ela. O
princípio das operações contra a tendência é assumir que o preço está fazendo um
movimento tal que indica que ele logo mudará de direção. Vejam que entrar quando
o preço parar de fazer um movimento e indicar que está começando a voltar é uma
operação a favor da tendência, e não contra. É uma tentativa de detectar uma
reversão, que seria o início de uma nova tendência. A operação contra a tendência
acontece quando vendemos enquanto o preço está subindo fortemente, ou
compramos enquanto ele está desabando.
Esta ação aparentemente contraditória traz duas grandes vantagens. Uma delas é a
possibilidade de entrar nas operações com ordens limitadas ou “na pedra”, o que traz
o benefício de eliminar completamente o spread nas entradas, além de aumentar a
fidelidade dos backtests e portanto a eficiência das otimizações, quando a estratégia
estiver automatizada. A outra vantagem é a previsibilidade do movimento dos preços.
Sim, o mercado é imprevisível e estamos fazendo tentativas para acertar a sua
direção, procurando sinais. O início de uma tendência somente pode ser detectado
através de indicadores, figuras gráficas ou outros sistemas que invariavelmente darão
sinais atrasados, enquanto o movimento forte do preço em uma única direção cria
uma espécie de tensão de retorno, que pode ser usada a nosso favor como um sinal
do que provavelmente está para acontecer.
A tensão de retorno pode ser determinada de várias maneiras. Há indicadores
específicos para apontar níveis de sobrecompra ou sobrevenda como o IFR e o
estocástico, assim como há as técnicas de retorno à média. Independentemente do
que for usado, deve ser estabelecido um limiar de atuação abaixo do qual não serão
colocadas ordens, de modo a gerar proteção contra mercados lateralizados e portanto
desfavoráveis. À indicação estática de uma tensão de retorno deve ser aliado um fator
de aceleração que aponta um crescimento da tensão de retorno em um certo período
de tempo. O acionamento da ordem de entrada espera que aconteça um forte impulso
do preço na direção que anula a tensão de retorno, podendo até mesmo gerar nova
tensão de retorno na direção contrária à anterior. Esta tensão secundária deve ser
ignorada enquanto a operação durar, até que seja atingido um limiar de exaustão pré-
estabelecido, quando a posição deve ser encerrada. A partir daí sim, pode ser
analisada a tensão de retorno existente para nova entrada.
Como sempre, é indispensável prever um ponto de stop loss para o caso de o preço
não ter o comportamento previsto e desejado. O ponto onde o stop loss deve ser
colocado em uma estratégia é um assunto controverso, envolvendo discussões sobre
gerenciamento de risco, sobre táticas para evitar certos pontos óbvios e até sobre
fatores emocionais, o que realmente não vêm ao caso aqui. Uma estratégia contra a
tendência que usa esta teoria é diferente das estratégias tradicionais, e seu stop loss
também é diferente. Neste caso, colocar um stop loss curto demais vai interromper
uma operação que ainda pode ser boa, porque o que estamos esperando é
justamente que o preço volte, aliviando a tensão de retorno. É esperado e até
desejável que o preço caminhe um pouco contra a operação, o que assegurará a
completa execução da ordem limitada de entrada.
O que se faz aqui é utilizar um stop fixo e muito grande, que raramente será acionado,
para o caso de uma situação catastrófica que pode ser causada por algo como uma
notícia importante. Chamo isso de stop preventivo, em oposição ao stop
tradicionalmente usado nas operações a favor da tendência que chamo de stop
operacional. Naquele queremos interromper operações que fracassaram, aqui
queremos apenas ter uma segurança contra raras catástrofes.
O robô Xeque Mate: um exemplo de aplicação prática

A seguir vou descrever um exemplo de implementação desta tecnologia na forma de


uma estratégia de day trade para o mini-índice acompanhada de um EA que a
executa, gentilmente escrito pelo programador Marcos Rafael sob minha orientação.
O exemplo consiste em uma estratégia de retorno a uma média simples de 16
períodos calculada pelo fechamento dos candles em um gráfico de 15 minutos. A
tensão de retorno é indicada pela distância do preço ao último ponto calculado da
média. São estabelecidos dois limites equidistantes em relação a este último ponto
calculado da média. Ao ser atingido o limite inferior é colocada uma ordem de compra,
e ao ser atingido o limite superior é colocada uma ordem de venda. Estas ordens de
compra e venda são limitadas ou “na pedra”, e têm expiração de 15 minutos,
indicando que serão canceladas se não forem executadas em até 15 minutos depois
de colocadas. Além disso as ordens são deslocadas no sentido que as afastam do
preço, fazendo com que, uma vez colocadas, o preço tenha de ter uma certa
velocidade mínima em pontos/minuto para executá-las. O limite de distância da média
pode então corresponder à tensão estática de retorno mencionada acima, e este
impulso adicional para a execução da ordem limitada será o fator de aceleração
também mencionado. Conforme também descrito acima, a utilização destas ordens
de entrada limitadas elimina completamente as perdas com slippage e spread na
entrada das operações, melhora a fidelidade dos backtests e a eficácia das
otimizações.
Na figura seguinte o mercado está lateralizado e os limites de distância à média não
são alcançados, e então não são colocadas ordens.
Nesta outra figura, o preço subiu fortemente e tocou o limite superior, e então foi
colocada uma ordem limitada de venda.
O preço subiu mais e executou a ordem, e então foi iniciada uma operação vendida.
Durante todo esse processo de colocação e execução da ordem não foi procurado
nenhum sinal de reversão do preço, em uma legítima operação contra a tendência. A
estratégia vendeu porque o preço estava subindo muito, e só isso. Vendeu enquanto
ainda subia, e neste caso na máxima do dia.

Aqui está um backtest de 3 anos de 1/1/2015 até 31/12/2017 da estratégia, com 5


contratos de mini-índice, usando 800 pontos como distância mínima à média, 50
pontos de deslocamento das ordens limitadas de entrada em relação ao preço, 400
pontos de target e 1000 de stop, aceitando a colocação de ordens de entrada entre
9h30 min e 12h, e encerrando todas as operações às 12h15min. Foram considerados
custos operacionais totais de R$ 1,25 por contrato por ordem executada. Este setup
de exemplo adota, portanto, uma tensão de retorno de 800 pontos e um fator de
aceleração de 3,3 pontos/minuto.
Como vemos, neste teste o EA executou 90 operações, ganhando 16535 pontos.
Gastou R$ 225,00 por contrato com custos operacionais e portanto, em 36 meses,
teve um lucro líquido mensal de R$ 85,61. O rebaixamento máximo do saldo durante
os 3 anos do teste foi de 570 pontos. Se considerarmos uma reserva de capital de 3
vezes o rebaixamento máximo serão R$ 342,00 por contrato. Com mais R$ 40,00 de
margem por contrato, neste exemplo, o capital aplicado por contrato seria R$ 382,00,
o que nos dá uma rentabilidade liquida de 22,4% ao mês, calculada sem reinvestir os
lucros. São notáveis os elevados fator de lucro de 3,93 e o pagamento esperado de
quase 184 pontos por operação.
A função de otimização embutida

É frequente a dúvida sobre como otimizar uma estratégia, e principalmente o que


procurar na otimização. Alguns procuram o máximo de lucro, outros procuram o
menor drawdown, outros o maior fator de lucro, mas afinal, o que é importante?
O mais importante é obter todas essas coisas mas não no passado, e sim no futuro.
A maneira de se obter isso é otimizando para obter uma curva de capital que se
aproxime de uma reta ascendente, já descontados os custos operacionais , por um
prazo adequadamente longo e sem superotimização. Uma curva de capital que tenha
estas características tende a produzir um prolongamento que também se aproximará
de uma reta ascendente, que é o que desejamos: lucros constantes alternados com
prejuízos mínimos e ocasionais.
É notória uma sazonalidade na volatilidade do mini-índice e de outros ativos, o que
pode ser observado nos gráficos dos backtests do Xeque Mate.
Desta forma, é adequado que tanto as otimizações como os backtests sejam feitos
por períodos que sejam múltiplos inteiros de 12 meses, para evitar uma maior
influência de determinadas épocas que sejam especialmente favoráveis ou
desfavoráveis à estratégia. Além disso, considero que devam ser avaliados no
mínimo dois ciclos anuais completos, perfazendo pelo menos 24 meses de otimização
ou de teste, de modo a minimizar o impacto de efeitos isolados.
A decisão de utilizar períodos maiores como 36, 48 ou 60 meses deverá levar em
consideração a ocorrência de alterações importantes no mercado, como grandes
variações na volatilidade, no volume de negócios ou no preço, assim como há que se
considerar a disponibilidade de recursos computacionais. Otimizações por prazos
maiores evidentemente demandarão maior capacidade de processamento, para que
sejam finalizadas em um prazo satisfatório.
Esta utilização de períodos longos, de no mínimo 24 meses, e evitando as
sazonalidades, já pode ser considerada uma providência contra a superotimização.
Outras mais devem ser tomadas, como evitar otimizar parâmetros excessivos
simultaneamente, evitar passos pequenos demais e observar a maneira como a
variação dos parâmetros influi no resultado.
Considero que, de uma maneira geral, devem ser otimizados a distância à média, a
distância para a colocação da ordem de entrada, e o target, ou seja apenas três
parâmentros. Os demais podem e devem ser estudados, mas a sua influência nos
resultados é menor. O parâmetro mais importante de todos é a distância à média, que
tem um papel decisivo no comportamento do robô como veremos mais adiante. O
stop é um caso à parte e também será visto oportunamente.
A melhor maneira que encontrei para que a otimização genética convergisse para
uma curva de capital que se aproximasse de uma reta monotonicamente ascendente
e portanto para que se produzisse um ponto de partida para ajustes mais refinados,
foi incluir no robô uma função de otimização customizada conforme por mim
especificado.
Chamo esta função de “fator de recuperação líquido”, na medida em que se trata de
um fator de recuperação, que é o quociente entre o ganho de capital e o drawdown
máximo, em que foram subtraídos do numerador os custos operacionais. Com isso,
estes custos são levados em consideração nas otimizações e nos backtests, o que
automaticamente tende a procurar um equilíbrio entre o número de operações e sua
rentabilidade. Para aproveitar este valioso recurso, a otimização deve ser feita para
“Custom Max”, e a função de otimização a ser selecionada é “Lucro Líq/ Mín
Drawdown”, que é justamente o fator de recuperação líquido. È fundamental também
preencher o campo relativo ao custo operacional, para que este seja computado.
A função de teste influi na rentabilidade conforme o seguinte cálculo:

Definições:
Rm% = rentabilidade mensal em %
L = lucro líquido obtido no teste
n = duração do teste em meses
SF = fator de segurança (múltiplo do DD recorde a ser arbitrado pelo investidor)
M = margem exigida pela corretora para o volume utilizado no teste
DDmax = drawdown (rebaixamento do saldo) máximo durante o teste em dinheiro,
não em %
RFL = Fator de recuperação líquido, que é o critério de teste
.
Rm% = 100 *L /(n *(SF * DDmax + M))

Se assumirmos que M é desprezível comparado com SF*DDmax, ficamos com

Rm% = (100*RFL)/(n*SF)

Desta forma, fica demonstrada a relação direta entre a função de teste e a


rentabilidade mensal.
Quero lembrar que os backtests e portanto também as otimizações apresentam
limitações. As bases de dados não são perfeitas, os backtests no modo a cada tick
na verdade são feitos a partir de ticks interpolados de dados OHLC no tempo de 1
minuto e não ticks reais e, talvez o mais importante, os backtests feitos em séries
contínuas do mini-índice geram fortes distorções na média móvel, justamente o
parâmetro mais importante da estratégia, o que tende a gerar resultados piores do
que os reais. Isso faz com que os resultados das operações reais tenham uma
tendência a serem ainda melhores do que os do backtest.
A otimização do stop loss

Conforme o exposto no texto da teoria, o stop loss tem uma função de prevenção
contra catástrofes, e não uma função operacional. Isto faz com que os valores de stop
pareçam enormes e até assustadores mas, como pode ser facilmente constatados
através de backtests, é muito raro o acionamento de um stop loss.
Para ilustrar a importância se de usar um stop grande nas estratégias que seguem
esta minha teoria das operações contra a tendência, abaixo está uma tabela
mostrando o efeito da variação do stop loss no desempenho do Xeque Mate.

Aumentar o stop de 100 até 1000 pontos causou uma melhoria no resultado da função
de teste, no lucro, no fator de lucro, no pagamento esperado e no índice de Sharpe.
Acima dos 1000 pontos não houve melhoria nestes números mas houve um aumento
no risco no caso de uma catástrofe, portanto 1000 é o valor a ser adotado: o menor
stop que não prejudica o resultado.
A distância à média

Uma interessante característica das estratégias contra a tendência como esta é a


facilidade em se fazer um ajuste entre o número de operações e a qualidade delas,
ajustando o limiar da tensão de retorno que acionará a colocação de ordens de
entrada. Na tabela a seguir a distância mínima entre o preço e a média móvel para
colocação das ordens limitadas de entrada foi variada entre 600 e 1000, conforme a
última coluna, trazendo um impacto bastante visível e progressivo no número de
operações, fator de lucro, pagamento esperado e índice de Sharpe. No backtest foi
utilizado o valor 800, aquele que deu o melhor resultado na otimização.

A mínima distância à média para a colocação da ordem de entrada é o parâmetro


mais importante da estratégia: Ele tem o poder de ajustar o ponto de equilíbrio entre
o número de operações e a qualidade das mesmas.
O ponto exato a ser escolhido dependerá até da personalidade da pessoa que irá
usar o robô. Alguns preferirão menos operações e mais certeiras, enquanto outros
poderão ficar impacientes com muito poucas operações e preferirão tê-las em maior
número, ainda que com desempenho pior.
Digo que o ponto de partida para encontrar o valor deste parâmetro é fazer uma
otimização que produza o maior resultado possível na função de teste. É bastante
provável que o resultado seja um número diminuto de operações excelentes, com
fator de lucro, fator de recuperação, pagamento esperado e índice de Sharpe que
seriam muito difíceis de se obter com outras estratégias. A partir daí, pode-se escolher
uma distância à média que tenha gerado operações consideradas suficientes, com
resultados ainda satisfatórios.
Tendo escolhido uma distância à média, é interessante fazer uma otimização
completa para o target e a distância da ordem, e finalmente encontrar o stop loss.
Optar por uma distância à média menor do que aquela que teria produzido o melhor
resultado na otimização, com o objetivo de aumentar o número de operações, é algo
que deve ser feito com muito critério. A tentação de aumentar o número de operações
para vencer a ansiedade e para ver o robô funcionando mais frequentemente pode
ter um custo alto. Aumentar o número de operações tende a piorar importantes
indicadores de desempenho como o fator de lucro, o fator de recuperação, o
pagamento esperado e o índice de Sharpe, além de evidentemente aumentar os
custos operacionais. O pior efeito de todos, contudo, será imediatamente notado
justamente na função de teste, com as consequências para a rentabilidade já
anteriormente explicadas.
Um outro efeito facilmente perceptível da escolha de uma distância à média menor é
o aumento do stop loss encontrado, o que aumenta o risco e exige um capital maior
por contrato, anulando a vantagem de um eventual aumento no número de pontos
ganhos. Essa é a beleza de usar o fator de recuperação líquido como critério de teste:
a malhor relação entre o ganho e o risco é automaticamente encontrada.
Insisto em reforçar a importância da distância à média. Embora em algumas ocasiões
a otimização possa mostrar uma descontinuidade na relação entre a distância à
média e o resultado da função de teste, é importante saber que esse efeito pode ser
gerado por uma amostra de dados que não é suficientemente representativa e até
pela distorção gerada na troca de séries, ao usar séries contínuas conforme
comentado anteriormente. A continuidade na relação entre a distância à média , o
número e a qualidade das operações é indiscutível e não deve ser menosprezada.
Esta característica da estratégia será explorada mais adiante quando for exposto o
sistema de gerenciamento de risco que adoto.
Gerenciamento de risco

Criei e uso um sistema de séries, que funciona da maneira que descrevo a seguir.
A partir de um momento inicial, vamos começar a operar. Começa então uma aposta,
estamos apostando que vamos vencer o mercado, que vamos ter lucro. É normal e
esperado perder às vezes, e então é bem possível que tenhamos algum prejuízo
antes de ter lucro. No momento em que tivermos recuperado o prejuízo que estejamos
tendo, ou até mesmo se já tivermos lucro na primeira operação, então vencemos esta
aposta e ela terminou.
A partir daí, podemos começar uma outra aposta. Chamo cada uma dessas apostas
de série.
É fundamental, neste sistema, que o número de contratos seja constante durante a
série, e é por isso que no início de cada série devemos alocar, além da margem
exigida pela corretora, uma reserva de capital para cobrir eventuais perdas e mais os
recursos necessários para pagar os custos operacionais incorridos até terminar a
série.
Surgem então duas questões: a primeira delas é quanto usar de reserva de capital, e
a outra é o que fazer se as coisas não saírem conforme o esperado e o prejuízo for
aumentando.

A reserva de capital parte de uma estimativa. Tendo dados históricos ou ainda um


backtest, observa-se qual o maior drawdown sofrido e aplica-se sobre este um fator
de segurança. O fator de segurança vai depender do investidor, e é um multiplicador.
Por exemplo, um investidor agressivo poderá querer aplicar um fator de segurança
de apenas 2, que seria o dobro do drawdown máximo no período. Um outro mais
cauteloso poderá querer aplicar 5.
Uma outra possibilidade é aplicar um fator de segurança sobre uma suposição do
maior drawdown estimado, baseado no tamanho do stop loss e na possibilidade um
certo número deles acontecerem em sequência.

Enfim, é impossível prever o futuro, e a escolha da reserva de capital acaba sendo


uma decisão pessoal. Quanto maior a reserva menor a possibilidade de esta se
esgotar em uma fase ruim da estratégia, mas menos rentável a estratégia se torna.
Conversamente, quanto menor a reserva mais arriscada e mais rentável a estratégia
fica.

Utilizar uma estratégia como o Xeque Mate com um esquema de séries como este
traz uma vantagem adicional. No caso de um drawdown crescente e preocupante,
resta o recurso de aumentar a distância à média se a reserva atingir um nível crítico
pré-estabelecido, como por exemplo 50%. Isto reduzirá o numero de operações e as
tornarão mais seguras, afastando a necessidade de reduzir o volume operado ou até
interromper as operações.
O efeito do aumento do número de contratos sobre a curva de capital

Ainda sobre o sistema de séries, reforço que cada uma das séries é uma aposta
independente e sem relação com as anteriores. Portanto, nada impede que o
drawdown de uma série em curso possa temporariamente consumir o lucro auferido
em séries anteriores já encerradas. Ter ciência disso é parte do gerenciamento de
risco.
O aumento do volume operado deve sempre levar em consideração que se deve ter
uma reserva de capital adequada no inicio de cada série. O aumento progressivo e
rápido do número de contratos operados produz movimentos na curva de capital com
amplitude crescente e, da mesma forma que os ganhos podem subir de forma
extraordinariamente mais rápida, uma única perda poderá consumir os lucros de
semanas ou meses.
Conclusão

Mais outros testes poderão ser feitos com esta estratégia de exemplo, assim como
muitas outras estratégias podem ser implementadas utilizando os mesmos princípios.
Espero com isso estar contribuindo com a educação e o desenvolvimento das
pessoas interessadas em conhecer essa maneira de operar. Para que possam fazer
testes com este EA, e talvez otimizá-lo e simular sua operação em outros papéis,
deixo aqui um link para o site de Marcos Rafael para baixá-lo juntamente com o setup
para o mini-índice que foi usado no backtest, lembrando mais uma vez que não
recomendo e não posso me responsabilizar por operações em conta real.

http://codetrading.com.br/robo-xequ...

Você também pode gostar