@pear-protocol/types 0.0.21 → 0.1.0

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 (46) hide show
  1. package/dist/admin/client-ids/entities.d.ts +11 -0
  2. package/dist/admin/client-ids/entities.js +13 -0
  3. package/dist/admin/client-ids/index.d.ts +4 -0
  4. package/dist/admin/client-ids/index.js +4 -0
  5. package/dist/admin/client-ids/payloads.d.ts +14 -0
  6. package/dist/admin/client-ids/payloads.js +13 -0
  7. package/dist/admin/client-ids/queries.d.ts +10 -0
  8. package/dist/admin/client-ids/queries.js +7 -0
  9. package/dist/admin/client-ids/responses.d.ts +11 -0
  10. package/dist/admin/client-ids/responses.js +6 -0
  11. package/dist/auth/entities.d.ts +1 -0
  12. package/dist/auth/entities.js +1 -1
  13. package/dist/auth/payloads.d.ts +4 -0
  14. package/dist/auth/payloads.js +5 -2
  15. package/dist/auth/response.d.ts +2 -0
  16. package/dist/bundle.d.ts +4 -0
  17. package/dist/bundle.js +4 -0
  18. package/dist/instrument/queries.d.ts +2 -2
  19. package/dist/market/entities.d.ts +66 -0
  20. package/dist/market/entities.js +42 -0
  21. package/dist/market/index.d.ts +3 -0
  22. package/dist/market/index.js +3 -0
  23. package/dist/market/queries.d.ts +38 -0
  24. package/dist/market/queries.js +19 -0
  25. package/dist/market/responses.d.ts +72 -0
  26. package/dist/market/responses.js +15 -0
  27. package/dist/portfolio/entities.d.ts +199 -0
  28. package/dist/portfolio/entities.js +100 -0
  29. package/dist/portfolio/index.d.ts +3 -0
  30. package/dist/portfolio/index.js +3 -0
  31. package/dist/portfolio/queries.d.ts +46 -0
  32. package/dist/portfolio/queries.js +20 -0
  33. package/dist/portfolio/responses.d.ts +172 -0
  34. package/dist/portfolio/responses.js +16 -0
  35. package/dist/tca/entities.d.ts +8 -0
  36. package/dist/tca/entities.js +6 -0
  37. package/dist/tca/index.d.ts +3 -0
  38. package/dist/tca/index.js +3 -0
  39. package/dist/tca/queries.d.ts +15 -0
  40. package/dist/tca/queries.js +14 -0
  41. package/dist/tca/responses.d.ts +353 -0
  42. package/dist/tca/responses.js +105 -0
  43. package/dist/users/entities.d.ts +1 -0
  44. package/dist/users/entities.js +1 -1
  45. package/dist/users/response.d.ts +1 -0
  46. package/package.json +1 -1
@@ -0,0 +1,199 @@
1
+ import { z } from 'zod';
2
+ export declare const NullableNumber: z.ZodNullable<z.ZodNumber>;
3
+ export declare const PortfolioMetricVariant: z.ZodObject<{
4
+ pnlAbsolute: z.ZodNumber;
5
+ pnlPercent: z.ZodNullable<z.ZodNumber>;
6
+ hitRate: z.ZodNullable<z.ZodNumber>;
7
+ profitFactor: z.ZodNullable<z.ZodNumber>;
8
+ avgWinSize: z.ZodNullable<z.ZodNumber>;
9
+ avgLossSize: z.ZodNullable<z.ZodNumber>;
10
+ avgReturnPerWin: z.ZodNullable<z.ZodNumber>;
11
+ avgReturnPerLoss: z.ZodNullable<z.ZodNumber>;
12
+ maxDrawdown: z.ZodNullable<z.ZodNumber>;
13
+ sharpeRatio: z.ZodNullable<z.ZodNumber>;
14
+ sortinoRatio: z.ZodNullable<z.ZodNumber>;
15
+ }, z.core.$strip>;
16
+ export type PortfolioMetricVariant = z.output<typeof PortfolioMetricVariant>;
17
+ export declare const PortfolioIntervalBucket: z.ZodObject<{
18
+ periodStart: z.ZodString;
19
+ periodEnd: z.ZodString;
20
+ volume: z.ZodNumber;
21
+ openInterest: z.ZodNumber;
22
+ winningTradesCount: z.ZodNumber;
23
+ winningTradesUsd: z.ZodNumber;
24
+ losingTradesCount: z.ZodNumber;
25
+ losingTradesUsd: z.ZodNumber;
26
+ }, z.core.$strip>;
27
+ export type PortfolioIntervalBucket = z.output<typeof PortfolioIntervalBucket>;
28
+ export declare const PortfolioIntervals: z.ZodObject<{
29
+ oneDay: z.ZodArray<z.ZodObject<{
30
+ periodStart: z.ZodString;
31
+ periodEnd: z.ZodString;
32
+ volume: z.ZodNumber;
33
+ openInterest: z.ZodNumber;
34
+ winningTradesCount: z.ZodNumber;
35
+ winningTradesUsd: z.ZodNumber;
36
+ losingTradesCount: z.ZodNumber;
37
+ losingTradesUsd: z.ZodNumber;
38
+ }, z.core.$strip>>;
39
+ oneWeek: z.ZodArray<z.ZodObject<{
40
+ periodStart: z.ZodString;
41
+ periodEnd: z.ZodString;
42
+ volume: z.ZodNumber;
43
+ openInterest: z.ZodNumber;
44
+ winningTradesCount: z.ZodNumber;
45
+ winningTradesUsd: z.ZodNumber;
46
+ losingTradesCount: z.ZodNumber;
47
+ losingTradesUsd: z.ZodNumber;
48
+ }, z.core.$strip>>;
49
+ oneMonth: z.ZodArray<z.ZodObject<{
50
+ periodStart: z.ZodString;
51
+ periodEnd: z.ZodString;
52
+ volume: z.ZodNumber;
53
+ openInterest: z.ZodNumber;
54
+ winningTradesCount: z.ZodNumber;
55
+ winningTradesUsd: z.ZodNumber;
56
+ losingTradesCount: z.ZodNumber;
57
+ losingTradesUsd: z.ZodNumber;
58
+ }, z.core.$strip>>;
59
+ oneYear: z.ZodArray<z.ZodObject<{
60
+ periodStart: z.ZodString;
61
+ periodEnd: z.ZodString;
62
+ volume: z.ZodNumber;
63
+ openInterest: z.ZodNumber;
64
+ winningTradesCount: z.ZodNumber;
65
+ winningTradesUsd: z.ZodNumber;
66
+ losingTradesCount: z.ZodNumber;
67
+ losingTradesUsd: z.ZodNumber;
68
+ }, z.core.$strip>>;
69
+ all: z.ZodArray<z.ZodObject<{
70
+ periodStart: z.ZodString;
71
+ periodEnd: z.ZodString;
72
+ volume: z.ZodNumber;
73
+ openInterest: z.ZodNumber;
74
+ winningTradesCount: z.ZodNumber;
75
+ winningTradesUsd: z.ZodNumber;
76
+ losingTradesCount: z.ZodNumber;
77
+ losingTradesUsd: z.ZodNumber;
78
+ }, z.core.$strip>>;
79
+ }, z.core.$strip>;
80
+ export type PortfolioIntervals = z.output<typeof PortfolioIntervals>;
81
+ export declare const PortfolioOverall: z.ZodObject<{
82
+ totalWinningTradesCount: z.ZodNumber;
83
+ totalLosingTradesCount: z.ZodNumber;
84
+ totalWinningUsd: z.ZodNumber;
85
+ totalLosingUsd: z.ZodNumber;
86
+ currentOpenInterest: z.ZodNumber;
87
+ currentTotalVolume: z.ZodNumber;
88
+ unrealizedPnl: z.ZodNumber;
89
+ realizedPnl: z.ZodNumber;
90
+ totalFees: z.ZodNumber;
91
+ totalTrades: z.ZodNumber;
92
+ }, z.core.$strip>;
93
+ export type PortfolioOverall = z.output<typeof PortfolioOverall>;
94
+ export declare const PortfolioMetrics: z.ZodObject<{
95
+ realizedOnly: z.ZodObject<{
96
+ pnlAbsolute: z.ZodNumber;
97
+ pnlPercent: z.ZodNullable<z.ZodNumber>;
98
+ hitRate: z.ZodNullable<z.ZodNumber>;
99
+ profitFactor: z.ZodNullable<z.ZodNumber>;
100
+ avgWinSize: z.ZodNullable<z.ZodNumber>;
101
+ avgLossSize: z.ZodNullable<z.ZodNumber>;
102
+ avgReturnPerWin: z.ZodNullable<z.ZodNumber>;
103
+ avgReturnPerLoss: z.ZodNullable<z.ZodNumber>;
104
+ maxDrawdown: z.ZodNullable<z.ZodNumber>;
105
+ sharpeRatio: z.ZodNullable<z.ZodNumber>;
106
+ sortinoRatio: z.ZodNullable<z.ZodNumber>;
107
+ }, z.core.$strip>;
108
+ realizedPlusUnrealized: z.ZodObject<{
109
+ pnlAbsolute: z.ZodNumber;
110
+ pnlPercent: z.ZodNullable<z.ZodNumber>;
111
+ hitRate: z.ZodNullable<z.ZodNumber>;
112
+ profitFactor: z.ZodNullable<z.ZodNumber>;
113
+ avgWinSize: z.ZodNullable<z.ZodNumber>;
114
+ avgLossSize: z.ZodNullable<z.ZodNumber>;
115
+ avgReturnPerWin: z.ZodNullable<z.ZodNumber>;
116
+ avgReturnPerLoss: z.ZodNullable<z.ZodNumber>;
117
+ maxDrawdown: z.ZodNullable<z.ZodNumber>;
118
+ sharpeRatio: z.ZodNullable<z.ZodNumber>;
119
+ sortinoRatio: z.ZodNullable<z.ZodNumber>;
120
+ }, z.core.$strip>;
121
+ realizedHitRate: z.ZodNullable<z.ZodNumber>;
122
+ profitFactor: z.ZodNullable<z.ZodNumber>;
123
+ avgWinSize: z.ZodNullable<z.ZodNumber>;
124
+ avgLossSize: z.ZodNullable<z.ZodNumber>;
125
+ breakevenHitRate: z.ZodNullable<z.ZodNumber>;
126
+ cushion: z.ZodNullable<z.ZodNumber>;
127
+ }, z.core.$strip>;
128
+ export type PortfolioMetrics = z.output<typeof PortfolioMetrics>;
129
+ export declare const PortfolioAssetAnalytics: z.ZodObject<{
130
+ asset: z.ZodString;
131
+ realizedOnly: z.ZodObject<{
132
+ pnlAbsolute: z.ZodNumber;
133
+ pnlPercent: z.ZodNullable<z.ZodNumber>;
134
+ hitRate: z.ZodNullable<z.ZodNumber>;
135
+ profitFactor: z.ZodNullable<z.ZodNumber>;
136
+ avgWinSize: z.ZodNullable<z.ZodNumber>;
137
+ avgLossSize: z.ZodNullable<z.ZodNumber>;
138
+ avgReturnPerWin: z.ZodNullable<z.ZodNumber>;
139
+ avgReturnPerLoss: z.ZodNullable<z.ZodNumber>;
140
+ maxDrawdown: z.ZodNullable<z.ZodNumber>;
141
+ sharpeRatio: z.ZodNullable<z.ZodNumber>;
142
+ sortinoRatio: z.ZodNullable<z.ZodNumber>;
143
+ }, z.core.$strip>;
144
+ realizedPlusUnrealized: z.ZodObject<{
145
+ pnlAbsolute: z.ZodNumber;
146
+ pnlPercent: z.ZodNullable<z.ZodNumber>;
147
+ hitRate: z.ZodNullable<z.ZodNumber>;
148
+ profitFactor: z.ZodNullable<z.ZodNumber>;
149
+ avgWinSize: z.ZodNullable<z.ZodNumber>;
150
+ avgLossSize: z.ZodNullable<z.ZodNumber>;
151
+ avgReturnPerWin: z.ZodNullable<z.ZodNumber>;
152
+ avgReturnPerLoss: z.ZodNullable<z.ZodNumber>;
153
+ maxDrawdown: z.ZodNullable<z.ZodNumber>;
154
+ sharpeRatio: z.ZodNullable<z.ZodNumber>;
155
+ sortinoRatio: z.ZodNullable<z.ZodNumber>;
156
+ }, z.core.$strip>;
157
+ unrealizedReturnPerDay: z.ZodNullable<z.ZodNumber>;
158
+ }, z.core.$strip>;
159
+ export type PortfolioAssetAnalytics = z.output<typeof PortfolioAssetAnalytics>;
160
+ export declare const PortfolioPairBreakdown: z.ZodObject<{
161
+ key: z.ZodString;
162
+ longAssets: z.ZodArray<z.ZodString>;
163
+ shortAssets: z.ZodArray<z.ZodString>;
164
+ trades: z.ZodNumber;
165
+ wins: z.ZodNumber;
166
+ losses: z.ZodNumber;
167
+ hitRate: z.ZodNullable<z.ZodNumber>;
168
+ avgWinSize: z.ZodNullable<z.ZodNumber>;
169
+ avgLossSize: z.ZodNullable<z.ZodNumber>;
170
+ expectancy: z.ZodNullable<z.ZodNumber>;
171
+ totalPnl: z.ZodNumber;
172
+ bookPercent: z.ZodNullable<z.ZodNumber>;
173
+ }, z.core.$strip>;
174
+ export type PortfolioPairBreakdown = z.output<typeof PortfolioPairBreakdown>;
175
+ export declare const PortfolioSeriesPoint: z.ZodObject<{
176
+ date: z.ZodString;
177
+ trades: z.ZodNumber;
178
+ wins: z.ZodNumber;
179
+ losses: z.ZodNumber;
180
+ dayPnl: z.ZodNumber;
181
+ hitRate: z.ZodNullable<z.ZodNumber>;
182
+ winLossRatio: z.ZodNullable<z.ZodNumber>;
183
+ rollingHitRate: z.ZodNullable<z.ZodNumber>;
184
+ rollingWinLossRatio: z.ZodNullable<z.ZodNumber>;
185
+ dailyReturn: z.ZodNullable<z.ZodNumber>;
186
+ cumulativeReturn: z.ZodNumber;
187
+ equity: z.ZodNumber;
188
+ drawdown: z.ZodNumber;
189
+ rollingSharpe: z.ZodNullable<z.ZodNumber>;
190
+ rollingSortino: z.ZodNullable<z.ZodNumber>;
191
+ rollingVolatility: z.ZodNullable<z.ZodNumber>;
192
+ }, z.core.$strip>;
193
+ export type PortfolioSeriesPoint = z.output<typeof PortfolioSeriesPoint>;
194
+ export declare const PortfolioAnalyticsConfig: z.ZodObject<{
195
+ rollingWindowDays: z.ZodNumber;
196
+ startDate: z.ZodString;
197
+ endDate: z.ZodString;
198
+ }, z.core.$strip>;
199
+ export type PortfolioAnalyticsConfig = z.output<typeof PortfolioAnalyticsConfig>;
@@ -0,0 +1,100 @@
1
+ import { z } from 'zod';
2
+
3
+ const NullableNumber = z.number().nullable();
4
+ const PortfolioMetricVariant = z.object({
5
+ pnlAbsolute: z.number(),
6
+ pnlPercent: NullableNumber,
7
+ hitRate: NullableNumber,
8
+ profitFactor: NullableNumber,
9
+ avgWinSize: NullableNumber,
10
+ avgLossSize: NullableNumber,
11
+ avgReturnPerWin: NullableNumber,
12
+ avgReturnPerLoss: NullableNumber,
13
+ maxDrawdown: NullableNumber,
14
+ sharpeRatio: NullableNumber,
15
+ sortinoRatio: NullableNumber
16
+ });
17
+ const PortfolioIntervalBucket = z.object({
18
+ periodStart: z.string(),
19
+ periodEnd: z.string(),
20
+ volume: z.number(),
21
+ openInterest: z.number(),
22
+ winningTradesCount: z.number(),
23
+ winningTradesUsd: z.number(),
24
+ losingTradesCount: z.number(),
25
+ losingTradesUsd: z.number()
26
+ });
27
+ const PortfolioIntervals = z.object({
28
+ oneDay: z.array(PortfolioIntervalBucket),
29
+ oneWeek: z.array(PortfolioIntervalBucket),
30
+ oneMonth: z.array(PortfolioIntervalBucket),
31
+ oneYear: z.array(PortfolioIntervalBucket),
32
+ all: z.array(PortfolioIntervalBucket)
33
+ });
34
+ const PortfolioOverall = z.object({
35
+ totalWinningTradesCount: z.number(),
36
+ totalLosingTradesCount: z.number(),
37
+ totalWinningUsd: z.number(),
38
+ totalLosingUsd: z.number(),
39
+ currentOpenInterest: z.number(),
40
+ currentTotalVolume: z.number(),
41
+ unrealizedPnl: z.number(),
42
+ realizedPnl: z.number(),
43
+ totalFees: z.number(),
44
+ totalTrades: z.number()
45
+ });
46
+ const PortfolioMetrics = z.object({
47
+ realizedOnly: PortfolioMetricVariant,
48
+ realizedPlusUnrealized: PortfolioMetricVariant,
49
+ realizedHitRate: NullableNumber,
50
+ profitFactor: NullableNumber,
51
+ avgWinSize: NullableNumber,
52
+ avgLossSize: NullableNumber,
53
+ breakevenHitRate: NullableNumber,
54
+ cushion: NullableNumber
55
+ });
56
+ const PortfolioAssetAnalytics = z.object({
57
+ asset: z.string(),
58
+ realizedOnly: PortfolioMetricVariant,
59
+ realizedPlusUnrealized: PortfolioMetricVariant,
60
+ unrealizedReturnPerDay: NullableNumber
61
+ });
62
+ const PortfolioPairBreakdown = z.object({
63
+ key: z.string(),
64
+ longAssets: z.array(z.string()),
65
+ shortAssets: z.array(z.string()),
66
+ trades: z.number(),
67
+ wins: z.number(),
68
+ losses: z.number(),
69
+ hitRate: NullableNumber,
70
+ avgWinSize: NullableNumber,
71
+ avgLossSize: NullableNumber,
72
+ expectancy: NullableNumber,
73
+ totalPnl: z.number(),
74
+ bookPercent: NullableNumber
75
+ });
76
+ const PortfolioSeriesPoint = z.object({
77
+ date: z.string(),
78
+ trades: z.number(),
79
+ wins: z.number(),
80
+ losses: z.number(),
81
+ dayPnl: z.number(),
82
+ hitRate: NullableNumber,
83
+ winLossRatio: NullableNumber,
84
+ rollingHitRate: NullableNumber,
85
+ rollingWinLossRatio: NullableNumber,
86
+ dailyReturn: NullableNumber,
87
+ cumulativeReturn: z.number(),
88
+ equity: z.number(),
89
+ drawdown: z.number(),
90
+ rollingSharpe: NullableNumber,
91
+ rollingSortino: NullableNumber,
92
+ rollingVolatility: NullableNumber
93
+ });
94
+ const PortfolioAnalyticsConfig = z.object({
95
+ rollingWindowDays: z.number(),
96
+ startDate: z.string(),
97
+ endDate: z.string()
98
+ });
99
+
100
+ export { NullableNumber, PortfolioAnalyticsConfig, PortfolioAssetAnalytics, PortfolioIntervalBucket, PortfolioIntervals, PortfolioMetricVariant, PortfolioMetrics, PortfolioOverall, PortfolioPairBreakdown, PortfolioSeriesPoint };
@@ -0,0 +1,3 @@
1
+ export * from './entities';
2
+ export * from './queries';
3
+ export * from './responses';
@@ -0,0 +1,3 @@
1
+ export * from './entities';
2
+ export * from './queries';
3
+ export * from './responses';
@@ -0,0 +1,46 @@
1
+ import { z } from 'zod';
2
+ export declare const PortfolioSource: z.ZodEnum<{
3
+ all: "all";
4
+ pear: "pear";
5
+ }>;
6
+ export type PortfolioSource = z.output<typeof PortfolioSource>;
7
+ export declare const PortfolioQuery: z.ZodObject<{
8
+ startDate: z.ZodOptional<z.ZodString>;
9
+ endDate: z.ZodOptional<z.ZodString>;
10
+ source: z.ZodDefault<z.ZodOptional<z.ZodEnum<{
11
+ all: "all";
12
+ pear: "pear";
13
+ }>>>;
14
+ }, z.core.$strip>;
15
+ export type PortfolioQueryInput = z.input<typeof PortfolioQuery>;
16
+ export type PortfolioQuery = z.output<typeof PortfolioQuery>;
17
+ export declare const PortfolioAnalyticsInterval: z.ZodEnum<{
18
+ all: "all";
19
+ "1d": "1d";
20
+ "1w": "1w";
21
+ "1m": "1m";
22
+ "1y": "1y";
23
+ }>;
24
+ export type PortfolioAnalyticsInterval = z.output<typeof PortfolioAnalyticsInterval>;
25
+ export declare const PortfolioAnalyticsQuery: z.ZodObject<{
26
+ startDate: z.ZodOptional<z.ZodString>;
27
+ endDate: z.ZodOptional<z.ZodString>;
28
+ interval: z.ZodOptional<z.ZodEnum<{
29
+ all: "all";
30
+ "1d": "1d";
31
+ "1w": "1w";
32
+ "1m": "1m";
33
+ "1y": "1y";
34
+ }>>;
35
+ rollingWindowDays: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
36
+ includeSeries: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodPipe<z.ZodEnum<{
37
+ false: "false";
38
+ true: "true";
39
+ }>, z.ZodTransform<boolean, "false" | "true">>]>>;
40
+ source: z.ZodDefault<z.ZodOptional<z.ZodEnum<{
41
+ all: "all";
42
+ pear: "pear";
43
+ }>>>;
44
+ }, z.core.$strip>;
45
+ export type PortfolioAnalyticsQueryInput = z.input<typeof PortfolioAnalyticsQuery>;
46
+ export type PortfolioAnalyticsQuery = z.output<typeof PortfolioAnalyticsQuery>;
@@ -0,0 +1,20 @@
1
+ import { z } from 'zod';
2
+
3
+ const PortfolioSource = z.enum(["all", "pear"]);
4
+ const PortfolioQuery = z.object({
5
+ startDate: z.string().optional(),
6
+ endDate: z.string().optional(),
7
+ // "pear" excludes external imported fills from volume calculations.
8
+ source: PortfolioSource.optional().default("all")
9
+ });
10
+ const PortfolioAnalyticsInterval = z.enum(["1d", "1w", "1m", "1y", "all"]);
11
+ const PortfolioAnalyticsQuery = z.object({
12
+ startDate: z.string().optional(),
13
+ endDate: z.string().optional(),
14
+ interval: PortfolioAnalyticsInterval.optional(),
15
+ rollingWindowDays: z.coerce.number().int().optional(),
16
+ includeSeries: z.union([z.boolean(), z.enum(["false", "true"]).transform((value) => value === "true")]).optional(),
17
+ source: PortfolioSource.optional().default("all")
18
+ });
19
+
20
+ export { PortfolioAnalyticsInterval, PortfolioAnalyticsQuery, PortfolioQuery, PortfolioSource };
@@ -0,0 +1,172 @@
1
+ import { z } from 'zod';
2
+ export declare const PortfolioResponse: z.ZodObject<{
3
+ intervals: z.ZodNullable<z.ZodObject<{
4
+ oneDay: z.ZodArray<z.ZodObject<{
5
+ periodStart: z.ZodString;
6
+ periodEnd: z.ZodString;
7
+ volume: z.ZodNumber;
8
+ openInterest: z.ZodNumber;
9
+ winningTradesCount: z.ZodNumber;
10
+ winningTradesUsd: z.ZodNumber;
11
+ losingTradesCount: z.ZodNumber;
12
+ losingTradesUsd: z.ZodNumber;
13
+ }, z.core.$strip>>;
14
+ oneWeek: z.ZodArray<z.ZodObject<{
15
+ periodStart: z.ZodString;
16
+ periodEnd: z.ZodString;
17
+ volume: z.ZodNumber;
18
+ openInterest: z.ZodNumber;
19
+ winningTradesCount: z.ZodNumber;
20
+ winningTradesUsd: z.ZodNumber;
21
+ losingTradesCount: z.ZodNumber;
22
+ losingTradesUsd: z.ZodNumber;
23
+ }, z.core.$strip>>;
24
+ oneMonth: z.ZodArray<z.ZodObject<{
25
+ periodStart: z.ZodString;
26
+ periodEnd: z.ZodString;
27
+ volume: z.ZodNumber;
28
+ openInterest: z.ZodNumber;
29
+ winningTradesCount: z.ZodNumber;
30
+ winningTradesUsd: z.ZodNumber;
31
+ losingTradesCount: z.ZodNumber;
32
+ losingTradesUsd: z.ZodNumber;
33
+ }, z.core.$strip>>;
34
+ oneYear: z.ZodArray<z.ZodObject<{
35
+ periodStart: z.ZodString;
36
+ periodEnd: z.ZodString;
37
+ volume: z.ZodNumber;
38
+ openInterest: z.ZodNumber;
39
+ winningTradesCount: z.ZodNumber;
40
+ winningTradesUsd: z.ZodNumber;
41
+ losingTradesCount: z.ZodNumber;
42
+ losingTradesUsd: z.ZodNumber;
43
+ }, z.core.$strip>>;
44
+ all: z.ZodArray<z.ZodObject<{
45
+ periodStart: z.ZodString;
46
+ periodEnd: z.ZodString;
47
+ volume: z.ZodNumber;
48
+ openInterest: z.ZodNumber;
49
+ winningTradesCount: z.ZodNumber;
50
+ winningTradesUsd: z.ZodNumber;
51
+ losingTradesCount: z.ZodNumber;
52
+ losingTradesUsd: z.ZodNumber;
53
+ }, z.core.$strip>>;
54
+ }, z.core.$strip>>;
55
+ overall: z.ZodObject<{
56
+ totalWinningTradesCount: z.ZodNumber;
57
+ totalLosingTradesCount: z.ZodNumber;
58
+ totalWinningUsd: z.ZodNumber;
59
+ totalLosingUsd: z.ZodNumber;
60
+ currentOpenInterest: z.ZodNumber;
61
+ currentTotalVolume: z.ZodNumber;
62
+ unrealizedPnl: z.ZodNumber;
63
+ realizedPnl: z.ZodNumber;
64
+ totalFees: z.ZodNumber;
65
+ totalTrades: z.ZodNumber;
66
+ }, z.core.$strip>;
67
+ }, z.core.$strip>;
68
+ export type PortfolioResponse = z.output<typeof PortfolioResponse>;
69
+ export declare const PortfolioAnalyticsResponse: z.ZodObject<{
70
+ config: z.ZodObject<{
71
+ rollingWindowDays: z.ZodNumber;
72
+ startDate: z.ZodString;
73
+ endDate: z.ZodString;
74
+ }, z.core.$strip>;
75
+ portfolio: z.ZodObject<{
76
+ realizedOnly: z.ZodObject<{
77
+ pnlAbsolute: z.ZodNumber;
78
+ pnlPercent: z.ZodNullable<z.ZodNumber>;
79
+ hitRate: z.ZodNullable<z.ZodNumber>;
80
+ profitFactor: z.ZodNullable<z.ZodNumber>;
81
+ avgWinSize: z.ZodNullable<z.ZodNumber>;
82
+ avgLossSize: z.ZodNullable<z.ZodNumber>;
83
+ avgReturnPerWin: z.ZodNullable<z.ZodNumber>;
84
+ avgReturnPerLoss: z.ZodNullable<z.ZodNumber>;
85
+ maxDrawdown: z.ZodNullable<z.ZodNumber>;
86
+ sharpeRatio: z.ZodNullable<z.ZodNumber>;
87
+ sortinoRatio: z.ZodNullable<z.ZodNumber>;
88
+ }, z.core.$strip>;
89
+ realizedPlusUnrealized: z.ZodObject<{
90
+ pnlAbsolute: z.ZodNumber;
91
+ pnlPercent: z.ZodNullable<z.ZodNumber>;
92
+ hitRate: z.ZodNullable<z.ZodNumber>;
93
+ profitFactor: z.ZodNullable<z.ZodNumber>;
94
+ avgWinSize: z.ZodNullable<z.ZodNumber>;
95
+ avgLossSize: z.ZodNullable<z.ZodNumber>;
96
+ avgReturnPerWin: z.ZodNullable<z.ZodNumber>;
97
+ avgReturnPerLoss: z.ZodNullable<z.ZodNumber>;
98
+ maxDrawdown: z.ZodNullable<z.ZodNumber>;
99
+ sharpeRatio: z.ZodNullable<z.ZodNumber>;
100
+ sortinoRatio: z.ZodNullable<z.ZodNumber>;
101
+ }, z.core.$strip>;
102
+ realizedHitRate: z.ZodNullable<z.ZodNumber>;
103
+ profitFactor: z.ZodNullable<z.ZodNumber>;
104
+ avgWinSize: z.ZodNullable<z.ZodNumber>;
105
+ avgLossSize: z.ZodNullable<z.ZodNumber>;
106
+ breakevenHitRate: z.ZodNullable<z.ZodNumber>;
107
+ cushion: z.ZodNullable<z.ZodNumber>;
108
+ }, z.core.$strip>;
109
+ assets: z.ZodArray<z.ZodObject<{
110
+ asset: z.ZodString;
111
+ realizedOnly: z.ZodObject<{
112
+ pnlAbsolute: z.ZodNumber;
113
+ pnlPercent: z.ZodNullable<z.ZodNumber>;
114
+ hitRate: z.ZodNullable<z.ZodNumber>;
115
+ profitFactor: z.ZodNullable<z.ZodNumber>;
116
+ avgWinSize: z.ZodNullable<z.ZodNumber>;
117
+ avgLossSize: z.ZodNullable<z.ZodNumber>;
118
+ avgReturnPerWin: z.ZodNullable<z.ZodNumber>;
119
+ avgReturnPerLoss: z.ZodNullable<z.ZodNumber>;
120
+ maxDrawdown: z.ZodNullable<z.ZodNumber>;
121
+ sharpeRatio: z.ZodNullable<z.ZodNumber>;
122
+ sortinoRatio: z.ZodNullable<z.ZodNumber>;
123
+ }, z.core.$strip>;
124
+ realizedPlusUnrealized: z.ZodObject<{
125
+ pnlAbsolute: z.ZodNumber;
126
+ pnlPercent: z.ZodNullable<z.ZodNumber>;
127
+ hitRate: z.ZodNullable<z.ZodNumber>;
128
+ profitFactor: z.ZodNullable<z.ZodNumber>;
129
+ avgWinSize: z.ZodNullable<z.ZodNumber>;
130
+ avgLossSize: z.ZodNullable<z.ZodNumber>;
131
+ avgReturnPerWin: z.ZodNullable<z.ZodNumber>;
132
+ avgReturnPerLoss: z.ZodNullable<z.ZodNumber>;
133
+ maxDrawdown: z.ZodNullable<z.ZodNumber>;
134
+ sharpeRatio: z.ZodNullable<z.ZodNumber>;
135
+ sortinoRatio: z.ZodNullable<z.ZodNumber>;
136
+ }, z.core.$strip>;
137
+ unrealizedReturnPerDay: z.ZodNullable<z.ZodNumber>;
138
+ }, z.core.$strip>>;
139
+ pairs: z.ZodArray<z.ZodObject<{
140
+ key: z.ZodString;
141
+ longAssets: z.ZodArray<z.ZodString>;
142
+ shortAssets: z.ZodArray<z.ZodString>;
143
+ trades: z.ZodNumber;
144
+ wins: z.ZodNumber;
145
+ losses: z.ZodNumber;
146
+ hitRate: z.ZodNullable<z.ZodNumber>;
147
+ avgWinSize: z.ZodNullable<z.ZodNumber>;
148
+ avgLossSize: z.ZodNullable<z.ZodNumber>;
149
+ expectancy: z.ZodNullable<z.ZodNumber>;
150
+ totalPnl: z.ZodNumber;
151
+ bookPercent: z.ZodNullable<z.ZodNumber>;
152
+ }, z.core.$strip>>;
153
+ series: z.ZodOptional<z.ZodArray<z.ZodObject<{
154
+ date: z.ZodString;
155
+ trades: z.ZodNumber;
156
+ wins: z.ZodNumber;
157
+ losses: z.ZodNumber;
158
+ dayPnl: z.ZodNumber;
159
+ hitRate: z.ZodNullable<z.ZodNumber>;
160
+ winLossRatio: z.ZodNullable<z.ZodNumber>;
161
+ rollingHitRate: z.ZodNullable<z.ZodNumber>;
162
+ rollingWinLossRatio: z.ZodNullable<z.ZodNumber>;
163
+ dailyReturn: z.ZodNullable<z.ZodNumber>;
164
+ cumulativeReturn: z.ZodNumber;
165
+ equity: z.ZodNumber;
166
+ drawdown: z.ZodNumber;
167
+ rollingSharpe: z.ZodNullable<z.ZodNumber>;
168
+ rollingSortino: z.ZodNullable<z.ZodNumber>;
169
+ rollingVolatility: z.ZodNullable<z.ZodNumber>;
170
+ }, z.core.$strip>>>;
171
+ }, z.core.$strip>;
172
+ export type PortfolioAnalyticsResponse = z.output<typeof PortfolioAnalyticsResponse>;
@@ -0,0 +1,16 @@
1
+ import { z } from 'zod';
2
+ import { PortfolioOverall, PortfolioIntervals, PortfolioMetrics, PortfolioAnalyticsConfig, PortfolioSeriesPoint, PortfolioPairBreakdown, PortfolioAssetAnalytics } from './entities';
3
+
4
+ const PortfolioResponse = z.object({
5
+ intervals: PortfolioIntervals.nullable(),
6
+ overall: PortfolioOverall
7
+ });
8
+ const PortfolioAnalyticsResponse = z.object({
9
+ config: PortfolioAnalyticsConfig,
10
+ portfolio: PortfolioMetrics,
11
+ assets: z.array(PortfolioAssetAnalytics),
12
+ pairs: z.array(PortfolioPairBreakdown),
13
+ series: z.array(PortfolioSeriesPoint).optional()
14
+ });
15
+
16
+ export { PortfolioAnalyticsResponse, PortfolioResponse };
@@ -0,0 +1,8 @@
1
+ import { z } from 'zod';
2
+ export declare const TcaMetricStatus: z.ZodLiteral<"FINAL">;
3
+ export type TcaMetricStatus = z.output<typeof TcaMetricStatus>;
4
+ export declare const TcaTimingGranularity: z.ZodEnum<{
5
+ BATCH: "BATCH";
6
+ LEG: "LEG";
7
+ }>;
8
+ export type TcaTimingGranularity = z.output<typeof TcaTimingGranularity>;
@@ -0,0 +1,6 @@
1
+ import { z } from 'zod';
2
+
3
+ const TcaMetricStatus = z.literal("FINAL");
4
+ const TcaTimingGranularity = z.enum(["BATCH", "LEG"]);
5
+
6
+ export { TcaMetricStatus, TcaTimingGranularity };
@@ -0,0 +1,3 @@
1
+ export * from './entities';
2
+ export * from './queries';
3
+ export * from './responses';
@@ -0,0 +1,3 @@
1
+ export * from './entities';
2
+ export * from './queries';
3
+ export * from './responses';
@@ -0,0 +1,15 @@
1
+ import { z } from 'zod';
2
+ export declare const TcaPositionQueryParams: z.ZodObject<{
3
+ limit: z.ZodDefault<z.ZodOptional<z.ZodCoercedNumber<number>>>;
4
+ cursor: z.ZodOptional<z.ZodISODateTime>;
5
+ }, z.core.$strip>;
6
+ export type TcaPositionQueryParamsInput = z.input<typeof TcaPositionQueryParams>;
7
+ export type TcaPositionQueryParams = z.output<typeof TcaPositionQueryParams>;
8
+ export declare const TcaSummaryQueryParams: z.ZodObject<{
9
+ limit: z.ZodDefault<z.ZodOptional<z.ZodCoercedNumber<number>>>;
10
+ cursor: z.ZodOptional<z.ZodISODateTime>;
11
+ from: z.ZodOptional<z.ZodISODateTime>;
12
+ to: z.ZodOptional<z.ZodISODateTime>;
13
+ }, z.core.$strip>;
14
+ export type TcaSummaryQueryParamsInput = z.input<typeof TcaSummaryQueryParams>;
15
+ export type TcaSummaryQueryParams = z.output<typeof TcaSummaryQueryParams>;
@@ -0,0 +1,14 @@
1
+ import { z } from 'zod';
2
+
3
+ const TcaPositionQueryParams = z.object({
4
+ limit: z.coerce.number().int().positive().max(2e3).optional().default(100),
5
+ cursor: z.iso.datetime().optional()
6
+ });
7
+ const TcaSummaryQueryParams = z.object({
8
+ limit: z.coerce.number().int().positive().max(2e3).optional().default(100),
9
+ cursor: z.iso.datetime().optional(),
10
+ from: z.iso.datetime().optional(),
11
+ to: z.iso.datetime().optional()
12
+ });
13
+
14
+ export { TcaPositionQueryParams, TcaSummaryQueryParams };