🔥 🎁 QUÀ TẶNG khi đăng ký: Phần mềm DNT Digital SaaS FindMe VPS Guardian 12 tháng (~240 USD) và 24 tháng (~480 USD)
TradingView Webhook là gì? Cách nối tín hiệu với bot giao dịch tự động
ĐTĐược viết bởi Đặng Trí Thanhvào ngày 06/10/2026 lúc 08:00|… lượt xem
TradingView06/10/2026 · 17 phút đọc

TradingView Webhook là gì? Cách nối tín hiệu với bot giao dịch tự động

Bạn đã dựng được chiến lược trên TradingView, đã thấy tín hiệu báo Buy/Sell khá chuẩn — nhưng vẫn phải ngồi trước màn hình để bấm lệnh. Bạn tự hỏi liệu có cách nào để tín hiệu trên chart tự chuyển thành lệnh trên sàn mà không cần ngồi canh?

Câu trả lời nằm ở một tính năng nhỏ nhưng cực kỳ mạnh: Webhook. Bài viết này giải thích TradingView Webhook là gì, nó hoạt động chính xác ra sao từ lúc nến đóng đến lúc lệnh khớp ở sàn, code mẫu để bạn tự dựng, cách bảo mật để không bị người khác gửi lệnh vào tài khoản bạn, và những lỗi người mới hay gặp nhất.

Muốn đi nhanh? Có một luồng duy nhất cần nắm: TradingView → Webhook → Bot → API sàn. Hiểu được luồng này, bạn tự dựng được bot cho MT5, Binance, Bybit và cả chứng khoán Việt Nam.

Trả lời nhanh

TradingView Webhook là một địa chỉ URL mà TradingView sẽ tự động gọi tới (bằng HTTP POST) mỗi khi một Alert trên chart được kích hoạt. Nội dung gửi đi là đoạn text bạn tự đặt trong alert — thường là JSON chứa cặp giao dịch, hướng lệnh, giá vào, stop loss, take profit.

Webhook không tự vào lệnh. Nó chỉ báo cho hệ thống của bạn biết "vừa có tín hiệu". Phía nhận (bot) phải là một chương trình luôn chạy, đọc nội dung đó, kiểm tra hợp lệ rồi gọi API của sàn để đặt lệnh. Chuỗi hoàn chỉnh gồm 4 mắt: TradingView → Webhook → Bot → API sàn.

Toàn bộ hành trình thường chỉ mất 1–5 giây sau khi nến đóng, tuỳ độ trễ mạng và tốc độ API của sàn. Nếu muốn học trọn chuỗi này trong 6 buổi, xem Bootcamp TradingView Webhook Bot.


Webhook là gì? Nói ngắn gọn trong 30 giây

Webhook là cơ chế "gọi ngược": thay vì chương trình của bạn liên tục hỏi "có gì mới không?" (polling), hệ thống sẽ tự động gọi cho bạn khi có sự kiện xảy ra.

So sánh hai cách:

CáchCách hoạt độngNhược điểm
Polling (bot tự hỏi)Cứ 1 giây bot gọi TradingView/API hỏi "có tín hiệu chưa?"Tốn request, trễ tới 1 giây, TradingView không có API kiểu này
Webhook (được báo)Khi Alert nổ, TradingView gọi thẳng vào URL của botCần một URL công khai luôn sống

Vì TradingView không cho bạn "hỏi" tín hiệu của nó theo cách thông thường, webhook là con đường chính thống duy nhất để tín hiệu từ chart đi ra thế giới bên ngoài theo thời gian thực.

Ba đặc điểm cần nhớ:

  1. Một chiều: TradingView gửi đi, không quan tâm bot xử lý được hay không.
  2. Không retry: nếu bot của bạn chết hoặc mạng lỗi đúng lúc đó, tín hiệu mất luôn, không gửi lại.
  3. Nội dung do bạn viết: TradingView không sinh JSON thay bạn. Bạn tự đặt nội dung alert, thường là JSON, bot của bạn tự parse.

Kiến trúc đầy đủ: tín hiệu đi qua những đâu?

Sơ đồ tối thiểu của một hệ thống auto trading từ TradingView:

[Nến đóng trên TradingView]
        ↓  (Alert kích hoạt)
[TradingView gửi HTTP POST + JSON tới Webhook URL]
        ↓
[Bot của bạn: Flask / FastAPI / Node / .NET — luôn chạy 24/7]
        ↓  (kiểm tra → tính khối lượng → gọi API)
[API sàn: MT5 / Binance / Bybit / SSI / DNSE]
        ↓
[Lệnh khớp → ghi log → gửi thông báo Telegram/Zalo]

Đi qua từng mắt:

1. TradingView — nơi phát tín hiệu. Bạn viết chỉ báo Pine Script, tạo Alert với điều kiện, và bật tuỳ chọn gửi tới webhook.

2. Webhook URL — địa chỉ công khai của bot, ví dụ https://bot.tenmiencuaban.com/tv-signal. Phải là HTTPS, phải truy cập được từ internet.

3. Bot — trái tim của hệ thống. Làm 4 việc: nhận dữ liệu → xác thực → quyết định → gọi API sàn. Bot cần chạy trên VPS để không phụ thuộc việc bạn có bật máy hay không.

4. API sàn — nơi lệnh thực sự được khớp. Mỗi sàn một kiểu: MT5 dùng thư viện Python MetaTrader5, Binance/Bybit dùng REST API với API key, chứng khoán Việt Nam dùng API của công ty chứng khoán (SSI/DNSE).

5. Lớp quan sát — log + cảnh báo. Bạn phải biết bot còn sống không và nó vừa làm gì.


Nội dung alert: JSON bạn tự thiết kế

Đây là ví dụ nội dung alert thực tế dùng cho bot vào lệnh:

{
  "symbol": "{{ticker}}",
  "action": "buy",
  "price": {{close}},
  "sl": {{plot_0}},
  "tp": {{plot_1}},
  "strategy": "hull-ma-rsi",
  "tf": "{{interval}}",
  "time": "{{time}}"
}

Các placeholder {{...}} là biến của TradingView, sẽ được thay bằng giá trị thật khi alert nổ. Một số biến hay dùng:

BiếnÝ nghĩa
{{ticker}}Mã giao dịch, ví dụ BTCUSDT, XAUUSD
{{close}}, {{open}}Giá đóng/mở của nến vừa đóng
{{interval}}Khung thời gian (1, 5, 15, 60, 1D...)
{{strategy.order.action}}Hướng lệnh trong Strategy Tester: buy/sell
{{plot_0}}, {{plot_1}}Giá trị của plot trong chỉ báo của bạn
{{time}}Thời điểm alert kích hoạt
{{strategy.position_size}}Khối lượng vị thế hiện tại (khi dùng strategy)

Ba lưu ý thực chiến về nội dung alert:

  • Luôn gửi kèm `action` — đừng để bot phải suy đoán từ giá so với chỉ báo, vì giá đã chạy tiếp sau khi alert phát.
  • Gửi cả `sl` và `tp` để bot đặt lệnh bảo vệ ngay khi vào lệnh, không phụ thuộc bước tính toán thứ hai.
  • Giữ payload gọn — TradingView giới hạn độ dài nội dung alert. Nhét cả bảng chỉ báo vào sẽ bị cắt và JSON hỏng.

Ba cách triển khai webhook theo mức độ chuyên nghiệp

Mức 1 — Webhook đi thẳng tới sàn có hỗ trợ webhook (dùng thử trong 1 buổi).

Một số nền tảng (sàn/trung gian) cho phép bạn dán nội dung alert theo định dạng cố định và nó tự vào lệnh. Ưu: không cần code. Nhược: rất ít logic, không quản lý rủi ro, không kiểm soát được khi có sự cố, và bạn bị khoá vào định dạng của họ.

Mức 2 — Webhook → Bot tự viết (chuẩn của 90% học viên).

Bạn dựng một endpoint nhỏ (Flask/FastAPI/Node) nhận POST, parse JSON, gọi API sàn. Ưu: kiểm soát hoàn toàn, thêm được log, giới hạn rủi ro, chống trùng tín hiệu. Nhược: phải tự vận hành (VPS, giám sát).

Mức 3 — Webhook → Hàng đợi → Worker (khi chạy nhiều sàn, nhiều tài khoản).

Endpoint chỉ có nhiệm vụ nhận và đẩy vào queue; worker xử lý tuần tự, có retry, có dead-letter. Ưu: chịu lỗi tốt, xử lý nhiều tài khoản. Nhược: phức tạp hơn, chỉ cần khi bạn đã chạy tiền thật đều đặn.

Tiêu chíMức 1Mức 2Mức 3
Cần biết codeKhôngCơ bản (dùng code mẫu)Trung bình
Kiểm soát rủi roHạn chếTốtTốt nhất
Chống trùng tín hiệuKhôngCóCó + retry
Nhiều sàn/tài khoảnKhóĐượcTốt
Thời gian dựngVài giờ1–2 ngày1–2 tuần

Khuyến nghị: đi Mức 2 trước. Khi nào bot của bạn có tiền thật đáng kể và chạy nhiều tài khoản, mới nâng lên Mức 3.


Code mẫu: endpoint nhận webhook bằng Python + Flask

Đây là bản tối giản nhưng đã đủ an toàn để chạy demo:

import hashlib, hmac, json, logging
from flask import Flask, request, abort

app = Flask(__name__)
SECRET = "khoa-bi-mat-dai-ngau-nhien"     # phải khớp với phần ?token= trên webhook URL
seen = set()                               # chống trùng tín hiệu trong phiên

def verify(raw: bytes, sig: str) -> bool:
    mac = hmac.new(SECRET.encode(), raw, hashlib.sha256).hexdigest()
    return hmac.compare_digest(mac, sig or "")

@app.post("/tv-signal")
def tv_signal():
    raw = request.get_data()
    if not verify(raw, request.headers.get("X-Signature", "")):
        abort(401)

    data = json.loads(raw)
    key = (data["symbol"], data["action"], data["time"])
    if key in seen:                        # TradingView có thể gửi lặp
        return "", 200
    seen.add(key)

    if data["action"] == "buy":
        # place_order(...)  -> gọi API sàn ở đây
        logging.info("BUY %s @ %s", data["symbol"], data["price"])

    return "", 200

Những điểm quan trọng trong đoạn code trên — và cũng là những chỗ người mới hay bỏ qua:

  • Xác thực chữ ký (HMAC): đừng bao giờ để webhook mở công khai. Nếu chỉ dùng ?token= trong URL, token có thể lọt qua log của proxy. Chữ ký HMAC trên body là cách chắc chắn hơn.
  • Chống trùng tín hiệu: TradingView có thể gửi lại khi bạn sửa alert hoặc khi alert phát nhiều lần trong cùng một nến. Khoá theo (symbol, action, time) là cách rẻ nhất.
  • Trả về 200 nhanh: sàn/TradingView không chờ bạn xử lý xong. Nếu tác vụ nặng (gọi API sàn, ghi DB), hãy đẩy vào queue rồi trả 200 ngay.
  • Không `print` thay vì log: khi bot chạy trên VPS bạn cần log có timestamp để tra lại lúc lệnh không khớp.

Bảo mật webhook: 5 lớp phòng thủ

LớpViệc cần làmVì sao
1Bắt buộc HTTPS, không dùng HTTPNội dung alert đi qua internet, HTTP là văn bản trần
2Xác thực bằng HMAC hoặc token dài ngẫu nhiênNgười khác biết URL có thể bắn lệnh giả vào tài khoản bạn
3Whitelist IP của TradingView nếu hạ tầng cho phépGiảm bề mặt tấn công
4Rate limit (ví dụ 10 request/giây)Chặn flood làm treo bot
5Tách quyền API key: chỉ bật quyền giao dịch, cấm rút tiềnKể cả khi bị lộ key, thiệt hại vẫn có trần

Điểm 5 quan trọng nhất và cũng hay bị xem nhẹ: API key dùng cho bot phải là key chỉ có quyền giao dịch. Trên Binance/Bybit, hãy bật phần quyền tối thiểu, khoá IP nếu có tuỳ chọn, và tất nhiên là không bao giờ dùng key có quyền rút tiền.

Với MT5 và chứng khoán Việt Nam, API key thường gắn với tài khoản và phiên đăng nhập. Ở đây biện pháp tương đương là: tạo tài khoản riêng cho bot, không chia sẻ mật khẩu, bật 2FA cho phần đăng nhập thủ công, và giữ file cấu hình ngoài mã nguồn.


Từ webhook tới lệnh thật: 3 khác biệt giữa demo và tiền thật

1. Trượt giá (slippage). Tín hiệu phát ở giá X nhưng lệnh khớp ở giá X + 0,3%. Với khung thời gian càng nhỏ (1m, 5m), sai số này càng lớn so với biên lợi nhuận. Cách xử lý: dùng lệnh market với khối lượng đủ nhỏ, hoặc giới hạn "chỉ vào lệnh nếu giá chưa chạy quá N pips kể từ giá tín hiệu".

2. Độ trễ hệ thống. Ba chặng đều cộng dồn độ trễ: TradingView xử lý alert (thường < 1 giây), bot nhận và gọi API (0,1–2 giây, phụ thuộc VPS), sàn khớp lệnh. Nếu VPS của bạn đặt ở Việt Nam còn sàn ở châu Âu, riêng khứ hồi mạng đã 200–300ms. Bot hedging/grid không quá nhạy với độ trễ, nhưng bot scalp thì có.

3. Tín hiệu trùng hoặc lệnh mồ côi. Khi bot chết giữa chừng, bạn có thể có lệnh vào nhưng không có lệnh đóng, hoặc ngược lại. Vì vậy phải có đối soát định kỳ: cứ mỗi vài phút, bot so vị thế đang mở ở sàn với sổ log của mình và xử lý chênh lệch.

Ba điểm này chính là lý do tồn tại của các buổi thực chiến: bạn chỉ thực sự biết bot của mình đúng hay sai sau khi nó chạy trên tài khoản thật với khối lượng nhỏ.


Khi nào TradingView Webhook KHÔNG phù hợp?

Trung thực mà nói, webhook không phải công cụ vạn năng. Nó không phù hợp khi:

  • Chiến lược cần dữ liệu sâu hơn khung nến — ví dụ cần orderbook, dữ liệu tick từng lệnh, funding rate. Alert chỉ mang theo ngữ cảnh bạn đưa vào JSON.
  • Bạn cần vào lệnh đồng thời ở nhiều sàn với khối lượng khớp chính xác — webhook là kênh bất đồng bộ, không bảo đảm thời điểm.
  • Chiến lược HFT/scalping giây — độ trễ của một vòng webhook quá lớn so với mục tiêu.
  • Bạn không muốn vận hành server — webhook cần một URL luôn sống. Nếu bạn không sẵn sàng quản lý VPS, quy trình này sẽ đổ vỡ ở lần bot chết đầu tiên.

Với các chiến lược theo nến (5m trở lên), quản lý lệnh theo cấu trúc, hedging/grid trên MT5, hay auto trading chứng khoán theo ngày — webhook là lựa chọn rất hợp lý vì tín hiệu thường chỉ phát một lần mỗi nến.


Lộ trình tự học trong 7 ngày

Ngày 1–2 — Hiểu luồng. Tạo tài khoản TradingView, viết một chỉ báo đơn giản, tạo Alert gửi tới một endpoint test (webhook.site) và đọc đúng nội dung JSON mình đặt.

Ngày 3 — Dựng endpoint. Cài Python + Flask trên máy, chạy endpoint local, dùng ngrok để có URL công khai, cho TradingView bắn vào và in ra log.

Ngày 4 — Nối API sàn demo. Tạo API key trên tài khoản demo (Binance testnet/Bybit demo hoặc MT5 demo). Viết hàm đặt lệnh market đơn giản, chạy thử 1 lệnh.

Ngày 5 — Thêm rủi ro. Tính khối lượng theo % tài khoản, đặt SL/TP ngay khi vào lệnh, thêm chống trùng tín hiệu và rate limit.

Ngày 6 — Đưa lên VPS. Cài bot trên VPS, chạy nền (systemd/NSSM), bật HTTPS, giám sát bằng công cụ uptime.

Ngày 7 — Quan sát và đối soát. Thêm log có cấu trúc, thông báo Telegram mỗi khi có lệnh, và một tác vụ định kỳ so vị thế thật với sổ log.

Sau 7 ngày này bạn có một hệ thống chạy được — nhưng còn non. Phần khó nhất không phải code, mà là xử lý các trường hợp biên: mất mạng giữa chừng, tín hiệu trùng, lệnh vào nhưng sàn báo lỗi, giá đã chạy khỏi vùng hợp lý. Đó là lý do một khoá có thực chiến luôn nhanh hơn tự mò: bạn được chỉ đúng những chỗ sẽ sập.


Lỗi thường gặp khi mới dùng Webhook

LỗiTriệu chứngCách sửa
Dùng HTTP thay vì HTTPSAlert không gửi, hoặc TradingView báo lỗiBắt buộc HTTPS, dùng chứng chỉ Let's Encrypt
Webhook URL chếtKhông thấy request nào tớiKiểm tra bot còn chạy, firewall, port
Sai định dạng alertBot báo lỗi parse JSONBỏ dấu phẩy thừa, không xuống dòng tuỳ tiện, test bằng webhook.site
Placeholder không được thayBot nhận đúng chữ {{close}}Sai cú pháp placeholder, hoặc dùng biến không tồn tại với loại alert đó
Alert phát nhiều lần một nếnBot vào 2–3 lệnhThêm chống trùng theo (symbol, action, time); dùng "Once per bar close"
Không có API key đúng quyềnSàn từ chối lệnh 401/403Kiểm tra quyền giao dịch của key, whitelist IP
Bot chết lúc nửa đêmVài tín hiệu mấtChạy dưới dạng service, bật auto-restart, giám sát uptime
Không có logKhông biết lỗi ở đâuGhi log có timestamp cho mọi request và mọi lệnh

Nếu bạn gặp lỗi "alert không gửi dù webhook đúng", hãy kiểm tra theo thứ tự: bot còn sống → URL truy cập được từ ngoài → chứng chỉ HTTPS hợp lệ → quyền của gói TradingView có hỗ trợ webhook → nội dung alert đúng định dạng.


Tự động hoá từ TradingView: chi phí vận hành thực tế

Một hệ thống ở Mức 2 thường tốn:

Hạng mụcChi phí/tháng (tham khảo)
VPS Windows/Linux nhỏ (1 vCPU, 1–2 GB RAM)50.000 – 200.000đ
Gói TradingView có webhookMiễn phí ở một số gói, gói trả phí cao hơn
Phí giao dịch của sànTheo bậc của sàn, không đổi so với giao dịch tay
Giám sát uptime (nếu dùng dịch vụ)0 – 100.000đ

Điều đáng chú ý: chi phí hạ tầng rất nhỏ so với giá trị của việc bot không bỏ lỡ tín hiệu. Nhưng chi phí ẩn lớn nhất là thời gian của bạn khi bot gặp sự cố và bạn phải sửa lúc 2 giờ sáng. Vì thế phần giám sát và cảnh báo đáng giá hơn cả phần code.


So sánh Webhook với các cách tự động hoá khác

Hiểu webhook nằm ở đâu trong bức tranh lớn giúp bạn chọn đúng công cụ cho đúng việc.

Cách làmCách hoạt độngƯu điểmHạn chế
Webhook + bot tự viếtTradingView POST JSON vào bot, bot gọi API sànChủ động hoàn toàn, logic tuỳ ý, nhiều sànPhải vận hành server, phải tự viết code
Bot chạy trực tiếp trên sàn (EA MT5, cBot)Bot tự đọc dữ liệu và tự tính tín hiệuKhông phụ thuộc mạng ngoài, độ trễ thấpChỉ chạy trong hệ sinh thái của sàn đó, không dùng được chỉ báo TradingView
Webhook đi thẳng tới sàn/trung gianDán định dạng alert cố định do bên thứ ba quy địnhKhông cần code, chạy trong vài giờGần như không có quản lý rủi ro, bị khoá vào định dạng của họ
Copy tradeBot sao chép lệnh từ một tài khoản khácDễ, không cần tín hiệu riêngPhụ thuộc tài khoản nguồn, không kiểm soát được logic
Bán tự độngTradingView báo tín hiệu, bạn bấm tayĐơn giản, kiểm soát tối đaVẫn phải ngồi trước màn hình — mất chính giá trị cốt lõi

Điểm mạnh riêng của webhook: bạn giữ được chất xám ở TradingView (chỉ báo, chiến lược, backtest) mà vẫn đẩy được lệnh sang nhiều thị trường khác nhau — MT5, crypto, chứng khoán Việt Nam — bằng cùng một tín hiệu.

Nếu chiến lược của bạn chỉ chạy trên MT5 và bạn đã thạo MQL5, một EA thuần có thể tốt hơn vì ít mắt lỗi. Nhưng nếu bạn muốn dùng chung một bộ chỉ báo TradingView cho cả Forex, crypto và chứng khoán Việt Nam, webhook gần như là lựa chọn duy nhất khả thi.


Một ngày chạy bot thực tế trông như thế nào?

Để dễ hình dung, đây là diễn biến một ngày làm việc với bot webhook (dựa trên tình huống học viên thường gặp):

07:30 — Kiểm tra sức khoẻ hệ thống. Mở dashboard giám sát: bot còn sống không, VPS còn tài nguyên không, API key còn hạn không, tài khoản sàn còn kết nối không. Bước này mất 2 phút và phòng được phần lớn sự cố trong ngày.

08:00 — Chạy đối soát. Bot tự so vị thế đang mở ở sàn với sổ log. Nếu thấy lệch (lệnh có ở sàn mà không có trong log, hoặc ngược lại), nó cảnh báo qua Telegram để bạn xử lý trước khi khối lượng tăng tiếp.

Trong ngày — Tín hiệu tự chạy. Mỗi khi nến đóng và điều kiện đúng, TradingView bắn JSON về bot. Bot xác thực chữ ký, kiểm tra trùng tín hiệu, tính khối lượng theo % tài khoản, gửi lệnh market, đặt SL/TP, ghi log và bắn thông báo. Bạn chỉ đọc thông báo, không phải bấm gì.

Khi có sự cố — Xử lý theo kịch bản. Ví dụ sàn trả lỗi "insufficient margin": bot phải log rõ lý do, không thử lại vô hạn, và cảnh báo để bạn quyết định giảm khối lượng. Đây là phần mà bot tự viết ẩu sẽ hỏng: thiếu kịch bản xử lý lỗi thì bot có thể gửi lại lệnh nhiều lần.

Cuối ngày — Đọc báo cáo. Đếm số tín hiệu nhận được, số lệnh khớp, số lệnh bị từ chối, chênh lệch giữa giá tín hiệu và giá khớp trung bình. Con số cuối cùng này (slippage trung bình) là chỉ số quan trọng nhất để biết bot có "ăn" được chiến lược khi chạy thật hay không.

Đêm — Ngủ. Bot chạy trên VPS, có cảnh báo Telegram nếu bot chết hoặc VPS quá tải. Đây là giá trị lớn nhất của toàn bộ hệ thống: bạn không còn phải thức canh chart.

Điều đáng chú ý trong bức tranh này: thời gian bạn dành cho bot phần lớn là giám sát, không phải code. Những ngày đầu bạn viết code; các tháng sau bạn chủ yếu đọc log và cải thiện kịch bản xử lý lỗi.


Checklist 12 điểm trước khi cho bot chạy tiền thật

Dùng danh sách này như một cổng kiểm soát. Chỉ chuyển sang tiền thật khi bạn tick đủ.

  1. Webhook đã xác thực — có HMAC hoặc token, không mở công khai.
  2. HTTPS hợp lệ — chứng chỉ còn hạn, không cảnh báo trình duyệt.
  3. Chống trùng tín hiệu — cùng (symbol, action, time) không xử lý hai lần.
  4. Rate limit — bot từ chối khi bị flood.
  5. API key tối thiểu quyền — chỉ giao dịch, tuyệt đối không rút tiền.
  6. Khối lượng theo % tài khoản — không hardcode số lot/coin.
  7. SL/TP luôn được đặt ngay khi vào lệnh, có kiểm tra kết quả đặt SL/TP.
  8. Giới hạn số lệnh mở đồng thời — tránh mở 20 lệnh vì tín hiệu phát lặp.
  9. Giới hạn lỗ trong ngày — chạm ngưỡng thì bot tự dừng và cảnh báo.
  10. Log có timestamp cho mọi request và mọi lệnh, lưu tối thiểu 30 ngày.
  11. Đối soát định kỳ giữa vị thế ở sàn và sổ log.
  12. Báo động chết bot — nếu bot ngừng gửi "nhịp tim" 5 phút, có cảnh báo.

Nếu phải bỏ bớt, đừng bao giờ bỏ điểm 5, 6, 7 và 12. Bốn điểm này là ranh giới giữa "hệ thống tự động" và "tài khoản gặp rủi ro không kiểm soát".


Tổng kết

TradingView Webhook là cầu nối giữa tín hiệu trên chart và lệnh thật ở sàn. Nó không phải phép màu — nó là một HTTP POST với JSON mà bạn tự thiết kế, gửi tới một chương trình bạn tự viết, chạy trên một máy luôn bật.

Bốn mắt của chuỗi: TradingView → Webhook → Bot → API sàn. Yếu một mắt là cả hệ thống không chạy.

Ba nguyên tắc sống còn:

  1. Xác thực mọi request — không để webhook mở công khai.
  2. Giới hạn rủi ro ngay từ khối lượng và SL/TP, đừng đợi chỉnh sau.
  3. Quan sát — log và cảnh báo quan trọng ngang với bản thân chiến lược.

Nếu bạn muốn đi từ con số 0 đến một bot chạy thật nhận alert TradingView và vào lệnh trên MT5, Binance/Bybit hoặc chứng khoán Việt Nam trong 6 buổi — Bootcamp TradingView Webhook Bot là lớp chúng tôi dựng riêng cho đúng chuỗi này, kể cả khi bạn chưa từng viết code. Lớp khai giảng 19/10/2026 (Thứ 2, 20:00–22:00), học phí 990.000đ cho 6 buổi, tặng kèm 12 tháng phần mềm giám sát VPS.

Nếu bạn đã biết code và muốn tự dựng trước, xem tiếp Khóa Lập trình Bot Auto Trading không cần biết code để mở rộng sang quản lý rủi ro, dashboard và cảnh báo.


Câu hỏi thường gặp

TradingView Webhook là gì?

Là một URL mà TradingView tự động gọi tới bằng HTTP POST mỗi khi Alert trên chart được kích hoạt. Nội dung gửi đi là đoạn text bạn tự đặt trong alert — thường là JSON chứa mã giao dịch, hướng lệnh, giá vào, stop loss, take profit.

Webhook có tự vào lệnh không?

Không. Webhook chỉ báo cho hệ thống của bạn biết "vừa có tín hiệu". Muốn thành lệnh thật, phía nhận phải là một bot luôn chạy, đọc nội dung alert rồi gọi API của sàn để đặt lệnh.

TradingView có gửi lại webhook nếu bot của tôi bị chết không?

Không. Webhook là một chiều và không có cơ chế retry. Nếu bot chết hoặc mạng lỗi đúng lúc tín hiệu phát, tín hiệu đó mất. Vì vậy bot phải chạy trên VPS 24/7 và có giám sát tự động.

Tôi không biết lập trình có làm được không?

Được. Phần khó nhất đã có code mẫu: endpoint nhận webhook chỉ khoảng 30 dòng, hàm đặt lệnh khoảng 20 dòng. Việc còn lại là cấu hình VPS, tạo API key và đọc log — tất cả đều làm theo từng bước được.

Webhook gửi được cho MT5 và chứng khoán Việt Nam không?

Được. Webhook chỉ là kênh truyền tín hiệu; việc nối tới sàn nào nằm ở phía bot. MT5 dùng thư viện Python MetaTrader5, chứng khoán Việt Nam dùng API của công ty chứng khoán (SSI/DNSE), crypto dùng REST API của Binance/Bybit.

Độ trễ từ lúc có tín hiệu đến lúc lệnh khớp là bao lâu?

Thường 1–5 giây, gồm ba chặng: TradingView xử lý alert, bot nhận và gọi API, sàn khớp lệnh. Nếu bot đặt trên VPS gần sàn thì nhanh hơn; nếu chạy trên máy cá nhân hoặc VPS ở xa thì chậm hơn. Với bot theo nến từ 5 phút trở lên, mức trễ này không ảnh hưởng nhiều.

Làm sao để người khác không bắn tín hiệu giả vào bot của tôi?

Dùng HTTPS, xác thực mọi request bằng chữ ký HMAC hoặc token dài ngẫu nhiên, bật rate limit, và tạo API key riêng cho bot với quyền tối thiểu (chỉ giao dịch, không rút tiền). Nếu hạ tầng cho phép, thêm whitelist IP của TradingView.

Webhook có giới hạn gì về nội dung alert?

Nội dung alert bị giới hạn độ dài, nên đừng nhồi cả bảng chỉ báo vào JSON. Nên gửi đúng những gì bot cần: mã giao dịch, hướng lệnh, giá, SL/TP, tên chiến lược và thời điểm.

Nên bắt đầu từ đâu nếu muốn tự làm?

Từ một endpoint test: tạo Alert gửi tới webhook.site để nhìn thấy đúng JSON mình đặt, rồi mới thay URL bằng endpoint của bot. Sau đó nối dần tới tài khoản demo, thêm quản lý rủi ro, cuối cùng mới đưa lên VPS và chạy tiền thật với khối lượng nhỏ.

Đọc xong rồi? Hãy thử ngay — miễn phí 7 ngày.
📬

Weekly Digest — Nhận Bản Tin Hàng Tuần

Nhận các bài viết phân tích kỹ thuật chuyên sâu, thuật toán giao dịch tự động (Trading Bot) và các giải pháp công nghệ mới nhất từ Hướng Nghiệp Dữ Liệu.