API Kraken Futures | REST 私有 API

连接

URL: https://futures.kraken.com/derivatives/api/v3

 

身份验证

REST 私有 API 需要 API Key 和 API Secret,这些值由 Kraken 在您的账户中提供。

  
Kraken.ApiKey := 'api key';
Kraken.ApiSecret := 'api secret';

 

方法

EditOrderByOrderId

此端点允许编辑当前上市的期货合约的现有订单。

 

aOrderId:您希望编辑的订单 ID

aSize:与订单关联的数量

aLimitPrice: 与订单关联的限价。

aStopPrice:与止损订单关联的止损价格。如果旧订单类型为止损,则为必填。


KrakenFutures.REST_API.EditOrderByOrderId('Order_Id', 2, 1000);

EditOrderByCliOrderId

此端点允许编辑当前上市的期货合约的现有订单。

 

aCliOrderId:用户指定的订单标识符,必须全局唯一。

aSize:与订单关联的数量

aLimitPrice: 与订单关联的限价。

aStopPrice: 与止损订单关联的止损价格。当订单类型为 Stop 时为必填项。


KrakenFutures.REST_API.EditOrderByCliOrderId('Cli_Order_Id', 2, 1000);

SendMarketOrder

此端点允许您发送市价单。

 

aSide:订单方向:买入或卖出。

aSymbol:期货的交易对

aSize:与订单关联的数量。


KrakenFutures.REST_API.SendMarketOrder(kosfBuy, 'PI_XBTUSD', 1);

SendLimitOrder

此端点允许您发送限价单。

 

aSide:订单方向:买入或卖出。

aSymbol:期货的交易对

aSize:与订单关联的数量。

aLimitPrice: 与订单关联的限价。


KrakenFutures.REST_API.SendLimitOrder(kosfBuy, 'PI_XBTUSD', 1, 1000);

SendStopOrder

此端点允许您发送止损订单。

 

aSide:订单方向:买入或卖出。

aSymbol:期货的交易对

aSize:与订单关联的数量。

aStopPrice:与止损订单关联的止损价格。

aLimitPrice: 与订单关联的限价。


KrakenFutures.REST_API.SendStopOrder(kosfBuy, 'PI_XBTUSD', 1, 1000, 900);

SendTakeProfitOrder

此端点允许您下达止盈订单。

 

aSide:订单方向:买入或卖出。

aSymbol:期货的交易对

aSize:与订单关联的数量。

aStopPrice:与止损订单关联的止损价格。

aLimitPrice: 与订单关联的限价。


KrakenFutures.REST_API.SendTakeProfitOrder(kosfBuy, 'PI_XBTUSD', 1, 1000, 900);

SendOrder

此端点允许为当前上市的期货合约发送限价、止损、止盈或立即或取消订单。

 

OrderType:请选择以下之一:kotfLMT、kotfPOST、kotfMKT、kotfSTP、kotfTAKE_PROFIT、kotfIOC。

Symbol:期货的交易对符号

Side:订单方向(买入或卖出)。

Size:与订单关联的数量。

StopPrice:与止损订单关联的止损价格。

LimitPrice:与订单关联的限价。

TriggerSignal:若下单止损或止盈订单,则为触发所用信号,从以下选项中选择:kotsMark、kotsIndex、kotsLast

CliOrderId:由用户指定的订单标识,必须全局唯一。

ReduceOnly:若希望订单仅减少现有仓位,则设为 true。任何会增加现有仓位的订单都将被拒绝。默认为 false。


oOrder := TsgcHTTPKrakenFuturesOrder.Create;
Try
  oOrder.Side := kosfBuy;
  oOrder.Symbol := 'PI_XBTUSD';
  oOrder.OrderType := kotfMKT;
  oOrder.Size := 1;
  KrakenFutures.REST_API.SendOrder(oOrder);  
Finally
  oOrder.Free;
End;

CancelOrderByOrderId

此端点允许取消期货合约的未结订单。

 

aOrderId:您希望编辑的订单 ID


KrakenFutures.REST_API.CancelOrderByOrderId('Order_Id');

CancelOrderByCliOrderId

此端点允许取消期货合约的未结订单。

 

aCliOrderId:用户指定的订单标识符,必须全局唯一。


KrakenFutures.REST_API.CancelOrderByCliOrderId('Cli_Order_Id');

GetFills

此端点返回所有期货合约的已成交订单信息。

 

aLastFillDate:如果未提供,返回任意期货合约的最后 100 条成交记录。如果提供,返回 lastFillTime 之前的 100 条记录。


KrakenFutures.REST_API.GetFills('2020-07-22T13:45:00.000Z');

传输

此端点允许您在具有相同抵押货币的两个保证金账户之间,或在保证金账户与现金账户之间转移资金。

 

aFromAccount:要移出资金的现金或保证金账户名称。

aToAccount:要将资金转入的现金或保证金账户名称。

aUnit:要转移的单位。

aAmount:要转账的金额。


KrakenFutures.REST_API.Transfer('FI_XBTUSD', 'cash', 'xbt', 1.5);

GetOpenPositions

此端点返回期货合约中所有未平仓头寸的规模和平均入场价格,包括已到期但尚未结算的期货合约。


KrakenFutures.REST_API.GetOpenPositions();

GetNotifications

该端点提供平台的通知。


KrakenFutures.REST_API.GetNotifications();

GetAccounts

此端点返回与您所有 Kraken Futures 账户相关的关键信息,这些账户可能是现金账户或保证金账户。包括数字资产余额、合约余额、保证金要求、保证金触发估算,以及可用资金、未结仓位盈亏和投资组合价值等辅助信息。


KrakenFutures.REST_API.GetAccounts();

CancelAllOrders

此端点允许取消期货合约的未结订单。

 

Symbol:要取消所有未成交订单的期货产品(可选)


KrakenFutures.REST_API.CancelAllOrders();

CancelAllOrdersAfter

此端点提供了一种"死人开关"机制,以保护客户端免受网络故障的影响。客户端可以发送一个带有超时秒数的请求,这将触发倒计时计时器,在超时到期时取消所有客户端订单。

 

aTimeout:以秒为单位指定的超时时间。


KrakenFutures.REST_API.CancelAllOrdersAfter(60);

GetOpenOrders

此端点返回所有期货合约的所有挂单信息。


KrakenFutures.REST_API.OpenOrders();

GetHistoricalOrders

此端点返回账户的历史订单。

 

aSince: 起始日期时间

aBefore: 截止 DateTime

aSort:"asc" 表示升序,"desc" 表示降序

aContinuationToken:来自先前响应的延续令牌,可用于调用以返回下一组可用结果


KrakenFutures.REST_API.GetHistoricalOrders(Now, Now - 5);

GetHistoricalTriggers

此端点允许返回账户上的历史触发器。

 

aSince: 起始日期时间

aBefore: 截止 DateTime

aSort:"asc" 表示升序,"desc" 表示降序

aContinuationToken:来自先前响应的延续令牌,可用于调用以返回下一组可用结果


KrakenFutures.REST_API.GetHistoricalTriggers(Now, Now - 5);

GetHistoricalExecutions

此端点允许获取账户上的历史成交记录。

 

aSince: 起始日期时间

aBefore: 截止 DateTime

aSort:"asc" 表示升序,"desc" 表示降序

aContinuationToken:来自先前响应的延续令牌,可用于调用以返回下一组可用结果


KrakenFutures.REST_API.GetHistoricalExecutions(Now, Now - 5);

WithdrawalToSpotWallet

此端点允许提交请求,将数字资产从 Kraken Futures 钱包提款到您的 Kraken Spot 钱包。

 

aCurrency: 要提款的数字资产,例如 xbt 或 xrp。

aAmount:要提取的货币金额。


KrakenFutures.REST_API.WithdrawalToSpotWallet('xbt', 1000);

GetFeeScheduleVolumes

此端点返回您 30 天的 USD 交易量。


KrakenFutures.REST_API.GetFeeScheduleVolumes();

GetAccountLogCSV

此端点允许客户端下载其账户日志的 CSV 文件。


KrakenFutures.REST_API.GetAccountLogCSV();