@oddmaki-protocol/sdk 1.11.1 → 1.12.1

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/index.mjs CHANGED
@@ -10201,6 +10201,199 @@ var GET_LEADERBOARD = gql`
10201
10201
  }
10202
10202
  }
10203
10203
  `;
10204
+ var GET_TRADER_VENUE_PROFILE = gql`
10205
+ query GetTraderVenueProfile($id: ID!) {
10206
+ userVenueStat(id: $id) {
10207
+ id
10208
+ totalOrdersPlaced
10209
+ totalVolume
10210
+ totalTradeCount
10211
+ totalMarketsTraded
10212
+ totalRealizedPnL
10213
+ firstSeenAt
10214
+ lastSeenAt
10215
+ trader {
10216
+ id
10217
+ address
10218
+ }
10219
+ }
10220
+ }
10221
+ `;
10222
+ var GET_VENUE_LEADERBOARD = gql`
10223
+ query GetVenueLeaderboard(
10224
+ $venueId: BigInt!
10225
+ $orderBy: UserVenueStat_orderBy = totalVolume
10226
+ $orderDirection: OrderDirection = desc
10227
+ $first: Int = 50
10228
+ $skip: Int = 0
10229
+ ) {
10230
+ userVenueStats(
10231
+ where: { venue_: { venueId: $venueId }, totalTradeCount_gt: "0" }
10232
+ first: $first
10233
+ skip: $skip
10234
+ orderBy: $orderBy
10235
+ orderDirection: $orderDirection
10236
+ ) {
10237
+ id
10238
+ totalVolume
10239
+ totalTradeCount
10240
+ totalMarketsTraded
10241
+ totalRealizedPnL
10242
+ firstSeenAt
10243
+ lastSeenAt
10244
+ trader {
10245
+ id
10246
+ address
10247
+ }
10248
+ }
10249
+ }
10250
+ `;
10251
+ var GET_TRADER_VENUE_POSITIONS = gql`
10252
+ query GetTraderVenuePositions(
10253
+ $trader: String!
10254
+ $venueId: BigInt!
10255
+ $first: Int = 100
10256
+ $skip: Int = 0
10257
+ ) {
10258
+ traderPositions(
10259
+ where: {
10260
+ trader: $trader
10261
+ venue_: { venueId: $venueId }
10262
+ quantity_gt: "0"
10263
+ }
10264
+ first: $first
10265
+ skip: $skip
10266
+ orderBy: lastTradeAt
10267
+ orderDirection: desc
10268
+ ) {
10269
+ id
10270
+ outcome
10271
+ quantity
10272
+ totalCostBasis
10273
+ avgEntryPrice
10274
+ realizedPnL
10275
+ totalCollateralIn
10276
+ totalCollateralOut
10277
+ buyCount
10278
+ sellCount
10279
+ firstTradeAt
10280
+ lastTradeAt
10281
+ market {
10282
+ id
10283
+ marketId
10284
+ question
10285
+ outcomes
10286
+ status
10287
+ resolvedOutcome
10288
+ tickSize
10289
+ lastPriceTick_0
10290
+ lastPriceTick_1
10291
+ collateralDecimals
10292
+ venue {
10293
+ id
10294
+ venueId
10295
+ name
10296
+ }
10297
+ }
10298
+ }
10299
+ }
10300
+ `;
10301
+ var GET_TRADER_VENUE_CLOSED_POSITIONS = gql`
10302
+ query GetTraderVenueClosedPositions(
10303
+ $trader: String!
10304
+ $venueId: BigInt!
10305
+ $first: Int = 100
10306
+ $skip: Int = 0
10307
+ ) {
10308
+ traderPositions(
10309
+ where: {
10310
+ trader: $trader
10311
+ venue_: { venueId: $venueId }
10312
+ quantity: "0"
10313
+ }
10314
+ first: $first
10315
+ skip: $skip
10316
+ orderBy: lastTradeAt
10317
+ orderDirection: desc
10318
+ ) {
10319
+ id
10320
+ outcome
10321
+ quantity
10322
+ totalCostBasis
10323
+ avgEntryPrice
10324
+ realizedPnL
10325
+ totalCollateralIn
10326
+ totalCollateralOut
10327
+ buyCount
10328
+ sellCount
10329
+ firstTradeAt
10330
+ lastTradeAt
10331
+ market {
10332
+ id
10333
+ marketId
10334
+ question
10335
+ outcomes
10336
+ status
10337
+ resolvedOutcome
10338
+ tickSize
10339
+ lastPriceTick_0
10340
+ lastPriceTick_1
10341
+ collateralDecimals
10342
+ venue {
10343
+ id
10344
+ venueId
10345
+ name
10346
+ }
10347
+ }
10348
+ }
10349
+ }
10350
+ `;
10351
+ var GET_TRADER_VENUE_FILLS = gql`
10352
+ query GetTraderVenueFills(
10353
+ $trader: String!
10354
+ $venueId: BigInt!
10355
+ $first: Int = 50
10356
+ $skip: Int = 0
10357
+ ) {
10358
+ fills(
10359
+ where: {
10360
+ trader: $trader
10361
+ venue_: { venueId: $venueId }
10362
+ }
10363
+ first: $first
10364
+ skip: $skip
10365
+ orderBy: timestamp
10366
+ orderDirection: desc
10367
+ ) {
10368
+ id
10369
+ outcome
10370
+ side
10371
+ tick
10372
+ amount
10373
+ cost
10374
+ fees
10375
+ tradeType
10376
+ avgPrice
10377
+ timestamp
10378
+ blockNumber
10379
+ transactionHash
10380
+ market {
10381
+ id
10382
+ marketId
10383
+ question
10384
+ outcomes
10385
+ tickSize
10386
+ status
10387
+ collateralDecimals
10388
+ venue {
10389
+ id
10390
+ venueId
10391
+ name
10392
+ }
10393
+ }
10394
+ }
10395
+ }
10396
+ `;
10204
10397
  var GET_MARKET_TOP_HOLDERS = gql`
10205
10398
  query GetMarketTopHolders(
10206
10399
  $marketId: String!
@@ -10620,6 +10813,64 @@ var PublicModule = class extends BaseModule {
10620
10813
  skip: params?.skip || 0
10621
10814
  });
10622
10815
  }
10816
+ // ============================================
10817
+ // Venue-Scoped Trader Analytics
10818
+ // ============================================
10819
+ /**
10820
+ * Get a trader's per-venue profile stats. Returns the `UserVenueStat` row
10821
+ * for (venueId, address) when present, else null when the trader has never
10822
+ * traded in this venue.
10823
+ */
10824
+ async getTraderVenueProfile(params) {
10825
+ return this.subgraph.request(GET_TRADER_VENUE_PROFILE, {
10826
+ id: `${params.venueId.toString()}-${params.trader.toLowerCase()}`
10827
+ });
10828
+ }
10829
+ /**
10830
+ * Get a trader's open positions (quantity > 0) scoped to a single venue.
10831
+ */
10832
+ async getTraderVenuePositions(params) {
10833
+ return this.subgraph.request(GET_TRADER_VENUE_POSITIONS, {
10834
+ trader: params.trader.toLowerCase(),
10835
+ venueId: params.venueId.toString(),
10836
+ first: params.first || 100,
10837
+ skip: params.skip || 0
10838
+ });
10839
+ }
10840
+ /**
10841
+ * Get a trader's closed positions (quantity = 0) scoped to a single venue.
10842
+ */
10843
+ async getTraderVenueClosedPositions(params) {
10844
+ return this.subgraph.request(GET_TRADER_VENUE_CLOSED_POSITIONS, {
10845
+ trader: params.trader.toLowerCase(),
10846
+ venueId: params.venueId.toString(),
10847
+ first: params.first || 100,
10848
+ skip: params.skip || 0
10849
+ });
10850
+ }
10851
+ /**
10852
+ * Get a trader's fill history (activity feed) scoped to a single venue.
10853
+ */
10854
+ async getTraderVenueTrades(params) {
10855
+ return this.subgraph.request(GET_TRADER_VENUE_FILLS, {
10856
+ trader: params.trader.toLowerCase(),
10857
+ venueId: params.venueId.toString(),
10858
+ first: params.first || 50,
10859
+ skip: params.skip || 0
10860
+ });
10861
+ }
10862
+ /**
10863
+ * Get the venue-scoped leaderboard (top traders within a single venue).
10864
+ */
10865
+ async getVenueLeaderboard(params) {
10866
+ return this.subgraph.request(GET_VENUE_LEADERBOARD, {
10867
+ venueId: params.venueId.toString(),
10868
+ orderBy: params.orderBy || "totalVolume",
10869
+ orderDirection: params.orderDirection || "desc",
10870
+ first: params.first || 50,
10871
+ skip: params.skip || 0
10872
+ });
10873
+ }
10623
10874
  /**
10624
10875
  * Get top holders for a market (by position size)
10625
10876
  */
@@ -12041,6 +12292,6 @@ function parseMetadata(json) {
12041
12292
  // src/index.ts
12042
12293
  var version = "0.1.0";
12043
12294
 
12044
- export { AccessControlFacet_default as AccessControlFacetABI, AccessControlModule, BatchOrdersFacet_default as BatchOrdersFacetABI, CONTRACT_ADDRESSES, ConditionalTokens_default as ConditionalTokensABI, DEFAULT_CHAIN, ERC20_default as ERC20ABI, FeedProvider, GET_ALL_MARKETS_FEED, GET_ALL_MARKETS_FEED_BY_VOLUME, GET_CHART_TRADES, GET_CHART_TRADES_ALL, GET_GROUP_MARKETS, GET_LEADERBOARD, GET_MARKET, GET_MARKETS, GET_MARKETS_WITH_PRICING, GET_MARKET_GROUP, GET_MARKET_GROUPS, GET_MARKET_GROUP_ITEM, GET_MARKET_TOP_HOLDERS, GET_ORDERS, GET_PRICE_MARKET_SERIES, GET_PROTOCOL_STATS, GET_QUESTION, GET_QUESTIONS, GET_RECENT_MARKETS, GET_RECENT_TRADES, GET_TOP_OF_BOOK, GET_TRADER_CLOSED_POSITIONS, GET_TRADER_FILLS, GET_TRADER_POSITIONS, GET_TRADER_PROFILE, GET_TRADES, GET_UNIFIED_MARKET_FEED, GET_UNIFIED_MARKET_FEED_BY_VOLUME, GET_USER, GET_VENUES, LimitOrdersFacet_default as LimitOrdersFacetABI, MarketGroupFacet_default as MarketGroupFacetABI, MarketModule, MarketOrdersFacet_default as MarketOrdersFacetABI, MarketsFacet_default as MarketsFacetABI, MatchingFacet_default as MatchingFacetABI, MetadataFacet_default as MetadataFacetABI, NegRiskFacet_default as NegRiskFacetABI, OddMakiClient, OrderBookFacet_default as OrderBookFacetABI, PROTOCOL_FEES, PriceMarketFacet_default as PriceMarketFacetABI, PriceMarketModule, ProtocolFacet_default as ProtocolFacetABI, PublicModule, PythResolutionFacet_default as PythResolutionFacetABI, ResolutionFacet_default as ResolutionFacetABI, SUBGRAPH_IDS, SubgraphClient, TICK_SIZE_FINE, TICK_SIZE_STANDARD, TagsFacet_default as TagsFacetABI, TokenModule, TradeModule, UMA_DEFAULTS, UmaModule, UmaOracle_default as UmaOracleABI, VALID_TICK_SIZES, VaultFacet_default as VaultFacetABI, VenueFacet_default as VenueFacetABI, VenueModule, WhitelistAccessControl_default as WhitelistAccessControlABI, buildSubgraphGatewayUrl, calculateChancePercent, clearDecimalsCache, createExpiry, createOddMakiClient, formatAmount, formatAncillaryData, formatTimestamp, getCachedTokenDecimals, getOutcomePrice, getTokenDecimals, isValidTickSize, parseAmount, parseAncillaryData, parseMetadata, parseTokenAmount, priceToTick, resolveIPFSUri, tickToPercentage, tickToPrice, version };
12295
+ export { AccessControlFacet_default as AccessControlFacetABI, AccessControlModule, BatchOrdersFacet_default as BatchOrdersFacetABI, CONTRACT_ADDRESSES, ConditionalTokens_default as ConditionalTokensABI, DEFAULT_CHAIN, ERC20_default as ERC20ABI, FeedProvider, GET_ALL_MARKETS_FEED, GET_ALL_MARKETS_FEED_BY_VOLUME, GET_CHART_TRADES, GET_CHART_TRADES_ALL, GET_GROUP_MARKETS, GET_LEADERBOARD, GET_MARKET, GET_MARKETS, GET_MARKETS_WITH_PRICING, GET_MARKET_GROUP, GET_MARKET_GROUPS, GET_MARKET_GROUP_ITEM, GET_MARKET_TOP_HOLDERS, GET_ORDERS, GET_PRICE_MARKET_SERIES, GET_PROTOCOL_STATS, GET_QUESTION, GET_QUESTIONS, GET_RECENT_MARKETS, GET_RECENT_TRADES, GET_TOP_OF_BOOK, GET_TRADER_CLOSED_POSITIONS, GET_TRADER_FILLS, GET_TRADER_POSITIONS, GET_TRADER_PROFILE, GET_TRADER_VENUE_CLOSED_POSITIONS, GET_TRADER_VENUE_FILLS, GET_TRADER_VENUE_POSITIONS, GET_TRADER_VENUE_PROFILE, GET_TRADES, GET_UNIFIED_MARKET_FEED, GET_UNIFIED_MARKET_FEED_BY_VOLUME, GET_USER, GET_VENUES, GET_VENUE_LEADERBOARD, LimitOrdersFacet_default as LimitOrdersFacetABI, MarketGroupFacet_default as MarketGroupFacetABI, MarketModule, MarketOrdersFacet_default as MarketOrdersFacetABI, MarketsFacet_default as MarketsFacetABI, MatchingFacet_default as MatchingFacetABI, MetadataFacet_default as MetadataFacetABI, NegRiskFacet_default as NegRiskFacetABI, OddMakiClient, OrderBookFacet_default as OrderBookFacetABI, PROTOCOL_FEES, PriceMarketFacet_default as PriceMarketFacetABI, PriceMarketModule, ProtocolFacet_default as ProtocolFacetABI, PublicModule, PythResolutionFacet_default as PythResolutionFacetABI, ResolutionFacet_default as ResolutionFacetABI, SUBGRAPH_IDS, SubgraphClient, TICK_SIZE_FINE, TICK_SIZE_STANDARD, TagsFacet_default as TagsFacetABI, TokenModule, TradeModule, UMA_DEFAULTS, UmaModule, UmaOracle_default as UmaOracleABI, VALID_TICK_SIZES, VaultFacet_default as VaultFacetABI, VenueFacet_default as VenueFacetABI, VenueModule, WhitelistAccessControl_default as WhitelistAccessControlABI, buildSubgraphGatewayUrl, calculateChancePercent, clearDecimalsCache, createExpiry, createOddMakiClient, formatAmount, formatAncillaryData, formatTimestamp, getCachedTokenDecimals, getOutcomePrice, getTokenDecimals, isValidTickSize, parseAmount, parseAncillaryData, parseMetadata, parseTokenAmount, priceToTick, resolveIPFSUri, tickToPercentage, tickToPrice, version };
12045
12296
  //# sourceMappingURL=index.mjs.map
12046
12297
  //# sourceMappingURL=index.mjs.map