Para muitas pessoas, utilizar linguagem de programação está restrito aos profissionais de tecnologia da informação. Porém, nos últimos anos diversas outras áreas e profissionais começaram a utilizar a linguagem de programação como diferencial, para alguns é algo essencial, no mercado financeiro não é diferente.
A utilização da linguagem de programação e de ferramentas com o objetivo de ajudar na tomada de decisão e aumentar a produtividade aparece atualmente como algo essencial neste mercado tão competitivo.
Utilização da linguagem de programação no mercado financeiro ao longo do tempo
Na década de 60 os analistas começaram a utilizar estatísticas para analisar a bolsa de valores.
No final da década de 80 começou a popularização do uso de programas operacionais com o objetivo de ajudar nas análises.
Já nos últimos anos, o uso de tecnologias nas operações do mercado financeiro aumentou muito, entre elas destacam-se a Inteligência Artificial – IA, utilizada com algoritmos que auxiliam significativamente investidores de todos os níveis de conhecimento na criação de estratégias de investimentos.
Acima de tudo, para que serve a linguagem de programação no mercado financeiro?
Steve Jobs já dizia que todas as pessoas deveriam aprender a programar computadores. Segundo ele, saber uma linguagem de programação te ensina a pensar e aumenta sua capacidade lógica.
Em outras palavras, analisando a atuação do profissional do mercado financeiro que passa o dia lidando com uma diversidade grande de dados, apesar de não ser obrigatório manipular estes dados, saber programar ajudará na extração das informações mais assertivas e na modelagem destes dados para a tomada de decisão.
Um exemplo de utilização da linguagem de programação no mercado financeiro é quando o profissional programa uma estratégia de compra e venda de um ativo com lógica de programação.
Com a programação é possível fazer análises de bancos de dados.
Certamente a utilidade mais importante é unir a lógica de programação com a inteligência artificial para criar as estratégias de investimento, aumentando assim as chances de realizar análises mais assertivas.
Segundo especialistas, quando se utiliza a linguagem de programação, o fator “emocional” do profissional é retirado da tomada de decisão.
No mercado financeiro são utilizadas várias linguagens de programação.
Quais são as melhores e mais utilizadas linguagens de programação para finanças?
As principais linguagens de programação do mercado financeiro são:
- Python: provavelmente a mais utilizada e voltada para Ciência de Dados, Inteligência Artificial e Machine Learning;
- SQL (standard query language): utilizada principalmente com foco em banco de dados;
- R: é usada bastante nas análises estatísticas;
- VBA (visual basic of for applications): utilizada como ferramenta da Microsoft Office disponível no Excel;
- Java: totalmente orientada a objetos e com possibilidade de escrever o código em uma plataforma para executar em outra;
- C++: é uma das mais antigas disponíveis, porém, com alta performance.
Python
Esta linguagem foi criada por Guido Van Rossum, um matemático holandês, em 1989, com objetivo de criar um código para facilitar e simplificar a vida das pessoas.
Neste sentido, a linguagem Python é orientada a objetos e utiliza bibliotecas virtuais que são códigos de programação armazenados (funções pré-programadas), abertos em uma comunidade, como grande diferencial para quem utiliza e um modo de otimizar o tempo das pessoas.
Com estas bibliotecas prontas, ao invés da pessoa criar o código completo, ela pode utilizar o código pronto, promovendo uma utilização muito mais rápida e simples para a linguagem.
Como existem muitas vantagens e facilidades para esta linguagem, a linguagem Python tornou-se em pouco tempo uma das mais utilizadas no mundo, por profissionais das mais variadas áreas, de engenheiros até as pessoas que atuam no mercado financeiro.
Python é também muito utilizada por profissionais que trabalham com modelagem matemática e estatística.
Como consequência, na comunidade da linguagem Python, as pessoas podem utilizar e criar bibliotecas, assim, cada vez mais aparecem informações sobre códigos que podem ser utilizados no mercado financeiro, uma das áreas de um grande banco de dados que cresce diariamente.
Com este grande banco de dados da comunidade, as pessoas podem utilizar as bibliotecas e unir aos códigos de suas programações, ajudando nas análises e minimizando as chances de erro.
Python no mercado financeiro
A linguagem Python também possibilita a criação de estratégias de investimento, porém, para isso é preciso combinar a inteligência artificial – IA com a programação e o uso de algoritmos. Assim, precisamos programar colando alguns fatores que tragam lucro para uma ação da bolsa, por exemplo.
Além disso, podemos utilizar os códigos em Python para criar gráficos, uma das melhores maneiras para analisar uma ação, de forma mais efetiva, estudando sua volatilidade, por exemplo.
Python é considerada uma linguagem de programação relativamente fácil de aprender, porém, ao mesmo tempo robusta.
Além disso, é uma linguagem de alto nível, com vantagens que atraíram a atenção de muitas pessoas inclusive de fora do mundo da computação.
Muito utilizada no mercado financeiro para: plataformas de trading, gerenciamento de risco, precificação, entre outras aplicações.
Entretanto, um dos pontos negativos desta linguagem é a performance, se comparada com algumas outras, é inferior. Assim, se a aplicação precisa de alta performance, ou é sensível à latência, talvez Python não será a melhor opção.
SQL (standard query language)
Considerada uma linguagem relativamente simples, o SQL tem seu foco principal em banco de dados e surgiu no início dos anos 70, como fruto de um projeto da IBM. Em meados da década de 80 foi publicada a primeira versão padronizada da linguagem SQL.
Criado para as pessoas analisarem ou utilizarem banco de dados de uma maneira mais fácil.
Atualmente muito utilizada pelos especialistas do mercado financeiro, pois trabalham com grandes bancos de dados e utilizam diversos programas para realizarem as análises.
Para que os programas de análise funcionem, os especialistas consideram alguns fatores como, por exemplo: o histórico dos valores do ativo, o que pode fazer o valor do ativo variar, entre outros.
R (nome que remete às iniciais dos criadores)
A linguagem R foi desenvolvida por Ross Ihaka e Robert Gentleman, dois pesquisadores do departamento de estatística da Universidade de Auckland, na Nova Zelândia, em 1993.
R é uma linguagem versátil que surgiu a partir da necessidade da existência de um programa que ajudasse na visualização, análise e manipulação de dados.
Assim como as linguagens anteriores, possui alta aplicabilidade em banco de dados e é considerada de fácil aprendizado, o que favoreceu a utilização no mercado financeiro.
Da mesma forma como Python, a linguagem R utiliza código aberto e bibliotecas, ajudando muito na criação de programas para análises e utilização dos dados.
A linguagem R possui uma série de pacotes para fins estatísticos, servindo para o desenvolvimento de algoritmos de séries temporais, aprendizado de máquina, análise de sobrevivência etc.
Assim como Python, a linguagem R possui uma comunidade muito forte e engajada, o que torna a linguagem cada vez mais completa e repleta de bibliotecas.
Muitos profissionais do mercado financeiro utilizam esta linguagem para tentar entender e prever o funcionamento do mercado. Com ela é possível também entender as reações e os fatores dos produtos financeiros.
Sendo assim, aqueles que desejam se tornar cada vez mais especializados no mercado financeiro, não podem se esquecer da linguagem R. Esta linguagem pode ser utilizada tanto no sistema Windows quanto no MacS e é capaz de ajudar muito na criação de gráficos estatísticos.
Entretanto, entre os pontos negativos, destaca-se o fato de ser uma linguagem muito específica, diversas vezes considerada lenta e com performance inferior às outras.
Apesar de possuir inúmeras ferramentas de análise e ciência de dados, é limitada a esse escopo com ênfase em análise estatística, sendo assim, de difícil integração em projetos de software, por exemplo.
VBA (visual basic of for applications)
A linguagem VBA nasceu em 1987 com Alan Cooper que trabalhava com aplicações de software e anos depois a Microsoft apresentou o Visual Basic para o público.
Esta linguagem é considerada antiga e limitada, entretanto, funciona muito bem no mercado financeiro.
É uma ferramenta da Microsoft Office e disponível no Excel, sendo este o grande diferencial, pois permite a construção de relatórios automatizados na ferramenta de planilhas eletrônicas mais utilizada no mundo.
Para muitos profissionais que não são programadores, a familiaridade com o Excel facilita muito a utilização.
Entretanto, como esta linguagem não possui um grande banco de dados, impossibilita a realização de análises muito sofisticadas.
Desta forma, para análises de grandes quantidades de dados, se faz necessário usar linguagens de programação mais adequadas.
Java
Esta linguagem começou a ser criada em 1991, na empresa Sun Microsystems, durante o Green Project pelos mentores: Patrick Naughton, Mike Sheridan e James Gosling.
A linguagem Java é orientada a objetos e muito requerida em bancos de investimento. É considerada uma linguagem segura e que tende a gerar soluções mais robustas em relação aos padrões determinados.
Uma das grandes vantagens da linguagem Java é possibilitar a criação do código em uma determinada plataforma e executar em qualquer outra.
Além disso, Java tem a tendência de ser uma linguagem mais robusta e com uma curva de aprendizado maior. Como consequência, é uma linguagem normalmente utilizada por profissionais que já possuem mais experiência em programação.
É uma linguagem de melhor performance e com suporte embutido a multithread/concorrência, assim, nos casos que o principal requisito é a performance, Java muitas vezes é a linguagem mais adequada.
C++
O C++ é uma linguagem de programação de nível médio, baseada na linguagem C. Seu desenvolvimento iniciou na década de 80, por Bjarne Stroustrup com objetivo de melhorar uma versão do núcleo Unix.
Embora seja uma das linguagens mais antigas ainda disponíveis, ainda é utilizada pelos principais bancos do país.
Esta linguagem destaca-se pela facilidade no processamento de grandes quantidades de dados das negociações financeiras com baixa latência.
Encontra-se em processo de desuso, porém, ainda é muito comum devido a existência de diversas aplicações do mercado que foram programadas utilizando a linguagem C++. Muito utilizada em programas que fazem a integração com servidores.
O ponto mais forte da linguagem C++ é a alta performance, além disso, apresenta diversas bibliotecas criadas ao longo dos anos.
É uma linguagem de baixo nível, com isso consegue acessar hardware e se comunicar com componentes internos do sistema com melhor desempenho em comparação com outras linguagens, permitindo uma maior flexibilidade na otimização de códigos.
Porém, este maior controle apresenta também um custo mais elevado, tornando o processo de desenvolvimento mais difícil e a curva de aprendizado muito maior.
Como consequência, nos projetos que possuem exigência de baixas latências, a linguagem C++ estará entre as preferidas.
Por que aprender programação para atuar no mercado financeiro?
Independente do setor que o profissional trabalha, o aprendizado sobre linguagem de programação é fundamental atualmente.
Claro que existem muitas outras linguagens de programação como: Julia, MatLab, Rust etc.
Porém, o mais importante é perceber que cada opção de linguagem tem seus pontos positivos e os negativos. Como resultado, a maioria das empresas trabalham com mais de uma linguagem, pois sabem que dependerá da necessidade do momento e do tipo de aplicação.
Nas mais diversas vagas do mercado de trabalho estão solicitando o aprendizado de alguma linguagem de programação, não seria diferente no mercado financeiro.
Em outras palavras, aprender programação significa automatizar processos, rotinas, ou seja, aquele trabalho que levaria horas, com a programação será resolvido em minutos.
Em suma, haverá um aumento na produtividade, além disso, os profissionais que conhecem alguma linguagem de programação estarão em melhores posições no mercado. Porém, existe uma escassez de profissionais com este conhecimento.
Conclusão: qual linguagem de programação utilizar no mercado financeiro?
Para concluir, o principal é não se acomodar, perceber qual é a necessidade no dia a dia de trabalho e procurar se aperfeiçoar continuamente, seja em linguagem de programação ou em aplicações que otimizarão suas atividades.
Sobre a linguagem de programação no mercado financeiro, se você ainda está em dúvida e deseja começar, procure aquela que propõe uma curva de aprendizado mais simples, maior versatilidade, popularidade e fácil aprendizado.
A linguagem que preenche estes requisitos e atualmente mostra-se como excelente opção para os iniciantes é a linguagem Python.
Recomendações sobre a linguagem Python
Certamente, uma das excelentes fontes de aprendizado da linguagem Python são as bibliotecas, nelas encontrará os scripts prontos, o que facilitará sua vida, pois em muitos casos ao invés de escrever um código novo poderá utilizar um pronto. Além de te ajudar a programar, as bibliotecas te ajudarão a fazer análises e encontrar informações.
Entre as bibliotecas mais utilizadas no mercado financeiro pode-se citar as chamadas Stacks, tais como:
- Panda;
- Yahoo Finance;
- Plotly, Django;
- Entre outros stacks.
Também existem diversos livros sobre o tema, tais como:
- Para uma noção básica sobre Python que já te ajudará a fazer análise de carteira, análises de portfólio e calcular riscos: Python for Finance;
- Aprendendo desde noções básicas até problemas mais complexos: Python e Mercado Financeiro: Programação para estudantes, investidores e analistas;
- Um guia que pode ser baixado no Kindle e que ajudará a automatizar sua forma de analisar dados e criar indicadores: Python Aplicado na Bolsa de Valores: Um guia para construção de análises e indicadores;
- Para um conteúdo mais complexo, recomendado para aqueles com mais conhecimento na linguagem Python, pois está focado nas estratégias: Financial Machine Learning.
Para aqueles que gostam de cursos, existem diversos cursos excelentes, tanto pagos quanto gratuitos na internet.
Entre os gratuitos, para aqueles que buscam aprender Python desde o básico e direcionado para Análise de Dados, recomendo o curso: Python Fundamentos para Análise de Dados 3.0 da Data Science Academy.