@tradejs/infra 1.0.9 → 1.0.11
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.
- package/dist/ai.d.mts +39 -3
- package/dist/ai.d.ts +39 -3
- package/dist/ai.js +404 -28
- package/dist/ai.mjs +372 -24
- package/dist/backtestArtifacts.d.mts +57 -0
- package/dist/backtestArtifacts.d.ts +57 -0
- package/dist/backtestArtifacts.js +255 -0
- package/dist/backtestArtifacts.mjs +211 -0
- package/dist/{chunk-KVEZORMS.mjs → chunk-RQP5VSTH.mjs} +54 -3
- package/dist/{chunk-MLVWC2I2.mjs → chunk-XZQ6COOV.mjs} +62 -5
- package/dist/ml.d.mts +1 -1
- package/dist/ml.d.ts +1 -1
- package/dist/ml.js +55 -3
- package/dist/ml.mjs +3 -1
- package/dist/{mlDatasetFile-sRGWgR_o.d.mts → mlDatasetFile-Czx__g9M.d.mts} +7 -1
- package/dist/{mlDatasetFile-sRGWgR_o.d.ts → mlDatasetFile-Czx__g9M.d.ts} +7 -1
- package/dist/redis.d.mts +23 -3
- package/dist/redis.d.ts +23 -3
- package/dist/redis.js +65 -5
- package/dist/redis.mjs +7 -1
- package/dist/timescale.d.mts +221 -5
- package/dist/timescale.d.ts +221 -5
- package/dist/timescale.js +2022 -93
- package/dist/timescale.mjs +1994 -93
- package/dist/tradingAccounts.d.mts +20 -0
- package/dist/tradingAccounts.d.ts +20 -0
- package/dist/tradingAccounts.js +558 -0
- package/dist/tradingAccounts.mjs +190 -0
- package/dist/userSettings.d.mts +2 -0
- package/dist/userSettings.d.ts +2 -0
- package/dist/userSettings.js +26 -5
- package/dist/userSettings.mjs +2 -1
- package/package.json +13 -3
package/dist/redis.mjs
CHANGED
|
@@ -1,29 +1,35 @@
|
|
|
1
1
|
import {
|
|
2
2
|
RedisWriteBlockedError,
|
|
3
|
+
closeRedisConnection,
|
|
3
4
|
consumeScreenshotSessionToken,
|
|
4
5
|
createScreenshotSessionToken,
|
|
5
6
|
delKey,
|
|
6
7
|
delKeyWithOptions,
|
|
7
8
|
getData,
|
|
8
9
|
getHashData,
|
|
10
|
+
getHashJsonField,
|
|
9
11
|
getHashJsonValues,
|
|
10
12
|
getKeys,
|
|
11
13
|
incrHashFields,
|
|
14
|
+
publishData,
|
|
12
15
|
redisKeys,
|
|
13
16
|
setData,
|
|
14
17
|
setHashJsonField
|
|
15
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-XZQ6COOV.mjs";
|
|
16
19
|
export {
|
|
17
20
|
RedisWriteBlockedError,
|
|
21
|
+
closeRedisConnection,
|
|
18
22
|
consumeScreenshotSessionToken,
|
|
19
23
|
createScreenshotSessionToken,
|
|
20
24
|
delKey,
|
|
21
25
|
delKeyWithOptions,
|
|
22
26
|
getData,
|
|
23
27
|
getHashData,
|
|
28
|
+
getHashJsonField,
|
|
24
29
|
getHashJsonValues,
|
|
25
30
|
getKeys,
|
|
26
31
|
incrHashFields,
|
|
32
|
+
publishData,
|
|
27
33
|
redisKeys,
|
|
28
34
|
setData,
|
|
29
35
|
setHashJsonField
|
package/dist/timescale.d.mts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Pool } from 'pg';
|
|
2
|
-
import { DerivativesInterval, DerivativesRow, KlineChartData, SpreadRow } from '@tradejs/types';
|
|
2
|
+
import { DerivativesInterval, DerivativesRow, MarketFeatureInterval, MarketBreadthRow, MarketCmcExchangeLiquidityContextRow, MarketCmcFearGreedContextRow, MarketCmcIndexContextRow, MarketGlobalContextRow, MarketReferenceAssetContextRow, MarketTradeFlowRow, KlineChartData, SpreadRow } from '@tradejs/types';
|
|
3
3
|
|
|
4
4
|
declare global {
|
|
5
5
|
var __pgPool__: Pool | undefined;
|
|
@@ -15,7 +15,12 @@ type CandleRow = {
|
|
|
15
15
|
close: number;
|
|
16
16
|
volume?: number | null;
|
|
17
17
|
turnover?: number | null;
|
|
18
|
+
takerBuyBaseVolume?: number | null;
|
|
19
|
+
takerBuyQuoteVolume?: number | null;
|
|
20
|
+
takerSellBaseVolume?: number | null;
|
|
21
|
+
takerSellQuoteVolume?: number | null;
|
|
18
22
|
};
|
|
23
|
+
declare const closeTimescalePool: () => Promise<void>;
|
|
19
24
|
declare const toRows: (provider: string, symbol: string, interval: number, data: KlineChartData) => CandleRow[];
|
|
20
25
|
declare function upsertCandles(rows: CandleRow[]): Promise<void>;
|
|
21
26
|
declare function upsertDerivatives(rows: DerivativesRow[]): Promise<void>;
|
|
@@ -24,18 +29,225 @@ declare function getDerivativesDataEdgesForSymbols(symbols: string[], interval:
|
|
|
24
29
|
min?: number;
|
|
25
30
|
max?: number;
|
|
26
31
|
}>>;
|
|
32
|
+
declare function getDerivativesBackfillCoverage(params: {
|
|
33
|
+
source: string;
|
|
34
|
+
symbols: string[];
|
|
35
|
+
interval: DerivativesInterval;
|
|
36
|
+
fromMs: number;
|
|
37
|
+
toMs: number;
|
|
38
|
+
}): Promise<{
|
|
39
|
+
symbol: string;
|
|
40
|
+
interval: DerivativesInterval;
|
|
41
|
+
fromMs: number;
|
|
42
|
+
toMs: number;
|
|
43
|
+
rowsCount: number;
|
|
44
|
+
}[]>;
|
|
45
|
+
declare function upsertDerivativesBackfillCoverage(rows: Array<{
|
|
46
|
+
source: string;
|
|
47
|
+
symbol: string;
|
|
48
|
+
interval: DerivativesInterval;
|
|
49
|
+
fromMs: number;
|
|
50
|
+
toMs: number;
|
|
51
|
+
rowsCount: number;
|
|
52
|
+
}>): Promise<void>;
|
|
27
53
|
declare function getDerivativesWindow(params: {
|
|
28
54
|
symbol: string;
|
|
29
55
|
intervals: DerivativesInterval[];
|
|
30
56
|
endMs: number;
|
|
31
57
|
lookbackMs: number;
|
|
32
58
|
}): Promise<Partial<Record<DerivativesInterval, DerivativesRow[]>>>;
|
|
33
|
-
declare function getDerivativesSummary(hours?: number, limit?: number): Promise<{
|
|
34
|
-
rows: any[];
|
|
35
|
-
aggregates: any[];
|
|
59
|
+
declare function getDerivativesSummary(hours?: number, limit?: number, symbols?: string[]): Promise<{
|
|
36
60
|
hours: number;
|
|
61
|
+
items: {
|
|
62
|
+
symbol: string;
|
|
63
|
+
interval: string;
|
|
64
|
+
points: number;
|
|
65
|
+
last_ts: string | Date;
|
|
66
|
+
first_ts: string | Date;
|
|
67
|
+
latest_open_interest: number | null;
|
|
68
|
+
first_open_interest: number | null;
|
|
69
|
+
oi_change: number | null;
|
|
70
|
+
oi_change_pct: number | null;
|
|
71
|
+
latest_funding_rate: number | null;
|
|
72
|
+
first_funding_rate: number | null;
|
|
73
|
+
funding_change: number | null;
|
|
74
|
+
sum_liq_long: number | null;
|
|
75
|
+
sum_liq_short: number | null;
|
|
76
|
+
sum_liq_total: number | null;
|
|
77
|
+
}[];
|
|
37
78
|
}>;
|
|
38
79
|
declare function upsertSpreadRows(rows: SpreadRow[]): Promise<void>;
|
|
80
|
+
declare function upsertMarketTradeFlowRows(rows: MarketTradeFlowRow[]): Promise<void>;
|
|
81
|
+
declare function upsertMarketBreadthRows(rows: MarketBreadthRow[]): Promise<void>;
|
|
82
|
+
declare function upsertMarketGlobalContextRows(rows: MarketGlobalContextRow[]): Promise<void>;
|
|
83
|
+
declare function upsertMarketReferenceAssetContextRows(rows: MarketReferenceAssetContextRow[]): Promise<void>;
|
|
84
|
+
declare function upsertMarketCmcExchangeLiquidityContextRows(rows: MarketCmcExchangeLiquidityContextRow[]): Promise<void>;
|
|
85
|
+
declare function upsertMarketCmcFearGreedContextRows(rows: MarketCmcFearGreedContextRow[]): Promise<void>;
|
|
86
|
+
declare function upsertMarketCmcIndexContextRows(rows: MarketCmcIndexContextRow[]): Promise<void>;
|
|
87
|
+
declare function getMarketContextBackfillCoverage(params: {
|
|
88
|
+
source: string;
|
|
89
|
+
scopes: string[];
|
|
90
|
+
interval: string;
|
|
91
|
+
fromMs: number;
|
|
92
|
+
toMs: number;
|
|
93
|
+
}): Promise<Array<{
|
|
94
|
+
source: string;
|
|
95
|
+
scope: string;
|
|
96
|
+
interval: string;
|
|
97
|
+
fromMs: number;
|
|
98
|
+
toMs: number;
|
|
99
|
+
rowsCount: number;
|
|
100
|
+
checkedAtMs?: number;
|
|
101
|
+
}>>;
|
|
102
|
+
declare function upsertMarketContextBackfillCoverage(rows: Array<{
|
|
103
|
+
source: string;
|
|
104
|
+
scope: string;
|
|
105
|
+
interval: string;
|
|
106
|
+
fromMs: number;
|
|
107
|
+
toMs: number;
|
|
108
|
+
rowsCount: number;
|
|
109
|
+
}>): Promise<void>;
|
|
110
|
+
type MarketFeatureAsOf<T> = T & {
|
|
111
|
+
ageMs: number | null;
|
|
112
|
+
stale: boolean;
|
|
113
|
+
};
|
|
114
|
+
declare function getLatestMarketTradeFlow(params: {
|
|
115
|
+
symbol: string;
|
|
116
|
+
interval: MarketFeatureInterval;
|
|
117
|
+
atMs: number;
|
|
118
|
+
maxAgeMs?: number;
|
|
119
|
+
}): Promise<MarketFeatureAsOf<MarketTradeFlowRow> | null>;
|
|
120
|
+
declare function getLatestMarketBreadth(params: {
|
|
121
|
+
universe: string;
|
|
122
|
+
interval: MarketFeatureInterval;
|
|
123
|
+
atMs: number;
|
|
124
|
+
maxAgeMs?: number;
|
|
125
|
+
}): Promise<MarketFeatureAsOf<MarketBreadthRow> | null>;
|
|
126
|
+
declare function getLatestMarketGlobalContext(params: {
|
|
127
|
+
source?: MarketGlobalContextRow['source'];
|
|
128
|
+
atMs: number;
|
|
129
|
+
maxAgeMs?: number;
|
|
130
|
+
}): Promise<(MarketFeatureAsOf<MarketGlobalContextRow> & {
|
|
131
|
+
btcDominanceChange24hPct: number | null;
|
|
132
|
+
ethDominanceChange24hPct: number | null;
|
|
133
|
+
altMarketCapChange24hPct: number | null;
|
|
134
|
+
altVolumeChange24hPct: number | null;
|
|
135
|
+
}) | null>;
|
|
136
|
+
declare function getMarketGlobalContextCoverage(params: {
|
|
137
|
+
source: MarketGlobalContextRow['source'];
|
|
138
|
+
startMs: number;
|
|
139
|
+
endMs: number;
|
|
140
|
+
}): Promise<{
|
|
141
|
+
firstMs: number;
|
|
142
|
+
lastMs: number;
|
|
143
|
+
rows: number;
|
|
144
|
+
} | null>;
|
|
145
|
+
declare function getMarketReferenceAssetContextCoverage(params: {
|
|
146
|
+
source: MarketReferenceAssetContextRow['source'];
|
|
147
|
+
symbols: string[];
|
|
148
|
+
interval: MarketReferenceAssetContextRow['interval'];
|
|
149
|
+
startMs: number;
|
|
150
|
+
endMs: number;
|
|
151
|
+
}): Promise<Map<string, {
|
|
152
|
+
firstMs: number;
|
|
153
|
+
lastMs: number;
|
|
154
|
+
rows: number;
|
|
155
|
+
}>>;
|
|
156
|
+
declare function getLatestMarketReferenceAssetContexts(params: {
|
|
157
|
+
source?: MarketReferenceAssetContextRow['source'];
|
|
158
|
+
symbols: string[];
|
|
159
|
+
interval?: MarketReferenceAssetContextRow['interval'];
|
|
160
|
+
atMs: number;
|
|
161
|
+
maxAgeMs?: number;
|
|
162
|
+
}): Promise<Map<string, MarketFeatureAsOf<MarketReferenceAssetContextRow>>>;
|
|
163
|
+
declare function getLatestMarketCmcExchangeLiquidityContext(params: {
|
|
164
|
+
source?: MarketCmcExchangeLiquidityContextRow['source'];
|
|
165
|
+
interval?: MarketCmcExchangeLiquidityContextRow['interval'];
|
|
166
|
+
atMs: number;
|
|
167
|
+
maxAgeMs?: number;
|
|
168
|
+
}): Promise<(MarketFeatureAsOf<MarketCmcExchangeLiquidityContextRow> & {
|
|
169
|
+
totalVolumeChange24hPct: number | null;
|
|
170
|
+
}) | null>;
|
|
171
|
+
declare function getLatestMarketCmcIndexContexts(params: {
|
|
172
|
+
source?: MarketCmcIndexContextRow['source'];
|
|
173
|
+
indexSlugs: MarketCmcIndexContextRow['indexSlug'][];
|
|
174
|
+
interval?: MarketCmcIndexContextRow['interval'];
|
|
175
|
+
atMs: number;
|
|
176
|
+
maxAgeMs?: number;
|
|
177
|
+
}): Promise<Map<MarketCmcIndexContextRow['indexSlug'], MarketFeatureAsOf<MarketCmcIndexContextRow> & {
|
|
178
|
+
valueChange24hPct: number | null;
|
|
179
|
+
}>>;
|
|
180
|
+
declare function getLatestMarketCmcFearGreedContext(params: {
|
|
181
|
+
source?: MarketCmcFearGreedContextRow['source'];
|
|
182
|
+
interval?: MarketCmcFearGreedContextRow['interval'];
|
|
183
|
+
atMs: number;
|
|
184
|
+
maxAgeMs?: number;
|
|
185
|
+
}): Promise<(MarketFeatureAsOf<MarketCmcFearGreedContextRow> & {
|
|
186
|
+
valueChange24h: number | null;
|
|
187
|
+
valueChange7d: number | null;
|
|
188
|
+
}) | null>;
|
|
189
|
+
declare function getMarketCmcFearGreedContextCoverage(params: {
|
|
190
|
+
source: MarketCmcFearGreedContextRow['source'];
|
|
191
|
+
interval: MarketCmcFearGreedContextRow['interval'];
|
|
192
|
+
startMs: number;
|
|
193
|
+
endMs: number;
|
|
194
|
+
}): Promise<{
|
|
195
|
+
firstMs: number;
|
|
196
|
+
lastMs: number;
|
|
197
|
+
rows: number;
|
|
198
|
+
} | null>;
|
|
199
|
+
declare function getMarketCmcExchangeLiquidityContextCoverage(params: {
|
|
200
|
+
source: MarketCmcExchangeLiquidityContextRow['source'];
|
|
201
|
+
interval: MarketCmcExchangeLiquidityContextRow['interval'];
|
|
202
|
+
startMs: number;
|
|
203
|
+
endMs: number;
|
|
204
|
+
}): Promise<{
|
|
205
|
+
firstMs: number;
|
|
206
|
+
lastMs: number;
|
|
207
|
+
rows: number;
|
|
208
|
+
} | null>;
|
|
209
|
+
declare function getMarketCmcIndexContextCoverage(params: {
|
|
210
|
+
source: MarketCmcIndexContextRow['source'];
|
|
211
|
+
indexSlugs: MarketCmcIndexContextRow['indexSlug'][];
|
|
212
|
+
interval: MarketCmcIndexContextRow['interval'];
|
|
213
|
+
startMs: number;
|
|
214
|
+
endMs: number;
|
|
215
|
+
}): Promise<Map<MarketCmcIndexContextRow['indexSlug'], {
|
|
216
|
+
firstMs: number;
|
|
217
|
+
lastMs: number;
|
|
218
|
+
rows: number;
|
|
219
|
+
}>>;
|
|
220
|
+
declare function getMarketTradeFlowCoverage(params: {
|
|
221
|
+
symbols: string[];
|
|
222
|
+
interval: MarketFeatureInterval;
|
|
223
|
+
startMs: number;
|
|
224
|
+
endMs: number;
|
|
225
|
+
}): Promise<Map<string, {
|
|
226
|
+
firstMs: number;
|
|
227
|
+
lastMs: number;
|
|
228
|
+
rows: number;
|
|
229
|
+
}>>;
|
|
230
|
+
type DeprecatedMarketContextCleanupItem = {
|
|
231
|
+
kind: 'table' | 'rows';
|
|
232
|
+
name: string;
|
|
233
|
+
rows: number;
|
|
234
|
+
action: 'drop_table' | 'delete_rows';
|
|
235
|
+
applied: boolean;
|
|
236
|
+
};
|
|
237
|
+
declare function cleanupDeprecatedMarketContext(params?: {
|
|
238
|
+
apply?: boolean;
|
|
239
|
+
}): Promise<DeprecatedMarketContextCleanupItem[]>;
|
|
240
|
+
declare function getMarketBreadthCoverage(params: {
|
|
241
|
+
universe: string;
|
|
242
|
+
interval: MarketFeatureInterval;
|
|
243
|
+
startMs: number;
|
|
244
|
+
endMs: number;
|
|
245
|
+
}): Promise<{
|
|
246
|
+
firstMs: number;
|
|
247
|
+
lastMs: number;
|
|
248
|
+
rows: number;
|
|
249
|
+
btcAltMetricsRows: number;
|
|
250
|
+
} | null>;
|
|
39
251
|
declare function getSpreadRangeForSymbols(symbols: string[], interval: DerivativesInterval, startMs: number, endMs: number): Promise<any[]>;
|
|
40
252
|
declare function getSpreadSummary(hours?: number, limit?: number): Promise<{
|
|
41
253
|
rows: any[];
|
|
@@ -47,6 +259,10 @@ declare function getDataEdges(provider: string, symbol: string, interval: number
|
|
|
47
259
|
min: number | undefined;
|
|
48
260
|
max: number | undefined;
|
|
49
261
|
}>;
|
|
262
|
+
declare function getDataEdgesForSymbols(provider: string, symbols: string[], interval: number): Promise<Map<string, {
|
|
263
|
+
min?: number;
|
|
264
|
+
max?: number;
|
|
265
|
+
}>>;
|
|
50
266
|
declare function waitForDbReady(attempts?: number, delayMs?: number): Promise<void>;
|
|
51
267
|
declare function deleteCandles(provider: string, symbol: string, interval: number): Promise<void>;
|
|
52
268
|
declare function findContinuityGap(provider: string, symbol: string, interval: number): Promise<{
|
|
@@ -55,4 +271,4 @@ declare function findContinuityGap(provider: string, symbol: string, interval: n
|
|
|
55
271
|
diffSeconds: number;
|
|
56
272
|
} | null>;
|
|
57
273
|
|
|
58
|
-
export { type CandleRow, deleteCandles, findContinuityGap, getCandlesRange, getDataEdges, getDerivativesDataEdgesForSymbols, getDerivativesRangeForSymbols, getDerivativesSummary, getDerivativesWindow, getSpreadRangeForSymbols, getSpreadSummary, toRows, upsertCandles, upsertDerivatives, upsertSpreadRows, waitForDbReady };
|
|
274
|
+
export { type CandleRow, type DeprecatedMarketContextCleanupItem, type MarketFeatureAsOf, cleanupDeprecatedMarketContext, closeTimescalePool, deleteCandles, findContinuityGap, getCandlesRange, getDataEdges, getDataEdgesForSymbols, getDerivativesBackfillCoverage, getDerivativesDataEdgesForSymbols, 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 };
|
package/dist/timescale.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Pool } from 'pg';
|
|
2
|
-
import { DerivativesInterval, DerivativesRow, KlineChartData, SpreadRow } from '@tradejs/types';
|
|
2
|
+
import { DerivativesInterval, DerivativesRow, MarketFeatureInterval, MarketBreadthRow, MarketCmcExchangeLiquidityContextRow, MarketCmcFearGreedContextRow, MarketCmcIndexContextRow, MarketGlobalContextRow, MarketReferenceAssetContextRow, MarketTradeFlowRow, KlineChartData, SpreadRow } from '@tradejs/types';
|
|
3
3
|
|
|
4
4
|
declare global {
|
|
5
5
|
var __pgPool__: Pool | undefined;
|
|
@@ -15,7 +15,12 @@ type CandleRow = {
|
|
|
15
15
|
close: number;
|
|
16
16
|
volume?: number | null;
|
|
17
17
|
turnover?: number | null;
|
|
18
|
+
takerBuyBaseVolume?: number | null;
|
|
19
|
+
takerBuyQuoteVolume?: number | null;
|
|
20
|
+
takerSellBaseVolume?: number | null;
|
|
21
|
+
takerSellQuoteVolume?: number | null;
|
|
18
22
|
};
|
|
23
|
+
declare const closeTimescalePool: () => Promise<void>;
|
|
19
24
|
declare const toRows: (provider: string, symbol: string, interval: number, data: KlineChartData) => CandleRow[];
|
|
20
25
|
declare function upsertCandles(rows: CandleRow[]): Promise<void>;
|
|
21
26
|
declare function upsertDerivatives(rows: DerivativesRow[]): Promise<void>;
|
|
@@ -24,18 +29,225 @@ declare function getDerivativesDataEdgesForSymbols(symbols: string[], interval:
|
|
|
24
29
|
min?: number;
|
|
25
30
|
max?: number;
|
|
26
31
|
}>>;
|
|
32
|
+
declare function getDerivativesBackfillCoverage(params: {
|
|
33
|
+
source: string;
|
|
34
|
+
symbols: string[];
|
|
35
|
+
interval: DerivativesInterval;
|
|
36
|
+
fromMs: number;
|
|
37
|
+
toMs: number;
|
|
38
|
+
}): Promise<{
|
|
39
|
+
symbol: string;
|
|
40
|
+
interval: DerivativesInterval;
|
|
41
|
+
fromMs: number;
|
|
42
|
+
toMs: number;
|
|
43
|
+
rowsCount: number;
|
|
44
|
+
}[]>;
|
|
45
|
+
declare function upsertDerivativesBackfillCoverage(rows: Array<{
|
|
46
|
+
source: string;
|
|
47
|
+
symbol: string;
|
|
48
|
+
interval: DerivativesInterval;
|
|
49
|
+
fromMs: number;
|
|
50
|
+
toMs: number;
|
|
51
|
+
rowsCount: number;
|
|
52
|
+
}>): Promise<void>;
|
|
27
53
|
declare function getDerivativesWindow(params: {
|
|
28
54
|
symbol: string;
|
|
29
55
|
intervals: DerivativesInterval[];
|
|
30
56
|
endMs: number;
|
|
31
57
|
lookbackMs: number;
|
|
32
58
|
}): Promise<Partial<Record<DerivativesInterval, DerivativesRow[]>>>;
|
|
33
|
-
declare function getDerivativesSummary(hours?: number, limit?: number): Promise<{
|
|
34
|
-
rows: any[];
|
|
35
|
-
aggregates: any[];
|
|
59
|
+
declare function getDerivativesSummary(hours?: number, limit?: number, symbols?: string[]): Promise<{
|
|
36
60
|
hours: number;
|
|
61
|
+
items: {
|
|
62
|
+
symbol: string;
|
|
63
|
+
interval: string;
|
|
64
|
+
points: number;
|
|
65
|
+
last_ts: string | Date;
|
|
66
|
+
first_ts: string | Date;
|
|
67
|
+
latest_open_interest: number | null;
|
|
68
|
+
first_open_interest: number | null;
|
|
69
|
+
oi_change: number | null;
|
|
70
|
+
oi_change_pct: number | null;
|
|
71
|
+
latest_funding_rate: number | null;
|
|
72
|
+
first_funding_rate: number | null;
|
|
73
|
+
funding_change: number | null;
|
|
74
|
+
sum_liq_long: number | null;
|
|
75
|
+
sum_liq_short: number | null;
|
|
76
|
+
sum_liq_total: number | null;
|
|
77
|
+
}[];
|
|
37
78
|
}>;
|
|
38
79
|
declare function upsertSpreadRows(rows: SpreadRow[]): Promise<void>;
|
|
80
|
+
declare function upsertMarketTradeFlowRows(rows: MarketTradeFlowRow[]): Promise<void>;
|
|
81
|
+
declare function upsertMarketBreadthRows(rows: MarketBreadthRow[]): Promise<void>;
|
|
82
|
+
declare function upsertMarketGlobalContextRows(rows: MarketGlobalContextRow[]): Promise<void>;
|
|
83
|
+
declare function upsertMarketReferenceAssetContextRows(rows: MarketReferenceAssetContextRow[]): Promise<void>;
|
|
84
|
+
declare function upsertMarketCmcExchangeLiquidityContextRows(rows: MarketCmcExchangeLiquidityContextRow[]): Promise<void>;
|
|
85
|
+
declare function upsertMarketCmcFearGreedContextRows(rows: MarketCmcFearGreedContextRow[]): Promise<void>;
|
|
86
|
+
declare function upsertMarketCmcIndexContextRows(rows: MarketCmcIndexContextRow[]): Promise<void>;
|
|
87
|
+
declare function getMarketContextBackfillCoverage(params: {
|
|
88
|
+
source: string;
|
|
89
|
+
scopes: string[];
|
|
90
|
+
interval: string;
|
|
91
|
+
fromMs: number;
|
|
92
|
+
toMs: number;
|
|
93
|
+
}): Promise<Array<{
|
|
94
|
+
source: string;
|
|
95
|
+
scope: string;
|
|
96
|
+
interval: string;
|
|
97
|
+
fromMs: number;
|
|
98
|
+
toMs: number;
|
|
99
|
+
rowsCount: number;
|
|
100
|
+
checkedAtMs?: number;
|
|
101
|
+
}>>;
|
|
102
|
+
declare function upsertMarketContextBackfillCoverage(rows: Array<{
|
|
103
|
+
source: string;
|
|
104
|
+
scope: string;
|
|
105
|
+
interval: string;
|
|
106
|
+
fromMs: number;
|
|
107
|
+
toMs: number;
|
|
108
|
+
rowsCount: number;
|
|
109
|
+
}>): Promise<void>;
|
|
110
|
+
type MarketFeatureAsOf<T> = T & {
|
|
111
|
+
ageMs: number | null;
|
|
112
|
+
stale: boolean;
|
|
113
|
+
};
|
|
114
|
+
declare function getLatestMarketTradeFlow(params: {
|
|
115
|
+
symbol: string;
|
|
116
|
+
interval: MarketFeatureInterval;
|
|
117
|
+
atMs: number;
|
|
118
|
+
maxAgeMs?: number;
|
|
119
|
+
}): Promise<MarketFeatureAsOf<MarketTradeFlowRow> | null>;
|
|
120
|
+
declare function getLatestMarketBreadth(params: {
|
|
121
|
+
universe: string;
|
|
122
|
+
interval: MarketFeatureInterval;
|
|
123
|
+
atMs: number;
|
|
124
|
+
maxAgeMs?: number;
|
|
125
|
+
}): Promise<MarketFeatureAsOf<MarketBreadthRow> | null>;
|
|
126
|
+
declare function getLatestMarketGlobalContext(params: {
|
|
127
|
+
source?: MarketGlobalContextRow['source'];
|
|
128
|
+
atMs: number;
|
|
129
|
+
maxAgeMs?: number;
|
|
130
|
+
}): Promise<(MarketFeatureAsOf<MarketGlobalContextRow> & {
|
|
131
|
+
btcDominanceChange24hPct: number | null;
|
|
132
|
+
ethDominanceChange24hPct: number | null;
|
|
133
|
+
altMarketCapChange24hPct: number | null;
|
|
134
|
+
altVolumeChange24hPct: number | null;
|
|
135
|
+
}) | null>;
|
|
136
|
+
declare function getMarketGlobalContextCoverage(params: {
|
|
137
|
+
source: MarketGlobalContextRow['source'];
|
|
138
|
+
startMs: number;
|
|
139
|
+
endMs: number;
|
|
140
|
+
}): Promise<{
|
|
141
|
+
firstMs: number;
|
|
142
|
+
lastMs: number;
|
|
143
|
+
rows: number;
|
|
144
|
+
} | null>;
|
|
145
|
+
declare function getMarketReferenceAssetContextCoverage(params: {
|
|
146
|
+
source: MarketReferenceAssetContextRow['source'];
|
|
147
|
+
symbols: string[];
|
|
148
|
+
interval: MarketReferenceAssetContextRow['interval'];
|
|
149
|
+
startMs: number;
|
|
150
|
+
endMs: number;
|
|
151
|
+
}): Promise<Map<string, {
|
|
152
|
+
firstMs: number;
|
|
153
|
+
lastMs: number;
|
|
154
|
+
rows: number;
|
|
155
|
+
}>>;
|
|
156
|
+
declare function getLatestMarketReferenceAssetContexts(params: {
|
|
157
|
+
source?: MarketReferenceAssetContextRow['source'];
|
|
158
|
+
symbols: string[];
|
|
159
|
+
interval?: MarketReferenceAssetContextRow['interval'];
|
|
160
|
+
atMs: number;
|
|
161
|
+
maxAgeMs?: number;
|
|
162
|
+
}): Promise<Map<string, MarketFeatureAsOf<MarketReferenceAssetContextRow>>>;
|
|
163
|
+
declare function getLatestMarketCmcExchangeLiquidityContext(params: {
|
|
164
|
+
source?: MarketCmcExchangeLiquidityContextRow['source'];
|
|
165
|
+
interval?: MarketCmcExchangeLiquidityContextRow['interval'];
|
|
166
|
+
atMs: number;
|
|
167
|
+
maxAgeMs?: number;
|
|
168
|
+
}): Promise<(MarketFeatureAsOf<MarketCmcExchangeLiquidityContextRow> & {
|
|
169
|
+
totalVolumeChange24hPct: number | null;
|
|
170
|
+
}) | null>;
|
|
171
|
+
declare function getLatestMarketCmcIndexContexts(params: {
|
|
172
|
+
source?: MarketCmcIndexContextRow['source'];
|
|
173
|
+
indexSlugs: MarketCmcIndexContextRow['indexSlug'][];
|
|
174
|
+
interval?: MarketCmcIndexContextRow['interval'];
|
|
175
|
+
atMs: number;
|
|
176
|
+
maxAgeMs?: number;
|
|
177
|
+
}): Promise<Map<MarketCmcIndexContextRow['indexSlug'], MarketFeatureAsOf<MarketCmcIndexContextRow> & {
|
|
178
|
+
valueChange24hPct: number | null;
|
|
179
|
+
}>>;
|
|
180
|
+
declare function getLatestMarketCmcFearGreedContext(params: {
|
|
181
|
+
source?: MarketCmcFearGreedContextRow['source'];
|
|
182
|
+
interval?: MarketCmcFearGreedContextRow['interval'];
|
|
183
|
+
atMs: number;
|
|
184
|
+
maxAgeMs?: number;
|
|
185
|
+
}): Promise<(MarketFeatureAsOf<MarketCmcFearGreedContextRow> & {
|
|
186
|
+
valueChange24h: number | null;
|
|
187
|
+
valueChange7d: number | null;
|
|
188
|
+
}) | null>;
|
|
189
|
+
declare function getMarketCmcFearGreedContextCoverage(params: {
|
|
190
|
+
source: MarketCmcFearGreedContextRow['source'];
|
|
191
|
+
interval: MarketCmcFearGreedContextRow['interval'];
|
|
192
|
+
startMs: number;
|
|
193
|
+
endMs: number;
|
|
194
|
+
}): Promise<{
|
|
195
|
+
firstMs: number;
|
|
196
|
+
lastMs: number;
|
|
197
|
+
rows: number;
|
|
198
|
+
} | null>;
|
|
199
|
+
declare function getMarketCmcExchangeLiquidityContextCoverage(params: {
|
|
200
|
+
source: MarketCmcExchangeLiquidityContextRow['source'];
|
|
201
|
+
interval: MarketCmcExchangeLiquidityContextRow['interval'];
|
|
202
|
+
startMs: number;
|
|
203
|
+
endMs: number;
|
|
204
|
+
}): Promise<{
|
|
205
|
+
firstMs: number;
|
|
206
|
+
lastMs: number;
|
|
207
|
+
rows: number;
|
|
208
|
+
} | null>;
|
|
209
|
+
declare function getMarketCmcIndexContextCoverage(params: {
|
|
210
|
+
source: MarketCmcIndexContextRow['source'];
|
|
211
|
+
indexSlugs: MarketCmcIndexContextRow['indexSlug'][];
|
|
212
|
+
interval: MarketCmcIndexContextRow['interval'];
|
|
213
|
+
startMs: number;
|
|
214
|
+
endMs: number;
|
|
215
|
+
}): Promise<Map<MarketCmcIndexContextRow['indexSlug'], {
|
|
216
|
+
firstMs: number;
|
|
217
|
+
lastMs: number;
|
|
218
|
+
rows: number;
|
|
219
|
+
}>>;
|
|
220
|
+
declare function getMarketTradeFlowCoverage(params: {
|
|
221
|
+
symbols: string[];
|
|
222
|
+
interval: MarketFeatureInterval;
|
|
223
|
+
startMs: number;
|
|
224
|
+
endMs: number;
|
|
225
|
+
}): Promise<Map<string, {
|
|
226
|
+
firstMs: number;
|
|
227
|
+
lastMs: number;
|
|
228
|
+
rows: number;
|
|
229
|
+
}>>;
|
|
230
|
+
type DeprecatedMarketContextCleanupItem = {
|
|
231
|
+
kind: 'table' | 'rows';
|
|
232
|
+
name: string;
|
|
233
|
+
rows: number;
|
|
234
|
+
action: 'drop_table' | 'delete_rows';
|
|
235
|
+
applied: boolean;
|
|
236
|
+
};
|
|
237
|
+
declare function cleanupDeprecatedMarketContext(params?: {
|
|
238
|
+
apply?: boolean;
|
|
239
|
+
}): Promise<DeprecatedMarketContextCleanupItem[]>;
|
|
240
|
+
declare function getMarketBreadthCoverage(params: {
|
|
241
|
+
universe: string;
|
|
242
|
+
interval: MarketFeatureInterval;
|
|
243
|
+
startMs: number;
|
|
244
|
+
endMs: number;
|
|
245
|
+
}): Promise<{
|
|
246
|
+
firstMs: number;
|
|
247
|
+
lastMs: number;
|
|
248
|
+
rows: number;
|
|
249
|
+
btcAltMetricsRows: number;
|
|
250
|
+
} | null>;
|
|
39
251
|
declare function getSpreadRangeForSymbols(symbols: string[], interval: DerivativesInterval, startMs: number, endMs: number): Promise<any[]>;
|
|
40
252
|
declare function getSpreadSummary(hours?: number, limit?: number): Promise<{
|
|
41
253
|
rows: any[];
|
|
@@ -47,6 +259,10 @@ declare function getDataEdges(provider: string, symbol: string, interval: number
|
|
|
47
259
|
min: number | undefined;
|
|
48
260
|
max: number | undefined;
|
|
49
261
|
}>;
|
|
262
|
+
declare function getDataEdgesForSymbols(provider: string, symbols: string[], interval: number): Promise<Map<string, {
|
|
263
|
+
min?: number;
|
|
264
|
+
max?: number;
|
|
265
|
+
}>>;
|
|
50
266
|
declare function waitForDbReady(attempts?: number, delayMs?: number): Promise<void>;
|
|
51
267
|
declare function deleteCandles(provider: string, symbol: string, interval: number): Promise<void>;
|
|
52
268
|
declare function findContinuityGap(provider: string, symbol: string, interval: number): Promise<{
|
|
@@ -55,4 +271,4 @@ declare function findContinuityGap(provider: string, symbol: string, interval: n
|
|
|
55
271
|
diffSeconds: number;
|
|
56
272
|
} | null>;
|
|
57
273
|
|
|
58
|
-
export { type CandleRow, deleteCandles, findContinuityGap, getCandlesRange, getDataEdges, getDerivativesDataEdgesForSymbols, getDerivativesRangeForSymbols, getDerivativesSummary, getDerivativesWindow, getSpreadRangeForSymbols, getSpreadSummary, toRows, upsertCandles, upsertDerivatives, upsertSpreadRows, waitForDbReady };
|
|
274
|
+
export { type CandleRow, type DeprecatedMarketContextCleanupItem, type MarketFeatureAsOf, cleanupDeprecatedMarketContext, closeTimescalePool, deleteCandles, findContinuityGap, getCandlesRange, getDataEdges, getDataEdgesForSymbols, getDerivativesBackfillCoverage, getDerivativesDataEdgesForSymbols, 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 };
|