> ## Documentation Index
> Fetch the complete documentation index at: https://docs.chainstream.io/llms.txt
> Use this file to discover all available pages before exploring further.

# 거래 - 목록

> 토큰 거래 목록 조회

<Note>
  특정 체인의 최근 DEX 거래를 가져옵니다. 토큰 주소로 필터링하여 특정 토큰의 거래를 볼 수 있습니다. 매수/매도 방향, 수량, 가격, DEX 정보를 반환합니다.
</Note>

**관련**: [GraphQL DEX 거래](/ko/graphql/examples/dex-trades) | MCP: `trade_get`


## OpenAPI

````yaml /ko/api-reference/openapi-data-ko.yaml GET /v2/trade/{chain}
openapi: 3.1.0
info:
  title: Services API
  description: Services API
  contact:
    name: AI
    email: ai@sx.ai
  license:
    name: MIT
  version: '1.0'
servers:
  - url: https://api.chainstream.io
    description: Production
security:
  - bearer_auth: []
  - api_key_auth: []
tags:
  - name: Blockchain
    description: 블록체인 관련 작업
  - name: Token
    description: 토큰 관련 작업
  - name: Trade
    description: 거래 관련 작업
  - name: Wallet
    description: 지갑 관련 작업
  - name: Dex
    description: DEX 관련 작업
  - name: Ranking
    description: 랭킹 관련 작업
  - name: DexPool
    description: DEX 풀 관련 작업
  - name: Watchlist
    description: 워치리스트 관련 작업
  - name: KYT
    description: KYT 관련 작업
  - name: Webhook
    description: Webhook 관련 작업
  - name: RedPacket
    description: 레드패킷 관련 작업
  - name: IPFS
    description: IPFS 관련 작업
  - name: DexScreener
    description: DexScreener 관련 작업
paths:
  /v2/trade/{chain}:
    get:
      tags:
        - Trade
      summary: 거래 - 목록
      description: 토큰 거래 목록 조회
      operationId: get.trades
      parameters:
        - name: chain
          in: path
          description: 지원되는 네트워크에 나열된 체인 이름
          required: true
          schema:
            $ref: '#/components/schemas/ChainSymbol'
          example: sol
        - name: cursor
          in: query
          description: 페이지네이션 커서
          required: false
          schema:
            type: string
          example: eyJpZCI6IjEyMyJ9
        - name: limit
          in: query
          description: 페이지당 결과 수
          required: false
          schema:
            type: integer
            format: int64
            default: 20
          example: 20
        - name: direction
          in: query
          description: 페이지네이션 방향 (next 또는 prev)
          required: false
          schema:
            oneOf:
              - $ref: '#/components/schemas/PageDirection'
            default: next
          example: next
        - name: tokenAddress
          in: query
          description: 토큰 주소
          required: false
          schema:
            type: string
          example: 6p6xgHyF7AeE6TZkSmFsko444wqoP15icUSqi2jfGiPN
        - name: walletAddress
          in: query
          description: 지갑 주소
          required: false
          schema:
            type: string
          example: 3xd4LGVWtYXLBspR6X5JWbW49NXmEehfPtX6Kqx98b4w
        - name: poolAddress
          in: query
          description: 풀 주소
          required: false
          schema:
            type: string
          example: 6p6xgHyF7AeE6TZkSmFsko444wqoP15icUSqi2jfGiPN
        - name: beforeTimestamp
          in: query
          description: 거래 필터링 시작 타임스탬프 (Unix 초 단위 타임스탬프)
          required: false
          schema:
            type: integer
            format: int64
          example: 1717334400000
        - name: afterTimestamp
          in: query
          description: 거래 필터링 종료 타임스탬프 (Unix 초 단위 타임스탬프)
          required: false
          schema:
            type: integer
            format: int64
          example: 1717334400000
        - name: beforeBlockHeight
          in: query
          description: 해당 블록 높이 이전의 거래 필터링
          required: false
          schema:
            type: integer
            format: int64
          example: 332417228
        - name: afterBlockHeight
          in: query
          description: 해당 블록 높이 이후의 거래 필터링
          required: false
          schema:
            type: integer
            format: int64
          example: 332417228
        - name: transactionsSignature
          in: query
          description: 트랜잭션 서명/해시
          required: false
          schema:
            type: string
          example: >-
            37XpPt9Ak6JiE1V3sftJDtdUsvR9FVFRqkZmoT3dp4BTD9pgyTWn1XgHH6R7NjuJ4pBMAgj8JvZtxQrf4s6NTC5F
        - name: type
          in: query
          description: 거래 유형 필터
          required: false
          schema:
            $ref: '#/components/schemas/TradeType'
          example: BUY
      responses:
        '200':
          description: 성공 응답
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PageResponse_TradeDetail'
components:
  schemas:
    ChainSymbol:
      type: string
      description: Supported blockchain chains
      enum:
        - sol
        - eth
        - bsc
    PageDirection:
      type: string
      description: Pagination direction
      enum:
        - next
        - prev
    TradeType:
      type: string
      description: Trade type
      enum:
        - BUY
        - SELL
    PageResponse_TradeDetail:
      type: object
      description: Generic pagination response
      required:
        - data
      properties:
        data:
          type: array
          items:
            type: object
            description: Trade detail
            required:
              - chain
              - blockHeight
              - blockTimestamp
              - accountOwnerAddress
              - transactionSignature
              - tokenName
              - tokenSymbol
              - tokenAddress
              - poolAddress
              - tokenAmount
              - tokenPriceInUsd
              - tokenAmountInUsd
              - tokenPriceInNative
              - tokenAmountInNative
              - type
              - sideTokenName
              - sideTokenSymbol
              - sideTokenAddress
              - sideTokenPriceInUsd
              - sideTokenPriceInNative
              - sideTokenAmount
              - sideTokenAmountInUsd
              - sideTokenAmountInNative
              - status
            properties:
              accountAddress:
                type:
                  - string
                  - 'null'
                description: >-
                  Solana token account address (ATA), distinct from
                  accountOwnerAddress (wallet owner).
              accountOwnerAddress:
                type: string
                description: Account owner address (trader wallet)
                example: 3xd4LGVWtYXLBspR6X5JWbW49NXmEehfPtX6Kqx98b4w
              addrType:
                type:
                  - integer
                  - 'null'
                format: int64
                description: >-
                  Address type from dexes_dwd.address_labels.

                  1=CEX, 2=Market Maker, 3=VC, 4=KOL, 5=DeFi, 6=Treasury,
                  7=Bridge, 8=Hacker.

                  Matches GMGN `addr_type`.
              blockHeight:
                type: integer
                format: int64
                description: Block height
                example: 332417228
              blockTimestamp:
                type: integer
                format: int64
                description: Block timestamp (milliseconds)
                example: 1717334400000
              chain:
                type: string
                description: Chain identifier
                example: sol
              dexFeeInNative:
                type:
                  - string
                  - 'null'
                description: >-
                  DEX protocol fee in native currency.

                  Aggregated from fees_processed[PROTOCOL] entries
                  (trade-processing-pipeline Bug A fix required).

                  Null when no PROTOCOL fee data is available (e.g. SOL — ETL
                  not yet populated).
                example: '0.00025'
              dexFeeInUsd:
                type:
                  - string
                  - 'null'
                description: >-
                  DEX protocol fee in USD.

                  Uses the same native-price snapshot as dex_fee_in_native;
                  satisfies same-snapshot constraint.

                  Null when no PROTOCOL fee data is available.
                example: '0.50'
              dexImage:
                type:
                  - string
                  - 'null'
                description: DEX image
                example: https://example.com/dex.png
              dexProgramAddress:
                type:
                  - string
                  - 'null'
                description: DEX program address
                example: whirLbMiicVdio4qvUfM5KAg6Ct8VwpYzGff3uctyCc
              dexProtocolFamily:
                type:
                  - string
                  - 'null'
                description: DEX protocol family
                example: OrcaWhirpool
              gasFee:
                type:
                  - integer
                  - 'null'
                format: int64
                description: 'Gas fee (raw: lamports for SOL, Gwei for BSC)'
                example: 5000
              gasFeeInNative:
                type:
                  - string
                  - 'null'
                description: Gas fee in native currency (SOL / BNB / ETH)
                example: '0.000073'
              gasFeeInUsd:
                type:
                  - string
                  - 'null'
                description: Gas fee in USD
                example: '0.011'
              historyBoughtAmount:
                type:
                  - string
                  - 'null'
                description: >-
                  Cumulative token quantity bought by this wallet (up to and
                  including this trade).

                  Matches GMGN `history_bought_amount`.
              historySoldAmount:
                type:
                  - string
                  - 'null'
                description: >-
                  Cumulative token quantity sold by this wallet (up to and
                  including this trade).

                  Matches GMGN `history_sold_amount`.
              historySoldIncome:
                type:
                  - string
                  - 'null'
                description: >-
                  Cumulative sell income (USD) for this wallet on this token (up
                  to and including this trade).

                  Matches GMGN `history_sold_income`.
              isOpenOrClose:
                type:
                  - integer
                  - 'null'
                format: int32
                description: >-
                  Position lifecycle: 0=normal, 1=open_position,
                  2=close_position

                  Matches GMGN `is_open_or_close` field.
              makerEventTags:
                type: array
                items:
                  type: string
                description: >-
                  Trade behaviour tags for this event (e.g. "open_position",
                  "dip_buy",

                  "take_profit", "stop_loss", "close_position", "accumulate",

                  "transfer_in", "transfer_out").

                  Matches GMGN `maker_token_tags` on the activity level.
              makerExchange:
                type:
                  - string
                  - 'null'
                description: >-
                  Entity / exchange name (e.g. "Binance"). Matches GMGN
                  `exchange`.
              makerName:
                type:
                  - string
                  - 'null'
                description: >-
                  Specific address label (e.g. "Binance Hot Wallet 1"). Matches
                  GMGN `maker_name`.
              marketCapInUsd:
                type:
                  - string
                  - 'null'
                description: Market cap in USD at trade time
                example: '1500000.00'
              poolAddress:
                type: string
                description: Pool address
                example: 58oQChx4yWmvKdwLLZzBi4ChoCc2fqCUWBkwMihLYQo2
              postBalance:
                type:
                  - string
                  - 'null'
                description: |-
                  Token balance after this trade (token quantity).
                  Matches GMGN `balance` in activity feed.
              priorityFeeInNative:
                type:
                  - string
                  - 'null'
                description: >-
                  EVM priority fee (fee_miner_reward ÷ 1e18) in native currency
                  (ETH/BNB).

                  Null on SOL (ETL does not yet provide compute-budget priority
                  fee).

                  Equals (effectiveGasPrice − baseFeePerGas) × gasUsed converted
                  to native units.
                example: '0.000005'
              realizedProfitInUsd:
                type:
                  - string
                  - 'null'
                description: >-
                  Realized PnL for this specific trade in USD (non-zero only on
                  Sell events).

                  Matches GMGN `realized_profit`.
              sideTokenAddress:
                type: string
                description: Side token address
                example: So11111111111111111111111111111111111111112
              sideTokenAmount:
                type: string
                description: Side token amount
                example: '1'
              sideTokenAmountInNative:
                type: string
                description: Side token amount in native currency
                example: '150'
              sideTokenAmountInUsd:
                type: string
                description: Side token amount in USD
                example: '150'
              sideTokenImageUrl:
                type:
                  - string
                  - 'null'
                description: Side token image URL
                example: https://arweave.net/sol.png
              sideTokenName:
                type: string
                description: Side token name
                example: Wrapped SOL
              sideTokenPriceInNative:
                type: string
                description: Side token price in native currency
                example: '1'
              sideTokenPriceInUsd:
                type: string
                description: Side token price in USD
                example: '150'
              sideTokenSymbol:
                type: string
                description: Side token symbol
                example: SOL
              status:
                type: string
                description: Transaction status
                example: SUCCEEDED
              tokenAddress:
                type: string
                description: Token address
                example: 6p6xgHyF7AeE6TZkSmFsko444wqoP15icUSqi2jfGiPN
              tokenAmount:
                type: string
                description: Token amount
                example: '1000000'
              tokenAmountInNative:
                type: string
                description: Token amount in native currency
                example: '100'
              tokenAmountInUsd:
                type: string
                description: Token amount in USD
                example: '8800000'
              tokenImageUrl:
                type:
                  - string
                  - 'null'
                description: Token image URL
                example: https://arweave.net/token.png
              tokenName:
                type: string
                description: Token name
                example: TRUMP
              tokenPriceInNative:
                type: string
                description: Token price in native currency
                example: '0.0001'
              tokenPriceInUsd:
                type: string
                description: Token price in USD
                example: '8.80'
              tokenSymbol:
                type: string
                description: Token symbol
                example: TRUMP
              totalTrade:
                type:
                  - integer
                  - 'null'
                format: int64
                description: >-
                  Total historical trade count for this wallet on this token
                  (buy + sell, up to and including this trade).

                  Matches GMGN `total_trade`.
              traderTags:
                type: array
                items:
                  type: string
                description: >-
                  Trader classification tags (e.g. "kol", "smart", "sniper",
                  "dev", "fresh", "bundle", "bluechip", "insider")
              transactionSignature:
                type: string
                description: Transaction signature
                example: >-
                  37XpPt9Ak6JiE1V3sftJDtdUsvR9FVFRqkZmoT3dp4BTD9pgyTWn1XgHH6R7NjuJ4pBMAgj8JvZtxQrf4s6NTC5F
              type:
                type: string
                description: Trade type (BUY/SELL)
                example: BUY
              unrealizedProfitInUsd:
                type:
                  - string
                  - 'null'
                description: >-
                  Unrealized profit in USD at the moment of this trade:

                  post_balance × token_price_in_usd − position_cost_in_usd.

                  Only populated when PnL pipeline has processed the row and
                  cost basis > 0.

                  Matches GMGN `unrealized_profit`.
          description: Page data
        endCursor:
          type:
            - string
            - 'null'
          description: Cursor for the end of current page
          example: eyJpZCI6ImVuZCJ9
        hasNext:
          type: boolean
          description: Whether there is a next page
          example: false
        hasPrev:
          type: boolean
          description: Whether there is a previous page
          example: false
        startCursor:
          type:
            - string
            - 'null'
          description: Cursor for the start of current page
          example: eyJpZCI6InN0YXJ0In0=
        total:
          type:
            - integer
            - 'null'
          format: int64
          description: >-
            Total number of items matching the query (not just the current
            page).

            When `None`, the caller should treat it as unknown
            (backward-compatible).
          example: 564094
  securitySchemes:
    bearer_auth:
      type: http
      scheme: bearer
      bearerFormat: JWT
    api_key_auth:
      type: apiKey
      in: header
      name: X-API-KEY

````