Logo
AXION

Forex Historical Prices

GET/forex/:ticker/prices

Retrieves comprehensive historical exchange rate data for a specific forex currency pair. This powerful endpoint supports multiple time frame aggregations and time-based filtering for advanced technical analysis, backtesting, and risk management in foreign exchange markets.

Path Parameters

ParameterTypeRequiredDescription
tickerstringRequiredForex currency pair ticker symbol (e.g., "AEDAUD", "EURUSD", "GBPJPY")

Query Parameters

ParameterTypeRequiredDescription
framestringOptional

Time frame for data aggregation. Default: daily.

Value(s)Resolves to
daily, day, ddaily
weekly, wweek
monthly, month, mmonth
quarterly, quarter, qquarter
yearly, year, yyear
tostringOptionalEnd date for historical data (ISO 8601 format). If not provided, returns data up to the latest available.
fromstringOptionalStart date for historical data (ISO 8601 format). Automatically clamped by the system if too far in the past.

Examples:

https://api.axionquant.com/forex/EURUSD/prices
https://api.axionquant.com/forex/GBPUSD/prices?frame=weekly&from=2024-01-01&to=2024-12-31

Response Fields

time string

ISO 8601 timestamp of the data point

ticker string

Forex pair ticker symbol

open string

Opening exchange rate (decimal string)

high string

Highest rate during the period

low string

Lowest rate during the period

close string

Closing exchange rate

volume string

Trading volume (may be "0" for illiquid pairs)

|

Historical Exchange Rates

Request

Sample code
1from axion import Axion
2client = Axion(api_key='axn_123')
3
4prices = client.forex.prices('AEDAUD',
5    frame='daily',
6    from_date='2025-12-01',
7    to_date='2025-12-19'
8)
9print(prices)

Response (Daily Frame)

[
  {
    "time": "2025-12-19T13:26:59.000Z",
    "ticker": "AEDAUD",
    "open": "0.4100",
    "high": "0.4100",
    "low": "0.4100",
    "close": "0.4100",
    "volume": "0"
  },
  {
    "time": "2025-12-18T00:00:00.000Z",
    "ticker": "AEDAUD",
    "open": "0.4100",
    "high": "0.4100",
    "low": "0.4100",
    "close": "0.4100",
    "volume": "0"
  }
]
GET/forex/list/rating

Retrieves all unique rating values available in the forex universe. Filter by analyst rating.

Examples:

https://api.axionquant.com/forex/list/rating
|

List by Rating

Request

Sample code
1from axion import Axion
2client = Axion(api_key='axn_123')
3
4values = client.forex.list('rating')
5print(values)

Response

[
  "buy",
  "neutral",
  "sell",
  "strongbuy",
  "strongsell"
]
GET/forex/list/country

Retrieves all unique country values available in the forex universe. Filter by country name or code.

Examples:

https://api.axionquant.com/forex/list/country
|

List by Country

Request

Sample code
1from axion import Axion
2client = Axion(api_key='axn_123')
3
4values = client.forex.list('country')
5print(values)

Response

[
  "AE",
  "AF",
  "AG",
  "AL",
  "AM",
  "AO",
  "AR",
  "AU",
  "AW",
  "BA",
  "BB",
  "BD",
  "BH",
  "BI",
  "BJ",
  "BM",
  "BN",
  "BO",
  "BR",
  "BS",
  "BT",
  "BW",
  "BY",
  "BZ",
  "CA",
  "CD",
  "CF",
  "CH",
  "CL",
  "CN",
  "CO",
  "CR",
  "CU",
  "CV",
  "CZ",
  "DJ",
  "DK",
  "DO",
  "DZ",
  "EG",
  "ER",
  "ET",
  "EU",
  "FJ",
  "FK",
  "GB",
  "GE",
  "GH",
  "GI",
  "GM",
  "GN",
  "GT",
  "GY",
  "HK",
  "HN",
  "HT",
  "HU",
  "ID",
  "IE",
  "IL",
  "IN",
  "IQ",
  "IR",
  "IS",
  "JM",
  "JO",
  "JP",
  "KE",
  "KG",
  "KH",
  "KM",
  "KR",
  "KW",
  "KY",
  "KZ",
  "LA",
  "LB",
  "LK",
  "LR",
  "LS",
  "LY",
  "MA",
  "MD",
  "MG",
  "MK",
  "MM",
  "MN",
  "MO",
  "MR",
  "MU",
  "MV",
  "MW",
  "MX",
  "MY",
  "MZ",
  "NA",
  "NG",
  "NI",
  "NO",
  "NP",
  "NZ",
  "OM",
  "PA",
  "PE",
  "PF",
  "PG",
  "PH",
  "PK",
  "PL",
  "PY",
  "QA",
  "RO",
  "RS",
  "RU",
  "RW",
  "SA",
  "SB",
  "SC",
  "SD",
  "SE",
  "SG",
  "SH",
  "SL",
  "SO",
  "SR",
  "ST",
  "SV",
  "SY",
  "SZ",
  "TH",
  "TJ",
  "TM",
  "TN",
  "TO",
  "TR",
  "TT",
  "TW",
  "TZ",
  "UA",
  "UG",
  "US",
  "UY",
  "UZ",
  "VE",
  "VN",
  "VU",
  "WS",
  "YE",
  "ZA",
  "ZM",
  "crypto/XTVCOU",
  "metal/silver"
]

Futures API

The Futures API provides comprehensive access to futures contract data including ticker metadata, contract specifications, and historical price data across multiple exchanges. This API is essential for quantitative analysis, trading strategy development, and market research on derivative instruments.

GET/futures/tickers

Retrieves a complete list of all available futures contracts with their metadata. This endpoint supports filtering by exchange to narrow down results. Returns contract specifications including ticker symbol, full contract name, exchange, and unique identifier for detailed lookup operations.

Query Parameters

ParameterTypeRequiredDescription
exchangestringOptional

Filter contracts by exchange.

view all values

Examples:

https://api.axionquant.com/futures/tickers
https://api.axionquant.com/futures/tickers?exchange=CMX

Response Fields

id number

Unique database identifier

ticker string

Contract ticker symbol (e.g., "ALI", "M6A")

name string

Full contract name with expiration

exchange string

Trading exchange abbreviation

|

All Futures Tickers

Request

Sample code
1from axion import Axion
2client = Axion(api_key='axn_123')
3
4tickers = client.futures.tickers(exchange='CME')
5print(tickers)

Response

[
  {
    "id": 12,
    "ticker": "ESG",
    "name": "E-mini S&P 500 ESG Index Future",
    "exchange": "CME"
  },
  {
    "id": 50,
    "ticker": "BTC",
    "name": "Bitcoin Futures",
    "exchange": "CME"
  },
  {
    "id": 53,
    "ticker": "6N",
    "name": "New Zealand Dollar Futures",
    "exchange": "CME"
  },
  {
    "id": 6,
    "ticker": "HUF",
    "name": "Hungarian Forint Futures",
    "exchange": "CME"
  },
  {
    "id": 54,
    "ticker": "6S",
    "name": "Swiss Franc Futures",
    "exchange": "CME"
  },
  {
    "id": 55,
    "ticker": "ESR",
    "name": "EURO SHORT-TERM RATE (ESTR) FUT",
    "exchange": "CME"
  },
  {
    "id": 9,
    "ticker": "QG",
    "name": "E-mini Natural Gas Futures",
    "exchange": "NYM"
  }
]
GET/futures/gainers

Retrieves the top gaining futures contracts over a specified lookback period. Returns contract ticker symbols with their percentage change, sorted from highest gainer to lowest. Useful for identifying commodity and financial futures momentum.

Query Parameters

ParameterTypeRequiredDescription
daysintegerOptionalLookback period in days (default: 5)
limitintegerOptionalMaximum number of results to return (default: 10)

Examples:

https://api.axionquant.com/futures/gainers
https://api.axionquant.com/futures/gainers?days=30&limit=20

Response Fields

ticker string

Futures contract ticker symbol

pctchange number

Percentage change over the lookback period

|

Futures Gainers

Request

Sample code
1from axion import Axion
2client = Axion(api_key='axn_123')
3
4gainers = client.futures.gainers(days=5, limit=10)
5print(gainers)

Response

[
  {
    "ticker": "ALI",
    "pctchange": 4.567
  },
  {
    "ticker": "M6A",
    "pctchange": 3.456
  },
  {
    "ticker": "BTC",
    "pctchange": 2.345
  }
]
GET/futures/losers

Retrieves the top losing futures contracts over a specified lookback period. Returns contract ticker symbols with their percentage change, sorted from most negative to least negative. Useful for identifying commodity and financial futures weakness.

Query Parameters

ParameterTypeRequiredDescription
daysintegerOptionalLookback period in days (default: 5)
limitintegerOptionalMaximum number of results to return (default: 10)

Examples:

https://api.axionquant.com/futures/losers
https://api.axionquant.com/futures/losers?days=30&limit=20

Response Fields

ticker string

Futures contract ticker symbol

pctchange number

Percentage change over the lookback period

|

Futures Losers

Request

Sample code
1from axion import Axion
2client = Axion(api_key='axn_123')
3
4losers = client.futures.losers(days=5, limit=10)
5print(losers)

Response

[
  {
    "ticker": "CL",
    "pctchange": -5.678
  },
  {
    "ticker": "NG",
    "pctchange": -4.567
  },
  {
    "ticker": "ES",
    "pctchange": -3.456
  }
]