• Nenhum resultado encontrado

3.5 Sistemas de negocia¸c˜ ao autom´ atica

3.5.1 Testes em Trading Systems

A forma mais conhecida de testes em Trading System ´e o backtesting, que consiste em, dada uma estrat´egia, test´a-la para um determinado per´ıodo de dados hist´oricos da s´erie a ser operada. Normalmente, ´e realizada uma otimiza¸c˜ao dos parˆametros da estrat´egia considerando um per´ıodo anterior ao desejado, de forma a melhor se ajustar `a s´erie temporal alvo.

O problema desta estrat´egia ´e que o mercado est´a em constante mudan¸ca, ou seja, seus padr˜oes e correla¸c˜oes variam a cada instante. Surge a necessidade de um m´etodo mais robusto para avaliar a real performance de uma estrat´egia criada. Para tal, ´e frequentemente recomendado o walk-forward testing, que, de maneira sucinta, divide o per´ıodo analisado em sub-intervalos e realiza a otimiza¸c˜ao de dados conhecidos para aplica¸c˜ao em valores desconhecidos (ou out-of-sample).

Logo, o esquema de janelamento utilizado no m´etodo proposto, ´e uma forma especializada de se realizar o walk-forward testing. ´E importante notar que o sistema de predi¸c˜ao e o Trading System funcionam de maneira independente. Uma vez que as RNAs tenham conclu´ıdo a tarefa de previs˜ao, o Trading System ´e capaz de avaliar sua qualidade, realizando (ou n˜ao) opera¸c˜oes no mercado. A simula¸c˜ao segue regras preestabelecidas e leva em conta as reais limita¸c˜oes do mercado de a¸c˜oes, tais como taxas de corretagem, imposto de renda e slippage.

A estrutura utilizada no Trading System implementada neste trabalho foi de- senhada para atender especificamente as necessidades de obten¸c˜ao dos valores de predi¸c˜ao para aplica¸c˜ao de suas regras e sugere a considera¸c˜ao dos diversos fato- res de custos e restri¸c˜oes impostos pelo mercado real. Portanto, as informa¸c˜oes

4Opera¸oes de hedge (ou de prote¸c˜ao) tˆem por finalidade proteger o valor de um ativo contra

uma poss´ıvel redu¸c˜ao de seu valor numa data futura ou, ainda, assegurar o pre¸co de uma d´ıvida a ser paga no futuro [3].

detalhadas sobre os processos e as regras estar˜ao esclarecidas no cap´ıtulo 4, mais especificamente na se¸c˜ao 4.7 deste trabalho, de forma a serem inseridas no contexto da metodologia de aplica¸c˜ao.

Cap´ıtulo 4

Metodologia

4.1

M´etodo criado

Com base nas teorias demonstradas e nos objetivos principais desta disserta¸c˜ao, foi desenvolvido um m´etodo para abordar o problema de predi¸c˜ao de algumas das principais s´eries do ´ındice Ibovespa, que neste trabalho s˜ao as consideradas s´eries alvo: pre¸cos de fechamento (close), m´aximo (high), m´ınimo (low ) e a ordem em que high e low ocorrem, aqui simplesmente denominada order.

Tenta-se realizar as predi¸c˜oes por meio das ”s´eries auxiliares”, ou seja, o con- junto de s´eries que se acredita que tenham alguma rela¸c˜ao com as s´eries alvo. S˜ao consideradas s´eries obtidas a partir do pr´oprio ´ındice Ibovespa, al´em de outras im- portantes s´eries da BM&FBovespa, s´eries dos principais ´ındices de bolsas mundiais e outros indicadores financeiros.

O MATLAB foi o ambiente de desenvolvimento escolhido para implementar a solu¸c˜ao proposta. Ele apresenta fun¸c˜oes desenvolvidas especialmente para certas tarefas de processamento de s´eries, opera¸c˜oes sobre matrizes e gera¸c˜ao facilitada de gr´aficos, al´em de possuir uma inteface funcional. Isso otimiza o tempo de im- plementa¸c˜ao e, em certos pontos dos m´odulos, h´a um ganho de performance sobre outras linguagens.

Para atacar o problema por uma abordagem que fosse eficiente e que se dife- renciasse de outros trabalhos na ´area, foi definida como premissa que as principais restri¸c˜oes do mercado deveriam ser levadas em conta para a maior fidelidade do trabalho.

A primeira preocupa¸c˜ao surge quanto ao processamento das s´eries consideradas aqui, de forma que n˜ao fossem considerados valores desconhecidos at´e o momento da an´alise. A partir de tal preocupa¸c˜ao, aliada a um embasamento te´orico sobre as vantagens de ambiente de simula¸c˜ao walk-forward testing, decidiu-se fazer uso da tradicional e ´util t´ecnica de janelas deslizantes. A utiliza¸c˜ao destas garante a correta

sele¸c˜ao de dados dispon´ıveis at´e o momento para investiga¸c˜ao, definindo assim, uma barreira clara entre dados in-sample e out-of-sample.

Sendo o janelamento o ”esqueleto”do sistema, foram definidos dois m´odulos atu- antes sobre os dados de cada uma das janelas: pr´e-processamento e aplica¸c˜ao de RNAs. No entorno do processamento em cada janela, aplica-se, ao fim do processo de predi¸c˜ao, um terceiro m´odulo, o Trading System, de forma a simular, no mercado real, o poder de predi¸c˜ao sobre os dados, al´em de exibir a lucratividade do m´etodo. Uma representa¸c˜ao gr´afica explicativa sobre todo o processo pode ser conferida na figura 4.1, a seguir.

Figura 4.1: Esquema dos processos do sistema desenvolvido

Conforme discutido no cap´ıtulo 2, ´e parte essencial, em sistemas de previs˜ao de s´eries temporais, a aplica¸c˜ao de pr´e-processamento das s´eries, para melhor repre- sentar os dados como entradas das RNAs. Sendo as sa´ıdas deste m´odulo as s´eries residuais selecionadas, juntamente com seus atrasos significativos, tais s´eries s˜ao consideradas entradas do segundo m´odulo, que, efetivamente, executa as RNAs e retorna as sa´ıdas estimadas para cada s´erie alvo.

Ao t´ermino do processamento de todas as janelas, temos todos os valores es- timados das s´eries para o per´ıodo completo de testes. Neste momento, entra em a¸c˜ao o m´odulo de Trading System. Nele ´e realizado um backtesting de diferentes es- trat´egias, utilizando como base os pontos estimados pelas RNAs e alguns parˆametros previamente definidos.