Fastmarkets市场数据API
Table of Contents
市场数据 API
市场数据API提供市场价格及其相关金融产品数据,包括:伦敦金属交易所(LME)延迟结算价、LME外汇定价、芝加哥商品交易所集团(CME Group)结算价以及上海期货交易所(SHFE)结算价。所有价格均与使用代码作为标识符的金融产品相关联。
API技术文档
有关此 API 规范的更多信息以及如何试用,请参阅API 的文档页面(Swagger)。
您可以尝试使用Fastmarkets平台凭据运行真实的 API 调用。请联系Fastmarkets团队,获取您帐户的 Swagger 访问权限。
认证
所有Fastmarkets API 都需要有效的访问令牌才能检索授权数据。要生成访问令牌,请参阅身份验证 API 指南,并选择范围: fastmarkets.marketdata.api。
然后使用“Bearer”前缀将令牌添加到 Authorization 标头参数中。例如:
Authorization: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IjdjZTkyOTQ4NDk0ODRkMDM4YzQ
获取单一价格
要返回特定交易品种的最新评估价格,请使用“价格”接口。在本例中,使用代码“XL-CA-FRC.O”返回“LME铜现货官方价格”的最新可用价格数据(买价、中间价和卖价)。
响应中返回最新可用数据的买价、中间价和卖价值以及价格时间戳。
示例请求(Python)
POST https://api.fastmarkets.com/marketdata/v1/Prices HTTP/1.1
Host: api.fastmarkets.com
Content-Type: application/x-www-form-urlencoded
Authorization: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IjdjZTkyOTQ4NDk0ODRkMDM4YzQ
Symbols=XL-CA-FRC.O&fields=bid,mid,askurl = "https://api.fastmarkets.com/marketdata/v1/Prices"
query = {'symbols':'XL-CA-FRC.O', 'fields':['bid', 'mid', 'ask']}
headers = {
'Authorization': 'Bearer ' + accessToken.access_token,
'cache-control': 'no-cache'
}
req = requests.request("GET", url, headers=headers, data = query)
singlePrice = json.loads(req.content)示例响应(JSON):
{
"instruments": [
{
"symbol": "XL-CA-FRC.O",
"bid": 11280.0,
"bidTime": "2025-12-02T12:46:13.0000000+00:00",
"mid": 11282.5,
"midTime": "2025-12-02T12:46:13.0000000+00:00",
"ask": 11285.0,
"askTime": "2025-12-02T12:46:13.0000000+00:00"
}
]
}符号和字段参数的值始终是必需的。
获取多个价格
也可以使用价格端点,在一次请求中请求多种金融产品的价格。
在下面的示例请求中,请求了三个不同的交易品种。结果中,将为所有交易品种提供三个价格结果。
示例请求(Python)
POST https://api.fastmarkets.com/marketdata/v1/Prices HTTP/1.1
Host: api.fastmarkets.com
Content-Type: application/x-www-form-urlencoded
Authorization: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IjdjZTkyOTQ4NDk0ODRkMDM4YzQ
Symbols=XL-CA-FRC.O,XL-NI-FRC.O,XL-SN-FRC.O&Fields=bid,mid,askurl = "https://api.fastmarkets.com/marketdata/v1/Prices"
query = {
'symbols': ['XL-CA-FRC.O','XL-NI-FRC.O','XL-SN-FRC.O'],
'fields': ['bid', 'mid', 'ask']
}
headers = {
'Authorization': 'Bearer ' + accessToken.access_token,
'cache-control': 'no-cache'
}
req = requests.request("GET", url, headers=headers, data = query)
multiplePrices = json.loads(req.content)示例响应(JSON):
{
"instruments": [
{
"symbol": "XL-CA-FRC.O",
"bid": 11280.0,
"bidTime": "2025-12-02T12:46:13.0000000+00:00",
"mid": 11282.5,
"midTime": "2025-12-02T12:46:13.0000000+00:00",
"ask": 11285.0,
"askTime": "2025-12-02T12:46:13.0000000+00:00"
},
{
"symbol": "XL-NI-FRC.O",
"bid": 14715.0,
. . .
},
{
"symbol": "XL-SN-FRC.O",
"bid": 39245.0,
. . .
}
]
}获取一系列价格
使用 Prices/History 端点,可以检索指定时间段内的一系列价格。在本例中,请求获取截至当前时间(撰写本文时为 2025 年 12 月 3 日 10:18)的过去 6 天的价格。响应按日期升序返回价格。由于 11 月 29 日和 30 日是周末,因此未提供这两天的数据。响应按日期降序返回价格。
示例请求(Python)
POST https://api.fastmarkets.com/marketdata/v1/Prices/History HTTP/1.1
Host: api.fastmarkets.com
Content-Type: application/x-www-form-urlencoded
Authorization: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IjdjZTkyOTQ4NDk0ODRkMDM4YzQ
Symbols=XL-CA-FRC.O&Fields=bid,mid,ask&Interval=6:0:0:0url = "https://api.fastmarkets.com/marketdata/v1/Prices/History"
query = {
'symbols': 'XL-CA-FRC.O',
'Fields': ['bid', 'mid', 'ask'],
'Interval': '6:0:0:0'
}
headers = {
'Authorization' : 'Bearer ' + accessToken.access_token,
'cache-control' : 'no-cache'
}
req = requests.request("GET", url, headers=headers, data = query)
priceRange = json.loads(req.content)示例响应(JSON):
{
"instruments": [
{
"symbol": "XL-CA-FRC.O",
"prices": [
{
"time": "2025-11-27T12:46:12.0000000+00:00",
"bid": 10933.0,
"ask": 10934.0,
"mid": 10933.5
},
{
"time": "2025-11-28T12:45:33.0000000+00:00",
"bid": 11003.0,
"ask": 11004.0,
"mid": 11003.5
},
{
"time": "2025-12-01T12:46:41.0000000+00:00",
"bid": 11298.0,
"ask": 11299.0,
"mid": 11298.5
},
{
"time": "2025-12-02T12:46:13.0000000+00:00",
"bid": 11280.0,
"ask": 11285.0,
"mid": 11282.5
}
]
}
]
}其他用于检索价格历史记录的字段
还有其他几个可选字段可用于控制所请求的价格历史记录:
| 字段名称 | 描述 |
|---|---|
| 开始日期 |
以 ISO-8601 格式指定的日期/时间。例如:2025-09-10T10:00:00Z
您可以请求从该开始时间向前或向后计算的价格范围。 如果您不提供值,我们将假定开始时间为现在,您只能提供一个正的区间或计数来请求从现在开始的范围。 |
| 间隔 |
TimeSpan 的格式为天:小时:分钟:秒。指定开始时间时,使用负值表示请求一个从开始时间到指定时间范围的时间。如果 开始时间为空,则间隔必须为正数,表示它被用于请求一个截至到当前的时间范围
您必须指定间隔或条数。 |
| 条数 |
您要检索的价格数量。如果您指定了开始时间,请使用负值来请求直到开始之前的价格。如果开始时间为空,则条数必须为正数,并且用于请求直到当前时间的价格范围。
您必须指定间隔或条数。 |
市场价格数据类型
数据结构因来源和合同类型而异。为获得正确的价格值,应在报价请求中提供相应的字段:
| 来源标签 | 字段 |
|---|---|
| 芝加哥商品交易所 (CME)、芝加哥期货交易所 (CBOT)、纽约商品交易所 (NYMEX) | 结算价 |
| LME、OTC、(LBMA) | 中间价、出价、要价 |
| 上海期货交易所 (SHFE)、纽约商品交易所 (COMEX) | 结算价,收盘价 |
| 场外交易 (.E) | 出价,询价 |
| 场外交易 | 伦敦下午4点关门,UTC午夜关门 |
COMEX 请求示例
POST https://api.fastmarkets.com/marketdata/v1/Prices HTTP/1.1
Host: api.fastmarkets.com
Content-Type: application/x-www-form-urlencoded
Authorization: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IjdjZTkyOTQ4NDk0ODRkMDM4YzQ
Symbols=XC-ALI-FR1M&fields=settlement,close示例响应(JSON):
{
"instruments": [
{
"symbol": "XC-ALI-FR1M",
"close": 2711.25,
"closeTime": "2025-11-21T07:11:05.0000000+00:00",
"settlement": 2849.75,
"settlementTime": "2025-12-02T00:00:00.0000000+00:00"
}
]
}场外交易伦敦金银市场协会(OTC LBMA)请求示例
POST https://api.fastmarkets.com/marketdata/v1/Prices HTTP/1.1
Host: api.fastmarkets.com
Content-Type: application/x-www-form-urlencoded
Authorization: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IjdjZTkyOTQ4NDk0ODRkMDM4YzQ
Symbols=XO-AULBMA-T.AM&fields=bid,mid,ask示例响应(JSON):
{
"instruments": [
{
"symbol": "XO-AULBMA-T.AM",
"bid": 4185.7,
"bidTime": "2025-12-02T10:32:16.0000000+00:00",
"mid": 1953.5,
"midTime": "2023-05-26T00:00:00.0000000+00:00",
"ask": 4185.7,
"askTime": "2025-12-02T10:32:16.0000000+00:00"
}
]
}场外交易请求示例
POST https://api.fastmarkets.com/marketdata/v1/Prices HTTP/1.1
Host: api.fastmarkets.com
Content-Type: application/x-www-form-urlencoded
Authorization: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IjdjZTkyOTQ4NDk0ODRkMDM4YzQ
Symbols=XO-USDCAD-RRM1&fields=closelondon4pm,closeutcmidnight示例响应(JSON):
{
"instruments": [
{
"symbol": "XO-USDCAD-RRM1",
"closelondon4pm": -23.75,
"closelondon4pmTime": "2025-12-02T15:59:54.0000000+00:00",
"closeutcmidnight": -23.02,
"closeutcmidnightTime": "2025-12-02T23:59:54.0000000+00:00"
}
]
}场外交易请求示例
POST https://api.fastmarkets.com/marketdata/v1/Prices HTTP/1.1
Host: api.fastmarkets.com
Content-Type: application/x-www-form-urlencoded
Authorization: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IjdjZTkyOTQ4NDk0ODRkMDM4YzQ
Symbols=XO-AULBMA-T.AM&fields=bid,mid,ask示例响应(JSON):
{
"instruments": [
{
"symbol": "XO-AULBMA-T.AM",
"bid": 4185.7,
"bidTime": "2025-12-02T10:32:16.0000000+00:00",
"mid": 1953.5,
"midTime": "2023-05-26T00:00:00.0000000+00:00",
"ask": 4185.7,
"askTime": "2025-12-02T10:32:16.0000000+00:00"
}
]
}CBOT 请求示例
POST https://api.fastmarkets.com/marketdata/v1/Prices HTTP/1.1
Host: api.fastmarkets.com
Content-Type: application/x-www-form-urlencoded
Authorization: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IjdjZTkyOTQ4NDk0ODRkMDM4YzQ
Symbols=XB-ZC-FSH26&fields=settlement示例响应(JSON):
{
"instruments": [
{
"symbol": "XB-ZC-FSH26",
"settlement": 450.0,
"settlementTime": "2025-12-02T00:00:00.0000000+00:00"
}
]
}检索金融产品数据
所有市场数据价格均与特定金融工具相关。金融工具包含多种属性,所有这些属性均可通过“金融产品”接口查看。
如果未提供任何输入参数,则返回调用服务有权查看的所有金融产品。可以使用“Symbols”(符号)输入参数返回特定金融工具。
示例请求(Python)
POST https://api.fastmarkets.com/marketdata/v1/Instruments HTTP/1.1
Host: api.fastmarkets.com
Content-Type: application/x-www-form-urlencoded
Authorization: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IjdjZTkyOTQ4NDk0ODRkMDM4YzQ
Symbols=XL-CA-FRC.Ourl = "https://api.fastmarkets.com/marketdata/v1/Instruments "
query = {'symbols': 'XL-CA-FRC.O'}
headers = {
'Authorization' : 'Bearer ' + accessToken.access_token,
'cache-control' : 'no-cache'
}
req = requests.request("GET", url, headers=headers, data = query)
priceRange = json.loads(req.content)示例响应(JSON):
{
"instruments": [
{
"symbol": "XL-CA-FRC.O",
"description": "LME Copper Cash (Nov 25) Official USD/t",
"descriptionShort": "LME CA Cash (Nov 25) Off",
"type": {
"code": "FUT",
"label": "Future"
},
"source": {
"code": "LME",
"label": "LME"
},
"product": {
"commodity": {
"code": "CU",
"label": "Copper"
},
"code": "CA",
"label": "Copper Grade A"
},
"maturity": {
"type": {
"code": "R",
"label": "Rolling"
},
"prompt": {
"code": "C",
"label": "Cash"
},
"date": "2025-11-13",
"isExpired": false
},
"currency": {
"code": "USD",
"label": "US Dollar"
},
"unitOfMeasure": {
"code": "t",
"label": "Tonne"
},
"lotSize": 25,
"delayClass": {
"shortLabel": "Live",
"code": "Live",
"label": "Delay Class - Live"
},
"aggregations": [
{
"name": "OHLCV",
"field": "ask",
"schema": "ohlcV-ask",
"periods": [
"P1D",
"P1W",
"P1M"
]
}
],
"frequency": [
"Daily"
]
}
]
}交易所符号学
市场数据符号系统旨在保持一致性、可扩展性、明确性、机器可读性、URL编码后保持不变、易于识别,并在视觉上与实际价格符号保持一致。该系统允许扩展以涵盖不代表内在属性的新金融工具和定价方面。
所有市场数据代码均遵循相同的形成规则:
未来单价:{兑换码}-{兑换产品}-FS{提示月份}{提示年份}
未来滚动:{兑换代码}-{兑换产品}-{FR/RR(未来滚动/滚动提示)}{M/Y(月/年)}
例如:
- XB-ZS-FSX25(CBOT | 大豆 | 期货 | 单价 | 11月 | 2025年)
- XZ-LBR-FSZ23(芝加哥商品交易所 | 木材 | 期货 | 单价 | 12月 | 2023年)
- XN-NG-FR11M(NYMEX | 天然气 | 未来 | 滚动 | 11M)
- XZ-USDSOFR-RR1Y(芝商所 | 期限 SOFR | 滚动即期 | 1 年期)
以下是不同交易所的编码表:
| 代码 | 交换 |
|---|---|
| XL | 伦敦金属交易所(LME) |
| XC | 芝加哥商品交易所(CME集团)COMEX |
| XN | 芝加哥商品交易所(CME集团)纽约商品交易所 |
| XS | 上海期货交易所(SHFE) |
| XO | 非交易所交易,场外交易(OTC) |
| XD | 大连商品交易所(DCE) |
| XE | 泛欧交易所 |
| XB | 芝加哥商品交易所(CME集团)CBOT |
| XM | 明尼阿波利斯谷物交易所 (MGX) |
| XA | 布宜诺斯艾利斯终点站市场 (MATBA) |
| XI | 洲际交易所 (ICE) |
| XZ |
芝加哥商品交易所(CME集团)- CME (芝加哥商品交易所集团旗下子品牌,名称容易混淆,也叫 CME。包括木材和活猪) |
月份代码:
| 姓名 | 代码 |
|---|---|
| 一月 | F |
| 二月 | G |
| 三月 | H |
| 四月 | J |
| 五月 | K |
| 六月 | M |
| 七月 | N |
| 八月 | Q |
| 九月 | U |
| 十月 | V |
| 十一月 | X |
| 十二月 | Z |
技术API信息
如需了解更多关于我们 API 的信息,请参阅API 技术信息。
更多帮助
如果您还有其他问题或需要进一步的帮助,请查看我们支持中心提供的所有帮助内容。
如果您找不到所需信息并希望联系我们的支持团队,那么让我们为您提供帮助吧。