TC School / Quant & Investimentos

Python: condicionais e funções

02/02/2021 às 13:06

TC School TC School

Olá investidor! No artigo de hoje teremos mais uma aula do curso de introdução ao Python. O texto a seguir explicará como empregar operações condicionais e como criar funções no Python. Veremos especialmente a aplicação em análise de investimentos. Para facilitar a compreensão, elencamos o tema nos seguintes tópicos:

  • Operações condicionais no Python
  • Operadores de comparação
  • Operadores lógicos
  • Funções do Python

Boa leitura!

Operações condicionais no Python

O que vamos aprender hoje ajudará na elaboração de códigos automatizados. Por exemplo, o desenvolvimento de um algoritmo de trading, ou ainda, selecionar empresas com base em indicadores financeiros.

Operadores de comparação

As operações condicionais têm como resultado um valor VERDADEIRO (1) ou FALSO (0). Sendo assim, precisamos de um operador de comparação para realizar a operação entre dois valores. Os operadores de comparação são:

  • < (menor) > (maior)
  • <= (menor ou igual) >= (maior ou igual)
  • == (igual)
  • != (diferente)

Esses operadores são vastamente utilizados na matemática e na programação. Eles são úteis quando desejamos filtrar empresas que apresentarem, por exemplo, um retorno maior do que 10%.

Operadores lógicos

Os operadores lógicos permitem que possamos elaborar duas ou mais operações condicionais. São 3 (três) os operadores lógicos:

  • and (e)
  • or (ou)
  • not (não)

O significado desses operadores é o mesmo que utilizamos na língua portuguesa. Nesse caso, podemos utilizá-los para selecionar empresas com retorno maior do que 10% e (and) volatilidade menor do que 15%.

Esses operadores são combinados com uma instrução if() para que o programa seja útil. Então como funciona essa instrução condicional? Primeiramente, o comando if() permite que avaliemos uma expressão cujo resultado será um verdadeiro ou falso.

Em seguida, podemos implementar um comportamento alternativo quando a expressão não apresentar o resultado verdadeiro.

A expressão alternativa, que surge a partir do momento em que o resultado é falso, é chamado de else e será empregado após a avaliação da instrução if(). A instrução else não precisa de uma expressão condicional para ser computada, isto é, basta que o resultado da instrução if() seja falso.

Veja a seguir um exemplo em que estamos criando um programa para avaliar se o retorno de uma ação é maior ou igual a 10%. Se for verdadeiro, o programa mostra “Investir”, caso contrário, “Não investir”.

  • Retorno de 10%

  • Retorno de 9%

Vamos aumentar a complexidade ao adicionar o critério de volatilidade. Então, se o Retorno for maior ou igual a 10% e a volatilidade for menor ou igual a 15%, o programa vai imprimir “Investir”, caso contrário, “Não investir”.

  • Retorno de 10% e Volatilidade de 12%

  • Retorno de 10% e Volatilidade de 16%

  • Retorno de 9% e Volatilidade de 12%

Perceba que o resultado verdadeiro da instrução if(retorno >= 0.1 and volatilidade <= 0.15) só acontece se ambas as operações condicionais forem verdadeiras.

Funções do Python

Uma função do Python é uma sequência de comandos que executa uma determinada operação e possui um nome. É útil na organização e na automatização dos códigos. Em Python, é possível criar uma função da seguinte maneira:

def NomeFunção(parâmetros):
comandos

É possível criar um nome qualquer para a função, exceto àqueles já reservados em Python (isso mesmo, o Python possui algumas funções nativas cujos nomes são reservados).

Criaremos uma função a seguir que avalia o retorno e a volatilidade e imprime “Investir” ou “Não investir”. Isto é, vamos implementar uma função que emprega nossa operação condicional visto anteriormente (uma função permitirá você automatizar seus códigos, utilizando-as diversas vezes).

Primeiro, vamos criar a função que será armazenada na memória. Depois, vamos testá-la.

  • Função chamada de “investir”

  • Teste da função para retorno de 10% e volatilidade de 12%

  • Outra forma (fixando os parâmetros fora da função)

  • Outra maneira de fixar parâmetros internamente

Perceba que quando criamos a função ‘investir’, fixamos os parâmetros na ordem ‘retorno’ e ‘volatilidade’. Desse modo, as variáveis ‘retorno’ e ‘volatilidade’ recebem os valores armazenados em ‘ret’ e ‘vol’.

As operações condicionais e as funções são amplamente utilizadas pelos analistas que utilizam o Python como linguagem de programação para analisar dados, em razão de permitir a automatização dos procedimentos.

Por fim, pense que você pode escrever uma função quando for empregar uma instrução repetidas vezes. A função vai padronizar o seu código, deixando-o mais enxuto e mais fácil de ser lido.

No próximo artigo da série vamos aprender a criar modelos de precificação de ativos (CAPM) no Python, a partir de bibliotecas estatísticas.

Baixe nosso aplicativo grátis! No TC você acompanha as principais notícias e cotações do mercado em tempo real, além de ter acesso a canais exclusivos para interagir com os melhores profissionais.

Filipe Coelho de Lima Duarte
Filipe Coelho de Lima Duarte
Professor do Departamento de Finanças e Contabilidade da UFPB.
Doutorando em Ciências da Computação pela UFPE, mestre em Ciências Contábeis
pela UFPB e graduado em Ciências Atuariais na UFPB. Atuário – MIBA nº
2829.

TC School

TC School

Disclaimer: Este material é produzido e distribuído somente com os propósitos de informar e educar, e representa o estado do mercado na data da publicação, sendo que as informações estão sujeitas a mudanças sem aviso prévio. Este material não constitui declaração de fato ou recomendação de investimento ou para comprar, reter ou vender quaisquer títulos ou valores mobiliários. O usuário não deve utilizar as informações disponibilizadas como substitutas de suas habilidades, julgamento e experiência ao tomar decisões de investimento ou negócio. Essas informações não devem ser interpretadas como análise ou recomendação de investimentos e não há garantia de que o conteúdo apresentado será uma estratégia efetiva para os seus investimentos e, tampouco, que as informações poderão ser aplicadas em quaisquer condições de mercados. Investidores não devem substituir esses materiais por serviços de aconselhamento, acompanhamento ou recomendação de profissionais certificados e habilitados para tal função. Antes de investir, por favor considere cuidadosamente a sua tolerância ou a sua habilidade para riscos. A administradora não conduz auditoria nem assume qualquer responsabilidade de diligência (due diligence) ou de verificação independente de qualquer informação disponibilizada neste espaço. Administradora: TradersNews Informação & Educação Ltda. Todos os direitos reservados.

TradersClub

O app essencial para investidores do mercado financeiro brasileiro.

Uma comunidade com milhares de investidores, ferramentas e serviços que vão ajudar você a investir melhor!

TradersClub