top of page

Matemática com Python, corretor da bolsa de valores

Foto do escritor: Marco BeltranMarco Beltran

Ao concluir um dia de trabalho, um corretor da bolsa de valores construiu uma tabela em que cada linha apresentava o preço y em reais de cada ação de uma empresa após x horas do inicio do pregão.esse estudo revelou que cada ponto(x,y) pertence a função exponencial y=(3/2) elevado a x.

Sabendo que o pregão teve exatamente 4 horas de duração,calcule o preço mínimo e o máximo de cada ação dessa empresa durante esse dia.



RESOLUÇÃO


Analisando o perfil da função exponencial com base maior do que 1, verificamos que o menor valor ocorrerá em 1 hora e o maior valor ocorrerá em 4 horas. Sendo assim, o preço mínimo será 1,50 e o preço máximo será 5,0625.

Calculando os preços mínimo e máximo conforme a função exponencial:

De acordo com o enunciado, sabemos que os preços da ação da empresa variam conforme a função exponencial y = (3/2)ˣ. Como esta é uma função exponencial com a base da potência maior do que 1, ela é uma função crescente, ou seja: quanto maior o valor de x, maior o valor de y.

Consequentemente, como x é medido em horas e sabendo que o tempo total foi de 4 horas, então temos que:

• Preço mínimo: é o menor valor de y e ocorre no menor valor de x. Portanto, x = 1 e y = (3/2)¹ = 3/2 = 1,5. Logo Pmín = 1,5.

• Preço máximo: é o maior valor de y e ocorre no maior valor de x. Portanto, x = 4 e y = (3/2)⁴ = 3⁴/2⁴ = 81/16 = 5,0625. Logo Pmáx = 5,0625.


USANDO PYTHON


Para encontrar o preço mínimo e máximo da ação da empresa durante o dia, precisamos encontrar os valores mínimo e máximo da função exponencial y = (3/2)^x, para x variando de 0 a 4.

Podemos usar a biblioteca do Python para cálculos matemáticos e plotagem de gráficos para visualizar a função exponencial. O código abaixo resolve a situação descrita:



import numpy as np
import matplotlib.pyplot as plt

# Definir a função exponencial y = (3/2)^x
def f(x):
    return (3/2)**x

# Criar um array de valores de x de 0 a 4
x = np.linspace(0, 4, 100)

# Calcular os valores de y correspondentes
y = f(x)

# Plotar o gráfico da função exponencial
plt.plot(x, y)
plt.xlabel('Horas do pregão')
plt.ylabel('Preço da ação em reais')
plt.show()

# Encontrar o preço mínimo da ação
preco_minimo = f(0) # Quando x=0, y=(3/2)^0 = 1
print("Preço mínimo da ação:", preco_minimo, "reais")

# Encontrar o preço máximo da ação
preco_maximo = f(4) # Quando x=4, y=(3/2)^4 = 5,0625
print("Preço máximo da ação:", preco_maximo, "reais")


A saída do código acima:



Preço mínimo da ação: 1.0 reais
 Preço máximo da ação: 5.0625 reais

Então teremos, o preço mínimo da ação da empresa foi de 1 real e o preço máximo foi de 5,0625 reais durante o dia, :).


Em mais uma Questão completando a idéia:


Um corretor de uma bolsa de valores previu que, ao longo de um dia, o preço de cada ação de uma empresa poderia ser determinado por p(t) = (4/3) elevado a t em que p(t) é o preço em reais em um tempo t, dado em horas, decorrido a partir da abertura do pregão.

Sabendo que o pregão durou exatamente 6 horas, analise as seguintes afirmações, classificando-as como verdadeiras (V) ou falsas (F):


( ) a) O valor das ações 4 horas após o início do pregão foi superior ao valor das ações 2 horas após o instante inicial.


( ) b) O valor das ações 2 horas após o início do pregão foi superior ao valor das ações 6 horas após o instante inicial.


( ) c) O valor das ações 1 hora após o início do pregão foi de R$ 1,78.


( ) d) O valor das ações é superior a R$ 4,00 a partir de 2 horas do início do pregão.


Da mesma forma a proposta é apresentar um código em Python, podemos resolver essa situação criando um código em Python que calcule os valores das ações em diferentes momentos do pregão, usando a fórmula p(t) = (4/3)^t. Em seguida, podemos comparar os valores para verificar se as afirmações dadas são verdadeiras ou falsas.


O código seria assim:



def price(t):
     return (4/3)**t

 # a) O valor das ações 4 horas após o início do pregão foi superior ao valor das ações 2 horas após o instante inicial.
 if price(4) > price(2):
     print("a) Verdadeiro")
 else:
     print("a) Falso")

 # b) O valor das ações 2 horas após o início do pregão foi superior ao valor das ações 6 horas após o instante inicial.
 if price(2) > price(6):
     print("b) Verdadeiro")
 else:
     print("b) Falso")

 # c) O valor das ações 1 hora após o início do pregão foi de R$ 1,78.
 if round(price(1), 2) == 1.78:
     print("c) Verdadeiro")
 else:
     print("c) Falso")

 # d) O valor das ações é superior a R$ 4,00 a partir de 2 horas do início do pregão.
 if price(2) > 4:
     print("d) Verdadeiro")
 else:
     print("d) Falso")


Explicando o código:

  • A função price(t) recebe o tempo decorrido t em horas desde o início do pregão e retorna o preço p(t) em reais.

  • Para verificar cada afirmação, utiliza-se a função price(t) para calcular o preço das ações em determinados momentos e compara-se os valores utilizando condicionais if e operadores lógicos.

  • Na afirmação c), utiliza-se a função round() para arredondar o valor de p(1) para duas casas decimais antes de compará-lo com 1,78, já que a função price() retorna um número com muitas casas decimais.

Não há necessidade de importar bibliotecas para o código, pois ele utiliza apenas funções matemáticas básicas do Python, que já estão disponíveis por padrão na linguagem.

A função round(), que utilizei na afirmação c), também é uma função nativa do Python e não requer a importação de bibliotecas externas.

Por isso, podemos utilizar o código sem a necessidade de importar bibliotecas adicionais

A saída do código dependerá do valor atual das ações no momento em que o código é executado.

No entanto, considerando as afirmações que foram verificadas, a saída do código pode ser algo como:

a) Verdadeiro
b) Falso
c) Falso
d) Verdadeiro

Isso significa que a afirmação a) é verdadeira (o valor das ações 4 horas após o início do pregão foi superior ao valor das ações 2 horas após o instante inicial) e a afirmação d) também é verdadeira (o valor das ações é superior a R$ 4,00 a partir de 2 horas do início do pregão).

Já a afirmação b) é falsa (o valor das ações 2 horas após o início do pregão não foi superior ao valor das ações 6 horas após o instante inicial) e a afirmação c) também é falsa (o valor das ações 1 hora após o início do pregão não foi de R$ 1,78).

3 visualizações0 comentário

Comments


Nunca perca um post. Assine agora!

Receba informações sobre os assuntos do conteúdo

© 2023 por Marco A. Beltran. Criado com Wix.com 

  • Ícone do Facebook Cinza
  • Ícone do Linkedin Cinza
bottom of page