@tradejs/infra 2.0.12 → 2.0.14

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.
@@ -1,5 +1,5 @@
1
1
  import { Pool } from 'pg';
2
- import { DerivativesInterval, DerivativesRow, MarketFeatureInterval, MarketBreadthRow, MarketCmcExchangeLiquidityContextRow, MarketCmcFearGreedContextRow, MarketCmcIndexContextRow, MarketGlobalContextRow, MarketReferenceAssetContextRow, MarketTradeFlowRow, KlineChartData, SpreadRow } from '@tradejs/types';
2
+ import { MarketFeatureInterval, DerivativesInterval, DerivativesRow, MarketBreadthRow, MarketCmcExchangeLiquidityContextRow, MarketCmcFearGreedContextRow, MarketCmcIndexContextRow, MarketGlobalContextRow, MarketReferenceAssetContextRow, MarketTradeFlowRow, KlineChartData, HyperliquidWhaleCoverageRow, HyperliquidWhaleFlowRow, HyperliquidWhaleTradeEventRow, SpreadRow } from '@tradejs/types';
3
3
 
4
4
  declare global {
5
5
  var __pgPool__: Pool | undefined;
@@ -106,6 +106,15 @@ declare function getDerivativesSummary(hours?: number, limit?: number, symbols?:
106
106
  }>;
107
107
  declare function upsertSpreadRows(rows: SpreadRow[]): Promise<void>;
108
108
  declare function upsertMarketTradeFlowRows(rows: MarketTradeFlowRow[]): Promise<void>;
109
+ declare function upsertHyperliquidWhaleTradeEvents(rows: HyperliquidWhaleTradeEventRow[]): Promise<void>;
110
+ declare function upsertHyperliquidWhaleFlowRows(rows: HyperliquidWhaleFlowRow[]): Promise<void>;
111
+ declare function rebuildHyperliquidWhaleFlowRows(params: {
112
+ fromMs: number;
113
+ toMs: number;
114
+ universeFingerprint: string;
115
+ whaleRegistryFingerprint: string;
116
+ deleteEventsBeforeMs?: number;
117
+ }): Promise<number>;
109
118
  declare function upsertMarketBreadthRows(rows: MarketBreadthRow[]): Promise<void>;
110
119
  declare function upsertMarketGlobalContextRows(rows: MarketGlobalContextRow[]): Promise<void>;
111
120
  declare function upsertMarketReferenceAssetContextRows(rows: MarketReferenceAssetContextRow[]): Promise<void>;
@@ -145,6 +154,124 @@ declare function getLatestMarketTradeFlow(params: {
145
154
  atMs: number;
146
155
  maxAgeMs?: number;
147
156
  }): Promise<MarketFeatureAsOf<MarketTradeFlowRow> | null>;
157
+ type HyperliquidWhaleWalletCoverageStatus = 'complete' | 'truncated' | 'failed';
158
+ declare function getHyperliquidWhaleWalletCoverage(params: {
159
+ address: string;
160
+ fromMs: number;
161
+ toMs: number;
162
+ universeFingerprint: string;
163
+ whaleRegistryFingerprint: string;
164
+ }): Promise<{
165
+ status: HyperliquidWhaleWalletCoverageStatus;
166
+ coveredFromMs: number | null;
167
+ coveredToMs: number | null;
168
+ fillsCount: number;
169
+ error: string | null;
170
+ checkedAt: Date;
171
+ } | null>;
172
+ declare function upsertHyperliquidWhaleWalletCoverage(params: {
173
+ address: string;
174
+ fromMs: number;
175
+ toMs: number;
176
+ coveredFromMs: number | null;
177
+ coveredToMs: number | null;
178
+ status: HyperliquidWhaleWalletCoverageStatus;
179
+ fillsCount: number;
180
+ error?: string | null;
181
+ universeFingerprint: string;
182
+ whaleRegistryFingerprint: string;
183
+ }): Promise<void>;
184
+ declare function rebuildHyperliquidWhaleCoverageRows(params: {
185
+ fromMs: number;
186
+ toMs: number;
187
+ expectedWhales: number;
188
+ universeFingerprint: string;
189
+ whaleRegistryFingerprint: string;
190
+ }): Promise<number>;
191
+ declare function upsertHyperliquidWhaleCoverageRows(rows: HyperliquidWhaleCoverageRow[]): Promise<void>;
192
+ type HyperliquidWhaleCoverageSeriesRow = {
193
+ ts: Date;
194
+ coveredWhales: number;
195
+ expectedWhales: number;
196
+ coveragePct: number;
197
+ };
198
+ declare function getHyperliquidWhaleCoverageSeriesRows(params: {
199
+ fromMs: number;
200
+ toMs: number;
201
+ universeFingerprint: string;
202
+ whaleRegistryFingerprint: string;
203
+ }): Promise<HyperliquidWhaleCoverageSeriesRow[]>;
204
+ type HyperliquidWhaleFlowSeriesRow = {
205
+ ts: Date;
206
+ trades: number;
207
+ whaleSides: number;
208
+ whaleAddresses: string[];
209
+ buyNotionalUsd: number;
210
+ sellNotionalUsd: number;
211
+ positionAwareWhaleSides: number;
212
+ longEntryWhaleAddresses: string[];
213
+ shortEntryWhaleAddresses: string[];
214
+ longExitWhaleAddresses: string[];
215
+ shortExitWhaleAddresses: string[];
216
+ longEntryNotionalUsd: number;
217
+ shortEntryNotionalUsd: number;
218
+ longExitNotionalUsd: number;
219
+ shortExitNotionalUsd: number;
220
+ };
221
+ declare function getHyperliquidWhaleFlowSeriesRows(params: {
222
+ symbol: string;
223
+ fromMs: number;
224
+ toMs: number;
225
+ universeFingerprint: string;
226
+ whaleRegistryFingerprint: string;
227
+ }): Promise<HyperliquidWhaleFlowSeriesRow[]>;
228
+ type HyperliquidWhaleFlowAggregate = {
229
+ symbol: string;
230
+ interval: MarketFeatureInterval;
231
+ asOfTs: Date;
232
+ windowEndTs: Date;
233
+ trades: number;
234
+ whaleSides: number;
235
+ uniqueWhales: number;
236
+ coveredWhales: number;
237
+ expectedWhales: number;
238
+ coveragePct: number;
239
+ buyNotionalUsd: number;
240
+ sellNotionalUsd: number;
241
+ netNotionalUsd: number;
242
+ buySharePct: number | null;
243
+ positionAwareWhaleSides: number;
244
+ positionAwarePct: number;
245
+ longEntryWhales: number;
246
+ shortEntryWhales: number;
247
+ longExitWhales: number;
248
+ shortExitWhales: number;
249
+ longEntryNotionalUsd: number;
250
+ shortEntryNotionalUsd: number;
251
+ longExitNotionalUsd: number;
252
+ shortExitNotionalUsd: number;
253
+ entryNetNotionalUsd: number;
254
+ entryLongSharePct: number | null;
255
+ universeFingerprint: string;
256
+ whaleRegistryFingerprint: string;
257
+ source: string | null;
258
+ ageMs: number;
259
+ stale: boolean;
260
+ };
261
+ declare function getHyperliquidWhaleFlowAggregate(params: {
262
+ symbol: string;
263
+ interval: MarketFeatureInterval;
264
+ decisionTimeMs: number;
265
+ universeFingerprint: string;
266
+ whaleRegistryFingerprint: string;
267
+ maxAgeMs?: number;
268
+ }): Promise<HyperliquidWhaleFlowAggregate | null>;
269
+ declare function hasHyperliquidWhaleBackfillCoverage(params: {
270
+ fromMs: number;
271
+ toMs: number;
272
+ universeFingerprint: string;
273
+ whaleRegistryFingerprint: string;
274
+ }): Promise<boolean>;
148
275
  declare function getLatestMarketBreadth(params: {
149
276
  universe: string;
150
277
  interval: MarketFeatureInterval;
@@ -299,4 +426,4 @@ declare function findContinuityGap(provider: string, symbol: string, interval: n
299
426
  diffSeconds: number;
300
427
  } | null>;
301
428
 
302
- export { type CandleRow, type DeprecatedMarketContextCleanupItem, type DerivativesMetricCoverageMetric, type MarketFeatureAsOf, applyDerivativesMetricCoverage, cleanupDeprecatedMarketContext, closeTimescalePool, deleteCandles, findContinuityGap, getCandlesRange, getDataEdges, getDataEdgesForSymbols, getDerivativesBackfillCoverage, getDerivativesDataEdgesForSymbols, getDerivativesMetricCoverage, getDerivativesRangeForSymbols, getDerivativesSummary, getDerivativesWindow, getLatestMarketBreadth, getLatestMarketCmcExchangeLiquidityContext, getLatestMarketCmcFearGreedContext, getLatestMarketCmcIndexContexts, getLatestMarketGlobalContext, getLatestMarketReferenceAssetContexts, getLatestMarketTradeFlow, getMarketBreadthCoverage, getMarketCmcExchangeLiquidityContextCoverage, getMarketCmcFearGreedContextCoverage, getMarketCmcIndexContextCoverage, getMarketContextBackfillCoverage, getMarketGlobalContextCoverage, getMarketReferenceAssetContextCoverage, getMarketTradeFlowCoverage, getSpreadRangeForSymbols, getSpreadSummary, toRows, upsertCandles, upsertDerivatives, upsertDerivativesBackfillCoverage, upsertMarketBreadthRows, upsertMarketCmcExchangeLiquidityContextRows, upsertMarketCmcFearGreedContextRows, upsertMarketCmcIndexContextRows, upsertMarketContextBackfillCoverage, upsertMarketGlobalContextRows, upsertMarketReferenceAssetContextRows, upsertMarketTradeFlowRows, upsertSpreadRows, waitForDbReady };
429
+ export { type CandleRow, type DeprecatedMarketContextCleanupItem, type DerivativesMetricCoverageMetric, type HyperliquidWhaleCoverageSeriesRow, type HyperliquidWhaleFlowAggregate, type HyperliquidWhaleFlowSeriesRow, type HyperliquidWhaleWalletCoverageStatus, type MarketFeatureAsOf, applyDerivativesMetricCoverage, cleanupDeprecatedMarketContext, closeTimescalePool, deleteCandles, findContinuityGap, getCandlesRange, getDataEdges, getDataEdgesForSymbols, getDerivativesBackfillCoverage, getDerivativesDataEdgesForSymbols, getDerivativesMetricCoverage, getDerivativesRangeForSymbols, getDerivativesSummary, getDerivativesWindow, getHyperliquidWhaleCoverageSeriesRows, getHyperliquidWhaleFlowAggregate, getHyperliquidWhaleFlowSeriesRows, getHyperliquidWhaleWalletCoverage, getLatestMarketBreadth, getLatestMarketCmcExchangeLiquidityContext, getLatestMarketCmcFearGreedContext, getLatestMarketCmcIndexContexts, getLatestMarketGlobalContext, getLatestMarketReferenceAssetContexts, getLatestMarketTradeFlow, getMarketBreadthCoverage, getMarketCmcExchangeLiquidityContextCoverage, getMarketCmcFearGreedContextCoverage, getMarketCmcIndexContextCoverage, getMarketContextBackfillCoverage, getMarketGlobalContextCoverage, getMarketReferenceAssetContextCoverage, getMarketTradeFlowCoverage, getSpreadRangeForSymbols, getSpreadSummary, hasHyperliquidWhaleBackfillCoverage, rebuildHyperliquidWhaleCoverageRows, rebuildHyperliquidWhaleFlowRows, toRows, upsertCandles, upsertDerivatives, upsertDerivativesBackfillCoverage, upsertHyperliquidWhaleCoverageRows, upsertHyperliquidWhaleFlowRows, upsertHyperliquidWhaleTradeEvents, upsertHyperliquidWhaleWalletCoverage, upsertMarketBreadthRows, upsertMarketCmcExchangeLiquidityContextRows, upsertMarketCmcFearGreedContextRows, upsertMarketCmcIndexContextRows, upsertMarketContextBackfillCoverage, upsertMarketGlobalContextRows, upsertMarketReferenceAssetContextRows, upsertMarketTradeFlowRows, upsertSpreadRows, waitForDbReady };
@@ -1,5 +1,5 @@
1
1
  import { Pool } from 'pg';
2
- import { DerivativesInterval, DerivativesRow, MarketFeatureInterval, MarketBreadthRow, MarketCmcExchangeLiquidityContextRow, MarketCmcFearGreedContextRow, MarketCmcIndexContextRow, MarketGlobalContextRow, MarketReferenceAssetContextRow, MarketTradeFlowRow, KlineChartData, SpreadRow } from '@tradejs/types';
2
+ import { MarketFeatureInterval, DerivativesInterval, DerivativesRow, MarketBreadthRow, MarketCmcExchangeLiquidityContextRow, MarketCmcFearGreedContextRow, MarketCmcIndexContextRow, MarketGlobalContextRow, MarketReferenceAssetContextRow, MarketTradeFlowRow, KlineChartData, HyperliquidWhaleCoverageRow, HyperliquidWhaleFlowRow, HyperliquidWhaleTradeEventRow, SpreadRow } from '@tradejs/types';
3
3
 
4
4
  declare global {
5
5
  var __pgPool__: Pool | undefined;
@@ -106,6 +106,15 @@ declare function getDerivativesSummary(hours?: number, limit?: number, symbols?:
106
106
  }>;
107
107
  declare function upsertSpreadRows(rows: SpreadRow[]): Promise<void>;
108
108
  declare function upsertMarketTradeFlowRows(rows: MarketTradeFlowRow[]): Promise<void>;
109
+ declare function upsertHyperliquidWhaleTradeEvents(rows: HyperliquidWhaleTradeEventRow[]): Promise<void>;
110
+ declare function upsertHyperliquidWhaleFlowRows(rows: HyperliquidWhaleFlowRow[]): Promise<void>;
111
+ declare function rebuildHyperliquidWhaleFlowRows(params: {
112
+ fromMs: number;
113
+ toMs: number;
114
+ universeFingerprint: string;
115
+ whaleRegistryFingerprint: string;
116
+ deleteEventsBeforeMs?: number;
117
+ }): Promise<number>;
109
118
  declare function upsertMarketBreadthRows(rows: MarketBreadthRow[]): Promise<void>;
110
119
  declare function upsertMarketGlobalContextRows(rows: MarketGlobalContextRow[]): Promise<void>;
111
120
  declare function upsertMarketReferenceAssetContextRows(rows: MarketReferenceAssetContextRow[]): Promise<void>;
@@ -145,6 +154,124 @@ declare function getLatestMarketTradeFlow(params: {
145
154
  atMs: number;
146
155
  maxAgeMs?: number;
147
156
  }): Promise<MarketFeatureAsOf<MarketTradeFlowRow> | null>;
157
+ type HyperliquidWhaleWalletCoverageStatus = 'complete' | 'truncated' | 'failed';
158
+ declare function getHyperliquidWhaleWalletCoverage(params: {
159
+ address: string;
160
+ fromMs: number;
161
+ toMs: number;
162
+ universeFingerprint: string;
163
+ whaleRegistryFingerprint: string;
164
+ }): Promise<{
165
+ status: HyperliquidWhaleWalletCoverageStatus;
166
+ coveredFromMs: number | null;
167
+ coveredToMs: number | null;
168
+ fillsCount: number;
169
+ error: string | null;
170
+ checkedAt: Date;
171
+ } | null>;
172
+ declare function upsertHyperliquidWhaleWalletCoverage(params: {
173
+ address: string;
174
+ fromMs: number;
175
+ toMs: number;
176
+ coveredFromMs: number | null;
177
+ coveredToMs: number | null;
178
+ status: HyperliquidWhaleWalletCoverageStatus;
179
+ fillsCount: number;
180
+ error?: string | null;
181
+ universeFingerprint: string;
182
+ whaleRegistryFingerprint: string;
183
+ }): Promise<void>;
184
+ declare function rebuildHyperliquidWhaleCoverageRows(params: {
185
+ fromMs: number;
186
+ toMs: number;
187
+ expectedWhales: number;
188
+ universeFingerprint: string;
189
+ whaleRegistryFingerprint: string;
190
+ }): Promise<number>;
191
+ declare function upsertHyperliquidWhaleCoverageRows(rows: HyperliquidWhaleCoverageRow[]): Promise<void>;
192
+ type HyperliquidWhaleCoverageSeriesRow = {
193
+ ts: Date;
194
+ coveredWhales: number;
195
+ expectedWhales: number;
196
+ coveragePct: number;
197
+ };
198
+ declare function getHyperliquidWhaleCoverageSeriesRows(params: {
199
+ fromMs: number;
200
+ toMs: number;
201
+ universeFingerprint: string;
202
+ whaleRegistryFingerprint: string;
203
+ }): Promise<HyperliquidWhaleCoverageSeriesRow[]>;
204
+ type HyperliquidWhaleFlowSeriesRow = {
205
+ ts: Date;
206
+ trades: number;
207
+ whaleSides: number;
208
+ whaleAddresses: string[];
209
+ buyNotionalUsd: number;
210
+ sellNotionalUsd: number;
211
+ positionAwareWhaleSides: number;
212
+ longEntryWhaleAddresses: string[];
213
+ shortEntryWhaleAddresses: string[];
214
+ longExitWhaleAddresses: string[];
215
+ shortExitWhaleAddresses: string[];
216
+ longEntryNotionalUsd: number;
217
+ shortEntryNotionalUsd: number;
218
+ longExitNotionalUsd: number;
219
+ shortExitNotionalUsd: number;
220
+ };
221
+ declare function getHyperliquidWhaleFlowSeriesRows(params: {
222
+ symbol: string;
223
+ fromMs: number;
224
+ toMs: number;
225
+ universeFingerprint: string;
226
+ whaleRegistryFingerprint: string;
227
+ }): Promise<HyperliquidWhaleFlowSeriesRow[]>;
228
+ type HyperliquidWhaleFlowAggregate = {
229
+ symbol: string;
230
+ interval: MarketFeatureInterval;
231
+ asOfTs: Date;
232
+ windowEndTs: Date;
233
+ trades: number;
234
+ whaleSides: number;
235
+ uniqueWhales: number;
236
+ coveredWhales: number;
237
+ expectedWhales: number;
238
+ coveragePct: number;
239
+ buyNotionalUsd: number;
240
+ sellNotionalUsd: number;
241
+ netNotionalUsd: number;
242
+ buySharePct: number | null;
243
+ positionAwareWhaleSides: number;
244
+ positionAwarePct: number;
245
+ longEntryWhales: number;
246
+ shortEntryWhales: number;
247
+ longExitWhales: number;
248
+ shortExitWhales: number;
249
+ longEntryNotionalUsd: number;
250
+ shortEntryNotionalUsd: number;
251
+ longExitNotionalUsd: number;
252
+ shortExitNotionalUsd: number;
253
+ entryNetNotionalUsd: number;
254
+ entryLongSharePct: number | null;
255
+ universeFingerprint: string;
256
+ whaleRegistryFingerprint: string;
257
+ source: string | null;
258
+ ageMs: number;
259
+ stale: boolean;
260
+ };
261
+ declare function getHyperliquidWhaleFlowAggregate(params: {
262
+ symbol: string;
263
+ interval: MarketFeatureInterval;
264
+ decisionTimeMs: number;
265
+ universeFingerprint: string;
266
+ whaleRegistryFingerprint: string;
267
+ maxAgeMs?: number;
268
+ }): Promise<HyperliquidWhaleFlowAggregate | null>;
269
+ declare function hasHyperliquidWhaleBackfillCoverage(params: {
270
+ fromMs: number;
271
+ toMs: number;
272
+ universeFingerprint: string;
273
+ whaleRegistryFingerprint: string;
274
+ }): Promise<boolean>;
148
275
  declare function getLatestMarketBreadth(params: {
149
276
  universe: string;
150
277
  interval: MarketFeatureInterval;
@@ -299,4 +426,4 @@ declare function findContinuityGap(provider: string, symbol: string, interval: n
299
426
  diffSeconds: number;
300
427
  } | null>;
301
428
 
302
- export { type CandleRow, type DeprecatedMarketContextCleanupItem, type DerivativesMetricCoverageMetric, type MarketFeatureAsOf, applyDerivativesMetricCoverage, cleanupDeprecatedMarketContext, closeTimescalePool, deleteCandles, findContinuityGap, getCandlesRange, getDataEdges, getDataEdgesForSymbols, getDerivativesBackfillCoverage, getDerivativesDataEdgesForSymbols, getDerivativesMetricCoverage, getDerivativesRangeForSymbols, getDerivativesSummary, getDerivativesWindow, getLatestMarketBreadth, getLatestMarketCmcExchangeLiquidityContext, getLatestMarketCmcFearGreedContext, getLatestMarketCmcIndexContexts, getLatestMarketGlobalContext, getLatestMarketReferenceAssetContexts, getLatestMarketTradeFlow, getMarketBreadthCoverage, getMarketCmcExchangeLiquidityContextCoverage, getMarketCmcFearGreedContextCoverage, getMarketCmcIndexContextCoverage, getMarketContextBackfillCoverage, getMarketGlobalContextCoverage, getMarketReferenceAssetContextCoverage, getMarketTradeFlowCoverage, getSpreadRangeForSymbols, getSpreadSummary, toRows, upsertCandles, upsertDerivatives, upsertDerivativesBackfillCoverage, upsertMarketBreadthRows, upsertMarketCmcExchangeLiquidityContextRows, upsertMarketCmcFearGreedContextRows, upsertMarketCmcIndexContextRows, upsertMarketContextBackfillCoverage, upsertMarketGlobalContextRows, upsertMarketReferenceAssetContextRows, upsertMarketTradeFlowRows, upsertSpreadRows, waitForDbReady };
429
+ export { type CandleRow, type DeprecatedMarketContextCleanupItem, type DerivativesMetricCoverageMetric, type HyperliquidWhaleCoverageSeriesRow, type HyperliquidWhaleFlowAggregate, type HyperliquidWhaleFlowSeriesRow, type HyperliquidWhaleWalletCoverageStatus, type MarketFeatureAsOf, applyDerivativesMetricCoverage, cleanupDeprecatedMarketContext, closeTimescalePool, deleteCandles, findContinuityGap, getCandlesRange, getDataEdges, getDataEdgesForSymbols, getDerivativesBackfillCoverage, getDerivativesDataEdgesForSymbols, getDerivativesMetricCoverage, getDerivativesRangeForSymbols, getDerivativesSummary, getDerivativesWindow, getHyperliquidWhaleCoverageSeriesRows, getHyperliquidWhaleFlowAggregate, getHyperliquidWhaleFlowSeriesRows, getHyperliquidWhaleWalletCoverage, getLatestMarketBreadth, getLatestMarketCmcExchangeLiquidityContext, getLatestMarketCmcFearGreedContext, getLatestMarketCmcIndexContexts, getLatestMarketGlobalContext, getLatestMarketReferenceAssetContexts, getLatestMarketTradeFlow, getMarketBreadthCoverage, getMarketCmcExchangeLiquidityContextCoverage, getMarketCmcFearGreedContextCoverage, getMarketCmcIndexContextCoverage, getMarketContextBackfillCoverage, getMarketGlobalContextCoverage, getMarketReferenceAssetContextCoverage, getMarketTradeFlowCoverage, getSpreadRangeForSymbols, getSpreadSummary, hasHyperliquidWhaleBackfillCoverage, rebuildHyperliquidWhaleCoverageRows, rebuildHyperliquidWhaleFlowRows, toRows, upsertCandles, upsertDerivatives, upsertDerivativesBackfillCoverage, upsertHyperliquidWhaleCoverageRows, upsertHyperliquidWhaleFlowRows, upsertHyperliquidWhaleTradeEvents, upsertHyperliquidWhaleWalletCoverage, upsertMarketBreadthRows, upsertMarketCmcExchangeLiquidityContextRows, upsertMarketCmcFearGreedContextRows, upsertMarketCmcIndexContextRows, upsertMarketContextBackfillCoverage, upsertMarketGlobalContextRows, upsertMarketReferenceAssetContextRows, upsertMarketTradeFlowRows, upsertSpreadRows, waitForDbReady };