lpsignal 0.4.1 → 0.5.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.
package/README.md CHANGED
@@ -28,15 +28,17 @@ try {
28
28
  | Method | Endpoint | Key |
29
29
  |---|---|---|
30
30
  | `health()` · `chains()` | `/v1/health` · `/v1/chains` | – |
31
- | `pools({ chain, class, window, minTvlUsd, limit, offset })` | `GET /v1/pools` | – |
31
+ | `pools({ chain, class, window, minTvlUsd, limit, offset, sort, order })` | `GET /v1/pools` — `sort`: `netApr` (default) · `feeApr` · `ilApr` · `inRange` · `emissionApr` · `tvl` · `fee`; `order`: `desc` (default) · `asc`; the page carries `total` | – |
32
+ | `iteratePools({ …, sort, order })` | every page, in that order (best effort: none twice; one whose place changes meanwhile may be missed) | – |
32
33
  | `pool(chain, address)` · `poolHours(chain, address, { hours })` | `GET /v1/pools/:chain/:address[/hours]` | – |
33
34
  | `backtest(chain, address, { rangePct, days })` | `GET …/backtest` | – |
34
35
  | `signals({ kind, limit, before })` · `signal(id)` | `GET /v1/signals[/:id]` | optional |
35
36
  | `signalStats({ days })` | `GET /v1/signals/stats` — the public track record | – |
36
37
  | `iterateSignals({ kind })` | every page, newest first | optional |
37
38
  | `signalsAfter(id)` | everything newer than `id`, oldest first | optional |
38
- | `smartLps({ windowDays, chain, limit })` | `GET /v1/smart-lps` | optional |
39
- | `walletPositions(owner)` | `GET /v1/smart-lps/:owner/positions` | Pro |
39
+ | `smartLps({ windowDays, chain, limit, offset, sort, order })` | `GET /v1/smart-lps` — `sort`: `rank` (default, = pnl rank) · `pnl` · `return` · `capital` · `closes` · `wins`; `rank` stays the pnl rank whatever the sort; `total` | optional |
40
+ | `iterateSmartLps({ …, sort, order })` | every wallet on the board, in that order | optional |
41
+ | `walletPositions(owner, { limit, openOffset, openSort, openOrder, closedOffset, closedSort, closedOrder })` | `GET /v1/smart-lps/:owner/positions` — each list pages and sorts on its own (`openSort`: `lastEvent` · `openedAt` · `entryUsd`; `closedSort`: `closedAt` · `openedAt` · `capitalUsd` · `pnlUsd`); `openTotal` / `closedTotal` | Pro |
40
42
  | `follows()` · `follow(owner)` · `unfollow(owner)` | `/v1/me/follows` | Pro |
41
43
  | `me()` · `setWebhook(url)` · `deleteWebhook()` · `telegramLink()` | `/v1/me…` | yes |
42
44
  | `createApiKey({ replace })` | `POST /v1/me/api-key` — replaces the key (or `replace: false`: only if none), returned once | yes |
package/dist/client.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import type { Backtest, BillingStatus, Chain, ChainStatus, Follow, Health, Leaderboard, Me, PairClass, PoolDetail, PoolHour, PoolsPage, Rule, RuleInput, RulesPage, Signal, SignalKind, SignalsPage, SignalStats, TelegramLink, CryptoBilling, CryptoMonths, CryptoOrder, WalletPositions, WebhookRegistration, WindowHours } from './types.js';
1
+ import type { Backtest, BillingStatus, Chain, ChainStatus, Follow, Health, Leaderboard, Me, PairClass, PoolDetail, PoolHour, PoolsPage, Rule, RuleInput, RulesPage, Signal, SignalKind, SignalsPage, SignalStats, TelegramLink, CryptoBilling, CryptoMonths, CryptoOrder, WalletPositions, WebhookRegistration, WindowHours, BoardSort, ClosedSort, LeaderboardWallet, OpenSort, Order, PoolSort, RankedPool } from './types.js';
2
2
  export declare const DEFAULT_BASE_URL = "https://api.lpsignal.app";
3
3
  /** A non-2xx answer from the API. `code` is the API's stable `error` field (e.g. `rate_limited`, `pro_required`). */
4
4
  export declare class LPSignalError extends Error {
@@ -32,6 +32,36 @@ export interface PoolsQuery {
32
32
  /** 1..100, default 50 */
33
33
  limit?: number;
34
34
  offset?: number;
35
+ /** default netApr */
36
+ sort?: PoolSort;
37
+ /** default desc */
38
+ order?: Order;
39
+ }
40
+ export interface SmartLpsQuery {
41
+ windowDays?: 30 | 90;
42
+ chain?: Chain;
43
+ /** 1..100, default 20 */
44
+ limit?: number;
45
+ offset?: number;
46
+ /** default rank (the pnl rank) */
47
+ sort?: BoardSort;
48
+ /** default asc for rank, desc otherwise */
49
+ order?: Order;
50
+ }
51
+ /** the open and the closed list page and sort independently; `limit` is shared */
52
+ export interface WalletPositionsQuery {
53
+ /** 1..100, default 50 */
54
+ limit?: number;
55
+ openOffset?: number;
56
+ /** default lastEvent */
57
+ openSort?: OpenSort;
58
+ /** default desc */
59
+ openOrder?: Order;
60
+ closedOffset?: number;
61
+ /** default closedAt */
62
+ closedSort?: ClosedSort;
63
+ /** default desc */
64
+ closedOrder?: Order;
35
65
  }
36
66
  export interface SignalsQuery {
37
67
  kind?: SignalKind;
@@ -64,8 +94,14 @@ export declare class LPSignal {
64
94
  health(): Promise<Health>;
65
95
  /** Scan progress per chain. */
66
96
  chains(): Promise<ChainStatus[]>;
67
- /** Active pools ranked by their best range's net APR over `window` hours. */
97
+ /** Active pools with their best range over `window` hours; by net APR unless `sort` says otherwise. */
68
98
  pools(query?: PoolsQuery): Promise<PoolsPage>;
99
+ /**
100
+ * The pools matching `query`, in its order, page by page (`limit` = page size, default 100). Best effort: pages are
101
+ * read one after another, so a pool whose place changes meanwhile (metrics update hourly) may be missed; none is
102
+ * yielded twice.
103
+ */
104
+ iteratePools(query?: Omit<PoolsQuery, 'offset'>): AsyncGenerator<RankedPool>;
69
105
  /** One pool with every (window, range) metric. `address` is the pool id for Uniswap v4. */
70
106
  pool(chain: Chain, address: string): Promise<PoolDetail>;
71
107
  /** Hourly aggregates, oldest first (at most 720 hours). */
@@ -92,16 +128,15 @@ export declare class LPSignal {
92
128
  * offline catches up (the stream itself only replays the last 24 hours).
93
129
  */
94
130
  signalsAfter(afterId: string, opts?: Pick<SignalsQuery, 'source' | 'kind' | 'kinds'>): Promise<Signal[]>;
95
- /** Wallets ranked by LP pnl versus holding. Without Pro: the top 10 with masked addresses. */
96
- smartLps(query?: {
97
- windowDays?: 30 | 90;
98
- chain?: Chain;
99
- limit?: number;
100
- }): Promise<Leaderboard>;
101
- /** A wallet's open and closed positions (Pro). */
102
- walletPositions(owner: string, opts?: {
103
- limit?: number;
104
- }): Promise<WalletPositions>;
131
+ /** Wallets ranked by LP pnl versus holding (sortable; `rank` stays the pnl rank). Without Pro: the top 10, masked. */
132
+ smartLps(query?: SmartLpsQuery): Promise<Leaderboard>;
133
+ /**
134
+ * The wallets on the board, in `query`'s order, page by page (`limit` = page size, default 100). Best effort like
135
+ * `iteratePools`: a wallet whose place changes meanwhile may be missed; none is yielded twice.
136
+ */
137
+ iterateSmartLps(query?: Omit<SmartLpsQuery, 'offset'>): AsyncGenerator<LeaderboardWallet>;
138
+ /** A wallet's open and closed positions (Pro), each list paged and sorted on its own. */
139
+ walletPositions(owner: string, opts?: WalletPositionsQuery): Promise<WalletPositions>;
105
140
  /** Wallets you follow (Pro). */
106
141
  follows(): Promise<Follow[]>;
107
142
  /** Follow a wallet: its new positions of $10k+ become smart_lp signals for you (Pro, up to 50). */
package/dist/client.js CHANGED
@@ -85,10 +85,31 @@ export class LPSignal {
85
85
  return (await this.request('GET', '/v1/chains')).chains;
86
86
  }
87
87
  // ── pools ────────────────────────────────────────────────────────────────
88
- /** Active pools ranked by their best range's net APR over `window` hours. */
88
+ /** Active pools with their best range over `window` hours; by net APR unless `sort` says otherwise. */
89
89
  pools(query = {}) {
90
90
  return this.request('GET', '/v1/pools', { query: { ...query } });
91
91
  }
92
+ /**
93
+ * The pools matching `query`, in its order, page by page (`limit` = page size, default 100). Best effort: pages are
94
+ * read one after another, so a pool whose place changes meanwhile (metrics update hourly) may be missed; none is
95
+ * yielded twice.
96
+ */
97
+ async *iteratePools(query = {}) {
98
+ const seen = new Set();
99
+ for (let offset = 0;;) {
100
+ const page = await this.pools({ ...query, limit: query.limit ?? 100, offset });
101
+ for (const p of page.pools) {
102
+ const id = `${p.chain}:${p.address}`;
103
+ if (!seen.has(id)) {
104
+ seen.add(id);
105
+ yield p;
106
+ }
107
+ }
108
+ offset += page.pools.length;
109
+ if (!page.pools.length || offset >= page.total)
110
+ return;
111
+ }
112
+ }
92
113
  /** One pool with every (window, range) metric. `address` is the pool id for Uniswap v4. */
93
114
  pool(chain, address) {
94
115
  return this.request('GET', `/v1/pools/${enc(chain)}/${enc(address)}`);
@@ -141,13 +162,32 @@ export class LPSignal {
141
162
  return newer.reverse();
142
163
  }
143
164
  // ── smart LPs ────────────────────────────────────────────────────────────
144
- /** Wallets ranked by LP pnl versus holding. Without Pro: the top 10 with masked addresses. */
165
+ /** Wallets ranked by LP pnl versus holding (sortable; `rank` stays the pnl rank). Without Pro: the top 10, masked. */
145
166
  smartLps(query = {}) {
146
167
  return this.request('GET', '/v1/smart-lps', { query: { ...query } });
147
168
  }
148
- /** A wallet's open and closed positions (Pro). */
169
+ /**
170
+ * The wallets on the board, in `query`'s order, page by page (`limit` = page size, default 100). Best effort like
171
+ * `iteratePools`: a wallet whose place changes meanwhile may be missed; none is yielded twice.
172
+ */
173
+ async *iterateSmartLps(query = {}) {
174
+ const seen = new Set();
175
+ for (let offset = 0;;) {
176
+ const page = await this.smartLps({ ...query, limit: query.limit ?? 100, offset });
177
+ for (const w of page.wallets) {
178
+ if (!seen.has(w.owner)) {
179
+ seen.add(w.owner);
180
+ yield w;
181
+ }
182
+ }
183
+ offset += page.wallets.length;
184
+ if (!page.wallets.length || offset >= page.total)
185
+ return;
186
+ }
187
+ }
188
+ /** A wallet's open and closed positions (Pro), each list paged and sorted on its own. */
149
189
  walletPositions(owner, opts = {}) {
150
- return this.request('GET', `/v1/smart-lps/${enc(owner)}/positions`, { query: opts });
190
+ return this.request('GET', `/v1/smart-lps/${enc(owner)}/positions`, { query: { ...opts } });
151
191
  }
152
192
  /** Wallets you follow (Pro). */
153
193
  async follows() {
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  export { LPSignal, LPSignalError, DEFAULT_BASE_URL } from './client.js';
2
- export type { LPSignalOptions, PoolsQuery, SignalsQuery } from './client.js';
2
+ export type { LPSignalOptions, PoolsQuery, SignalsQuery, SmartLpsQuery, WalletPositionsQuery } from './client.js';
3
3
  export { SignalStream, MemoryLastIdStore, FileLastIdStore } from './stream.js';
4
4
  export type { LastIdStore, SignalMeta, SignalStreamOptions, StreamEvent, SocketFactory, SocketLike } from './stream.js';
5
5
  export { verifyWebhook, WebhookVerificationError } from './webhook.js';
package/dist/types.d.ts CHANGED
@@ -57,10 +57,16 @@ export interface RankedPool {
57
57
  tvlAt: string | null;
58
58
  best: BestRange;
59
59
  }
60
+ export type Order = 'asc' | 'desc';
61
+ /** what `pools` can sort by: the best range's figures, the pool's TVL or fee tier */
62
+ export type PoolSort = 'netApr' | 'feeApr' | 'ilApr' | 'inRange' | 'emissionApr' | 'tvl' | 'fee';
60
63
  export interface PoolsPage {
61
64
  pools: RankedPool[];
62
65
  limit: number;
63
66
  offset: number;
67
+ total: number;
68
+ sort: PoolSort;
69
+ order: Order;
64
70
  }
65
71
  export interface Pool {
66
72
  id: string;
@@ -261,7 +267,15 @@ export interface Leaderboard {
261
267
  /** false = top 10 with masked addresses (not Pro) */
262
268
  full: boolean;
263
269
  wallets: LeaderboardWallet[];
270
+ /** wallets on the board for this caller (non-Pro: at most 10) */
271
+ total: number;
272
+ limit: number;
273
+ offset: number;
274
+ sort: BoardSort;
275
+ order: Order;
264
276
  }
277
+ /** what `smartLps` can sort by; `rank` (the pnl rank) stays the wallet's rank whatever the sort */
278
+ export type BoardSort = 'rank' | 'pnl' | 'return' | 'capital' | 'closes' | 'wins';
265
279
  interface PositionPool {
266
280
  chain: Chain;
267
281
  pool: string;
@@ -293,7 +307,14 @@ export interface WalletPositions {
293
307
  owner: string;
294
308
  open: OpenPosition[];
295
309
  closed: ClosedPosition[];
310
+ openTotal: number;
311
+ closedTotal: number;
312
+ limit: number;
313
+ openOffset: number;
314
+ closedOffset: number;
296
315
  }
316
+ export type OpenSort = 'lastEvent' | 'openedAt' | 'entryUsd';
317
+ export type ClosedSort = 'closedAt' | 'openedAt' | 'capitalUsd' | 'pnlUsd';
297
318
  export interface Me {
298
319
  id: string;
299
320
  tier: Tier;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lpsignal",
3
- "version": "0.4.1",
3
+ "version": "0.5.0",
4
4
  "description": "Official LPSignal SDK: net-of-IL APR signals for concentrated-liquidity pools, a WebSocket stream that never misses a signal, webhook verification and the REST API.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",