Escolar Documentos
Profissional Documentos
Cultura Documentos
adriano.ferreira@ifsp.edu.br
Abstract. The Signal System for Day Trade Operations (Sisodt) was developed
with the objective of seeking opportunities to buy or sell the mini index based
on indicators such as financial volume, number of trades and support and re-
sistance disruptions, and managing the investment capital through Martingale
method, consistently targeting short-term profits. The functionalities of this soft-
ware were developed independently and being coupled to each other after the
end of each development cycle, ending the development process with the desig-
ning of the user interface. Through the heuristic evaluation, it was possible to
find and correct problems on user interface, improving its usability and reaching
the final version of Sisodt.
Resumo. O Sistema de Sinais para Operações Day Trade (Sisodt) foi desen-
volvido com o objetivo de buscar oportunidades de compra ou venda do mini-
ı́ndice baseadas em indicadores como volume financeiro, número de negócios e
rompimentos de suportes e resistências, gerenciando o capital de investimento
através do método Martingale, visando de forma consistente os lucros de curto
prazo. As funcionalidades deste software foram sendo desenvolvidas de forma
independente e sendo acoplada uma a outra após o término de cada ciclo de
desenvolvimento, terminando o desenvolvimento com o design da interface de
usuário. Aplicando a avaliação heurı́stica foi possı́vel encontrar e corrigir pro-
blemas na interface, melhorando sua usabilidade e chegando à versão final do
Sisodt.
1. Introdução
O mercado de ações possui um comportamento imprevisı́vel. Segundo a Nelógica (c2019)
essa imprevisibilidade pode estar ligada a diversos fatores como momento da economia
(PIB, Inflação, Taxa de juros), acontecimentos ao redor do mundo como o COVID-19
(Lora Jones, David Brown e Daniele Palumbo, 2020), manipulação de mercado (Bona,
2019) e mais outras causas (Live Capital, 2018). Os investidores/especuladores geral-
mente costumam se apoiar em duas técnicas de análise para identificar uma boa oportu-
nidade de compra ou venda de ações: Análise Fundamentalista e Análise Técnica (Bona,
2018).
Embora hajam diversas ferramentas para utilizar em sua análise (Bona, 2018),
o mercado financeiro provavelmente jamais estará livre de riscos. Falsos sinais sempre
irão ocorrer, fazendo com que uma operação resulte em um lucro menor que o esperado
ou até em prejuı́zo. Tais sinais são gerados porque o movimento do mercado acontece
de forma imprevisı́vel, sendo impossı́vel adivinhar com exatidão o próximo movimento.
Além das técnicas de análises citadas acima, existem diversas formas do investidor ou es-
peculador gerir o capital. Os mais conservadores buscam diversificar seus investimentos
olhando para o longo prazo, dividindo parte do seu capital em empresas diferentes ou até
segmentos diferentes enquanto um investidor mais arrojado pode alocar o seu capital em
uma única operação ou até fracionar o seu capital em várias partes afim de usar métodos
como o Preço Médio ou Martingale (Kamal, 2016). Esse perfil de investidor busca efe-
tuar operações de curto prazo no mercado tentando aproveitar a oscilação de mercado e
algumas de suas operações são iniciadas e finalizadas no mesmo dia caracterizando assim
uma operação Day Trade (Sasaki, s.d.). Atualmente os sistemas de mercado possuem no
geral as mesmas caracterı́sticas que são as indicações de compra ou venda baseadas em
vários indicadores mas não considerando a forma de gestão desse capital.
O objetivo deste trabalho é desenvolver um sistema focado em operações do tipo
Day Trade buscando encontrar as oportunidades de compra ou venda baseadas no vo-
lume financeiro, número de negócios e rompimentos de suportes e resistências, gerindo o
capital de investimento através do método Martingale.
Este texto está dividido nas seguintes seções: na Seção 2 apresentamos concei-
tos básicos assim como a estrutura técnica do projeto, Projeto Centrado no Usuário e a
Avaliação Heurı́stica. Na Seção 3 encontramos a metodologia empregada para desen-
volvimento. Na Seção 4 temos os detalhes de desenvolvimento do projeto. Na Seção 5
falamos sobre as considerações finais e trabalhos futuros.
2. Fundamentação Teórica
2.1. Análise Fundamentalista e Análise Técnica
A Análise Fundamentalista busca, através de fundamentos como preço por ação / lucro
por ação, dividendo por ação, ı́ndice de liquidez, endividamento e outros, a razão para
comprar ou vender uma ação conseguindo determinar através deles se o preço da ação ou
está caro ou barato em relação ao preço atual que é oferecido no mercado (Lima u. a.,
2009).
A Análise Técnica (AT) de acordo com Bona (2018): ”é o estudo dos movimentos
de preço no mercado financeiro com objetivo de encontrar pontos de compra e venda. Sua
principal base é a análise gráfica.”
2.3. Trader
Segundo Sasaki (s.d.):
O trader executa operações de compra e/ou venda na bolsa de valores com a fi-
nalidade de lucrar na movimentação dos preços. Essas operações podem ser compradas
(executa a compra acreditando na valorização do preço para vender em seguida) ou ven-
didas (executa a venda acreditando na desvalorização do preço para comprar mais barato
em seguida). O trader se protege através de stops sendo que o stop gain protege o seu
lucro caso esteja em uma operação vencedora e o stop loss encerra suas perdas em caso
de uma operação perdedora (Clear, s.d.).
2.4. Martingale
É um sistema de gestão de capital (ou banca para apostadores) que funciona da seguinte
forma (Kamal, 2016): ao realizar uma aposta, temos dois resultados esperados que é
ganhar ou perder. Se perder, é necessário fazer uma nova aposta com o dobro do valor
anterior para cobrir os prejuı́zos e resultar em um lucro no final. Caso haja um novo
prejuı́zo, a próxima aposta também deve ser dobrada para cobrir prejuı́zos e obter lucro.
Assim que o apostador obter o primeiro ganho, ele deve zerar a sua progressão e retornar
para o valor da primeira aposta. Na Figura 3 ilustra-se melhor o cenário de martingale no
mundo das apostas.
Figura 3. Ilustração de tabela martingale para apostas.
Benyon (2011) aborda também o quanto esse processo pode ser custoso em ter-
mos tempo e dinheiro. Mesmo considerando esses fatores, o resultado final impacta nas
duas vertentes. Prestar atenção às necessidades das pessoas e a usabilidade do produto
resulta em menos ligações para as linhas de atendimento ao cliente, menos material de
treinamento, mais rendimento, mais vendas e assim por diante (Benyon, 2011, p. 6).
3. Metodologia
As etapas realizadas para o desenvolvimento do Sisodt foram:
1 - Pesquisa dos trabalhos correlatos e integração de plataformas
2 - Estudo sobre indicadores do mercado
3 - Especificação das funcionalidades e elaboração do diagrama de casos de uso
4 - Desenvolvimento do back-end
Figura 6. Profit Pro. Fonte: Retirada do site https://www.nelogica.com.br/
produtos/profit-pro
4. Desenvolvimento
Nesta Seção iremos descrever como foram realizadas atividades descritas na metodolo-
gia. A atividade 1 não será detalhada pois os trabalhos correlatos foram apresentados na
Subseção 2.8.
Após a criação dos métodos e simulações desses modelos, eles acabaram não
sendo usados ou por razão de baixo retorno ou por razão de alto risco, deixando como
único método utilizado o Martingale (tradicional). Após o desenvolvimento desse módulo
foi necessário testar a integração Sisodt com Tryd e nesse momento foi descoberto que
as ordens não eram enviadas caso o Sisodt não fosse interrompido por um tempo. A
solução foi a implementação da regra de 1 segundo, que foi implementada no primeiro
módulo desenvolvido (Coleta de dados). Antes dessa implementação, o Sisodt coletava
as cotações do Tryd aproximadamente 18 vezes por segundo e após essa implementação
de pausa, sua coleta passou a ser 1 vez por segundo para atender esse requisito e permitir
o envio de ordem.
Durante esse teste percebi que o usuário era obrigado a usar todas as regras de
negócio no dia, o que é incorreto. Para solucionar tal problema foi criado um toggle para
cada regra de negócio e para cada regra de envio de ordem, dando ao usuário flexibilidade
na utilização do Sisodt.
4.4. Integração do sistema com o Tryd
Inicialmente, o Sisodt foi pensado para apenas fornecer os sinais de compra e venda,
sem a possibilidade de enviar ordens automaticamente. Ao realizar uma pesquisa das
plataformas disponı́veis no mercado, me deparei com o Tryd que tinha uma seção cha-
mada ’Automatizador’ em sua apresentação. Ao me aprofundar no tema, vi que seria
possı́vel realizar essa automação pois o Tryd entrega em sua plataforma essa integração
já pré-configurada. O principal requisito é mapear uma planilha do Excel para interagir
com o Tryd através da tecnologia DDE. Para realizar essa integração foi necessário criar
um arquivo de Excel com uma planilha que deveria ter a ordem das colunas que foram
estipuladas pelo Tryd. A ordem da colunas solicitadas está descrita no Apêndice II.
Ao finalizar essa configuração, foi necessário inserir no Tryd o nome e cami-
nho desse arquivo e o nome da planilha que foi mapeado as colunas solicitadas. Assim,
quando ocorre uma oportunidade de negócio de compra ou venda, o Sisodt lança nesta
planilha as informações solicitadas e troca o conteúdo do campo de Condição de Compra
ou Condição de Venda de Falso para Verdadeiro e um segundo depois, atribui novamente
ao campo o valor de Falso, fazendo com que a ordem seja liberada no Tryd, que por sua
vez, a lança no mercado.
Figura 10. Tela Principal em seu estado inicial elaborada para a aplicação Sisodt
Figura 11. Tela Histórico de operações em seu estado inicial elaborada para a
aplicação Sisodt.
A organização dessa tela foi pensada para responder as seguintes perguntas: Apre-
sentar o financeiro referente às operações indicadas; Qual técnica foi usada para ter aquele
plano de trade? Qual foi o tamanho do risco utilizado? Quando que eu aceitei o risco e
entrei na operação? Quando sair da operação? Como ele ganhou aquela operação? Foi
comprado ou foi vendido? Qual foi o saldo final de pontos da operação? Quantos reais
esses pontos equivalem? Quando tudo isso aconteceu? Assim, a ação que o usuário terá
nesta tela será: Botão voltar - Direciona o usuário para a tela principal.
Tela de Configurações (Figura 12) permite ao usuário configurar parâmetros di-
ferentes no seu perfil de investidor, sendo ele do arrojado até o moderado. As ações
disponı́veis nesta tela são:
Figura 12. Tela Configurações em seu estado inicial elaborada para a aplicação
Sisodt.
5. Considerações Finais
O objetivo deste trabalho foi desenvolver um sistema focado em operações do tipo Day
Trade gerindo o capital de investimento através do método Martingale, visando os lucros
de curto prazo de forma consistente. O motivo para sua implementação foi para propor-
cionar aos usuários liberdade por não precisar estar presente durante as negociações e a
isenção da tomada de decisão para comprar ou vender o mini-ı́ndice.
O Sisodt foi desenvolvido e integrado à aplicação Tryd através da conexão DDE,
para viabilizar o envio automático de ordens via Sisodt tendo enfoque na usabilidade. Para
isso, foram desenvolvidas personas, diagrama de fluxo de janelas, o design da interface de
usuário e realizada uma avaliação heurı́stica que apontou problemas de usabilidade que
foram corrigidas, gerando uma nova versão da interface com melhor usabilidade.
Pelo curto espaço de tempo para desenvolvimento do Sisodt, foram priorizadas
algumas funcionalidades e configurações, permitindo que o usuário conseguisse negociar
com êxito apenas o mini-ı́ndice. Atualmente a Bolsa de Valores (B3) é composta por
centenas de empresas e todas poderiam ser negociadas através do Sisodt, porém seria ne-
cessário um grande tempo para implementação de novas regras de negócio assim como
suas devidas calibrações para tornar o trade vencedor. A forma de enviar ordens no mer-
cado (via integração com Tryd) se mostrou, em algumas vezes, ineficiente para a proposta
do Sisodt, pois nas operações Day Trade, um décimo de segundo pode fazer a diferença e
o disparo via Tryd acabava consumindo 1 segundo para sua realização. Acredito que hoje
a melhor plataforma para o Sisodt ser desenvolvido seria mobile (Android e iOS), assim
daria mais flexibilidade em sua utilização.
As disciplinas empregadas para desenvolvimento do Sisodt foram: Linguagem de
programação I e II, inglês técnico, Matemática, Interação Humano-Computador, Metodo-
logia de Pesquisa Cientı́fica e Tecnológica, Gestão de Projetos, Projeto de Sistemas I e II,
entre outras.
Como trabalhos futuros, acredito ser necessária a implementação de mais opções
de negociações no Sisodt, não se limitando apenas ao mini-ı́ndice. Uma lista interessante
para ser negociada além do Mini-ı́ndice seria Dólar, Petrobrás, Vale, Itaú, Bradesco, Am-
bev e Magazine Luiza. Além disso, implementar uma interface para visualizar o gráfico
do ativo que desejar, criar um banco de dados para armazenar o histórico dos dias ante-
riores e a configuração de indicadores de compra e venda que estão presentes nos outros
aplicativos deste segmento, que são: Estocástico, MACD, Bandas de Bollinger e IFR.
Referências
[Ambler c2003] A MBLER, Scott W.: User Interface Flow Diagrams (UI Storyboards):
An Agile Introduction. <http://www.agilemodeling.com/artifacts/
uiFlowDiagram.htm>. c2003. – Acessado em: 15 de novembro de 2020
[Benyon 2011] B ENYON, David: Interação Humano-Computador. Pearson Prentice
Hall, 2011
[Bona 2019] B ONA, Andre: Manipulação de mercado:
o que é spoofing? <https://andrebona.com.br/
manipulacao-de-mercado-o-que-e-spoofing/>. 16 de jul. de 2019. –
Acessado em: 25 de junho de 2020
[Bona 2018] B ONA, André: Investimentos em ações:
análise fundamentalista x análise técnica. <https://www.
btgpactualdigital.com/blog/coluna-andre-bona/
investimentos-em-acoes-analise-fundamentalista-x-
analise-tecnica>. 15 de ago. de 2018. – Acessado em: 05 de março de
2020
[Clear s.d.] C LEAR: Glossário Clear. <https://www.clear.com.br/site/
glossario>. s.d.. – Acessado em: 21 de junho de 2020
[Galvão s.d.] G ALV ÃO, Tulio: Indicadores Técnicos: Rastreadores
e Osciladores. <https://portaldotrader.com.br/aprenda/
analise-tecnica-curso-gratuito/proximos-passos/
indicadores-tecnicos-rastreadores-e-osciladores>. s.d.. –
Acessado em: 07 de outubro de 2020
[Guimarães 2017] G UIMAR ÃES, Felipe M.: O que é Design Cen-
trado no Usuário? <https://medium.com/aela/o-que-%C3%
A9-design-centrado-no-usu%C3%A1rio-11a9c13c3a2f>. 29 de
nov. de 2017. – Acessado em: 10 de março de 2020
[Jones u. a. 2020] J ONES, Lora ; B ROWN, David ; PALUMBO, Daniele: Coro-
navı́rus: Oito gráficos que mostram o impacto da covid-19 sobre a economia mundial.
<https://www.bbc.com/portuguese/internacional-51766452>. 7
de mar. de 2020. – Acessado em: 25 de junho de 2020
[Kamal 2016] K AMAL: O que é um martingale? <https://www.mql5.com/
pt/articles/1446>. 18 de fev. de 2016. – Acessado em: 10 de março de 2020
[Lima u. a. 2009] L IMA, Vinı́cius Simmer D. ; I LHA, Hudson F. ; S CALZER,
Rodrigo S. ; G ALDI, Fernando C.: ANáLISE FUNDAMENTALISTA SOB A
PERSPECTIVA DO ANALISTA DE MERCADO: UM ESTUDO DE CASO NA AES
TIETê COMPARANDO OS MODELOS DE FLUXO DE CAIXA DESCONTADO E
AEG OHLSON (1995). <https://congressousp.fipecafi.org/anais/
artigos92009/478.pdf>. 2009. – Acessado em: 05 de março de 2020
[Livecapital 2018] L IVECAPITAL: Que fatores influenciam o
preço das ações? <https://blog.livecapital.com.br/
que-fatores-influenciam-o-preco-das-acoes/>. 10 de ago. de
2018. – Acessado em: 25 de junho de 2020
[Medeiros 2019] M EDEIROS, Regiane: Mini ı́ndice bovespa: O que é e
como funciona este minicontrato. <https://www.euqueroinvestir.com/
mini-indice-bovespa/>. 27 de out. de 2019. – Acessado em: 10 de março
de 2020
[MetaQuotes s.d.] M ETAQ UOTES: Plataforma de negociação MetaTrader 5.
<https://www.metatrader5.com/pt/trading-platform>. s.d.. –
Acessado em: 05 de abril de 2020
[Microsoft 2019] M ICROSOFT: Introdução ao VBA no Office. <https:
//docs.microsoft.com/pt-br/office/vba/library-reference/
concepts/getting-started-with-vba-in-office>. 14 de ago. de
2019. – Acessado em: 07 de outubro de 2020
[Nelogica c2019] N ELOGICA: Qual a importância do entendimento do cenário macro-
econômico no operacional do trader? <https://blog.nelogica.com.br/
qual-a-importancia-do-entendimento-do-cenario-macroecono
mico-no-operacional-do-trader/>. c2019. – Acessado em: 25 de junho
de 2020
[Nelogica c2021] N ELOGICA: Profit Pro A ferramenta do trader de alta performance.
c2021. – Acessado em: 05 de abril de 2020
[Nielsen 1989] N IELSEN, Jakob: Usability engineering at a discount. Elsevier Science
Publishers, 1989
[Nielsen 1992] N IELSEN, Jakob: Finding usability problems through heuristic evalua-
tion. Proceedings ACM CHI’92 Conference, 1992
[Nielsen 1993] N IELSEN, Jakob: Usability Engineering. Academic Press, 1993
[Nielsen 1994] N IELSEN, Jakob: Heuristic Evaluatin. Usability inspection methods,
1994
[PREECE u. a. 2013] PREECE, J. ; ROGERS, Y. ; SHARP, H: Design da Interação:
além da interação humano-computador. Bookman, 2013
[Reis 2018] R EIS, Tiago: Estocástico: uma importante ferramenta para a análise
técnica de ações. <https://www.sunoresearch.com.br/artigos/
estocastico/>. 12 de nov. de 2018. – Acessado em: 14 de novembro de 2020
[Sasaki s.d.] S ASAKI, Caio: O que é e o que fazem os traders? <https:
//portaldoinvestimento.com.br/artigos/papo-de-trader/
o-que-e-e-o-que-fazem-os-traders>. s.d.. – Acessado em: 10 de março
de 2020
[Siqueira 2020] S IQUEIRA, André: Persona: como e por que criar uma
para sua empresa. <https://resultadosdigitais.com.br/blog/
persona-o-que-e/>. 29 de abr. de 2020. – Acessado em: 03 de março de 2020
[Sommerville 2018] S OMMERVILLE, Ian: Engenharia de Software 10. Pearson Edu-
cation do Brasil, 2018
[Tryd c2021] T RYD: Tryd. <https://www.tryd.com.br/tryd.html>.
c2021. – Acessado em: 05 de abril de 2020
[Tryd s.d.] T RYD: DDE e RTD. <https://www.tryd.com.br/manual/
HTML/dde_rtd.htm?toc=0>. s.d.. – Acessado em: 05 de março de 2020
[Vieira 2018] V IEIRA, Dalton: Volume – Monitore o ras-
tro dos grandes investidores. <http://daltonvieira.com/
volume-monitore-o-rastro-dos-grandes-investidores>. 09
de jan. de 2018. – Acessado em: 14 de novembro de 2020
[Wikipedia 2021] W IKIPEDIA: Visual Basic for Applications. <https://en.
wikipedia.org/wiki/Visual_Basic_for_Applications>. 08 de jan.
de 2021. – Acessado em: 07 de outubro de 2020
6. Apêndice I - Regras de negócio do Sisodt
6.1. Volume de Negócios
O nome foi escolhido pois ela parte de princı́pio que quando o volume de negócios se
comporta acima de média, um provável movimento de preço está por vir. A média es-
colhida para ser analisada nessa regra foi a de 5 perı́odos, ou seja, ela extrai a média de
negócios fechados nos últimos 5 segundos. Assim que isso acontece, o Sisodt coleta qual
foi a cotação do momento em que houve o rompimento do volume médio, acrescenta 60
pontos para cima (para iniciar uma operação de compra) e 60 pontos para baixo (para ini-
ciar um operação de venda). Cheguei ao valor de 60 pontos estudando o comportamento
passado do mini-ı́ndice. Em outras palavras, se no momento de rompimento do volume
a cotação for de 95.000 pontos, o Sisdot aguarda os pontos ultrapassarem 95.060 para
iniciar uma operação de compra e no caso da operação de venda, ele aguarda a cotação
ser inferior a 94.940. Um ponto importante a se lembrar é que cada movimento do mini-
ı́ndice equivale a 5 pontos. Dessa forma, o primeiro preço depois dos 95.060 será o 95.065
e assim sucessivamente. Para essa regra de negócio, o ganho estabelecido é de 250 pontos
referente a cotação que excedeu o volume médio. Para o exemplo citado acima em que
a cotação de rompimento foi 95.000, o objetivo de pontos para encerrar a operação de
compra seria 95.250. No caso da venda, o objetivo seria 94.750. Considerando que a
entrada da operação são de 60 pontos para cima ou para baixo, desconta-se esse valor no
final para obter qual o ganho real de pontos da operação que seria 250 - 60, resultado em
190 pontos que precisa subtrair os 5 pontos da entrada, chegando ao final de 185 pontos
de lucro. Caso a cotação vá para direção contrária da sua operação, a saı́da fica sempre no
objetivo de entrada da operação inversa. Em outras palavras, se sua operação é de compra
e você tem um prejuı́zo, sua cotação de saı́da é a cotação de entrada para operação de
venda. Logo no exemplo acima, o prejuı́zo seria de 130 pontos, pois a compra aconteceu
aos 95.065 e a venda aos 94.935 que nos leva aos 130 pontos. Na Tabela 2 é apresen-
tado um exemplo considerando essa regra de negócio caso o rompimento acontecesse aos
95.000 pontos.
A grande diferença deste modelo é que ele seleciona um intervalo de perı́odo (os
primeiros dez segundos de pregão) para extrair o ponto de compra e venda. Por essa
diferença, foi necessário criar um novo método para validar o tamanho dessa oscilação de
abertura, pois dependendo do tamanho desse movimento, o trade se torna inviável (stop
loss muito alto). Não compensaria tentar extrair 200 pontos de lucro caso sua variação
para stop loss ser de 400 pontos, por exemplo. Nos estudos realizados o tamanho máximo
de oscilação aceitável para negociar é de 110 pontos. Caso a diferença entre a cotação
máxima e a cotação mı́nima seja superior a 110 pontos, o método de validação não irá
permitir a negociação naquele dia. Os parâmetros de horário de negociação para o Rom-
pimento abertura também são diferentes. Ele pode acontecer entre 09:00:00 e 16:30:00,
porém apenas uma única vez no dia. Ao conseguir uma operação lucrativa ou atingir a
perda máxima da 5º entrada, ele interrompe as negociações para o restante do dia.
Este documento foi armazenado no SUAP em 13/01/2021. Para comprovar sua integridade, faça a leitura do QRCode ao lado ou acesse
https://suap.ifsp.edu.br/verificar-documento-externo/ e forneça os dados abaixo:
Página 1 de 1