| Snapshot tài khoản về Backend API trong IB Bot Auto Trading

Được viết bởi thanhdt vào ngày 23/07/2026 lúc 14:32 | 7 lượt xem

Trong khóa Xây dựng hệ thống IB bằng Bot Auto Trading, khi vận hành nhiều tài khoản MT5 trên nhiều máy (VPS, Dual, Dell…), câu hỏi không còn là “TK này lãi bao nhiêu?”, mà là:

Cùng một lúc, toàn bộ đội tài khoản đang thế nào — Equity, Floating, Bias, Profit hôm nay — và có TK nào đang lệch nguy hiểm không?

Trả lời bằng soft-login lần lượt vừa chậm, vừa dễ đụng quyền, vừa không realtime. Đó là lý do IB Bot Auto Trading dùng mô hình EA Snapshot → Backend API → SQLite / Dashboard — lớp telemetry trong kiến trúc Client–Server.

1. Vấn đề của cách làm cũ: soft-login từng TK

Trước đây, báo cáo ngày / kiểm tra Bias thường dựa trên mở terminal (hoặc soft-login) từng tài khoản, đọc AccountInfo + history deals, rồi tổng hợp.

Khi số TK tăng (vài chục tài khoản):

Hạn chế Hệ quả thực tế
Chậm Mỗi lần đổi server / restart terminal mất nhiều giây; quét ~39 TK có thể kéo dài hàng chục phút
Không realtime Báo cáo là “ảnh chụp lúc chạy script”, không thấy Bias nhảy từng 10 giây
Phụ thuộc máy đang mở TK trên máy khác / VPS khác không nằm trong phiên soft-login hiện tại
Rủi ro vận hành Soft-login sai server, Authorization failed, đụng bot đang trade
Khó lịch sử So Equity sáng vs 10h, Bias qua đêm… phải tự lưu tay hoặc chạy lại

Soft-login vẫn hữu ích cho trade tay từ dashboard (Buy/Sell/Close All) hoặc phân tích sâu một TK. Nhưng không phù hợp làm nguồn quan sát liên tục cho cả đội trong IB Bot Auto Trading.

2. Ý tưởng Snapshot: mỗi terminal tự gửi “ảnh trạng thái”

Mỗi tài khoản đang login trên MT5 gắn một EA nhẹ (EA_Snapshot):

  1. Định kỳ (ví dụ mỗi 10 giây) đọc Balance, Equity, Floating, Bias, số lệnh mở, Profit HN, Nạp/Rút…
  2. WebRequest POST JSON tới Backend API trên máy trung tâm (LAN)
  3. API ghi vào SQLite (snapshots.db)
  4. Dashboard / script báo cáo đọc DB — không cần login lại MT5
[MT5 TK A] ──POST /mt5/snapshot──┐
[MT5 TK B] ──POST /mt5/snapshot──┼──► Backend API ──► SQLite ──► Dashboard / Báo cáo
[MT5 TK C] ──POST /mt5/snapshot──┘

Terminal đẩy dữ liệu ra; backend gom và phục vụ. Đó là đảo chiều so với soft-login (kéo dữ liệu vào).

3. Vì sao phải có Backend API (không chỉ ghi file local)?

3.1. Một nguồn sự thật cho nhiều máy

TK nằm trên nhiều VPS / máy. Nếu mỗi máy tự ghi file local: không nhìn cả đội cùng lúc, đồng hồ lệch, file dễ mất khi đổi VPS.

API + SQLite trên một máy collector = một DB, một dashboard, một chỗ export.

3.2. Realtime giám sát rủi ro (Bias, Floating, Equity)

Rule Bias 22.07, FullHed, margin… chỉ hữu ích nếu thấy sớm. Snapshot 5–10 giây/lần cho phép:

  • Nhấp Bias > ngưỡng trên dashboard
  • So Equity / Floating cả đội realtime
  • Biết TK “câm” (không còn snapshot mới) — EA tắt, mạng đứt, WebRequest chưa whitelist

3.3. Báo cáo ngày không đụng bot đang chạy

Script báo cáo đọc snapshot mới nhất mỗi login → Balance, Equity, Floating, Bias, Profit HN, Nạp−Rút… không soft-login.

  • Bot trên chart không bị restart / đổi account vì báo cáo
  • Chạy được lúc thị trường biến động mạnh
  • Có lịch sử DB để đối chiếu sáng vs 10h

3.4. Tách quyền: quan sát vs giao dịch

  • Snapshot API: chỉ nhận số liệu
  • Trade API (Buy/Sell/Close): riêng, chỉ khi cần can thiệp

Người xem dashboard LAN không nhất thiết được đặt lệnh — đúng tinh thần Client–Server trong IB Bot Auto Trading.

3.5. Nền tảng mở rộng

Khi đã có POST snapshot chuẩn: export Excel, alert Telegram khi Bias/Floating vượt ngưỡng, nhiều đội TK cùng schema — không phải invent lại cách lấy số từ MT5 mỗi lần.

4. Snapshot gửi những gì — đủ để làm gì?

Trường Mục đích vận hành
Login / Server / Tên Định danh TK trên dashboard
Balance / Equity Sức khỏe vốn & margin
Floating / Floating HN Rủi ro đang mở
Open count Độ dày lưới
Bias Lệch Buy−Sell — đối chiếu rule 22.07
Profit HN (realized) Kết quả chốt trong ngày
Nạp / Rút Khớp dòng tiền, tránh nhầm “lãi” với nạp
Timestamp nhận Tuổi snapshot (quá cũ = đỏ / offline)

Đủ cho: dashboard đa TK, báo cáo ngày, đối chiếu Bias/Floating theo thời gian.

Không thay bằng snapshot: phân tích deal-by-deal, magic từng chân, audit lệnh tay — lúc đó mới soft-login hoặc đọc History trên terminal.

5. Điều kiện để Snapshot đúng và tin được

  1. Allow WebRequest đúng URL gốc collector (ví dụ http://IP:8000) — không gắn path /mt5/snapshot trong whitelist
  2. Không dùng localhost từ EA (MT5 chặn)
  3. Firewall mở port API trên máy collector
  4. History MT5 đủ sâu nếu cần Nạp/Rút / Profit HN khớp
  5. EA chạy trên đúng account đang login
  6. Collector một instance trên port (tránh lỗi bind)

Thiếu một mắt xích → dashboard thiếu TK hoặc số lệch — gốc thường ở terminal, không phải “API sai”.

6. Kết luận

Snapshot về Backend API đổi mô hình vận hành IB Bot Auto Trading:

  • Từ kéo dữ liệu từng TK bằng soft-login
  • Sang mỗi terminal tự đẩy trạng thái về một trung tâm

Nhờ đó có: một dashboard realtime cả đội · báo cáo không gián đoạn bot · lịch sử SQLite soi Bias–Floating · nền alert / tích hợp sau.

Soft-login vẫn giữ cho trade và phân tích sâu. Quan sát liên tục đa tài khoản — đi qua Snapshot → Backend API.

Đọc trước (lớp kiến trúc): Mô hình Client–Server trong IB Bot Auto Trading.

Đăng ký / xem lộ trình

Khóa: Xây dựng IB bằng Bot Auto Trading

Hotline 0934 145 100 · Zalo 039 791 9841

Hướng Nghiệp Dữ Liệu · Nội dung kiến trúc / vận hành — không cam kết lợi nhuận.

Khóa Xây dựng IB bằng Bot Auto Trading: Xem lộ trình / đăng ký · Hotline 0934 145 100 · Zalo 039 791 9841
Nội dung kiến trúc vận hành — không cam kết lợi nhuận.

admin

admin

Biên tập viên, Hướng Nghiệp Dữ Liệu
781 Bài viết
15.4k Người theo dõi
120k+ Lượt đọc

Biên tập viên nội dung tại Hướng Nghiệp Dữ Liệu, phụ trách tổng hợp và biên soạn các bài viết về lập trình Python, dữ liệu và công nghệ.