Nền tảng giao dịch lưới động (dynamic grid) cho hợp đồng vĩnh cửu ETH/USDT · Tương thích Binance / Gate.io / OKX
Robot lưới có sẵn của sàn là sản phẩm của một thời đã qua.
Nó treo cả dàn lệnh lên sổ lệnh rồi mặc kệ — vào lệnh chẳng hỏi giá, cắt lỗ một nhát sạch sành sanh, giá nhảy gap thì chỉ ăn được cái giá chết ngay trên đường lưới. GridPilot là một trader túc trực bảng giá 24/7: mỗi nhịp giá đập, nó lại đánh giá lại xem có nên ra tay không, và ra tay ở giá nào.
简体中文 · 繁體中文 · English · 日本語 · Español · العربية · Français · Português · Italiano · 한국어 · ไทย · Tiếng Việt
| Bảng điều khiển · Tổng quan | Phí & Hoàn phí |
|---|---|
![]() |
![]() |
Chủ đề thương hiệu xanh lam đậm · Phông chữ Space Grotesk / IBM Plex · Tích hợp sẵn 12 ngôn ngữ, giao diện đổi theo ngôn ngữ.
Giao dịch lưới chia một khoảng giá thành nhiều "đường lưới": giá giảm mỗi nấc thì mua, giá tăng mỗi nấc thì bán — mua thấp bán cao lặp đi lặp lại trong thị trường đi ngang, biến chính sự dao động thành lợi nhuận. Nó không dự đoán tăng giảm, chỉ kiếm chênh lệch từ các dao động qua lại trong khoảng giá, vì vậy đặc biệt phù hợp với thị trường không có xu hướng rõ ràng, lên xuống dập dềnh.
So với "mua và giữ": mua và giữ chỉ có lãi khi cuối cùng giá tăng; còn lưới tích lũy liên tục từng khoản lợi nhuận nhỏ trong giai đoạn đi ngang. Cái giá phải trả là cần quản lý lệnh liên tục và kiểm soát rủi ro — đây chính là phần mà GridPilot tự động hóa thay bạn.
⚠️ Giao dịch lưới không phải lúc nào cũng có lãi: khi giá giảm một chiều vẫn sẽ lỗ tạm tính, và đòn bẩy sẽ khuếch đại rủi ro. Hãy hiểu rõ chiến lược trước khi xuống tiền.
Giá vẫn đang rơi, sao lưới của bạn lại vội chất đầy vị thế ngay trên đỉnh? Lưới gốc cứ giá bước vào khoảng là mở vị thế ngay. GridPilot vào lệnh theo dõi (trailing entry): bám đáy trước, chờ hồi phục 0.2% xác nhận đã vững mới vào lệnh — không hứng dao rơi, không đứng đỉnh. (Chỉ theo dõi khi giá bước vào cửa sổ kích hoạt theo hướng thua lỗ; nếu giá từ sâu hơn quay trở lại khoảng theo hướng chốt lời thì bỏ qua theo dõi và chạy trực tiếp.)
Thị trường đổi từng giây, sao lệnh của bạn treo lên rồi nằm im? GridPilot ra quyết định lại mỗi lần giá cập nhật: cần hủy thì hủy, cần sửa thì sửa, có những thời điểm trên sổ lệnh chẳng có lệnh nào; giá thuận lợi thì bám sổ lệnh chốt giá tối ưu, giá bất lợi thà ngắt mạch từ chối lệnh, treo được Maker (0.02%) thì tuyệt đối không nộp phí Taker (0.05%) oan uổng. Việc bám giá này không có rủi ro giảm giá: nếu giá tiếp tục rơi qua giá lưới, hệ thống bám theo và mua được giá rẻ hơn nữa; nếu giá hồi lại mà chưa phá vỡ đường trên, lệnh vẫn có thể khớp ở giá gốc — theo mô hình phá sản của con bạc (gambler's ruin) chuẩn, xác suất thực sự lỡ khớp lệnh là rất nhỏ — lợi nhuận thêm là nhặt được, không nhặt được cũng chẳng lỗ.
Giá nhảy một phát 5–10 USDT, lưới của bạn ngoài đứng nhìn ra còn làm được gì? Lệnh tĩnh chỉ ăn được cái giá chết trên đường lưới. GridPilot chủ động ăn lệnh khi giá lệch khỏi giá lý thuyết của lưới vượt ngưỡng (mặc định 0.1% ≈ 2× phí Taker, có thể điều chỉnh), khóa luôn phần chênh lệch vượt bước lưới vào túi — đo thực tế cho thấy sàn nào sổ lệnh càng "xù xì" thì lợi nhuận vượt mức càng cao.
Chỉ mới thủng nhẹ thoáng qua, sao phải xả toàn bộ vị thế bằng một lệnh thị trường? Xả một nhát vừa tốn phí Taker, vừa đánh mất cú hồi. GridPilot giảm vị thế từng nấc bằng lệnh giới hạn trong vùng đệm cắt lỗ; giá hồi lại, phần vị thế còn lại tiếp tục kiếm tiền ngay. Chỉ khi thủng đường thanh lý, lệnh điều kiện chốt chặn cuối cùng mới tiếp quản một lần.
Giá chạy ra khỏi khoảng từ lâu, sao lưới của bạn vẫn quay không tại chỗ? GridPilot cấu hình sẵn nhiều khoảng giá không chồng lấn, giá bước vào khoảng nào thì kích hoạt khoảng đó; sau khi cắt lỗ sẽ vào "thời gian nguội" (cooldown), đợi xuất hiện lại tín hiệu vững giá mới bắt đầu vào lệnh theo dõi lần nữa.
| Khía cạnh | Lưới gốc của sàn | GridPilot |
|---|---|---|
| Cách ra quyết định | Đặt lệnh tĩnh hàng loạt, treo xong không nhúc nhích | Tự động theo bảng giá: mỗi lần giá cập nhật đều đánh giá lại rồi mới đặt/sửa/hủy lệnh động, không phải lúc nào cũng có lệnh treo |
| Chất lượng khớp lệnh | Lệnh tĩnh chỉ ăn được giá trên đường lưới, chênh lệch vượt mức khi giá nhảy vọt trôi qua trước mắt | Bám sổ lệnh chốt giá tối ưu, giá khớp không tệ hơn giá lý thuyết; giá lệch khỏi giá lý thuyết vượt ngưỡng (mặc định ≈2× phí) thì chủ động ăn lệnh khóa lợi nhuận vượt mức; giá bất lợi ngắt mạch từ chối lệnh |
| Thời điểm vào lệnh | Vào khoảng giá là mở vị thế ngay | Vào lệnh theo dõi: khi giá bước vào theo hướng thua lỗ thì bám đáy, chỉ mở vị thế sau khi xác nhận hồi phục (mặc định 0.2%) |
| Cắt lỗ | Xả toàn bộ bằng lệnh thị trường một lần tại một mức giá duy nhất | Vùng đệm cắt lỗ giảm vị thế từng nấc bằng lệnh giới hạn, giá hồi thì phần vị thế còn lại hưởng lợi trực tiếp; đường thanh lý giữ một lệnh điều kiện chốt chặn |
| Thích ứng thị trường | Một khoảng giá cố định | Nhiều khoảng giá không chồng lấn, giá vào khoảng nào kích hoạt khoảng đó, các khoảng còn lại ngủ đông |
Giải thích đầy đủ từng đổi mới so với lưới của sàn xem tại
docs/INNOVATIONS.en.md; nguyên lý chiến lược đầy đủ xem tạidocs/STRATEGY_SPEC.md.
- Tự lành không phụ thuộc trạng thái: vị thế mục tiêu = f(giá hiện tại), sau sập / mất mạng / tự tay đổi vị thế, khởi động lại tự động chỉnh về đúng
- Đẩy dữ liệu WebSocket thời gian thực: sự kiện Ticker / khớp lệnh / máy trạng thái đồng bộ thời gian thực lên frontend
- Hỗ trợ đa sàn: giao diện adapter thống nhất, tương thích Binance, Gate.io, OKX
- AI gợi ý cấu hình khung giá: đề xuất khoảng giá và tham số ngoại tuyến, không can thiệp quyết định giao dịch thời gian thực
- Giao diện đa ngôn ngữ: tích hợp sẵn 12 ngôn ngữ
Phí giao dịch do sàn thu, GridPilot không lấy một xu nào. Cùng một giao dịch, lệnh treo (Maker) ≈0.02%, lệnh ăn (Taker) ≈0.05%. Các lệnh lưới thường ngày của cả hai bên thực ra đều đi theo Maker, không có chênh lệch phí ở khớp lệnh lưới thường ngày; lợi thế phí của GridPilot nằm ở ba thời điểm then chốt — ① vào lệnh: chờ hồi phục xác nhận rồi mới treo lệnh vào, thay vì mở lệnh thị trường ngay khi vừa vào khoảng; ② cắt lỗ: giảm vị thế từng nấc bằng lệnh giới hạn, thay vì xả toàn bộ bằng một lệnh thị trường; ③ ăn lệnh: chỉ cho phép đi Taker khi chênh lệch vượt mức thực sự lớn hơn phí.
Hơn nữa: khi đăng ký sàn điền một mã hoàn phí, bạn có thể được hoàn lại lâu dài khoảng 20% (Gate 40%) phí đã trả, tự động vào tài khoản — coi như được giảm giá thêm cho mỗi giao dịch.
⚠️ Mỗi sàn chỉ đăng ký được một lần, hoàn phí chỉ có thể gắn vào lúc đăng ký, tài khoản cũ không thể bổ sung — đây là cơ hội duy nhất.
Nhà tài trợ rebateto.me tổng hợp và duy trì các cổng đăng ký hoàn phí của từng sàn. Khi đăng ký vui lòng dùng mã mời:
| Sàn giao dịch | Mã mời | Tỷ lệ hoàn phí |
|---|---|---|
| Binance | fanwo20 |
20% |
| OKX | fangeiwo |
20% |
| Gate.io | fangeiwo |
40% |
Khi đăng ký bằng App nhớ điền thủ công mã mời — bỏ sót là không nhận được hoàn phí. Mỗi căn cước chỉ mở được một tài khoản trên mỗi sàn.
Yêu cầu trước: Node.js ≥ 20, pnpm ≥ 9, Docker
git clone https://github.com/QuantiaAI/grid-pilot.git && cd grid-pilot
cp .env.example .env
# Tạo khóa mã hóa và điền vào ENCRYPTION_KEY trong .env
openssl rand -base64 32
# Khởi chạy PostgreSQL + Redis + API + Web bằng một lệnh (tự động chạy migration)
docker compose --profile full up --build -dSau khi khởi động, truy cập http://localhost:3300 .
Khi không kèm
--profile full,docker compose upchỉ khởi động hạ tầng PostgreSQL + Redis để phục vụ phát triển cục bộ.
git clone https://github.com/QuantiaAI/grid-pilot.git && cd grid-pilot
pnpm install
cp .env.example .env # điều chỉnh cổng nếu cần; đặt ENCRYPTION_KEY bằng kết quả của openssl rand -base64 32
pnpm --filter @gridpilot/api exec prisma generate # tạo Prisma Client (postinstall đã bị tắt — bước này bắt buộc)
pnpm dev:infra # khởi động PostgreSQL + Redis
pnpm exec dotenv -e .env -- pnpm --filter @gridpilot/api exec prisma migrate deploy # chỉ lần cài đầu tiên: áp dụng các migration của cơ sở dữ liệu
pnpm dev:skip-infra # khởi động API + WebCác bước
prisma generate/migrate deploychỉ cần chạy một lần ở lần cài đặt đầu tiên; sau đó chỉ cầnpnpm devđể khởi động mọi thứ.
| Dịch vụ | Địa chỉ | Tùy chọn cấu hình |
|---|---|---|
| Frontend | http://localhost:3300 | WEB_PORT / WEB_HOST |
| API backend | http://localhost:3301 | API_PORT / API_HOST |
| PostgreSQL | localhost:25432 | DB_PORT |
| Redis | localhost:26379 | REDIS_PORT |
Khởi động riêng lẻ:
pnpm dev:infra # chỉ PostgreSQL + Redis
pnpm dev:api # chỉ backend
pnpm dev:web # chỉ frontend
pnpm dev:skip-infra # API + Web, bỏ qua docker- Kết nối sàn giao dịch: điền API Key/Secret trong phần cài đặt. Chỉ cấp quyền giao dịch hợp đồng, tuyệt đối không bật quyền rút tiền.
- Cấu hình lưới: chọn cặp giao dịch và hướng (long/short), thiết lập mỏ neo giá chốt lời, số ô/bước lưới chính, số lượng mỗi ô, đòn bẩy, đệm cắt lỗ, tham số vào lệnh theo dõi (biên của hộp được suy ra tự động từ mỏ neo giá chốt lời + số ô và bước lưới).
- Khởi động robot: vào vào lệnh theo dõi → chạy, frontend hiển thị thời gian thực giá, lệnh treo, khớp lệnh và máy trạng thái.
- Giám sát và thu dọn: khi giá chạm đầu chốt lời, lưới chốt từng nấc và thu dọn tự nhiên, sau khi vị thế về không thì thoát chốt lời; rơi vào vùng đệm cắt lỗ thì giảm vị thế từng nấc một cách động.
Tham số then chốt:
| Tham số | Diễn giải |
|---|---|
takeProfitPrice |
Giá chốt lời (biên chốt lời của hộp) |
direction |
Hướng: LONG (mua lên) / SHORT (bán xuống) |
mainGridCount / mainGridStep |
Số ô lưới chính / bước mỗi ô (USDT) |
mainGridPortionSize |
Số lượng đặt lệnh mỗi ô |
leverage |
Hệ số đòn bẩy |
stopLossGridCount / stopLossGridStep |
Số ô vùng đệm cắt lỗ / bước lưới |
isolationStep |
Độ rộng dải cách ly (mặc định = bước lưới vùng cắt lỗ) |
activationPrice / trailingCallbackRate |
Giá kích hoạt khoảng (mặc định điểm giữa lưới chính) / biên độ hồi của vào lệnh theo dõi |
excessProfitMultiplier |
Hệ số kích hoạt vùng GTC (ngưỡng lợi nhuận vượt mức) |
Tham số đầy đủ xem tại docs/STRATEGY_SPEC.md.
- Miễn trừ rủi ro: giao dịch hợp đồng có đòn bẩy cao, rủi ro cao, có thể dẫn đến mất toàn bộ vốn gốc. Dự án này là công cụ giao dịch mã nguồn mở, không cấu thành bất kỳ lời khuyên đầu tư nào, không chịu trách nhiệm về lãi lỗ. Hãy kiểm chứng đầy đủ với số vốn nhỏ hoặc testnet của sàn trước.
- Quyền API: chỉ bật quyền giao dịch hợp đồng, đừng bật quyền rút tiền.
- Ràng buộc một runner: cùng một cặp giao dịch trên cùng một tài khoản sàn, tại cùng một thời điểm chỉ có thể chạy một robot.
- Thời điểm hoàn phí: mã mời chỉ có thể gắn vào lúc đăng ký, tài khoản cũ không thể bổ sung.
- An toàn khóa bí mật:
ENCRYPTION_KEYdùng để mã hóa thông tin xác thực của sàn, nhất định phải dùng khóa mạnh sinh ngẫu nhiên và bảo quản cẩn thận. - Xung đột cổng: nếu cổng 3300/3301 cục bộ bị
pnpm devchiếm dụng sẽ xung đột với container Docker toàn stack, hãy dừng tiến trình cục bộ trước rồi mới khởi động container, hoặc sửa cấu hình cổng trong.env.
| Tầng | Công nghệ |
|---|---|
| Frontend | Next.js 16 · React 19 · Tailwind CSS v4 · Zustand · React Query · Recharts |
| Backend | NestJS 10 · Prisma 5 · BullMQ · Socket.IO |
| Hạ tầng | PostgreSQL 16 · Redis 7 · Docker Compose |
| Dùng chung | TypeScript · pnpm Workspaces · Turborepo |
apps/web/ # Next.js frontend (giao diện tối, 12 ngôn ngữ)
apps/api/ # NestJS backend
packages/shared-types/ # kiểu dùng chung giữa frontend và backend
docs/ # STRATEGY_SPEC.md (đặc tả chiến lược) · ARCHITECTURE.md (ánh xạ thành phần)
docker-compose.yml # hạ tầng mặc định; --profile full cho toàn stack
Máy trạng thái chiến lược: TRAILING_ENTRY → RUNNING → LIQUIDATING → LIQUIDATED, RUNNING có thể rẽ nhánh sang TAKE_PROFIT; nhánh vận hành gồm PAUSED (có thể USER_RESUME để khôi phục), CANCELLED, HOLD.
Lệnh phát triển:
pnpm dev # khởi động tất cả dịch vụ bằng một lệnh
pnpm build # build
pnpm test # kiểm thử
pnpm lint # LintCơ sở dữ liệu (phát triển cục bộ):
cd apps/api
pnpm prisma migrate dev # chạy migration
pnpm prisma studio # xem dữ liệu| Tài liệu | Diễn giải |
|---|---|
docs/INNOVATIONS.en.md |
Giải thích đầy đủ các đổi mới cốt lõi (so sánh từng điểm với lưới gốc của sàn) |
docs/STRATEGY_SPEC.md |
Tài liệu đặc tả chiến lược đầy đủ (tham chiếu chuẩn) |
docs/ARCHITECTURE.md |
Chỉ mục ánh xạ từ thành phần mã nguồn tới chương đặc tả |
docs/fees-and-funding.md |
Giải thích phí giao dịch và phí vốn (funding) |

