Skip to content

Commit

Permalink
streamlit_app.py
Browse files Browse the repository at this point in the history
  • Loading branch information
Tiagofholanda authored Jun 30, 2024
1 parent af9648e commit 4b034db
Showing 1 changed file with 18 additions and 57 deletions.
75 changes: 18 additions & 57 deletions streamlit_app.py
Original file line number Diff line number Diff line change
@@ -1,60 +1,21 @@
import streamlit as st
import pandas as pd

# Título da aplicação
st.title('Minha Carteira de Ações')

# DataFrame inicial vazio para armazenar as ações
carteira = pd.DataFrame(columns=['Símbolo', 'Quantidade', 'Preço de Compra'])

# Função para adicionar ação à carteira
def adicionar_acao(symbol, quantity, purchase_price):
global carteira
carteira = carteira.append({
'Símbolo': symbol,
'Quantidade': quantity,
'Preço de Compra': purchase_price
}, ignore_index=True)

# Função para calcular o preço médio da carteira
def calcular_preco_medio():
global carteira
if not carteira.empty:
preco_medio = (carteira['Quantidade'] * carteira['Preço de Compra']).sum() / carteira['Quantidade'].sum()
return preco_medio
import requests

# Exemplo de API de uma corretora fictícia
API_URL = 'https://api.minhacorretora.com.br'
CPF = 'seu_cpf'
TOKEN = 'seu_token_de_acesso'

# Função para obter carteira de ações
def get_carteira_acoes():
endpoint = f'{API_URL}/carteira'
headers = {'Authorization': f'Bearer {TOKEN}'}
response = requests.get(endpoint, headers=headers)
if response.status_code == 200:
return response.json()
else:
return None
return {'error': 'Erro ao obter carteira de ações'}

# Função para exibir a carteira completa
def exibir_carteira():
st.subheader('Carteira Atualizada')
st.write(carteira)

# Barra de navegação
menu = ['Minha Carteira', 'Adicionar Ações', 'Calcular Preço Médio']
choice = st.sidebar.selectbox('Menu', menu)

# Lógica para as opções do menu
if choice == 'Minha Carteira':
exibir_carteira()
elif choice == 'Adicionar Ações':
st.subheader('Adicionar Ações à Carteira')
symbol = st.text_input('Digite o símbolo da ação (ex: AAPL para Apple)')
quantity = st.number_input('Digite a quantidade de ações', min_value=1)
purchase_price = st.number_input('Digite o preço de compra por ação', min_value=0.01)

if st.button('Adicionar à Carteira'):
adicionar_acao(symbol, quantity, purchase_price)
st.success('Ação adicionada com sucesso!')
exibir_carteira()

elif choice == 'Calcular Preço Médio':
st.subheader('Calcular Preço Médio da Carteira')
preco_medio = calcular_preco_medio()
if preco_medio is not None:
st.write(f'O preço médio da carteira é: R$ {preco_medio:.2f}')
else:
st.warning('A carteira está vazia. Adicione ações primeiro.')
# Exemplo de uso da função
carteira_acoes = get_carteira_acoes()
print(carteira_acoes)

# Rodapé
st.info('Desenvolvido por Tiago F. Holanda')

0 comments on commit 4b034db

Please sign in to comment.