Entretanto fui vendo e escrevi este script no google colab.
Está em python e faz scrape ao
E3M, pois não encontrei API's abertas.
Não sei como faria esta parte em front-end.
O script também calcula os retornos dos CA's, mas isso já podia ser em front end.
Se for possível correr isto no server, agendado, diariamente e guardar de alguma forma, o vue.js vai buscar esses dados estáticos?
Script
import requests
from bs4 import BeautifulSoup
import statistics
# recebe: 10 ultimas taxas
# retorna: Taxas para as 3 situações, ano 1, anos 2 a 5 (+0,5%), anos 6 a 10(+1%)
def cert_aforro(e3m):
#media ultimas 10 E3M + 1%
taxaCa = statistics.mean(e3m) + 1
#ano 1, anos 2 a 5 (+0,5%), anos 6 a 10(+1%)
taxas_ca = [taxaCa, taxaCa + 0.5, taxaCa + 1]
return [round(max(min(v,3.5),0),3) for v in taxas_ca] # de 0% a 3,5%
#scrape
url = "https://www.euribor-rates.eu/en/current-euribor-rates/2/euribor-rate-3-months/"
page = requests.get(url)
soup = BeautifulSoup(page.content, 'html.parser')
#array com [data, taxa], últimos 10 dias + meses + anos, cron inv
e_html = soup.find_all('td')
#remover tags
euribors = [el.get_text() for el in e_html]
e3m_daily = euribors[0:20]
#taxas (indice impar)
values = [float(v.split(" ")[0]) for i, v in enumerate(e3m_daily) if i % 2 != 0]
#ano 1, anos 2 a 5, anos 6 a 10
print("anos 1 , 2 a 5 , 6 a 10")
print(cert_aforro(values))
Output
anos 1 , 2 a 5 , 6 a 10
[2.678, 3.178, 3.5]
Talvez isto seja um bom ponto de partida para ir buscar os dados históricos caso se pretenda.