API Coinbase

Coinbase

 

支持的 API

 

 

最常见的用途

 

WebSockets API

WebSocket 数据源公开可用,为订单和交易提供实时市场数据更新。生产环境支持两个端点:

 

 

您可以订阅以下频道:

 

方法 参数 描述
SubscribeHeartBeat   实时服务器 ping,以保持所有连接处于打开状态。
SubscribeStatus aProductId:产品的 id 按预设间隔发送所有产品和货币信息
SubscribeCandles aProductId:产品的 id 产品蜡烛图实时更新
SubscribeTicker aProductId:产品的 id 每次成交时实时价格更新
SubscribeTickerBatch aProductId:产品的 id 每 5000 毫秒实时更新一次价格
SubscribeLevel2 aProductId:产品的 id 所有更新及保持订单簿快照的最简便方式
SubscribeMarketTrades aProductId:产品的 id 每次市场成交时的实时更新
SubscribeUser aProductId:产品的 id 仅发送包含已认证用户的消息
SubscribeFuturesBalanceSummary   用户合约余额每次变化时的实时更新

 

User 和 FuturesBalanceSummary 频道需要认证,请先在您的 Coinbase 账户中申请 API 密钥,然后在组件的 Coinbase 属性中设置这些值:

 

 

身份验证将带来以下几项好处:

  1. 您作为一方参与的消息会被展开,并包含更多有用字段。
  2. 您将收到私有消息,例如您设置的止损单的生命周期信息

 

 

 

REST API

私有端点

私有端点可用于订单管理和账户管理。

在签署任何请求之前,您必须通过 Coinbase Pro 网站创建一个 API 密钥。该 API 密钥将绑定到特定的配置文件。创建密钥后,您将获得以下 3 项信息,必须牢记:

 

 

密钥和密钥 Secret 将由 Coinbase Pro 随机生成并提供;密码短语由您提供,以进一步保护您的 API 访问安全。Coinbase Pro 存储您密码短语的加盐哈希值用于验证,但如果您忘记密码短语,将无法找回。

 

您可以限制 API 密钥的功能。在创建密钥之前,您必须选择该密钥所需的权限。可选权限如下:

 

 

账户

 

方法 Arguments 描述
ListAccounts   从 API 密钥的配置文件中获取交易账户列表。
GetAccount aAccountId:账户 ID 单个账户的信息。当您知道 account_id 时使用此端点。API 密钥必须属于与该账户相同的配置文件。

 

订单

 

方法 Arguments 描述
PlaceNewOrder aOrder: 包含订单所有可能字段的类 下新订单。仅在需要访问高级订单选项时使用。
PlaceMarketOrder

aSide: 买入或卖出

aProductId: 产品的 ID。

aQuoteSize:交易对中第二种资产的数量。

aBaseSize:交易对中第一种资产的数量

aClient_oid: 您选择用于标识订单的订单 ID

下达新的市价单。
PlaceLimitOrder

aSide: 买入或卖出

aProductId: 产品的 ID。

aQuoteSize:交易对中第二个资产的数量。

aBaseSize:交易对中第一种资产的数量

aLimitPrice: 限价价格

Client_oid: 您选择用于标识订单的订单 ID

下新限价单。
PlaceStopOrder

aSide: 买入或卖出

ProductId: 产品的 id

aBaseSize: 交易对中第一个资产的数量

StopPrice:止损价格

aLimitPrice:价格限制

aStopDirection: 止损或入场

Client_oid:您选择用于标识订单的订单 ID

下达新的止损单
CancelOrder aOrderId:订单 ID 取消之前下的订单。订单必须属于 API 密钥所属的账户资料。
EditOrder

aOrderId:订单 ID

aPrice:价格

aSize: 数量

以指定的新数量或新价格修改订单
EditOrderPreview

aOrderId:订单 ID

aPrice:价格

aSize: 数量

预览修改订单请求,指定新的数量或新的价格。
ListOrders   获取按可选查询参数(product_id、order_status 等)过滤的订单列表。
GetOrder aOrderId:订单 ID 通过订单 ID 获取单个订单。
PreviewOrder   预览订单。
ClosePosition

aOrderId:订单 ID

aProductId: 产品的 id

aSize:数量

下单以平掉指定 product_id 的所有未平仓头寸。

 

 

 

 

市场数据

 

方法 Arguments 描述
GetPublicProducts   获取可交易货币对列表。
GetPublicProduct

aProductId: 产品的 id

通过产品 ID 获取单个产品的信息。
GetPublicProductBook aProductId产品的 ID 获取单个产品的买卖报价列表,可使用 limit 参数自定义显示的详细程度。
GetPublicProductCandles

aProductId产品的 ID

aStart:时间区间的起始时间

aEnd:时间区间的结束时间

aGranularity:每根蜡烛图所代表的时间框架。

按产品 ID 获取单个产品的利率,按时间桶分组。
GetTrades aProductId产品的 ID 按产品 ID 获取最近成交(ticks)及最优买卖价的快照信息。
GetTime

 

从 Coinbase Advanced API 获取当前时间。

 

 

成交明细

 

方法 Arguments 描述
GetFillsByOrderId   获取按订单 ID 过滤的成交列表
GetFillsByProductId

 

获取按产品 ID 过滤的成交列表。
GetFillsByTradeId   获取按交易 ID 过滤的成交列表

转换

方法 Arguments 描述
CreateConvertQuote 创建货币之间的兑换报价。
CommitConvertTrade 提交转换交易。
GetConvertTrade 获取兑换交易详情。

费用

方法 Arguments 描述
GetTransactionSummary 获取交易手续费摘要。

产品(已认证)

方法 Arguments 描述
ListProducts 列出可用产品。
GetProduct aProductId:产品的 id 获取特定产品。
GetProductBook aProductId:产品的 id 获取产品订单簿。
GetProductCandles aProductId:产品的 id 获取产品 OHLCV 蜡烛图数据。
GetMarketTrades aProductId:产品的 id 获取最近的市场成交记录。
GetBestBidAsk 获取最优买卖价格。

投资组合

方法 Arguments 描述
ListPortfolios 列出所有投资组合。
CreatePortfolio 创建新投资组合。
DeletePortfolio 删除投资组合。
GetPortfolioBreakdown 获取投资组合细分详情。
MovePortfolioFunds 在投资组合之间划转资金。

永续合约

方法 Arguments 描述
GetPerpetualsPortfolioSummary 获取永续合约投资组合摘要。
ListPerpetualsPositions 列出永续仓位。
GetPerpetualsPosition 获取特定的永续合约持仓。