pandas
L'endpoint CSV di Frankfurter si carica direttamente in un DataFrame, quindi interrogare i tassi si riduce a una sola riga. Il motivo per preferirlo a un recupero dati rapido di mercato è la riproducibilità: fissa un'istituzione specifica e il tuo notebook sarà verificabile; la cronologia non cambia silenziosamente, così un backtest eseguito oggi restituirà gli stessi identici risultati di quello condotto lo scorso anno.
Avvio rapido
Punta read_csv verso l'endpoint CSV:
import pandas as pd
df = pd.read_csv("https://api.frankfurter.dev/v2/rates.csv?base=usd"es=eur,gbp")Ottieni un DataFrame date,base,quote,rate con una riga per quotazione.
Convertire un importo
Il CSV fornisce il tasso di cambio, non un totale convertito. Moltiplica il tuo importo per la colonna rate. Per un singolo valore scalare senza pandas, interroga l'endpoint lineare con requests:
import requests
rate = requests.get("https://api.frankfurter.dev/v2/rate/usd/eur").json()["rate"]
total = 100 * rateFissare una fonte ufficiale
Per impostazione predefinita ottieni la combinazione di tutte le fonti. Aggiungi providers per fissare una specifica istituzione e preservare la tracciabilità delle analisi: molte giurisdizioni richiedono il tasso ufficiale della propria banca centrale quando si convertono importi in valuta estera.
df = pd.read_csv("https://api.frankfurter.dev/v2/rates.csv?base=usd"es=eur&providers=ecb")ECB- Tasso di riferimento della Banca centrale europea, lo standard per IVA e dogane nell'UE.
NBP- Narodowy Bank Polski. L'IVA e l'imposta sulle società in Polonia si calcolano al tasso della NBP.
CNB- Fixing della Banca nazionale ceca, utilizzato per contabilità e imposte in Cechia.
BCB- PTAX del Banco Central do Brasil, riferimento per contratti e imposte in Brasile.
BANXICO- Tasso FIX di Banco de México per liquidare obbligazioni in dollari statunitensi.
Esplora tutte le fonti. Una fonte fissata segue il proprio calendario di pubblicazione, quindi il suo ultimo tasso può essere indietro di un giorno rispetto al tasso combinato più recente.
Serie storiche
Usa from per un intervallo di date e group=month per ottenere una riga per mese. Esegui il parsing della colonna delle date, impostala come indice e traccia grafici o ricampiona i dati. È qui che Frankfurter si distingue in un notebook: serie lunghe e stabili che non vengono modificate retroattivamente.
df = pd.read_csv(
"https://api.frankfurter.dev/v2/rates.csv?from=1949-12-01&base=usd"es=gbp&providers=bbk&group=month",
parse_dates=["date"],
index_col="date",
)
df["rate"].plot() Questo recupera il dollaro statunitense rispetto alla sterlina fino al 1949 dall'archivio della Deutsche Bundesbank. Puoi osservare la parità a 2,80 $ mantenersi stabile per anni per poi rompersi nel 1967. La storia più remota proviene dai fixing di Francoforte della Bundesbank: il dollaro contro il marco dal 1948, e la maggior parte degli altri cambi del dollaro dal 1949 al 1970. La Banca centrale europea subentra dal 1999, quindi per una serie moderna continua usa la combinazione predefinita o providers=ecb.