@siebly/kraken-api 0.0.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (204) hide show
  1. package/LICENSE.md +7 -0
  2. package/README.md +624 -0
  3. package/dist/cjs/DerivativesClient.d.ts +657 -0
  4. package/dist/cjs/DerivativesClient.js +726 -0
  5. package/dist/cjs/DerivativesClient.js.map +1 -0
  6. package/dist/cjs/InstitutionalClient.d.ts +183 -0
  7. package/dist/cjs/InstitutionalClient.js +266 -0
  8. package/dist/cjs/InstitutionalClient.js.map +1 -0
  9. package/dist/cjs/PartnerClient.d.ts +257 -0
  10. package/dist/cjs/PartnerClient.js +344 -0
  11. package/dist/cjs/PartnerClient.js.map +1 -0
  12. package/dist/cjs/SpotClient.d.ts +547 -0
  13. package/dist/cjs/SpotClient.js +607 -0
  14. package/dist/cjs/SpotClient.js.map +1 -0
  15. package/dist/cjs/WebsocketAPIClient.d.ts +95 -0
  16. package/dist/cjs/WebsocketAPIClient.js +136 -0
  17. package/dist/cjs/WebsocketAPIClient.js.map +1 -0
  18. package/dist/cjs/WebsocketClient.d.ts +120 -0
  19. package/dist/cjs/WebsocketClient.js +669 -0
  20. package/dist/cjs/WebsocketClient.js.map +1 -0
  21. package/dist/cjs/index.d.ts +24 -0
  22. package/dist/cjs/index.js +41 -0
  23. package/dist/cjs/index.js.map +1 -0
  24. package/dist/cjs/lib/BaseRestClient.d.ts +66 -0
  25. package/dist/cjs/lib/BaseRestClient.js +548 -0
  26. package/dist/cjs/lib/BaseRestClient.js.map +1 -0
  27. package/dist/cjs/lib/BaseWSClient.d.ts +230 -0
  28. package/dist/cjs/lib/BaseWSClient.js +935 -0
  29. package/dist/cjs/lib/BaseWSClient.js.map +1 -0
  30. package/dist/cjs/lib/misc-util.d.ts +1 -0
  31. package/dist/cjs/lib/misc-util.js +7 -0
  32. package/dist/cjs/lib/misc-util.js.map +1 -0
  33. package/dist/cjs/lib/requestUtils.d.ts +68 -0
  34. package/dist/cjs/lib/requestUtils.js +82 -0
  35. package/dist/cjs/lib/requestUtils.js.map +1 -0
  36. package/dist/cjs/lib/webCryptoAPI.d.ts +15 -0
  37. package/dist/cjs/lib/webCryptoAPI.js +85 -0
  38. package/dist/cjs/lib/webCryptoAPI.js.map +1 -0
  39. package/dist/cjs/lib/websocket/WsStore.d.ts +75 -0
  40. package/dist/cjs/lib/websocket/WsStore.js +303 -0
  41. package/dist/cjs/lib/websocket/WsStore.js.map +1 -0
  42. package/dist/cjs/lib/websocket/WsStore.types.d.ts +51 -0
  43. package/dist/cjs/lib/websocket/WsStore.types.js +14 -0
  44. package/dist/cjs/lib/websocket/WsStore.types.js.map +1 -0
  45. package/dist/cjs/lib/websocket/logger.d.ts +7 -0
  46. package/dist/cjs/lib/websocket/logger.js +16 -0
  47. package/dist/cjs/lib/websocket/logger.js.map +1 -0
  48. package/dist/cjs/lib/websocket/rest-client-cache.d.ts +22 -0
  49. package/dist/cjs/lib/websocket/rest-client-cache.js +66 -0
  50. package/dist/cjs/lib/websocket/rest-client-cache.js.map +1 -0
  51. package/dist/cjs/lib/websocket/websocket-util.d.ts +76 -0
  52. package/dist/cjs/lib/websocket/websocket-util.js +59 -0
  53. package/dist/cjs/lib/websocket/websocket-util.js.map +1 -0
  54. package/dist/cjs/package.json +3 -0
  55. package/dist/cjs/types/request/derivatives.types.d.ts +186 -0
  56. package/dist/cjs/types/request/derivatives.types.js +6 -0
  57. package/dist/cjs/types/request/derivatives.types.js.map +1 -0
  58. package/dist/cjs/types/request/institutional.types.d.ts +313 -0
  59. package/dist/cjs/types/request/institutional.types.js +4 -0
  60. package/dist/cjs/types/request/institutional.types.js.map +1 -0
  61. package/dist/cjs/types/request/partner.types.d.ts +291 -0
  62. package/dist/cjs/types/request/partner.types.js +4 -0
  63. package/dist/cjs/types/request/partner.types.js.map +1 -0
  64. package/dist/cjs/types/request/spot.types.d.ts +324 -0
  65. package/dist/cjs/types/request/spot.types.js +6 -0
  66. package/dist/cjs/types/request/spot.types.js.map +1 -0
  67. package/dist/cjs/types/request/wsapi.types.d.ts +90 -0
  68. package/dist/cjs/types/request/wsapi.types.js +6 -0
  69. package/dist/cjs/types/request/wsapi.types.js.map +1 -0
  70. package/dist/cjs/types/response/derivatives.types.d.ts +712 -0
  71. package/dist/cjs/types/response/derivatives.types.js +6 -0
  72. package/dist/cjs/types/response/derivatives.types.js.map +1 -0
  73. package/dist/cjs/types/response/institutional.types.d.ts +318 -0
  74. package/dist/cjs/types/response/institutional.types.js +4 -0
  75. package/dist/cjs/types/response/institutional.types.js.map +1 -0
  76. package/dist/cjs/types/response/partner.types.d.ts +332 -0
  77. package/dist/cjs/types/response/partner.types.js +4 -0
  78. package/dist/cjs/types/response/partner.types.js.map +1 -0
  79. package/dist/cjs/types/response/shared.types.d.ts +27 -0
  80. package/dist/cjs/types/response/shared.types.js +3 -0
  81. package/dist/cjs/types/response/shared.types.js.map +1 -0
  82. package/dist/cjs/types/response/spot.types.d.ts +590 -0
  83. package/dist/cjs/types/response/spot.types.js +6 -0
  84. package/dist/cjs/types/response/spot.types.js.map +1 -0
  85. package/dist/cjs/types/response/ws.d.ts +11 -0
  86. package/dist/cjs/types/response/ws.js +3 -0
  87. package/dist/cjs/types/response/ws.js.map +1 -0
  88. package/dist/cjs/types/response/wsapi.types.d.ts +44 -0
  89. package/dist/cjs/types/response/wsapi.types.js +6 -0
  90. package/dist/cjs/types/response/wsapi.types.js.map +1 -0
  91. package/dist/cjs/types/websockets/ws-api.d.ts +71 -0
  92. package/dist/cjs/types/websockets/ws-api.js +18 -0
  93. package/dist/cjs/types/websockets/ws-api.js.map +1 -0
  94. package/dist/cjs/types/websockets/ws-events.d.ts +11 -0
  95. package/dist/cjs/types/websockets/ws-events.js +11 -0
  96. package/dist/cjs/types/websockets/ws-events.js.map +1 -0
  97. package/dist/cjs/types/websockets/ws-general.d.ts +67 -0
  98. package/dist/cjs/types/websockets/ws-general.js +3 -0
  99. package/dist/cjs/types/websockets/ws-general.js.map +1 -0
  100. package/dist/cjs/types/websockets/ws-subscriptions.d.ts +11 -0
  101. package/dist/cjs/types/websockets/ws-subscriptions.js +31 -0
  102. package/dist/cjs/types/websockets/ws-subscriptions.js.map +1 -0
  103. package/dist/mjs/DerivativesClient.d.ts +657 -0
  104. package/dist/mjs/DerivativesClient.js +722 -0
  105. package/dist/mjs/DerivativesClient.js.map +1 -0
  106. package/dist/mjs/InstitutionalClient.d.ts +183 -0
  107. package/dist/mjs/InstitutionalClient.js +262 -0
  108. package/dist/mjs/InstitutionalClient.js.map +1 -0
  109. package/dist/mjs/PartnerClient.d.ts +257 -0
  110. package/dist/mjs/PartnerClient.js +340 -0
  111. package/dist/mjs/PartnerClient.js.map +1 -0
  112. package/dist/mjs/SpotClient.d.ts +547 -0
  113. package/dist/mjs/SpotClient.js +603 -0
  114. package/dist/mjs/SpotClient.js.map +1 -0
  115. package/dist/mjs/WebsocketAPIClient.d.ts +95 -0
  116. package/dist/mjs/WebsocketAPIClient.js +132 -0
  117. package/dist/mjs/WebsocketAPIClient.js.map +1 -0
  118. package/dist/mjs/WebsocketClient.d.ts +120 -0
  119. package/dist/mjs/WebsocketClient.js +665 -0
  120. package/dist/mjs/WebsocketClient.js.map +1 -0
  121. package/dist/mjs/index.d.ts +24 -0
  122. package/dist/mjs/index.js +25 -0
  123. package/dist/mjs/index.js.map +1 -0
  124. package/dist/mjs/lib/BaseRestClient.d.ts +66 -0
  125. package/dist/mjs/lib/BaseRestClient.js +541 -0
  126. package/dist/mjs/lib/BaseRestClient.js.map +1 -0
  127. package/dist/mjs/lib/BaseWSClient.d.ts +230 -0
  128. package/dist/mjs/lib/BaseWSClient.js +928 -0
  129. package/dist/mjs/lib/BaseWSClient.js.map +1 -0
  130. package/dist/mjs/lib/misc-util.d.ts +1 -0
  131. package/dist/mjs/lib/misc-util.js +4 -0
  132. package/dist/mjs/lib/misc-util.js.map +1 -0
  133. package/dist/mjs/lib/requestUtils.d.ts +68 -0
  134. package/dist/mjs/lib/requestUtils.js +76 -0
  135. package/dist/mjs/lib/requestUtils.js.map +1 -0
  136. package/dist/mjs/lib/webCryptoAPI.d.ts +15 -0
  137. package/dist/mjs/lib/webCryptoAPI.js +80 -0
  138. package/dist/mjs/lib/webCryptoAPI.js.map +1 -0
  139. package/dist/mjs/lib/websocket/WsStore.d.ts +75 -0
  140. package/dist/mjs/lib/websocket/WsStore.js +298 -0
  141. package/dist/mjs/lib/websocket/WsStore.js.map +1 -0
  142. package/dist/mjs/lib/websocket/WsStore.types.d.ts +51 -0
  143. package/dist/mjs/lib/websocket/WsStore.types.js +11 -0
  144. package/dist/mjs/lib/websocket/WsStore.types.js.map +1 -0
  145. package/dist/mjs/lib/websocket/logger.d.ts +7 -0
  146. package/dist/mjs/lib/websocket/logger.js +13 -0
  147. package/dist/mjs/lib/websocket/logger.js.map +1 -0
  148. package/dist/mjs/lib/websocket/rest-client-cache.d.ts +22 -0
  149. package/dist/mjs/lib/websocket/rest-client-cache.js +62 -0
  150. package/dist/mjs/lib/websocket/rest-client-cache.js.map +1 -0
  151. package/dist/mjs/lib/websocket/websocket-util.d.ts +76 -0
  152. package/dist/mjs/lib/websocket/websocket-util.js +54 -0
  153. package/dist/mjs/lib/websocket/websocket-util.js.map +1 -0
  154. package/dist/mjs/package.json +3 -0
  155. package/dist/mjs/types/request/derivatives.types.d.ts +186 -0
  156. package/dist/mjs/types/request/derivatives.types.js +5 -0
  157. package/dist/mjs/types/request/derivatives.types.js.map +1 -0
  158. package/dist/mjs/types/request/institutional.types.d.ts +313 -0
  159. package/dist/mjs/types/request/institutional.types.js +3 -0
  160. package/dist/mjs/types/request/institutional.types.js.map +1 -0
  161. package/dist/mjs/types/request/partner.types.d.ts +291 -0
  162. package/dist/mjs/types/request/partner.types.js +3 -0
  163. package/dist/mjs/types/request/partner.types.js.map +1 -0
  164. package/dist/mjs/types/request/spot.types.d.ts +324 -0
  165. package/dist/mjs/types/request/spot.types.js +5 -0
  166. package/dist/mjs/types/request/spot.types.js.map +1 -0
  167. package/dist/mjs/types/request/wsapi.types.d.ts +90 -0
  168. package/dist/mjs/types/request/wsapi.types.js +5 -0
  169. package/dist/mjs/types/request/wsapi.types.js.map +1 -0
  170. package/dist/mjs/types/response/derivatives.types.d.ts +712 -0
  171. package/dist/mjs/types/response/derivatives.types.js +5 -0
  172. package/dist/mjs/types/response/derivatives.types.js.map +1 -0
  173. package/dist/mjs/types/response/institutional.types.d.ts +318 -0
  174. package/dist/mjs/types/response/institutional.types.js +3 -0
  175. package/dist/mjs/types/response/institutional.types.js.map +1 -0
  176. package/dist/mjs/types/response/partner.types.d.ts +332 -0
  177. package/dist/mjs/types/response/partner.types.js +3 -0
  178. package/dist/mjs/types/response/partner.types.js.map +1 -0
  179. package/dist/mjs/types/response/shared.types.d.ts +27 -0
  180. package/dist/mjs/types/response/shared.types.js +2 -0
  181. package/dist/mjs/types/response/shared.types.js.map +1 -0
  182. package/dist/mjs/types/response/spot.types.d.ts +590 -0
  183. package/dist/mjs/types/response/spot.types.js +5 -0
  184. package/dist/mjs/types/response/spot.types.js.map +1 -0
  185. package/dist/mjs/types/response/ws.d.ts +11 -0
  186. package/dist/mjs/types/response/ws.js +2 -0
  187. package/dist/mjs/types/response/ws.js.map +1 -0
  188. package/dist/mjs/types/response/wsapi.types.d.ts +44 -0
  189. package/dist/mjs/types/response/wsapi.types.js +5 -0
  190. package/dist/mjs/types/response/wsapi.types.js.map +1 -0
  191. package/dist/mjs/types/websockets/ws-api.d.ts +71 -0
  192. package/dist/mjs/types/websockets/ws-api.js +15 -0
  193. package/dist/mjs/types/websockets/ws-api.js.map +1 -0
  194. package/dist/mjs/types/websockets/ws-events.d.ts +11 -0
  195. package/dist/mjs/types/websockets/ws-events.js +8 -0
  196. package/dist/mjs/types/websockets/ws-events.js.map +1 -0
  197. package/dist/mjs/types/websockets/ws-general.d.ts +67 -0
  198. package/dist/mjs/types/websockets/ws-general.js +2 -0
  199. package/dist/mjs/types/websockets/ws-general.js.map +1 -0
  200. package/dist/mjs/types/websockets/ws-subscriptions.d.ts +11 -0
  201. package/dist/mjs/types/websockets/ws-subscriptions.js +28 -0
  202. package/dist/mjs/types/websockets/ws-subscriptions.js.map +1 -0
  203. package/llms.txt +10925 -0
  204. package/package.json +89 -0
@@ -0,0 +1,657 @@
1
+ import { BaseRestClient } from './lib/BaseRestClient.js';
2
+ import { RestClientType } from './lib/requestUtils.js';
3
+ import { FuturesAddAssignmentPreferenceParams, FuturesBatchOrderParams, FuturesCancelOrderParams, FuturesEditOrderParams, FuturesGetAccountLogParams, FuturesGetAnalyticsParams, FuturesGetCandlesParams, FuturesGetOrderEventsParams, FuturesGetPositionEventsParams, FuturesGetTriggerEventsParams, FuturesHistoryBaseParams, FuturesInitiateSubaccountTransferParams, FuturesInitiateWalletTransferParams, FuturesMarketHistoryBaseParams, FuturesSendOrderParams, FuturesSubmitToSpotParams, FuturesUpdateSelfTradeStrategyParams } from './types/request/derivatives.types.js';
4
+ import { FuturesAccountLog, FuturesAccounts, FuturesAnalyticsResponse, FuturesApiKeyV3Check, FuturesAssignmentProgram, FuturesAssignmentProgramHistory, FuturesBatchOrderStatus, FuturesCancelAllOrdersStatus, FuturesCancelOrderStatus, FuturesCandles, FuturesDeadMansSwitchStatus, FuturesEditOrderStatus, FuturesFeeSchedule, FuturesFill, FuturesHistoricalFundingRate, FuturesHistoryExecutionEvent, FuturesHistoryOrderEvent, FuturesHistoryResponse, FuturesHistoryTriggerEvent, FuturesInstrument, FuturesInstrumentStatus, FuturesLeveragePreference, FuturesMarketHistoryResponse, FuturesMarketShare, FuturesNotification, FuturesOpenOffer, FuturesOpenOrder, FuturesOpenPosition, FuturesOrderBook, FuturesOrderStatusInfo, FuturesPnlPreference, FuturesPortfolioMarginParameters, FuturesPortfolioSimulation, FuturesPositionUpdateEvent, FuturesPublicExecutionEvent, FuturesPublicMarkPriceEvent, FuturesPublicOrderEvent, FuturesResolution, FuturesRfq, FuturesSelfTradeStrategy, FuturesSendOrderStatus, FuturesSubaccountsInfo, FuturesTicker, FuturesTickType, FuturesTradeHistoryItem, FuturesUnwindQueuePosition } from './types/response/derivatives.types.js';
5
+ import { DerivativesAPISuccessResponse } from './types/response/shared.types.js';
6
+ /**
7
+ * The DerivativesClient provides integration to the Kraken Derivatives API.
8
+ *
9
+ * Docs:
10
+ * - https://docs.kraken.com/api/docs/guides/futures-introduction
11
+ * - https://docs.kraken.com/api/docs/guides/futures-rest
12
+ * - https://docs.kraken.com/api/docs/futures-api/trading/get-history
13
+ */
14
+ export declare class DerivativesClient extends BaseRestClient {
15
+ getClientType(): RestClientType;
16
+ /**
17
+ *
18
+ * Misc Utility Methods
19
+ *
20
+ */
21
+ generateNewOrderID(): string;
22
+ /**
23
+ *
24
+ * Futures REST API - Trading - Market Data
25
+ *
26
+ */
27
+ /**
28
+ * Get trade history
29
+ *
30
+ * This endpoint returns the most recent 100 trades prior to the specified lastTime value up to past 7 days or recent trading engine restart (whichever is sooner).
31
+ * If no lastTime specified, it will return 100 most recent trades.
32
+ */
33
+ getTradeHistory(params: {
34
+ symbol: string;
35
+ lastTime?: string;
36
+ }): Promise<DerivativesAPISuccessResponse<{
37
+ history: FuturesTradeHistoryItem[];
38
+ }>>;
39
+ /**
40
+ * Get orderbook
41
+ *
42
+ * This endpoint returns the entire non-cumulative order book of currently listed Futures contracts.
43
+ */
44
+ getOrderbook(params: {
45
+ symbol: string;
46
+ }): Promise<DerivativesAPISuccessResponse<{
47
+ orderBook: FuturesOrderBook;
48
+ }>>;
49
+ /**
50
+ * Get tickers
51
+ *
52
+ * This endpoint returns current market data for all currently listed Futures contracts and indices.
53
+ */
54
+ getTickers(): Promise<DerivativesAPISuccessResponse<{
55
+ tickers: FuturesTicker[];
56
+ }>>;
57
+ /**
58
+ * Get ticker by symbol
59
+ *
60
+ * Get market data for contract or index by symbol.
61
+ */
62
+ getTicker(params: {
63
+ symbol: string;
64
+ }): Promise<DerivativesAPISuccessResponse<{
65
+ ticker: FuturesTicker;
66
+ }>>;
67
+ /**
68
+ *
69
+ * Futures REST API - Trading - Instrument Details
70
+ *
71
+ */
72
+ /**
73
+ * Get instruments
74
+ *
75
+ * Returns specifications for all currently listed markets and indices.
76
+ */
77
+ getInstruments(): Promise<DerivativesAPISuccessResponse<{
78
+ instruments: FuturesInstrument[];
79
+ }>>;
80
+ /**
81
+ * Get instrument status list
82
+ *
83
+ * Returns price dislocation and volatility details for all markets.
84
+ */
85
+ getInstrumentStatusList(): Promise<DerivativesAPISuccessResponse<{
86
+ instrumentStatus: FuturesInstrumentStatus[];
87
+ }>>;
88
+ /**
89
+ * Get instrument status
90
+ *
91
+ * Returns price dislocation and volatility details for given market.
92
+ */
93
+ getInstrumentStatus(params: {
94
+ symbol: string;
95
+ }): Promise<DerivativesAPISuccessResponse<FuturesInstrumentStatus>>;
96
+ /**
97
+ *
98
+ * Futures REST API - Trading - Order Management
99
+ *
100
+ */
101
+ /**
102
+ * Batch order management
103
+ *
104
+ * This endpoint allows sending limit or stop order(s) and/or cancelling open order(s) and/or editing open order(s) for a currently listed Futures contract in batch.
105
+ * When editing an order, if the trailingStopMaxDeviation and trailingStopDeviationUnit parameters are sent unchanged, the system will recalculate a new stop price upon successful order modification.
106
+ */
107
+ batchOrderManagement(params: FuturesBatchOrderParams): Promise<DerivativesAPISuccessResponse<{
108
+ batchStatus: FuturesBatchOrderStatus[];
109
+ }>>;
110
+ /**
111
+ * Cancel all orders
112
+ *
113
+ * This endpoint allows cancelling orders which are associated with a future's contract or a margin account. If no arguments are specified all open orders will be cancelled.
114
+ */
115
+ cancelAllOrders(params?: {
116
+ symbol?: string;
117
+ }): Promise<DerivativesAPISuccessResponse<{
118
+ cancelStatus: FuturesCancelAllOrdersStatus;
119
+ }>>;
120
+ /**
121
+ * Dead man's switch
122
+ *
123
+ * This endpoint provides a Dead Man's Switch mechanism to protect the user from network malfunctions. The user can send a request with a timeout in seconds which will trigger a countdown timer that will cancel all user orders when timeout expires. The user has to keep sending request to push back the timeout expiration or they can deactivate the mechanism by specifying a timeout of zero (0).
124
+ * The recommended mechanism usage is making a call every 15 to 20 seconds and provide a timeout of 60 seconds. This allows the user to keep the orders in place on a brief network failure, while keeping them safe in case of a network breakdown.
125
+ */
126
+ cancelAllOrdersAfter(params: {
127
+ timeout: number;
128
+ }): Promise<DerivativesAPISuccessResponse<{
129
+ status: FuturesDeadMansSwitchStatus;
130
+ }>>;
131
+ /**
132
+ * Cancel order
133
+ *
134
+ * This endpoint allows cancelling an open order for a Futures contract.
135
+ */
136
+ cancelOrder(params: FuturesCancelOrderParams): Promise<DerivativesAPISuccessResponse<{
137
+ cancelStatus: FuturesCancelOrderStatus;
138
+ }>>;
139
+ /**
140
+ * Edit order
141
+ *
142
+ * This endpoint allows editing an existing order for a currently listed Futures contract.
143
+ * When editing an order, if the trailingStopMaxDeviation and trailingStopDeviationUnit parameters are sent unchanged, the system will recalculate a new stop price upon successful order modification.
144
+ */
145
+ editOrder(params: FuturesEditOrderParams): Promise<DerivativesAPISuccessResponse<{
146
+ editStatus: FuturesEditOrderStatus;
147
+ }>>;
148
+ /**
149
+ * Get open orders
150
+ *
151
+ * This endpoint returns information on all open orders for all Futures contracts.
152
+ */
153
+ getOpenOrders(): Promise<DerivativesAPISuccessResponse<{
154
+ openOrders: FuturesOpenOrder[];
155
+ }>>;
156
+ /**
157
+ * Send order
158
+ *
159
+ * This endpoint allows sending a limit, stop, take profit or immediate-or-cancel order for a currently listed Futures contract.
160
+ */
161
+ submitOrder(params: FuturesSendOrderParams): Promise<DerivativesAPISuccessResponse<{
162
+ sendStatus: FuturesSendOrderStatus;
163
+ }>>;
164
+ /**
165
+ * Get Specific Orders' Status
166
+ *
167
+ * Returns information on specified orders which are open or were filled/cancelled in the last 5 seconds.
168
+ */
169
+ getOrderStatus(params?: {
170
+ orderIds?: string[];
171
+ cliOrdIds?: string[];
172
+ }): Promise<DerivativesAPISuccessResponse<{
173
+ orders: FuturesOrderStatusInfo[];
174
+ }>>;
175
+ /**
176
+ *
177
+ * Futures REST API - Trading - Multi-Collateral
178
+ *
179
+ */
180
+ /**
181
+ * Get PNL currency preferences
182
+ *
183
+ * The PNL currency preference is used to determine which currency to pay out when realizing PNL gains.
184
+ */
185
+ getPnlPreferences(): Promise<DerivativesAPISuccessResponse<{
186
+ preferences: FuturesPnlPreference[];
187
+ }>>;
188
+ /**
189
+ * Set PNL currency preference
190
+ *
191
+ * The PNL currency preference is used to determine which currency to pay out when realizing PNL gains.
192
+ * Calling this API can result in the following error codes: 87 (Contract does not exist), 88 (Contract not a multi-collateral futures contract), 89 (Currency does not exist), 90 (Currency is not enabled for multi-collateral futures), 41 (Would cause liquidation).
193
+ */
194
+ setPnlPreference(params: {
195
+ symbol: string;
196
+ pnlPreference: string;
197
+ }): Promise<DerivativesAPISuccessResponse<Record<string, never>>>;
198
+ /**
199
+ * Get leverage settings
200
+ *
201
+ * Returns list of configured leverage preferences.
202
+ */
203
+ getLeverageSettings(): Promise<DerivativesAPISuccessResponse<{
204
+ leveragePreferences: FuturesLeveragePreference[];
205
+ }>>;
206
+ /**
207
+ * Set leverage settings
208
+ *
209
+ * Sets a contract's margin mode, either "isolated" or "cross" margin.
210
+ * When specifying a max leverage, the contract's margin mode will be isolated.
211
+ */
212
+ setLeverageSettings(params: {
213
+ symbol: string;
214
+ maxLeverage?: number;
215
+ }): Promise<DerivativesAPISuccessResponse<Record<string, never>>>;
216
+ /**
217
+ *
218
+ * Futures REST API - Trading - Account Information
219
+ *
220
+ */
221
+ /**
222
+ * Get wallets
223
+ *
224
+ * This endpoint returns key information relating to all your accounts which may either be cash accounts or margin accounts.
225
+ * This includes digital asset balances, instrument balances, margin requirements, margin trigger estimates and
226
+ * auxiliary information such as available funds, PnL of open positions and portfolio value.
227
+ */
228
+ getAccounts(): Promise<DerivativesAPISuccessResponse<{
229
+ accounts: FuturesAccounts;
230
+ }>>;
231
+ /**
232
+ * Get open positions
233
+ *
234
+ * This endpoint returns the size and average entry price of all open positions in Futures contracts.
235
+ * This includes Futures contracts that have matured but have not yet been settled.
236
+ */
237
+ getOpenPositions(): Promise<DerivativesAPISuccessResponse<{
238
+ openPositions: FuturesOpenPosition[];
239
+ }>>;
240
+ /**
241
+ * Get position percentile of unwind queue
242
+ *
243
+ * This endpoint returns the percentile of the open position in case of unwinding.
244
+ */
245
+ getPositionPercentile(): Promise<DerivativesAPISuccessResponse<{
246
+ queue: FuturesUnwindQueuePosition[];
247
+ }>>;
248
+ /**
249
+ * Get portfolio margin parameters
250
+ *
251
+ * Retrieve current portfolio margin calculation parameters.
252
+ * Also includes user specific limits related to options trading.
253
+ * Note: This is currently available exclusively in the Kraken Futures DEMO environment.
254
+ */
255
+ getPortfolioMarginParameters(): Promise<DerivativesAPISuccessResponse<FuturesPortfolioMarginParameters>>;
256
+ /**
257
+ * Calculate portfolio margin, pnl and greeks
258
+ *
259
+ * For a given portfolio of balances and positions (futures and options), calculate the margin requirements, pnl and option greeks.
260
+ * Note: This is currently available exclusively in the Kraken Futures DEMO environment.
261
+ */
262
+ simulateMarginRequirements(params: {
263
+ json: any;
264
+ }): Promise<DerivativesAPISuccessResponse<FuturesPortfolioSimulation>>;
265
+ /**
266
+ *
267
+ * Futures REST API - Trading - Assignment Program
268
+ *
269
+ */
270
+ /**
271
+ * List assignment programs
272
+ *
273
+ * This endpoint returns information on currently active assignment programs.
274
+ */
275
+ getAssignmentPrograms(): Promise<DerivativesAPISuccessResponse<{
276
+ participants: FuturesAssignmentProgram[];
277
+ }>>;
278
+ /**
279
+ * Add assignment preference
280
+ *
281
+ * This endpoint adds an assignment program preference.
282
+ */
283
+ addAssignmentPreference(params: FuturesAddAssignmentPreferenceParams): Promise<DerivativesAPISuccessResponse<FuturesAssignmentProgram>>;
284
+ /**
285
+ * Delete assignment preference
286
+ *
287
+ * This endpoint deletes an assignment program preference.
288
+ */
289
+ deleteAssignmentPreference(params: {
290
+ id: number;
291
+ }): Promise<DerivativesAPISuccessResponse<FuturesAssignmentProgram>>;
292
+ /**
293
+ * List assignment preferences history
294
+ *
295
+ * This endpoint returns information on assignment program preferences change history.
296
+ */
297
+ getAssignmentPreferencesHistory(): Promise<DerivativesAPISuccessResponse<{
298
+ participants: FuturesAssignmentProgramHistory[];
299
+ }>>;
300
+ /**
301
+ *
302
+ * Futures REST API - Trading - Fee Schedules
303
+ *
304
+ */
305
+ /**
306
+ * Get fee schedules
307
+ *
308
+ * This endpoint lists all fee schedules.
309
+ */
310
+ getFeeSchedules(): Promise<DerivativesAPISuccessResponse<{
311
+ feeSchedules: FuturesFeeSchedule[];
312
+ }>>;
313
+ /**
314
+ * Get fee schedule volumes
315
+ *
316
+ * Returns your fee schedule volumes for each fee schedule.
317
+ */
318
+ getFeeScheduleVolumes(): Promise<DerivativesAPISuccessResponse<{
319
+ volumesByFeeSchedule: Record<string, number>;
320
+ }>>;
321
+ /**
322
+ *
323
+ * Futures REST API - Trading - General
324
+ *
325
+ */
326
+ /**
327
+ * Get notifications
328
+ *
329
+ * This endpoint provides the platform's notifications.
330
+ */
331
+ getNotifications(): Promise<DerivativesAPISuccessResponse<{
332
+ notifications: FuturesNotification[];
333
+ }>>;
334
+ /**
335
+ *
336
+ * Futures REST API - Trading - Historical Data
337
+ *
338
+ */
339
+ /**
340
+ * Get your fills
341
+ *
342
+ * This endpoint returns information on your filled orders for all futures contracts.
343
+ */
344
+ getFills(params?: {
345
+ lastFillTime?: string;
346
+ }): Promise<DerivativesAPISuccessResponse<{
347
+ fills: FuturesFill[];
348
+ }>>;
349
+ /**
350
+ *
351
+ * Futures REST API - Trading - Historical Funding Rates
352
+ *
353
+ */
354
+ /**
355
+ * Historical funding rates
356
+ *
357
+ * Returns list of historical funding rates for given market.
358
+ */
359
+ getHistoricalFundingRates(params: {
360
+ symbol: string;
361
+ }): Promise<DerivativesAPISuccessResponse<{
362
+ rates: FuturesHistoricalFundingRate[];
363
+ }>>;
364
+ /**
365
+ *
366
+ * Futures REST API - Trading - Trading Settings
367
+ *
368
+ */
369
+ /**
370
+ * Get self trade strategy
371
+ *
372
+ * Returns account-wide self-trade matching strategy.
373
+ */
374
+ getSelfTradeStrategy(): Promise<DerivativesAPISuccessResponse<{
375
+ strategy: FuturesSelfTradeStrategy;
376
+ }>>;
377
+ /**
378
+ * Update self trade strategy
379
+ *
380
+ * Updates account-wide self-trade matching behavior to given strategy.
381
+ */
382
+ updateSelfTradeStrategy(params: FuturesUpdateSelfTradeStrategyParams): Promise<DerivativesAPISuccessResponse<{
383
+ strategy: FuturesSelfTradeStrategy;
384
+ }>>;
385
+ /**
386
+ *
387
+ * Futures REST API - Trading - Subaccounts
388
+ *
389
+ */
390
+ /**
391
+ * Check subaccount trading status
392
+ *
393
+ * Returns trading capability info for given subaccount.
394
+ */
395
+ getSubaccountTradingStatus(params: {
396
+ subaccountUid: string;
397
+ }): Promise<DerivativesAPISuccessResponse<{
398
+ tradingEnabled: boolean;
399
+ }>>;
400
+ /**
401
+ * Update subaccount trading status
402
+ *
403
+ * Updates trading capabilities for given subaccount.
404
+ */
405
+ updateSubaccountTradingStatus(params: {
406
+ subaccountUid: string;
407
+ tradingEnabled: boolean;
408
+ }): Promise<DerivativesAPISuccessResponse<{
409
+ tradingEnabled: boolean;
410
+ }>>;
411
+ /**
412
+ * Get subaccounts
413
+ *
414
+ * Return information about subaccounts, including balances and UIDs.
415
+ */
416
+ getSubaccounts(): Promise<DerivativesAPISuccessResponse<FuturesSubaccountsInfo>>;
417
+ /**
418
+ *
419
+ * Futures REST API - Trading - Transfers
420
+ *
421
+ */
422
+ /**
423
+ * Initiate wallet transfer
424
+ *
425
+ * This endpoint allows you to transfer funds between two margin accounts with the same collateral currency, or between a margin account and your cash account.
426
+ */
427
+ submitWalletTransfer(params: FuturesInitiateWalletTransferParams): Promise<DerivativesAPISuccessResponse<Record<string, never>>>;
428
+ /**
429
+ * Initiate sub account transfer
430
+ *
431
+ * This endpoint allows you to transfer funds between the current account and a sub account, between two margin accounts with the same collateral currency, or between a margin account and your cash account.
432
+ */
433
+ submitSubaccountTransfer(params: FuturesInitiateSubaccountTransferParams): Promise<DerivativesAPISuccessResponse<Record<string, never>>>;
434
+ /**
435
+ * Initiate withdrawal to Spot wallet
436
+ *
437
+ * This endpoint allows you to request to withdraw digital assets to your Kraken Spot wallet.
438
+ * Wallet names can be found in the 'accounts' structure in the Get Wallets /accounts response.
439
+ */
440
+ submitTransferToSpot(params: FuturesSubmitToSpotParams): Promise<DerivativesAPISuccessResponse<{
441
+ uid: string;
442
+ }>>;
443
+ /**
444
+ *
445
+ * Futures REST API - Trading - RFQs
446
+ *
447
+ */
448
+ /**
449
+ * List all open RFQs
450
+ *
451
+ * Retrieve all currently open RFQs.
452
+ * Note: This is currently available exclusively in the Kraken Futures DEMO environment.
453
+ */
454
+ getOpenRFQs(): Promise<DerivativesAPISuccessResponse<{
455
+ rfqs: FuturesRfq[];
456
+ }>>;
457
+ /**
458
+ * Retrieve a single open RFQ
459
+ *
460
+ * Retrieve a specific open RFQ by its unique identifier.
461
+ * Note: This is currently available exclusively in the Kraken Futures DEMO environment.
462
+ */
463
+ getOpenRFQ(params: {
464
+ rfqUid: string;
465
+ }): Promise<DerivativesAPISuccessResponse<{
466
+ rfq: FuturesRfq;
467
+ }>>;
468
+ /**
469
+ * List open offers on open RFQs
470
+ *
471
+ * Retrieve all open offers for the account on currently open RFQs.
472
+ * Note: This is currently available exclusively in the Kraken Futures DEMO environment.
473
+ */
474
+ getRFQOpenOffers(): Promise<DerivativesAPISuccessResponse<{
475
+ openOffers: FuturesOpenOffer[];
476
+ }>>;
477
+ /**
478
+ * Place new offer on an open RFQ
479
+ *
480
+ * Place a new offer for the given amount in USD on the specified open RFQ, bid and ask are optional but at least one must be provided.
481
+ * Note: This is currently available exclusively in the Kraken Futures DEMO environment.
482
+ */
483
+ submitRFQNewOffer(params: {
484
+ rfqUid: string;
485
+ bid?: number;
486
+ ask?: number;
487
+ }): Promise<DerivativesAPISuccessResponse<{
488
+ offerUid: string;
489
+ }>>;
490
+ /**
491
+ * Replace open offer on open RFQ
492
+ *
493
+ * Replace the current open offer on the specified open RFQ, bid and ask are optional but at least one must be provided.
494
+ * Note: This is currently available exclusively in the Kraken Futures DEMO environment.
495
+ */
496
+ updateRFQOpenOffer(params: {
497
+ rfqUid: string;
498
+ bid?: number;
499
+ ask?: number;
500
+ }): Promise<DerivativesAPISuccessResponse<Record<string, never>>>;
501
+ /**
502
+ * Cancel open offer on open RFQ
503
+ *
504
+ * Cancel the current open offer on the specified open RFQ.
505
+ * Note: This is currently available exclusively in the Kraken Futures DEMO environment.
506
+ */
507
+ cancelRFQOffer(params: {
508
+ rfqUid: string;
509
+ }): Promise<DerivativesAPISuccessResponse<Record<string, never>>>;
510
+ /**
511
+ *
512
+ * Futures REST API - History - Account History
513
+ *
514
+ */
515
+ /**
516
+ * Get execution events
517
+ *
518
+ * Lists executions/trades for authenticated account.
519
+ */
520
+ getExecutionEvents(params?: FuturesHistoryBaseParams): Promise<DerivativesAPISuccessResponse<FuturesHistoryResponse<FuturesHistoryExecutionEvent>>>;
521
+ /**
522
+ * Get order events
523
+ *
524
+ * Lists order events for authenticated account.
525
+ */
526
+ getOrderEvents(params?: FuturesGetOrderEventsParams): Promise<DerivativesAPISuccessResponse<FuturesHistoryResponse<FuturesHistoryOrderEvent>>>;
527
+ /**
528
+ * Get trigger events
529
+ *
530
+ * Lists trigger events for authenticated account.
531
+ */
532
+ getTriggerEvents(params?: FuturesGetTriggerEventsParams): Promise<DerivativesAPISuccessResponse<FuturesHistoryResponse<FuturesHistoryTriggerEvent>>>;
533
+ /**
534
+ * Get position update events
535
+ *
536
+ * Lists position events for authenticated account.
537
+ */
538
+ getPositionEvents(params?: FuturesGetPositionEventsParams): Promise<DerivativesAPISuccessResponse<FuturesHistoryResponse<FuturesPositionUpdateEvent>>>;
539
+ /**
540
+ * Get account log
541
+ *
542
+ * Lists account log entries, paged by timestamp or by ID.
543
+ * To request entries by time range, use the since and before parameters. To request entries by ID range, use the from and to parameters. Any combination of since, before, from and to can be used to restrict the requested range of entries.
544
+ */
545
+ getAccountLog(params?: FuturesGetAccountLogParams): Promise<DerivativesAPISuccessResponse<FuturesAccountLog>>;
546
+ /**
547
+ * Account log (CSV)
548
+ *
549
+ * Lists recent account log entries in CSV format.
550
+ */
551
+ getAccountLogCsv(params?: {
552
+ conversion_details?: boolean;
553
+ }): Promise<string>;
554
+ /**
555
+ *
556
+ * Futures REST API - History - Market History
557
+ *
558
+ */
559
+ /**
560
+ * Get public execution events
561
+ *
562
+ * Lists trades for a market.
563
+ */
564
+ getPublicExecutionEvents(params: FuturesMarketHistoryBaseParams): Promise<FuturesMarketHistoryResponse<FuturesPublicExecutionEvent>>;
565
+ /**
566
+ * Get public order events
567
+ *
568
+ * Lists order events for a market.
569
+ */
570
+ getPublicOrderEvents(params: FuturesMarketHistoryBaseParams): Promise<FuturesMarketHistoryResponse<FuturesPublicOrderEvent>>;
571
+ /**
572
+ * Get public mark price events
573
+ *
574
+ * Lists price events for a market.
575
+ */
576
+ getPublicMarkPriceEvents(params: FuturesMarketHistoryBaseParams): Promise<FuturesMarketHistoryResponse<FuturesPublicMarkPriceEvent>>;
577
+ /**
578
+ *
579
+ * Futures REST API - Charts - Candles
580
+ *
581
+ */
582
+ /**
583
+ * Tick Types
584
+ *
585
+ * Returns all available tick types to use with the getMarketsForTickType() endpoint.
586
+ */
587
+ getTickTypes(): Promise<FuturesTickType[]>;
588
+ /**
589
+ * Markets
590
+ *
591
+ * Markets available for specified tick type.
592
+ * List of available tick types can be fetched from the getTickTypes() endpoint.
593
+ */
594
+ getMarketsForTickType(params: {
595
+ tickType: FuturesTickType;
596
+ }): Promise<string[]>;
597
+ /**
598
+ * Resolutions
599
+ *
600
+ * Candle resolutions available for specified tick type and market.
601
+ * List of available tick types can be fetched from the getTickTypes() endpoint.
602
+ * List of available markets can be fetched from the getMarketsForTickType() endpoint.
603
+ */
604
+ getResolutions(params: {
605
+ tickType: FuturesTickType;
606
+ symbol: string;
607
+ }): Promise<FuturesResolution[]>;
608
+ /**
609
+ * Market Candles
610
+ *
611
+ * Candles for specified tick type, market, and resolution.
612
+ * List of available tick types can be fetched from the getTickTypes() endpoint.
613
+ * List of available markets can be fetched from the getMarketsForTickType() endpoint.
614
+ * List of available resolutions can be fetched from the getResolutions() endpoint.
615
+ */
616
+ getCandles(params: FuturesGetCandlesParams): Promise<FuturesCandles>;
617
+ /**
618
+ *
619
+ * Futures REST API - Charts - Analytics
620
+ *
621
+ */
622
+ /**
623
+ * Get liquidity pool statistic
624
+ *
625
+ * Get liquidity pool statistic including usd value.
626
+ */
627
+ getLiquidityPoolStatistic(params: FuturesGetAnalyticsParams): Promise<FuturesAnalyticsResponse>;
628
+ /**
629
+ * Market Analytics
630
+ *
631
+ * Analytics data divided into time buckets.
632
+ */
633
+ getMarketAnalytics(params: FuturesGetAnalyticsParams): Promise<FuturesAnalyticsResponse>;
634
+ /**
635
+ *
636
+ * Futures REST API - Auth - API Keys
637
+ *
638
+ */
639
+ /**
640
+ * Check v3 API key
641
+ *
642
+ * Verify API key access and return the authenticated key's details.
643
+ */
644
+ checkApiKeyV3(): Promise<FuturesApiKeyV3Check>;
645
+ /**
646
+ *
647
+ * Futures REST API - Stats - Market Share
648
+ *
649
+ */
650
+ /**
651
+ * Get account's market share
652
+ *
653
+ * Get account's market share, volumes, and accrued rebates data in contracts configured for rebates.
654
+ * The data may not be available immediately. In these cases HTTP 204 is returned.
655
+ */
656
+ getAccountMarketShare(): Promise<FuturesMarketShare>;
657
+ }