Skip to main content

Simple foreign exchange rates retrieval API

Project description

quickforex

PyPI version Test codecov

Quick and easy access to foreign exchange rates. By default, this API uses exchangerate.host as backend.

Getting started

Using quickforex from a Python script

Get the last available rate for a single currency pair

from quickforex import CurrencyPair
import quickforex


quickforex.get_latest_rate("EUR/USD")  # -> Decimal(1.16)
quickforex.get_latest_rate("EURUSD")
quickforex.get_latest_rate("EUR", "USD")
quickforex.get_latest_rate(("EUR", "USD"))
quickforex.get_latest_rate(CurrencyPair("EUR", "USD"))

Get the last available rate for multiple currency pairs

from quickforex import CurrencyPair
import quickforex

quickforex.get_latest_rate("EUR/USD", "EUR/GBP")  # -> {CurrencyPair("EUR", "USD"): Decimal(1.16), CurrencyPair("EUR", "GBP"): Decimal(0.84)}
quickforex.get_latest_rate(["EUR/USD", "EUR/GBP"])

Get the historical rate for one or more currency pairs

from datetime import date
from quickforex import CurrencyPair
import quickforex

quickforex.get_historical_rate("BTC/USD", as_of=date(year=2021, month=1, day=1))  # -> Decimal(29388.20)
quickforex.get_historical_rates("EUR/USD", "EUR/GBP", as_of=date(year=2021, month=1, day=1))  # -> {CurrencyPair("EUR", "USD"): Decimal(1.21), CurrencyPair("EUR", "GBP"): Decimal(0.89)}

Get the rates for one or more currency pairs between two historical dates

from datetime import date
from quickforex import CurrencyPair
import quickforex

quickforex.get_rates_time_series(
    "EURUSD", "EURGBP",
    start_date=date(year=2020, month=1, day=1),
    end_date=date(year=2021, month=1, day=1)
)

# -> {
#    CurrencyPair("EUR", "USD"): {
#        date(year=2020, month=1, day=1): Decimal(1.12), 
#        ..., 
#        date(year=2021, month=1, day=1): Decimal(1.21)
#    },
#    CurrencyPair("EUR", "GBP"): { ... }
# }

Using quickforex from the command line

Get the last available rate for one or more currency pairs

 quickforex latest EURUSD EURGBP

{
    "EUR": {
        "GBP": 0.846354,
        "USD": 1.164798
    }
}

Get the historical rate for one or more currency pairs

 quickforex history --date 2020-01-01 EURUSD EURGBP

{
    "EUR": {
        "GBP": 0.8462,
        "USD": 1.1221
    }
}

Get the rates for one or more currency pairs between two historical dates

 quickforex series --from 2020-01-01 --to 2020-12-31 EURGBP EURUSD GBPJPY

{
    "EUR": {
        "GBP": {
            "2020-01-01": 0.8462,
            "2020-01-02": 0.8466,
            "2020-01-03": 0.8495,
            ...
            "2020-12-30": 0.903111,
            "2020-12-31": 0.892135
        },
        "USD": { ... }
    },
    "GBP": {"JPY": { ... }}
}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

quickforex-0.1.3.tar.gz (15.0 kB view details)

Uploaded Source

Built Distribution

quickforex-0.1.3-py3-none-any.whl (18.7 kB view details)

Uploaded Python 3

File details

Details for the file quickforex-0.1.3.tar.gz.

File metadata

  • Download URL: quickforex-0.1.3.tar.gz
  • Upload date:
  • Size: 15.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9

File hashes

Hashes for quickforex-0.1.3.tar.gz
Algorithm Hash digest
SHA256 03f762387088421138adde05452b9421a258afac55574bcb398d99ea6a803473
MD5 54ab2115418ef812fd6bbfdb67cdc7bc
BLAKE2b-256 ef8d78c016025b89c6a86e2c8d720744637245211bcd09e0ceb94afd20c51871

See more details on using hashes here.

File details

Details for the file quickforex-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: quickforex-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 18.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9

File hashes

Hashes for quickforex-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 06d2d29cb8c2f598190e3d0b31403d62cf7423e3b5754351cec0c523dd15a70b
MD5 b1dff1bc12654336e018f63f24183447
BLAKE2b-256 bc0ab68473a6a3800d7c12955ca5fdb67f9f216ed8875b6f1ff1f69527013ded

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page