Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

There is no order-book depth, only a single execution price

Đã đóng
#281 4 bình luận 0 reaction 1 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 3 ngày

@deslawson đang làm issue này rồi.

Từ ngày 16/10/2026.

Đánh giá

Issue này chưa được đánh giá.

Mô tả

area:pricing difficulty:intermediate epic:analytics help wanted points:150 Stellar Wave
Background

/price/:assetA/:assetB/depth simulates one trade of one size and returns its slippage. src/pricing/depth.ts already builds asks and bids arrays internally. What no route exposes is the book itself — the ladder of price against cumulative size that anyone sizing a position actually needs.

What to build
  • GET /book/:assetA/:assetB returning aggregated levels across every venue, each level naming the venues contributing to it.
  • AMM reserves become synthetic levels at a configurable step; order-book levels come through as they are. Both are labelled, because they behave differently under size.
  • A depth parameter bounding how far from spot to walk.
Acceptance criteria
  • Aggregated levels with cumulative size, per side
  • Every level names its venues and whether it is synthetic
  • ?network= honoured and declared
  • A test covers a pair quoted by an AMM and an order book together

Drips Wave · Complexity: Intermediate · 150 points


Repo: Divinity-Labs/Lens. Node + Fastify + Prisma + Postgres. Tests are vitest (npm test), not jest — jest against this repo fails every file and tells you nothing.

?network= is not optional on a new route. Every row carries a network and the indexes lead with it. Read req.network ?? activeNetwork, filter on it, echo it in the response, and declare the parameter in openapi.yaml. tests/openapi.test.ts boots the server and fails if a registered route is missing from the spec.

A number without provenance is not an answer. Every figure this batch adds must carry what it was computed from: which venues, how many samples, how fresh. The point of Lens is that its numbers can be checked.

Never elide a contract id or an issuer. Take addresses from the protocol's own documentation and write them whole. A sibling repo's issue wrote CD2W5LUR…XZ4L and five contributors invented plausible contract ids to fill the gap.

Say when you cannot answer. An asset with no liquidity, a pair with one venue, a window with a gap — each has an honest answer that is not zero and not a 500. Zero is a number people act on.


Required: Before submitting, join the contributor Telegram so your work can be tracked and counted toward the Stellar Wave: https://t.me/+fxHXq8f1SwlkZDBk

Ngôn ngữ chính
TypeScript
Star
4
Fork
71
Merge trung bình
3 ngày 10 giờ
Pull request đã merge (30 ngày)
154

Chuẩn bị môi trường

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của Divinity-Labs/Lens

Tất cả issue của Divinity-Labs/Lens

Issue tương tự

Thêm issue về TypeScript

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.