Este projeto consiste em um dashboard interativo para monitoramento do mercado de criptomoedas. O objetivo principal é fornecer uma visão clara e atualizada de indicadores-chave, como preço, variação de 24h e histórico de desempenho de ativos como Bitcoin, Ethereum e Solana.
A solução foi desenvolvida com uma arquitetura robusta dividida em três camadas:
Abaixo, um trecho do script de extração de dados que desenvolvi em Python, mostrando a conexão com a API e tratamento de erros.
import requests
import mysql.connector
# Configurações da API e Banco
MOEDAS_IDS = ['bitcoin', 'ethereum', 'solana', 'binancecoin']
URL_API = "https://api.coingecko.com/api/v3/simple/price"
def buscar_dados_atuais():
"""Busca os dados atuais na API da CoinGecko com tratamento de erro."""
params = {
'ids': ",".join(MOEDAS_IDS),
'vs_currencies': 'usd',
'include_market_cap': 'true',
'include_24hr_vol': 'true'
}
try:
response = requests.get(URL_API, params=params)
response.raise_for_status()
return response.json()
except requests.exceptions.RequestException as e:
print(f"Erro na API: {e}")
return None
Para a persistência, utilizei uma modelagem SQL relacional para garantir integridade:
-- Tabela para histórico de preços (Snippet)
CREATE TABLE IF NOT EXISTS cotacoes_historico (
id INT AUTO_INCREMENT PRIMARY KEY,
nome_ativo VARCHAR(50),
data DATE,
preco_usd DECIMAL(20, 8),
UNIQUE(nome_ativo, data) -- Evita duplicidade de registros
);