import requests
from datetime import date, timedelta

def ultima_ptax_usd():
    for dias_atras in range(1, 8):
        data = date.today() - timedelta(days=dias_atras)
        url = f"https://brasilapi.com.br/api/cambio/v1/cotacao/USD/{data}"

        resposta = requests.get(url, timeout=10)

        if resposta.status_code == 200:
            dados = resposta.json()
            fechamentos = [
                item for item in dados["cotacoes"]
                if item["tipo_boletim"] == "FECHAMENTO PTAX"
            ]
            if fechamentos:
                return dados["data"], fechamentos[-1]

        elif resposta.status_code not in (400, 404):
            resposta.raise_for_status()

    raise RuntimeError("Nenhuma cotação PTAX encontrada nos últimos 7 dias.")

data_ptax, ptax = ultima_ptax_usd()
cotacao = ptax["cotacao_venda"]

valor_usd = 1000
valor_brl = valor_usd * cotacao

print(f"Data PTAX: {data_ptax}")
print(f"Cotação de venda: R$ {cotacao:.4f}")
print(f"US$ {valor_usd:,.2f} = R$ {valor_brl:,.2f}")
