IBOV

106.245,82 pts

-0,63%

SP500

4.666,27 pts

+0,08%

DJIA

35.924,80 pts

+0,04%

NASDAQ

15.621,05 pts

+0,06%

IFIX

2.790,94 pts

+0,28%

BRENT

US$ 85,64

-0,49%

IO62

¥ 708,50

+0,14%

TRAD3

R$ 4,49

-2,39%

ABEV3

R$ 15,08

-0,13%

AMER3

R$ 30,52

+0,69%

ASAI3

R$ 12,10

-0,24%

AZUL4

R$ 26,22

-0,41%

B3SA3

R$ 12,23

+0,08%

BIDI11

R$ 23,14

-2,97%

BBSE3

R$ 19,41

-0,20%

BRML3

R$ 8,28

-1,42%

BBDC3

R$ 17,29

-0,86%

BBDC4

R$ 20,71

-0,76%

BRAP4

R$ 27,48

-0,14%

BBAS3

R$ 30,09

-1,05%

BRKM5

R$ 50,78

-2,64%

BRFS3

R$ 23,61

-2,84%

BPAC11

R$ 19,64

-0,95%

CRFB3

R$ 14,45

+0,34%

CCRO3

R$ 11,36

-0,26%

CMIG4

R$ 12,76

+0,23%

HGTX3

R$ 37,51

+0,00%

CIEL3

R$ 2,13

+5,44%

COGN3

R$ 2,19

+1,38%

CPLE6

R$ 6,40

+0,94%

CSAN3

R$ 21,17

-0,23%

CPFE3

R$ 25,96

+0,42%

CVCB3

R$ 11,55

-1,36%

CYRE3

R$ 14,02

-1,19%

ECOR3

R$ 7,32

+1,66%

ELET3

R$ 31,23

-1,20%

ELET6

R$ 30,71

-1,22%

EMBR3

R$ 21,75

-1,18%

ENBR3

R$ 21,09

+1,39%

ENGI11

R$ 40,85

-0,29%

ENEV3

R$ 12,81

+1,34%

EGIE3

R$ 38,55

+0,41%

EQTL3

R$ 22,36

-1,14%

EZTC3

R$ 18,66

+0,26%

FLRY3

R$ 18,05

+0,66%

GGBR4

R$ 27,96

-1,13%

GOAU4

R$ 11,63

-0,93%

GOLL4

R$ 16,85

-0,47%

NTCO3

R$ 21,68

-0,55%

HAPV3

R$ 10,56

+2,42%

HYPE3

R$ 28,06

+0,21%

IGTA3

R$ 33,24

+0,00%

GNDI3

R$ 61,65

+1,95%

IRBR3

R$ 3,51

-0,84%

ITSA4

R$ 9,45

-1,11%

ITUB4

R$ 23,26

-1,02%

JBSS3

R$ 36,98

-1,09%

JHSF3

R$ 4,83

-0,41%

KLBN11

R$ 24,71

-2,40%

RENT3

R$ 50,57

-1,36%

LCAM3

R$ 22,60

-1,22%

LWSA3

R$ 8,47

+0,95%

LAME4

R$ 5,75

+1,23%

LREN3

R$ 23,98

+0,04%

MGLU3

R$ 6,26

-1,10%

MRFG3

R$ 23,37

-0,59%

BEEF3

R$ 10,01

-2,53%

MRVE3

R$ 10,89

-1,80%

MULT3

R$ 18,33

-0,86%

PCAR3

R$ 19,44

-2,36%

PETR3

R$ 34,32

-0,69%

PETR4

R$ 31,27

-0,57%

VBBR3

19,78

-0,25%

PRIO3

R$ 22,47

-1,87%

QUAL3

R$ 15,91

+2,50%

RADL3

R$ 20,89

-0,52%

RAIL3

R$ 16,44

+0,79%

SBSP3

R$ 35,42

+0,88%

SANB11

R$ 31,13

-2,29%

CSNA3

R$ 25,11

-2,37%

SULA11

R$ 23,24

+0,91%

SUZB3

R$ 61,84

-1,48%

TAEE11

R$ 36,11

+0,13%

VIVT3

R$ 47,23

+0,74%

TIMS3

R$ 12,70

+0,55%

TOTS3

R$ 25,81

+2,42%

UGPA3

R$ 12,93

-1,74%

USIM5

R$ 16,06

-2,37%

VALE3

R$ 84,08

-0,72%

VIIA3

R$ 3,95

-0,50%

WEGE3

R$ 30,41

-0,94%

YDUQ3

R$ 19,28

+2,01%

IBOV

106.245,82 pts

-0,63%

SP500

4.666,27 pts

+0,08%

DJIA

35.924,80 pts

+0,04%

NASDAQ

15.621,05 pts

+0,06%

IFIX

2.790,94 pts

+0,28%

BRENT

US$ 85,64

-0,49%

IO62

¥ 708,50

+0,14%

TRAD3

R$ 4,49

-2,39%

ABEV3

R$ 15,08

-0,13%

AMER3

R$ 30,52

+0,69%

ASAI3

R$ 12,10

-0,24%

AZUL4

R$ 26,22

-0,41%

B3SA3

R$ 12,23

+0,08%

BIDI11

R$ 23,14

-2,97%

BBSE3

R$ 19,41

-0,20%

BRML3

R$ 8,28

-1,42%

BBDC3

R$ 17,29

-0,86%

BBDC4

R$ 20,71

-0,76%

BRAP4

R$ 27,48

-0,14%

BBAS3

R$ 30,09

-1,05%

BRKM5

R$ 50,78

-2,64%

BRFS3

R$ 23,61

-2,84%

BPAC11

R$ 19,64

-0,95%

CRFB3

R$ 14,45

+0,34%

CCRO3

R$ 11,36

-0,26%

CMIG4

R$ 12,76

+0,23%

HGTX3

R$ 37,51

+0,00%

CIEL3

R$ 2,13

+5,44%

COGN3

R$ 2,19

+1,38%

CPLE6

R$ 6,40

+0,94%

CSAN3

R$ 21,17

-0,23%

CPFE3

R$ 25,96

+0,42%

CVCB3

R$ 11,55

-1,36%

CYRE3

R$ 14,02

-1,19%

ECOR3

R$ 7,32

+1,66%

ELET3

R$ 31,23

-1,20%

ELET6

R$ 30,71

-1,22%

EMBR3

R$ 21,75

-1,18%

ENBR3

R$ 21,09

+1,39%

ENGI11

R$ 40,85

-0,29%

ENEV3

R$ 12,81

+1,34%

EGIE3

R$ 38,55

+0,41%

EQTL3

R$ 22,36

-1,14%

EZTC3

R$ 18,66

+0,26%

FLRY3

R$ 18,05

+0,66%

GGBR4

R$ 27,96

-1,13%

GOAU4

R$ 11,63

-0,93%

GOLL4

R$ 16,85

-0,47%

NTCO3

R$ 21,68

-0,55%

HAPV3

R$ 10,56

+2,42%

HYPE3

R$ 28,06

+0,21%

IGTA3

R$ 33,24

+0,00%

GNDI3

R$ 61,65

+1,95%

IRBR3

R$ 3,51

-0,84%

ITSA4

R$ 9,45

-1,11%

ITUB4

R$ 23,26

-1,02%

JBSS3

R$ 36,98

-1,09%

JHSF3

R$ 4,83

-0,41%

KLBN11

R$ 24,71

-2,40%

RENT3

R$ 50,57

-1,36%

LCAM3

R$ 22,60

-1,22%

LWSA3

R$ 8,47

+0,95%

LAME4

R$ 5,75

+1,23%

LREN3

R$ 23,98

+0,04%

MGLU3

R$ 6,26

-1,10%

MRFG3

R$ 23,37

-0,59%

BEEF3

R$ 10,01

-2,53%

MRVE3

R$ 10,89

-1,80%

MULT3

R$ 18,33

-0,86%

PCAR3

R$ 19,44

-2,36%

PETR3

R$ 34,32

-0,69%

PETR4

R$ 31,27

-0,57%

VBBR3

19,78

-0,25%

PRIO3

R$ 22,47

-1,87%

QUAL3

R$ 15,91

+2,50%

RADL3

R$ 20,89

-0,52%

RAIL3

R$ 16,44

+0,79%

SBSP3

R$ 35,42

+0,88%

SANB11

R$ 31,13

-2,29%

CSNA3

R$ 25,11

-2,37%

SULA11

R$ 23,24

+0,91%

SUZB3

R$ 61,84

-1,48%

TAEE11

R$ 36,11

+0,13%

VIVT3

R$ 47,23

+0,74%

TIMS3

R$ 12,70

+0,55%

TOTS3

R$ 25,81

+2,42%

UGPA3

R$ 12,93

-1,74%

USIM5

R$ 16,06

-2,37%

VALE3

R$ 84,08

-0,72%

VIIA3

R$ 3,95

-0,50%

WEGE3

R$ 30,41

-0,94%

YDUQ3

R$ 19,28

+2,01%

Calculando o Beta em Python

vitor-diniz

04 MAR

3 MIN

Calculando o Beta em Python

Dando sequência ao estudo de Python, iniciaremos agora uma abordagem mais aplicada a finanças. Já temos alguns textos introduzindo a linguagem na categoria Quant & Investimentos, então, se você ainda não entende como funciona um script básico, dá uma olhada lá antes de seguir a leitura.

Hoje iremos discutir o cálculo do beta de um portfólio, o coeficiente angular do modelo do CAPM de Sharpe (1977), discutindo por Filipe Duarte em Python: Modelo de Precificação de Ativos (CAPM) , sem a necessidade de realizar a regressão. Para isso, este artigo está dividido em 2 partes:

  • Portfólio com retornos conhecidos
  • Portfólio sem retornos conhecidos
  • Cálculo do Beta no Python

Boa leitura!

Calcular o Beta usando Python

Antes de iniciarmos o código, precisamos entender que o beta é calculado da seguinte forma:

Em que:

  • β é o beta do portfólio i em relação ao índice de mercado m;
  • COV(r,R) é a covariância entre os retornos do portfólio (r) e do mercado (R);
  • VAR (R) é a variância dos retornos do mercado.

Importando bibliotecas e buscando dados

Tendo isso em mente, vamos precisar importar:

  • a biblioteca pandas para manipular DataFrames;
  • a biblioteca pandas-datareader para acessar a API gratuita de cotações do Yahoo;
  • o módulo random da biblioteca numpy para gerar retornos;
  • a função cov da biblioteca numpy para calcular a covariância;
  • a função variance da biblioteca statistics para calcular a variância.

Buscaremos, primeiramente, as cotações de fechamento para cada mês dos últimos 60 do Ibovespa (o considerando como representação do mercado) através da interface para a API do Yahoo:

Entretanto, o que nos interessa são os retornos mensais. Para isso, definiremos uma função que realiza tal cálculo:

Para quem deseja escrever um código mais eficiente, a função retornos pode ser escrita como uma função lambda, da seguinte forma:

Com isso, podemos aplicar a função e encontrar nossos retornos:

Agora podemos começar a pensar no nosso beta.

Portfólio com retornos conhecidos

Considere que sua carteira obteve os seguintes retornos mensais nos últimos 60 meses (5 anos):

Com isso, podemos calcular o beta do nosso portfólio aplicando a fórmula de Sharpe descrita anteriormente.

De uma forma direta, conseguimos descobrir o beta do nosso portfólio.

Portfólio sem retornos conhecidos

Contudo, a facilidade apresentada anteriormente se torna mais distante quando o investidor não sabe ao certo quais foram suas rentabilidades mensais dos últimos períodos.

Para tanto, calcularemos o beta do portfólio como a média ponderada dos betas dos ativos que o compõem.

Suponha, então, que seu portfólio é composto pelos seguintes ativos:

  • ITSA4 (12%)
  • B3SA3 (11%)
  • EGIE3 (11%)
  • KLBN11 (10%)
  • WEGE3 (9%)
  • MDIA3 (9%)
  • LREN3 (8%)
  • VIIA3 (8%)
  • AAPL34 (6%)
  • BERK34 (6%)

Além disso, você manteve 10% em caixa.

Em seguida, iremos calcular cada beta individualmente encapsulando a fórmula do beta em uma função (beta) e colocando-a dentro de um laço para calcular de todos os ativos.

Agora, já temos os betas de cada ativo, como podemos ver abaixo:

O beta de ITSA4 é 1.11
O beta de B3SA3 é 0.99
O beta de EGIE3 é 0.67
O beta de KLBN11 é 0.28
O beta de WEGE3 é 0.55
O beta de MDIA3 é 0.73
O beta de LREN3 é 0.97
O beta de VIIA3 é 1.84
O beta de AAPL34 é -0.25
O beta de BERK34 é -0.23

Vamos agora calcular a média ponderada dos betas.

O beta do portfólio é 0.656

Considerações finais

Aprendemos, então, que para calcular o beta de um portfólio qualquer, basta aplicar o cálculo de forma direta utilizando os retornos do mercado e do portfólio. Todavia, caso o investidor não saiba quais são seus retornos, é possível calculá-lo através da média ponderada do beta de cada ativo que compõe a carteira.

Referências

[1] SHARPE, William F. The capital asset pricing model: a “multi-beta” interpretation. In: Financial Dec Making Under Uncertainty. Academic Press, 1977. p. 127-135.

Engenheiro de Software do TC School

Aprenda tudo sobre contabilidade

E-BOOK

Aprenda tudo sobre contabilidade

Neste e-book — “Contabilidade”, trazemos informações e conceitos importantes sobre contabilidade financeira.

Receba todas as novidades do TC

Deixe o seu contato com a gente e saiba mais sobre nossas novidades, eventos e facilidades.