Historical Daily USD and Most Tradable Currencies FX Rates

Free
Finance
tick

Daily Data

tick

Updated Weekly

tick

> Jan 1971

tick

35 Currencies

tick

Worldwide

Summary

Historical daily exchange rates for 35 foreign currencies relative to the U.S. Dollar and most tradable currencies based on Federal Reserve data since 1971

This is a sample visualization of a small subset of this data product.
Loading...
Charts of Historical Daily USD and Most Tradable Currencies FX Rates

Key Features

  • Daily FX rates and inverse rates data updated weekly
  • Rates for USD and other top-8 most tradable currencies
  • Covers 35 countries' monetary units
  • Historical data goes back to 1971

Documentation

Applications

  • Fundamental financial and economic analysis
  • Back-testing investment and risk-return hypothesis
  • Historical reference of how a currency pair has traded in the past
  • Help forex traders to discern the direction of a given currency pair

Overview

Updated weekly, this data product provides Historical Daily Foreign Exchange (FX) Rates for 35 foreign currencies relative to the U.S. Dollar based on Federal Reserve System (FED) data since 1971.

FED is the central banking system of the United States of America. It was created on December 23, 1913, with the enactment of the Federal Reserve Act, after a series of financial panics led to the desire for central control of the monetary system in order to alleviate financial crises.

On top of the USD FX rates data from FED, ALTADATA calculates and provides FX and inverse rates for the other
Top-8 Most Tradable Currencies.

The foreign exchange market (also known as forex, FX or the currency market) is an over-the-counter (OTC) global marketplace that determines the exchange rate for currencies around the world. Participants are able to buy, sell, exchange and speculate on currencies. Foreign exchange markets are made up of banks, forex dealers, commercial companies, central banks, investment management firms, hedge funds, retail forex dealers and investors.

Although the foreign exchange market is often billed as a banker's game, currencies can sometimes be great diversification for a portfolio that might have hit a bit of a rut. Here are the Top-8 Most Tradable Currencies according to Investopedia:

  • U.S. Dollar (USD)
  • European Euro (EUR)
  • Japanese Yen (JPY)
  • British Pound (GBP)
  • Swiss Franc (CHF)
  • Canadian Dollar (CAD)
  • Australian Dollar (AUD)
  • South African Rand (ZAR)

Currency Coverage

This data product covers 35 currencies, as listed in below table:

Country Name Monetary Unit
Australia Dollar
Austria Schilling (1)
Belgium Franc (1)
Brazil Real (3)
Canada Dollar
China, P.R. Yuan (3)
Denmark Krone
EMU member countries Euro
European Union Ecu (2)
Finland Markka (1)
France Franc (1)
Germany Deutsche Mark (1)
Greece Drachma (1)
Hong Kong Dollar (3)
India Rupee (3)
Ireland Pound (1)
Italy Lira (1)
Japan Yen
Country Name Monetary Unit
Malaysia Ringgit
Mexico Peso (3)
Netherlands Guilder (1)
New Zealand Dollar
Norway Krone
Portugal Escudo (1)
Singapore Dollar (3)
South Africa Rand
South Korea Won (3)
Spain Peseta (1)
Sri Lanka Rupee (3)
Sweden Krona
Switzerland Franc
Taiwan Dollar (3)
Thailand Baht (3)
United Kingdom Pound
Venezuela Bolivar (3)
. .

(1) For the EU countries adopted Euro, you can find more info at the "EU Countries and the euro" like the adoption dates and rates.

(2) The European Currency Unit (ECU) was a unit of account used by European Economic Community composed of a basket of member country currencies. The ECU came in to operation on 13 March 1979, and was assigned the ISO 4217 code. The ECU replaced the European Unit of Account (EUA) at parity in 1979, and it was later replaced by the by euro (EUR) at parity on 1 January 1999.

(3) For the following countries, earliest available data at FED varies, such as: 1973 (India, Sri Lanka), 1981 (P. R. of China, Hong Kong, Mexico, Singapore, South Korea, Taiwan, Thailand), 1983 (Taiwan), 1993 (Mexico), 1995 (Brazil, Venezuela)

Data Collection Methodology

The given exchange rates are certified by the Federal Reserve Bank of New York for customs purposes as required by section 522 of the amended Tariff Act of 1930. These rates are also those required by the SEC for the integrated disclosure system for foreign private issuers. The information is based on data collected by the Federal Reserve Bank of New York from a sample of market participants.

  • The daily exchange rates are collected weekly from the Federal Reserve System (FED)
  • Using FED's USD data, other Top-8 Most Tradable Currencies are calculated and provided by ALTADATA
  • All the currency exchange rates are cleansed and organized to provide a ready for analysis dataset for the investors
  • Historical and current FX rates are standardized for every country, with the added inverse currency exchange rates

Dictionary

Filter
Column
Title
Data Type
Description
dateDateDateDate of the financial record
country_nameCountry Name TextName of the country
monetary_unitMonetary UnitTextThe standard unit of currency that forms the basis of a country's domestic money supply
usd_rateUSD RateFloat1 USD equivalent of the country's monetary unit
usd_inverse_rateUSD Inverse RateFloatValue of 1 unit of the given country's currency in U.S. Dollar
eur_rateEUR RateFloat1 EUR equivalent of the country's monetary unit
eur_inverse_rateEUR Inverse RateFloatValue of 1 unit of the given country's currency in European Euro
jpy_rateJPY RateFloat1 JPY equivalent of the country's monetary unit
jpy_inverse_rateJPY Inverse RateFloatValue of 1 unit of the given country's currency in Japanese Yen
gbp_rateGBP RateFloat1 GBP equivalent of the country's monetary unit
gbp_inverse_rateGBP Inverse RateFloatValue of 1 unit of the given country's currency in British Pound
chf_rateCHF RateFloat1 CHF equivalent of the country's monetary unit
chf_inverse_rateCHF Inverse RateFloatValue of 1 unit of the given country's currency in Swiss Franc
cad_rateCAD RateFloat1 CAD equivalent of the country's monetary unit
cad_inverse_rateCAD Inverse RateFloatValue of 1 unit of the given country's currency in Canadian Dollar
aud_rateAUD RateFloat1 AUD equivalent of the country's monetary unit
aud_inverse_rateAUD Inverse RateFloatValue of 1 unit of the given country's currency in Australian Dollar
zar_rateZAR RateFloat1 ZAR equivalent of the country's monetary unit
zar_inverse_rateZAR Inverse RateFloatValue of 1 unit of the given country's currency in South African Rand

Sample Data

API

ALTADATA provides a powerfull API, compatible with JSON, CSV formats. You can connect, update and analyze our data products with cURL, Python, R, Ruby, Java or Javascript

Authentication

Getting an API key

You need to subscribe to an ALTADATA data product to get an API key. Once you subscribe to the data product you can find your API key on your Account Dashboard.

Auhenticating your requests

`api_key` is your access token. This token must be included on each API call with either a HTTP Header Authorization, or a query parameter api_key.

Example: https://www.altadata.io/data/api/eq_09_fedus_02?api_key=YOUR_API_KEY

ALTADATA API Reference Table

Parameter Type Parameter Explanation Available Values Default
General size The number of records will be returned for each page. 5 - 100 20
General page The page number. It starts at 1 and increments one by one. Each page returns records that row count equals to the size parameter 1- ... 1
General format The data return format of API call json , csv json
General collapse The aggregation format of API call Examples are monthly, yearly, bystate, bycountry, etc. Refer to the data product documentation to see available aggregations for it. null
Select columns Column select is how you specify the content of an SQL SELECT c_only, c_certain, c_columns FROM clause. More detail is in the following sections. *
Order order_by Column order is how you specify the content of an SQL ORDER BY clause. More detail is in the following sections. null
Lookup vary by column name Column lookups are how you specify the content of an SQL WHERE clause. More detail is in the following sections. *

Select

Column select is how you specify the content of an SQL SELECT c_only, c_certain, c_columns FROM clause. It specifies as a keyword argument to the query string of API Call URL. Basic usage is a comma-separated list of column names. If not given, the default value is *(asterisk).

Example 1 :

Query : ?columns=C1,C2,C3 SQL Equivalent : Select C1,C2,C3 from DATA_PRODUCT

Example 2 :

Query : Not Given | ?columns= | ?columns=* SQL Equivalent : Select * from DATA_PRODUCT

Order

Column order is how you specify the content of an SQL ORDER BY clause. It specifies as a keyword argument to the query string of API Call URL. Basic usage is a comma-separated list of column names where each column name has an appropriate suffix (asc,desc) after _(underscore) or no suffix (means ascending).

Example :

Query : ?order_by=C1_asc,C2,C3_desc,C4_asc SQL Equivalent : Select * from DATA_PRODUCT order by C1 asc, C2, C4 desc, C4 asc

Order Type Suffix
Ascending null
Ascending asc
Descending desc

Lookup

Column lookups are how you specify the content of an SQL WHERE clause. They’re specifies as keyword arguments to the query string of API Call URL. Basic usage is appending _(underscore) then lookup type as a suffix to name of the column that you want to filter. The query parameter for a column is built like the format {COLUMN_NAME}_{LOOKUP_TYPE}

As a convenience when no lookup type is provided

Lookup Type Suffix Value Type Example SQL Equivalent
Equal to null String | Numeric | Datetime ?COLUMN=VALUE Select * from DATA_PRODUCT where COLUMN=VALUE
Equal to eq String | Numeric | Datetime ?COLUMN_eq=VALUE Select * from DATA_PRODUCT where COLUMN=VALUE
Not Equal to neq String | Numeric | Datetime ?COLUMN_neq=VALUE Select * from DATA_PRODUCT where COLUMN<>VALUE
Greater Than gt Numeric | Datetime ?COLUMN_gt=VALUE Select * from DATA_PRODUCT where COLUMN>VALUE
Greater Than or Equal to gte Numeric | Datetime ?COLUMN_gte=VALUE Select * from DATA_PRODUCT where COLUMN>=VALUE
Less Than lt Numeric | Datetime ?COLUMN_lt=VALUE Select * from DATA_PRODUCT where COLUMN,VALUE
Less Than or Equal to lte Numeric | Datetime ?COLUMN_lte=VALUE Select * from DATA_PRODUCT where COLUMN<=VALUE
In in String ?COLUMN_in=V1,V2,V3 Select * from DATA_PRODUCT where COLUMN in ('V1','V2','V3')
Not In notin String ?COLUMN_notin=V1,V2,V3 Select * from DATA_PRODUCT where COLUMN not in ('V1','V2','V3')

Data Access Examples

cURL
curl \ -H 'Authorization: api_key' \ 'https://www.altadata.io/data/api/eq_09_fedus_02'
Python (requests)
response = requests.get( 'https://www.altadata.io/data/api/eq_09_fedus_02', headers={'Authorization': 'api_key'} )
Ruby (open-uri)
require 'open-uri' response = URI.open('https://www.altadata.io/data/api/eq_09_fedus_02', "Authorization" => "api_key" )
Java (OkHttp)
Request request = new Request.Builder() .url("https://www.altadata.io/data/api/eq_09_fedus_02") .addHeader("Authorization", "api_key") .build(); Call call = client.newCall(request); Response response = call.execute();
Javascript (axios)
axios.request({ url: 'https://www.altadata.io/data/api/eq_09_fedus_02', method: 'get', headers: { 'Authorization', 'api_key'} }) .then(response => { console.log(response.data) })
R ( jsonlite )
library(jsonlite) data <- fromJSON(`https://www.altadata.io/data/api/eq_09_fedus_02`)

Frequently Asked Questions

HOW DO I SUBSCRIBE TO DATA PRODUCTS ON ALTADATA?
DO YOU PROVIDE CUSTOM DATASETS UPON REQUEST?
WHAT ARE THE DIFFERENT WAYS I CAN ACCESS MY SUBSCRIPTION DATA?
HOW CAN I QUICKLY LOOK AT WHAT IS IN THE DATA THAT I SUBSCRIBED TO?
HOW CAN I JOIN ALTADATA PARTNER NETWORK? DO YOU HAVE A LIST OF REQUIREMENTS?