zklighter-perps 1.0.347 → 1.0.348

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.
@@ -61,6 +61,10 @@ models/AssetStats.ts
61
61
  models/AtomicOrder.ts
62
62
  models/AtomicOrderLeg.ts
63
63
  models/Auth.ts
64
+ models/BOSideCost.ts
65
+ models/BOSizeCost.ts
66
+ models/BOSymbolCosts.ts
67
+ models/BOVenueCosts.ts
64
68
  models/BinaryOptionMarketStats.ts
65
69
  models/Block.ts
66
70
  models/Blocks.ts
@@ -287,6 +291,7 @@ models/RespCreateRFQ.ts
287
291
  models/RespCreateStrategyHeartbeat.ts
288
292
  models/RespGaslessDeposit.ts
289
293
  models/RespGetApiTokens.ts
294
+ models/RespGetBOExecuteStats.ts
290
295
  models/RespGetBoPnL.ts
291
296
  models/RespGetBridgesByL1Addr.ts
292
297
  models/RespGetCompetitions.ts
package/apis/OrderApi.ts CHANGED
@@ -24,6 +24,7 @@ import type {
24
24
  OrderBookOrders,
25
25
  OrderBooks,
26
26
  Orders,
27
+ RespGetBOExecuteStats,
27
28
  RespGetExchangeMetrics,
28
29
  RespGetExecuteStats,
29
30
  RespGetMarketMetrics,
@@ -49,6 +50,8 @@ import {
49
50
  OrderBooksToJSON,
50
51
  OrdersFromJSON,
51
52
  OrdersToJSON,
53
+ RespGetBOExecuteStatsFromJSON,
54
+ RespGetBOExecuteStatsToJSON,
52
55
  RespGetExchangeMetricsFromJSON,
53
56
  RespGetExchangeMetricsToJSON,
54
57
  RespGetExecuteStatsFromJSON,
@@ -552,6 +555,34 @@ export class OrderApi extends runtime.BaseAPI {
552
555
  return await response.value();
553
556
  }
554
557
 
558
+ /**
559
+ * Get the mean cost of buying Up and Down on the 15-minute BTC and ETH Up/Down rounds over the last day, per venue and size
560
+ * boExecuteStats
561
+ */
562
+ async boExecuteStatsRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<RespGetBOExecuteStats>> {
563
+ const queryParameters: any = {};
564
+
565
+ const headerParameters: runtime.HTTPHeaders = {};
566
+
567
+ const response = await this.request({
568
+ path: `/api/v1/boExecuteStats`,
569
+ method: 'GET',
570
+ headers: headerParameters,
571
+ query: queryParameters,
572
+ }, initOverrides);
573
+
574
+ return new runtime.JSONApiResponse(response, (jsonValue) => RespGetBOExecuteStatsFromJSON(jsonValue));
575
+ }
576
+
577
+ /**
578
+ * Get the mean cost of buying Up and Down on the 15-minute BTC and ETH Up/Down rounds over the last day, per venue and size
579
+ * boExecuteStats
580
+ */
581
+ async boExecuteStats(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<RespGetBOExecuteStats> {
582
+ const response = await this.boExecuteStatsRaw(initOverrides);
583
+ return await response.value();
584
+ }
585
+
555
586
  /**
556
587
  * Get exchange metrics
557
588
  * exchangeMetrics
@@ -0,0 +1,79 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ *
5
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
6
+ *
7
+ * The version of the OpenAPI document:
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ import { mapValues } from '../runtime';
16
+ /**
17
+ *
18
+ * @export
19
+ * @interface BOSideCost
20
+ */
21
+ export interface BOSideCost {
22
+ /**
23
+ * average price per share, in dollars
24
+ * @type {number}
25
+ * @memberof BOSideCost
26
+ */
27
+ avg_price: number;
28
+ /**
29
+ * cents per share over the mid (for Down, over 1 - mid)
30
+ * @type {number}
31
+ * @memberof BOSideCost
32
+ */
33
+ slippage_c: number;
34
+ /**
35
+ * taker fee, cents per share
36
+ * @type {number}
37
+ * @memberof BOSideCost
38
+ */
39
+ fee_c: number;
40
+ }
41
+
42
+ /**
43
+ * Check if a given object implements the BOSideCost interface.
44
+ */
45
+ export function instanceOfBOSideCost(value: object): value is BOSideCost {
46
+ if (!('avg_price' in value) || value['avg_price'] === undefined) return false;
47
+ if (!('slippage_c' in value) || value['slippage_c'] === undefined) return false;
48
+ if (!('fee_c' in value) || value['fee_c'] === undefined) return false;
49
+ return true;
50
+ }
51
+
52
+ export function BOSideCostFromJSON(json: any): BOSideCost {
53
+ return BOSideCostFromJSONTyped(json, false);
54
+ }
55
+
56
+ export function BOSideCostFromJSONTyped(json: any, ignoreDiscriminator: boolean): BOSideCost {
57
+ if (json == null) {
58
+ return json;
59
+ }
60
+ return {
61
+
62
+ 'avg_price': json['avg_price'],
63
+ 'slippage_c': json['slippage_c'],
64
+ 'fee_c': json['fee_c'],
65
+ };
66
+ }
67
+
68
+ export function BOSideCostToJSON(value?: BOSideCost | null): any {
69
+ if (value == null) {
70
+ return value;
71
+ }
72
+ return {
73
+
74
+ 'avg_price': value['avg_price'],
75
+ 'slippage_c': value['slippage_c'],
76
+ 'fee_c': value['fee_c'],
77
+ };
78
+ }
79
+
@@ -0,0 +1,140 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ *
5
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
6
+ *
7
+ * The version of the OpenAPI document:
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ import { mapValues } from '../runtime';
16
+ import type { BOSideCost } from './BOSideCost';
17
+ import {
18
+ BOSideCostFromJSON,
19
+ BOSideCostFromJSONTyped,
20
+ BOSideCostToJSON,
21
+ } from './BOSideCost';
22
+
23
+ /**
24
+ *
25
+ * @export
26
+ * @interface BOSizeCost
27
+ */
28
+ export interface BOSizeCost {
29
+ /**
30
+ *
31
+ * @type {number}
32
+ * @memberof BOSizeCost
33
+ */
34
+ size_usd: number;
35
+ /**
36
+ * ok, or not_enough_data: too few samples, show N/A
37
+ * @type {string}
38
+ * @memberof BOSizeCost
39
+ */
40
+ status: string;
41
+ /**
42
+ * 30s samples averaged: every served venue was valid at that moment
43
+ * @type {number}
44
+ * @memberof BOSizeCost
45
+ */
46
+ samples: number;
47
+ /**
48
+ * share of the venue's in-band samples where the size filled; null without any
49
+ * @type {number}
50
+ * @memberof BOSizeCost
51
+ */
52
+ fill_rate: number;
53
+ /**
54
+ *
55
+ * @type {BOSideCost}
56
+ * @memberof BOSizeCost
57
+ */
58
+ up: BOSideCost;
59
+ /**
60
+ *
61
+ * @type {BOSideCost}
62
+ * @memberof BOSizeCost
63
+ */
64
+ down: BOSideCost;
65
+ /**
66
+ * cents per share, Up and Down averaged
67
+ * @type {number}
68
+ * @memberof BOSizeCost
69
+ */
70
+ total_c: number;
71
+ /**
72
+ * % of the price paid, Up and Down averaged
73
+ * @type {number}
74
+ * @memberof BOSizeCost
75
+ */
76
+ total_pct: number;
77
+ /**
78
+ * size_usd * total_pct / 100
79
+ * @type {number}
80
+ * @memberof BOSizeCost
81
+ */
82
+ cost_usd: number;
83
+ }
84
+
85
+ /**
86
+ * Check if a given object implements the BOSizeCost interface.
87
+ */
88
+ export function instanceOfBOSizeCost(value: object): value is BOSizeCost {
89
+ if (!('size_usd' in value) || value['size_usd'] === undefined) return false;
90
+ if (!('status' in value) || value['status'] === undefined) return false;
91
+ if (!('samples' in value) || value['samples'] === undefined) return false;
92
+ if (!('fill_rate' in value) || value['fill_rate'] === undefined) return false;
93
+ if (!('up' in value) || value['up'] === undefined) return false;
94
+ if (!('down' in value) || value['down'] === undefined) return false;
95
+ if (!('total_c' in value) || value['total_c'] === undefined) return false;
96
+ if (!('total_pct' in value) || value['total_pct'] === undefined) return false;
97
+ if (!('cost_usd' in value) || value['cost_usd'] === undefined) return false;
98
+ return true;
99
+ }
100
+
101
+ export function BOSizeCostFromJSON(json: any): BOSizeCost {
102
+ return BOSizeCostFromJSONTyped(json, false);
103
+ }
104
+
105
+ export function BOSizeCostFromJSONTyped(json: any, ignoreDiscriminator: boolean): BOSizeCost {
106
+ if (json == null) {
107
+ return json;
108
+ }
109
+ return {
110
+
111
+ 'size_usd': json['size_usd'],
112
+ 'status': json['status'],
113
+ 'samples': json['samples'],
114
+ 'fill_rate': json['fill_rate'],
115
+ 'up': BOSideCostFromJSON(json['up']),
116
+ 'down': BOSideCostFromJSON(json['down']),
117
+ 'total_c': json['total_c'],
118
+ 'total_pct': json['total_pct'],
119
+ 'cost_usd': json['cost_usd'],
120
+ };
121
+ }
122
+
123
+ export function BOSizeCostToJSON(value?: BOSizeCost | null): any {
124
+ if (value == null) {
125
+ return value;
126
+ }
127
+ return {
128
+
129
+ 'size_usd': value['size_usd'],
130
+ 'status': value['status'],
131
+ 'samples': value['samples'],
132
+ 'fill_rate': value['fill_rate'],
133
+ 'up': BOSideCostToJSON(value['up']),
134
+ 'down': BOSideCostToJSON(value['down']),
135
+ 'total_c': value['total_c'],
136
+ 'total_pct': value['total_pct'],
137
+ 'cost_usd': value['cost_usd'],
138
+ };
139
+ }
140
+
@@ -0,0 +1,77 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ *
5
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
6
+ *
7
+ * The version of the OpenAPI document:
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ import { mapValues } from '../runtime';
16
+ import type { BOVenueCosts } from './BOVenueCosts';
17
+ import {
18
+ BOVenueCostsFromJSON,
19
+ BOVenueCostsFromJSONTyped,
20
+ BOVenueCostsToJSON,
21
+ } from './BOVenueCosts';
22
+
23
+ /**
24
+ *
25
+ * @export
26
+ * @interface BOSymbolCosts
27
+ */
28
+ export interface BOSymbolCosts {
29
+ /**
30
+ *
31
+ * @type {string}
32
+ * @memberof BOSymbolCosts
33
+ */
34
+ symbol: string;
35
+ /**
36
+ *
37
+ * @type {Array<BOVenueCosts>}
38
+ * @memberof BOSymbolCosts
39
+ */
40
+ venues: Array<BOVenueCosts>;
41
+ }
42
+
43
+ /**
44
+ * Check if a given object implements the BOSymbolCosts interface.
45
+ */
46
+ export function instanceOfBOSymbolCosts(value: object): value is BOSymbolCosts {
47
+ if (!('symbol' in value) || value['symbol'] === undefined) return false;
48
+ if (!('venues' in value) || value['venues'] === undefined) return false;
49
+ return true;
50
+ }
51
+
52
+ export function BOSymbolCostsFromJSON(json: any): BOSymbolCosts {
53
+ return BOSymbolCostsFromJSONTyped(json, false);
54
+ }
55
+
56
+ export function BOSymbolCostsFromJSONTyped(json: any, ignoreDiscriminator: boolean): BOSymbolCosts {
57
+ if (json == null) {
58
+ return json;
59
+ }
60
+ return {
61
+
62
+ 'symbol': json['symbol'],
63
+ 'venues': ((json['venues'] as Array<any>).map(BOVenueCostsFromJSON)),
64
+ };
65
+ }
66
+
67
+ export function BOSymbolCostsToJSON(value?: BOSymbolCosts | null): any {
68
+ if (value == null) {
69
+ return value;
70
+ }
71
+ return {
72
+
73
+ 'symbol': value['symbol'],
74
+ 'venues': ((value['venues'] as Array<any>).map(BOVenueCostsToJSON)),
75
+ };
76
+ }
77
+
@@ -0,0 +1,86 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ *
5
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
6
+ *
7
+ * The version of the OpenAPI document:
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ import { mapValues } from '../runtime';
16
+ import type { BOSizeCost } from './BOSizeCost';
17
+ import {
18
+ BOSizeCostFromJSON,
19
+ BOSizeCostFromJSONTyped,
20
+ BOSizeCostToJSON,
21
+ } from './BOSizeCost';
22
+
23
+ /**
24
+ *
25
+ * @export
26
+ * @interface BOVenueCosts
27
+ */
28
+ export interface BOVenueCosts {
29
+ /**
30
+ *
31
+ * @type {string}
32
+ * @memberof BOVenueCosts
33
+ */
34
+ venue: string;
35
+ /**
36
+ * start_price, or fixed_threshold (Hyperliquid: not the same contract)
37
+ * @type {string}
38
+ * @memberof BOVenueCosts
39
+ */
40
+ strike_type: string;
41
+ /**
42
+ *
43
+ * @type {Array<BOSizeCost>}
44
+ * @memberof BOVenueCosts
45
+ */
46
+ sizes: Array<BOSizeCost>;
47
+ }
48
+
49
+ /**
50
+ * Check if a given object implements the BOVenueCosts interface.
51
+ */
52
+ export function instanceOfBOVenueCosts(value: object): value is BOVenueCosts {
53
+ if (!('venue' in value) || value['venue'] === undefined) return false;
54
+ if (!('strike_type' in value) || value['strike_type'] === undefined) return false;
55
+ if (!('sizes' in value) || value['sizes'] === undefined) return false;
56
+ return true;
57
+ }
58
+
59
+ export function BOVenueCostsFromJSON(json: any): BOVenueCosts {
60
+ return BOVenueCostsFromJSONTyped(json, false);
61
+ }
62
+
63
+ export function BOVenueCostsFromJSONTyped(json: any, ignoreDiscriminator: boolean): BOVenueCosts {
64
+ if (json == null) {
65
+ return json;
66
+ }
67
+ return {
68
+
69
+ 'venue': json['venue'],
70
+ 'strike_type': json['strike_type'],
71
+ 'sizes': ((json['sizes'] as Array<any>).map(BOSizeCostFromJSON)),
72
+ };
73
+ }
74
+
75
+ export function BOVenueCostsToJSON(value?: BOVenueCosts | null): any {
76
+ if (value == null) {
77
+ return value;
78
+ }
79
+ return {
80
+
81
+ 'venue': value['venue'],
82
+ 'strike_type': value['strike_type'],
83
+ 'sizes': ((value['sizes'] as Array<any>).map(BOSizeCostToJSON)),
84
+ };
85
+ }
86
+
@@ -0,0 +1,95 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ *
5
+ * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
6
+ *
7
+ * The version of the OpenAPI document:
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ import { mapValues } from '../runtime';
16
+ import type { BOSymbolCosts } from './BOSymbolCosts';
17
+ import {
18
+ BOSymbolCostsFromJSON,
19
+ BOSymbolCostsFromJSONTyped,
20
+ BOSymbolCostsToJSON,
21
+ } from './BOSymbolCosts';
22
+
23
+ /**
24
+ *
25
+ * @export
26
+ * @interface RespGetBOExecuteStats
27
+ */
28
+ export interface RespGetBOExecuteStats {
29
+ /**
30
+ * start of the first round averaged
31
+ * @type {number}
32
+ * @memberof RespGetBOExecuteStats
33
+ */
34
+ window_start: number;
35
+ /**
36
+ * end of the last completed round
37
+ * @type {number}
38
+ * @memberof RespGetBOExecuteStats
39
+ */
40
+ window_end: number;
41
+ /**
42
+ * rounds with data in the window
43
+ * @type {number}
44
+ * @memberof RespGetBOExecuteStats
45
+ */
46
+ rounds: number;
47
+ /**
48
+ *
49
+ * @type {Array<BOSymbolCosts>}
50
+ * @memberof RespGetBOExecuteStats
51
+ */
52
+ symbols: Array<BOSymbolCosts>;
53
+ }
54
+
55
+ /**
56
+ * Check if a given object implements the RespGetBOExecuteStats interface.
57
+ */
58
+ export function instanceOfRespGetBOExecuteStats(value: object): value is RespGetBOExecuteStats {
59
+ if (!('window_start' in value) || value['window_start'] === undefined) return false;
60
+ if (!('window_end' in value) || value['window_end'] === undefined) return false;
61
+ if (!('rounds' in value) || value['rounds'] === undefined) return false;
62
+ if (!('symbols' in value) || value['symbols'] === undefined) return false;
63
+ return true;
64
+ }
65
+
66
+ export function RespGetBOExecuteStatsFromJSON(json: any): RespGetBOExecuteStats {
67
+ return RespGetBOExecuteStatsFromJSONTyped(json, false);
68
+ }
69
+
70
+ export function RespGetBOExecuteStatsFromJSONTyped(json: any, ignoreDiscriminator: boolean): RespGetBOExecuteStats {
71
+ if (json == null) {
72
+ return json;
73
+ }
74
+ return {
75
+
76
+ 'window_start': json['window_start'],
77
+ 'window_end': json['window_end'],
78
+ 'rounds': json['rounds'],
79
+ 'symbols': ((json['symbols'] as Array<any>).map(BOSymbolCostsFromJSON)),
80
+ };
81
+ }
82
+
83
+ export function RespGetBOExecuteStatsToJSON(value?: RespGetBOExecuteStats | null): any {
84
+ if (value == null) {
85
+ return value;
86
+ }
87
+ return {
88
+
89
+ 'window_start': value['window_start'],
90
+ 'window_end': value['window_end'],
91
+ 'rounds': value['rounds'],
92
+ 'symbols': ((value['symbols'] as Array<any>).map(BOSymbolCostsToJSON)),
93
+ };
94
+ }
95
+
package/models/index.ts CHANGED
@@ -32,6 +32,10 @@ export * from './AssetStats';
32
32
  export * from './AtomicOrder';
33
33
  export * from './AtomicOrderLeg';
34
34
  export * from './Auth';
35
+ export * from './BOSideCost';
36
+ export * from './BOSizeCost';
37
+ export * from './BOSymbolCosts';
38
+ export * from './BOVenueCosts';
35
39
  export * from './BinaryOptionMarketStats';
36
40
  export * from './Block';
37
41
  export * from './Blocks';
@@ -258,6 +262,7 @@ export * from './RespCreateRFQ';
258
262
  export * from './RespCreateStrategyHeartbeat';
259
263
  export * from './RespGaslessDeposit';
260
264
  export * from './RespGetApiTokens';
265
+ export * from './RespGetBOExecuteStats';
261
266
  export * from './RespGetBoPnL';
262
267
  export * from './RespGetBridgesByL1Addr';
263
268
  export * from './RespGetCompetitions';
package/openapi.json CHANGED
@@ -1224,6 +1224,30 @@
1224
1224
  "description": "Get blocks"
1225
1225
  }
1226
1226
  },
1227
+ "/api/v1/boExecuteStats": {
1228
+ "get": {
1229
+ "summary": "boExecuteStats",
1230
+ "operationId": "boExecuteStats",
1231
+ "responses": {
1232
+ "200": {
1233
+ "description": "A successful response.",
1234
+ "schema": {
1235
+ "$ref": "#/definitions/RespGetBOExecuteStats"
1236
+ }
1237
+ },
1238
+ "400": {
1239
+ "description": "Bad request",
1240
+ "schema": {
1241
+ "$ref": "#/definitions/ResultCode"
1242
+ }
1243
+ }
1244
+ },
1245
+ "tags": [
1246
+ "order"
1247
+ ],
1248
+ "description": "Get the mean cost of buying Up and Down on the 15-minute BTC and ETH Up/Down rounds over the last day, per venue and size"
1249
+ }
1250
+ },
1227
1251
  "/api/v1/bridges": {
1228
1252
  "get": {
1229
1253
  "summary": "bridges",
@@ -9921,6 +9945,145 @@
9921
9945
  "auth"
9922
9946
  ]
9923
9947
  },
9948
+ "BOSideCost": {
9949
+ "type": "object",
9950
+ "properties": {
9951
+ "avg_price": {
9952
+ "type": "number",
9953
+ "format": "double",
9954
+ "example": "0.512",
9955
+ "description": " average price per share, in dollars"
9956
+ },
9957
+ "slippage_c": {
9958
+ "type": "number",
9959
+ "format": "double",
9960
+ "example": "0.7",
9961
+ "description": " cents per share over the mid (for Down, over 1 - mid)"
9962
+ },
9963
+ "fee_c": {
9964
+ "type": "number",
9965
+ "format": "double",
9966
+ "example": "0.25",
9967
+ "description": " taker fee, cents per share"
9968
+ }
9969
+ },
9970
+ "title": "BOSideCost",
9971
+ "required": [
9972
+ "avg_price",
9973
+ "slippage_c",
9974
+ "fee_c"
9975
+ ]
9976
+ },
9977
+ "BOSizeCost": {
9978
+ "type": "object",
9979
+ "properties": {
9980
+ "size_usd": {
9981
+ "type": "integer",
9982
+ "format": "int64",
9983
+ "example": "100"
9984
+ },
9985
+ "status": {
9986
+ "type": "string",
9987
+ "example": "ok",
9988
+ "description": " ok, or not_enough_data: too few samples, show N/A"
9989
+ },
9990
+ "samples": {
9991
+ "type": "integer",
9992
+ "format": "int64",
9993
+ "example": "2841",
9994
+ "description": " 30s samples averaged: every served venue was valid at that moment"
9995
+ },
9996
+ "fill_rate": {
9997
+ "type": "number",
9998
+ "format": "double",
9999
+ "example": "0.97",
10000
+ "description": " share of the venue's in-band samples where the size filled; null without any"
10001
+ },
10002
+ "up": {
10003
+ "$ref": "#/definitions/BOSideCost",
10004
+ "description": " mean over the samples; null unless status is ok"
10005
+ },
10006
+ "down": {
10007
+ "$ref": "#/definitions/BOSideCost"
10008
+ },
10009
+ "total_c": {
10010
+ "type": "number",
10011
+ "format": "double",
10012
+ "example": "0.75",
10013
+ "description": " cents per share, Up and Down averaged"
10014
+ },
10015
+ "total_pct": {
10016
+ "type": "number",
10017
+ "format": "double",
10018
+ "example": "1.47",
10019
+ "description": " % of the price paid, Up and Down averaged"
10020
+ },
10021
+ "cost_usd": {
10022
+ "type": "number",
10023
+ "format": "double",
10024
+ "example": "1.47",
10025
+ "description": " size_usd * total_pct / 100"
10026
+ }
10027
+ },
10028
+ "title": "BOSizeCost",
10029
+ "required": [
10030
+ "size_usd",
10031
+ "status",
10032
+ "samples",
10033
+ "fill_rate",
10034
+ "up",
10035
+ "down",
10036
+ "total_c",
10037
+ "total_pct",
10038
+ "cost_usd"
10039
+ ]
10040
+ },
10041
+ "BOSymbolCosts": {
10042
+ "type": "object",
10043
+ "properties": {
10044
+ "symbol": {
10045
+ "type": "string",
10046
+ "example": "btc"
10047
+ },
10048
+ "venues": {
10049
+ "type": "array",
10050
+ "items": {
10051
+ "$ref": "#/definitions/BOVenueCosts"
10052
+ }
10053
+ }
10054
+ },
10055
+ "title": "BOSymbolCosts",
10056
+ "required": [
10057
+ "symbol",
10058
+ "venues"
10059
+ ]
10060
+ },
10061
+ "BOVenueCosts": {
10062
+ "type": "object",
10063
+ "properties": {
10064
+ "venue": {
10065
+ "type": "string",
10066
+ "example": "lighter"
10067
+ },
10068
+ "strike_type": {
10069
+ "type": "string",
10070
+ "example": "start_price",
10071
+ "description": " start_price, or fixed_threshold (Hyperliquid: not the same contract)"
10072
+ },
10073
+ "sizes": {
10074
+ "type": "array",
10075
+ "items": {
10076
+ "$ref": "#/definitions/BOSizeCost"
10077
+ }
10078
+ }
10079
+ },
10080
+ "title": "BOVenueCosts",
10081
+ "required": [
10082
+ "venue",
10083
+ "strike_type",
10084
+ "sizes"
10085
+ ]
10086
+ },
9924
10087
  "BinaryOptionMarketStats": {
9925
10088
  "type": "object",
9926
10089
  "properties": {
@@ -20768,6 +20931,42 @@
20768
20931
  "api_tokens"
20769
20932
  ]
20770
20933
  },
20934
+ "RespGetBOExecuteStats": {
20935
+ "type": "object",
20936
+ "properties": {
20937
+ "window_start": {
20938
+ "type": "integer",
20939
+ "format": "int64",
20940
+ "example": "1792674000000",
20941
+ "description": " start of the first round averaged"
20942
+ },
20943
+ "window_end": {
20944
+ "type": "integer",
20945
+ "format": "int64",
20946
+ "example": "1792760400000",
20947
+ "description": " end of the last completed round"
20948
+ },
20949
+ "rounds": {
20950
+ "type": "integer",
20951
+ "format": "int64",
20952
+ "example": "96",
20953
+ "description": " rounds with data in the window"
20954
+ },
20955
+ "symbols": {
20956
+ "type": "array",
20957
+ "items": {
20958
+ "$ref": "#/definitions/BOSymbolCosts"
20959
+ }
20960
+ }
20961
+ },
20962
+ "title": "RespGetBOExecuteStats",
20963
+ "required": [
20964
+ "window_start",
20965
+ "window_end",
20966
+ "rounds",
20967
+ "symbols"
20968
+ ]
20969
+ },
20771
20970
  "RespGetBoPnL": {
20772
20971
  "type": "object",
20773
20972
  "properties": {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "zklighter-perps",
3
- "version": "1.0.347",
3
+ "version": "1.0.348",
4
4
  "description": "Lighter Perps SDK",
5
5
  "main": "index.ts",
6
6
  "directories": {