Investindo com Inteligência: A Matemática Financeira Simplificada com Python
O desenvolvimento de scripts de programação é prática comum em diversas áreas de nossas vidas com enfoque especial na análise de investimentos no mercado financeiro de ações.
A razão dessa popularidade está na necessidade de obtenção de cálculos precisos retornados em relatórios confiáveis em nossas projeções.
Imagine-se como um desenvolvedor Python trabalhando em uma empresa atenta ao mercado financeiro de compra e venda de ações na bolsa de valores. Em um dia da semana, seu chefe entra no escritório e lhe pede:
"Precisamos de um script para analisar o potencial de lucro de um investimento em ações da empresa Y que apresenta evidências de elevação do preço de suas ações negociadas na Bolsa de Valores. Formule uma estratégia de opções financeiras com base na fórmula de Black-Scholes de modo que permita visualizar o cálculo do custo da opção de compra ( call option) e os resultados desse investimento”
Diante da solicitação de seu chefe, você percebe que usar suas habilidades em Python, recorrendo a ferramentas específicas e direcionadas ao desafio, como bibliotecas de cálculos matemáticos e conhecimentos técnicos do assunto, não só resolverá o problema como também lhe colocará em um patamar maior como desenvolvedor de situações complexas e influenciador na tomada de decisões estratégicas da empresa.
Neste artigo, o objetivo central é explorar como o Python pode ajudar você nessa tarefa, criando um script que possa viabilizar uma estratégia de investimento baseada em opções de compra através da fórmula de Black-Scholes e retornando um relatório gerencial promissor dos resultados.
O Cenário de Investimento
A empresa X para quem você trabalha, deseja investir em ações da Empresa Y, que está agora em ascensão. O preço das ações da Empresa Y é de R$ 100,00, e a Empresa X acredita que, daqui a um ano, o valor será maior do que R$ 110,00, o preço que ela está disposta a pagar.
Porém, o problema mais crítico são as incertezas do mercado. Portanto, para se proteger contra essas incertezas, a Empresa X resolve investir em uma opção de compra, que é um tipo de seguro financeiro garantidor do investimento pleiteado. Ou seja, esse artifício dará à empresa X o direito de comprar as ações negociadas a um preço predeterminado, antes ou na data de vencimento, sem a obrigatoriedade de comprá-las.
Nesse caso, para ter a garantia respaldada no negócio, a empresa X terá que arcar com o custo de R$ 6,04 por ação que corresponde ao “seguro” contratado e assim, poder ou não adquirir as ações por R$ 110,00 no vencimento futuro. Este “seguro” é o custo financeiro que a empresa X arcará para se proteger.
Para fins de resultados, no final do ano, o preço da ação chegará a R$ 109,00, abaixo do preço acordado na opção o que será evidenciado pelo script do Python que você, expert desenvolvedor, criará.
O Papel do Python
Sabedor da versalidade do Python como uma linguagem extremamente poderosa e completa, possuidora de várias bibliotecas como numpy, scipy e outras que te ajudarão nos cálculos financeiros complexos tornando-os, mais simples, em conjunto com a utilização da fórmula de Black-Scholes, determinará o valor de opções e calculará os resultados financeiros do investimento de forma eficiente.
O Código em Python
Abaixo está o código que calcula o preço da opção de compra e analisa os resultados para o cenário descrito.
import numpy as np
from scipy.stats import norm
def black_scholes_call(S, K, T, r, sigma):
"""
Calcula o preço de uma opção de compra europeia usando a fórmula de Black-Scholes.
Parâmetros:
S: Preço atual do ativo subjacente
K: Preço de exercício
T: Tempo até o vencimento (em anos)
r: Taxa de juros livre de risco (anualizada)
sigma: Volatilidade do ativo subjacente (anualizada)
Retorna:
Preço da opção de compra
"""
d1 = (np.log(S / K) + (r + 0.5 * sigma**2) * T) / (sigma * np.sqrt(T))
d2 = d1 - sigma * np.sqrt(T)
call_price = S * norm.cdf(d1) - K * np.exp(-r * T) * norm.cdf(d2)
return call_price
# Parâmetros do cenário
S = 100 # Preço atual da ação
K = 110 # Preço de exercício
T = 1 # Tempo até o vencimento (1 ano)
r = 0.05 # Taxa de juros livre de risco (5%)
sigma = 0.2 # Volatilidade (20%)
# Calcula o preço da opção
call_price = black_scholes_call(S, K, T, r, sigma)
print(f"Preço da opção de compra: R$ {call_price:.2f}")
# Cenário final
final_price = 109 # Preço da ação ao final de 1 ano
premium_cost = call_price * 1000 # Custo total do prêmio para 1000 ações
initial_investment = S * 1000 # Investimento inicial
final_market_value = final_price * 1000 # Valor final das ações no mercado
total_cost = initial_investment + premium_cost # Custo total
profit = final_market_value - total_cost # Lucro líquido
# Resultados
print("\nResultados do investimento:")
print(f"Investimento inicial: R$ {initial_investment:,.2f}")
print(f"Custo do prêmio da opção: R$ {premium_cost:,.2f}")
print(f"Valor de mercado das ações ao final: R$ {final_market_value:,.2f}")
print(f"Custo total (investimento + prêmio): R$ {total_cost:,.2f}")
print(f"Lucro líquido: R$ {profit:,.2f}")
Análise do Resultado
Após a execução do script, estes foram os resultados:
- Preço da opção de compra: R$ 6,04
- Investimento inicial: R$ 100.000,00
- Custo do prêmio da opção: R$ 6.040,09
- Valor de mercado das ações ao final: R$ 109.000,00
- Custo total (investimento + prêmio): R$ 106.040,09
- Lucro líquido: R$ 2.959,91
Conclusão
A execução do script em Python permitiu ao chefe da empresa X, visualizar os resultados da projeção futura do investimento planejado na aquisição das ações da empresa Y.
O desenvolvedor Python não apenas entregou um script funcional, mas também forneceu uma solução estratégica que ajudou a empresa a tomar decisões financeiras informadas e confiáveis.
O relatório gerencial produzido a partir do script criado pelo Dev possibilitou ao chefe visualizar claramente o custo do investimento, o impacto da proteção com opções e o lucro potencial, tudo de forma rápida e precisa.
Este exemplo evidencia como o conhecimento em Python vai além de uma simples linguagem de programação: é uma ferramenta poderosa que pode ser aplicada em diversas áreas, desde ciência de dados até finanças corporativas. Com bibliotecas como numpy e scipy, tarefas que parecem complexas, como precificar opções financeiras com a fórmula de Black-Scholes, tornam-se acessíveis e eficientes.
Em resumo, desenvolver aplicações no mundo da programação vai além de apenas codificar linhas em uma linguagem escolhida. Percebe-se claramente a necessidade de interação e conhecimento em outras áreas, notadamente a de finanças e gestão empresarial para que haja a transformação de números abstratos em decisões concretas.