Vào lệnh và thoát lệnh trong Latency Arbitrage: Tín hiệu xung lực (Min Move) và đóng lệnh đảo chiều trong SharpTrader 07/10/2026 – Posted in: Arbitrage Software

BJF TRADING GROUP · LATENCY ARBITRAGE · SHARPTRADER

Vào lệnh theo xung lực và thoát lệnh đảo chiều: Hai tùy chọn mới cho Latency Arbitrage

Latency arbitrage cổ điển mở lệnh khi chênh lệch giá giữa fast feed và broker chậm vượt quá một ngưỡng. Chiến lược OneLeg của SharpTrader nay bổ sung hai tùy chọn không bắt buộc, cài đặt riêng cho từng công cụ: vào lệnh khi chính fast feed có biến động mạnh (Min move), và thoát lệnh sớm khi chênh lệch quay ngược lại vị thế đang mở (Reverse factor %). Bài viết này giải thích cách cả hai hoạt động, kèm sơ đồ và ví dụ tính toán, cùng cách bắt đầu tinh chỉnh chúng.

Vì sao thời điểm vào lệnh và thoát lệnh quan trọng trong latency arbitrage

Trong latency arbitrage, lợi thế chỉ tồn tại trong một khoảng thời gian ngắn: fast feed đã di chuyển, còn broker chậm vẫn chưa cập nhật báo giá. Mỗi mili giây chờ đợi sau khi biến động bắt đầu đều làm thu hẹp phần còn lại của khoảng thời gian đó. Và khi vị thế đã mở, thị trường có thể đảo chiều: fast feed quay ngược lại, và chênh lệch từng là lý do mở lệnh giờ lại hướng về phía ngược lại.

Chiến lược OneLeg từ trước đến nay luôn mở lệnh dựa trên chênh lệch fast/slow (Diff to open) và đóng lệnh bằng TP, SL hoặc thời gian sống của lệnh. Hai tùy chọn mới xử lý cả hai phía của giao dịch:

  • Min move phản ứng với xung lực của chính fast feed, chứ không chỉ với khoảng cách giữa hai báo giá.
  • Reverse factor % đóng vị thế ngay khi chênh lệch quay ngược rõ rệt so với vị thế, không cần chờ TP, SL hay thời gian sống của lệnh.

Cả hai tùy chọn đều tắt theo mặc định (giá trị 0), vì vậy các chiến lược hiện có vẫn hoạt động chính xác như trước. Cả hai đều hoạt động trong giao dịch thực (live trading), chế độ emulator, backtesting và tối ưu hóa.

Min move: vào lệnh theo xung lực của fast feed

Khi bật Min move, chiến lược theo dõi biến động của chính fast feed. Một xung lực là một biến động tối thiểu bằng Min move (tính theo đơn vị diff của công cụ, point hoặc %) trong khoảng Trend interval (ms), được đo từ giá tại thời điểm bắt đầu khoảng thời gian đến giá hiện tại. Hướng của xung lực trở thành hướng giao dịch, và thiết lập Reverse trading vẫn được áp dụng.

Vì biến động được đo từ đầu khoảng thời gian đến giá hiện tại, một cú tăng vọt rồi quay lại ngay trong khoảng thời gian đó sẽ không được tính. Chỉ biến động được giữ vững mới được coi là tín hiệu.

Sơ đồ phát hiện xung lực Min move: biến động fast feed được giữ vững trong trend interval sẽ mở lệnh, cú tăng vọt quay lại trong khoảng thời gian sẽ bị bỏ qua
Sơ đồ: biến động được giữ vững trong Trend interval là xung lực; cú tăng vọt quay lại trong khoảng thời gian sẽ bị bỏ qua.

Ba thiết lập điều khiển việc vào lệnh theo xung lực:

Thiết lập Chức năng
Min move Biến động tối thiểu của fast feed được tính là xung lực, theo đơn vị diff của công cụ (point hoặc %). 0 = tắt vào lệnh theo xung lực.
Trend interval (ms) Khoảng thời gian mà biến động phải xảy ra, được đo từ giá tại đầu khoảng đến giá hiện tại.
Cooldown (ms) Thời gian tối thiểu giữa hai tín hiệu xung lực trên cùng một mã giao dịch.

Khi nào lệnh được mở: ba chế độ

Min move hoạt động cùng với thiết lập Diff to open sẵn có. Sự kết hợp của chúng tạo ra ba chế độ vào lệnh:

Min move Diff to open Điều kiện vào lệnh
0 bất kỳ Như trước đây: chênh lệch fast/slow lớn hơn Diff to open.
> 0 > 0 Có xung lực, và chênh lệch fast/slow cùng phía vẫn lớn hơn Diff to open, nghĩa là broker chậm vẫn chưa bắt kịp.
> 0 0 Chỉ cần xung lực.

Chế độ kết hợp (cả hai giá trị lớn hơn 0) là chọn lọc nhất: nó yêu cầu fast feed biến động mạnh và xác nhận rằng broker chậm vẫn còn bị tụt lại. Tất cả các điều kiện khác vẫn áp dụng ở mọi chế độ: giới hạn spread, tạm dừng giao dịch, hướng được phép, giới hạn diff, giờ giao dịch, bộ lọc tin tức và một vị thế cho mỗi công cụ.

Reverse factor %: đóng lệnh khi có tín hiệu ngược chiều

Khi một vị thế đang mở và chênh lệch fast/slow quay ngược lại vị thế đó ít nhất bằng ngưỡng đảo chiều, vị thế sẽ được đóng ngay theo giá thị trường, không cần chờ TP, SL hay thời gian sống của lệnh. Tín hiệu đã đóng vị thế sẽ không mở lệnh mới theo hướng ngược lại.

Điều này hữu ích khi thị trường đảo chiều nhanh sau khi vào lệnh: thay vì giữ một vị thế mà lý do mở lệnh không còn nữa, chiến lược sẽ thoát ra khi khoản lỗ (hoặc phần lợi nhuận còn lại) vẫn còn nhỏ.

Cách tính ngưỡng đảo chiều

Ngưỡng đảo chiều là giá trị lớn hơn trong hai giá trị sau:

  • Reverse factor % × Diff to open (hoặc × Min move khi Diff to open bằng 0);
  • một phần ba chênh lệch tại thời điểm mở vị thế.

Quy tắc thứ hai bảo vệ các vị thế được mở với chênh lệch lớn: tín hiệu ban đầu càng lớn thì biến động ngược chiều cần thiết để đóng lệnh càng lớn, nhờ đó nhiễu thông thường không kích hoạt việc thoát lệnh.

Ví dụ tính toán

Diff to open là 10 point và Reverse factor là 50%. Một vị thế được mở với chênh lệch 30 point. Ngưỡng là giá trị lớn hơn giữa 50% × 10 = 5 và 30 / 3 = 10, tức là 10 point. Chênh lệch ngược chiều 7 point không gây ra tác động gì; khi chênh lệch ngược chiều đạt 10 point, vị thế được đóng theo giá thị trường.

Ví dụ tính toán Reverse factor phần trăm: vị thế mở với chênh lệch 30 point, chênh lệch ngược chiều 7 point bị bỏ qua, tại 10 point vị thế được đóng theo giá thị trường
Ví dụ tính toán: mở ở 30 point, ngưỡng max(5, 10) = 10 point; −7 bị bỏ qua, −10 đóng vị thế.
Biểu đồ ngưỡng đóng lệnh đảo chiều theo chênh lệch lúc mở lệnh với Reverse factor 50, 100 và 150 phần trăm và Diff to open bằng 10
Ngưỡng không bao giờ thấp hơn Reverse factor % × Diff to open và tăng theo độ lớn của tín hiệu mở lệnh.

Quy tắc và giới hạn

  • Việc đóng lệnh đảo chiều có thể xảy ra khi chênh lệch dưới Diff to open và ngoài giờ giao dịch, giống như khi đóng bằng TP hoặc SL.
  • Lệnh đóng này không được gửi khi spread vượt quá giới hạn, trong thời gian tạm dừng giao dịch hoặc khi broker chậm bị mất kết nối.
  • Tạm dừng giao dịch được áp dụng lại sau khi đóng lệnh đảo chiều.
  • Các lệnh đóng này được đánh dấu trong log chiến lược bằng Reason: Reverse signal, giúp bạn có thể đếm và đánh giá chúng riêng biệt.
  • Không kết hợp Reverse factor % với tùy chọn cũ Reverse closing: khi tùy chọn đó được bật, Reverse factor % sẽ bị bỏ qua.
  • Reverse factor % không được sử dụng bởi các chiến lược copy-trading (slave), chế độ clicker hoặc tín hiệu UDP.

Giá trị khởi điểm và tối ưu hóa

Giá trị khởi điểm hợp lý cho Trend interval là 50–100 ms cho FX và 30–50 ms cho vàng, chỉ số và crypto. Hãy đặt Min move lớn hơn spread thông thường của broker chậm, nếu không, xung lực có thể nhỏ hơn chi phí vượt qua spread.

Từ đó, hãy để dữ liệu quyết định. Cả bốn cột mới (Min move, Trend interval, Cooldown và Reverse factor %) đều có thể được đưa vào tối ưu hóa, nhờ vậy bạn có thể tinh chỉnh chúng cùng với các tham số hiện có trên dữ liệu tick lịch sử trước khi giao dịch thực. Thử nghiệm thực tế giữa thiết lập đã tối ưu và thiết lập mặc định của chúng tôi cho thấy vì sao việc tinh chỉnh trên chính cặp broker của bạn lại quan trọng.

  1. Ghi lại hoặc tải dữ liệu tick cho fast feed và broker chậm của bạn.
  2. Chạy backtest với Min move = 0 và Reverse factor % = 0 để có kết quả cơ sở.
  3. Bật Min move trong khi vẫn giữ Diff to open (chế độ kết hợp) và so sánh.
  4. Thêm Reverse factor % và kiểm tra có bao nhiêu lệnh đóng hiển thị Reason: Reverse signal và chúng đã giúp tiết kiệm được bao nhiêu.
  5. Tối ưu hóa đồng thời bốn giá trị mới, sau đó xác nhận bằng một lần chạy thực hoặc emulator quy mô nhỏ.

Hãy nhớ rằng logic vào lệnh chỉ là một phần của toàn bộ thiết lập. Một fast data feed đáng tin cậy và độ trễ mạng thấp đến broker chậm sẽ quyết định còn lại bao nhiêu thời gian của khoảng cơ hội khi lệnh đến nơi.

Trải nghiệm vào lệnh theo xung lực và thoát lệnh đảo chiều trong SharpTrader

Min move và Reverse factor % có sẵn cho từng công cụ trong chiến lược OneLeg, trong giao dịch thực, chế độ emulator, backtesting và tối ưu hóa.

Nền tảng arbitrage SharpTrader Hướng dẫn đầy đủ về latency arbitrage

FAQ

Các tùy chọn này có thay đổi cách các chiến lược hiện có của tôi giao dịch không?

Không. Cả Min move và Reverse factor % đều có giá trị mặc định là 0, nghĩa là tắt. Các chiến lược hiện có hoạt động chính xác như trước cho đến khi bạn đặt một giá trị.

Min move và Diff to open khác nhau như thế nào?

Diff to open xem xét khoảng cách giữa fast feed và broker chậm. Min move xem xét bản thân fast feed đã di chuyển bao xa trong Trend interval. Bạn có thể dùng một trong hai, hoặc kết hợp cả hai để có các điểm vào lệnh chọn lọc nhất.

Việc đóng lệnh đảo chiều có mở lệnh theo hướng ngược lại không?

Không. Tín hiệu đóng vị thế không mở vị thế mới. Một lệnh mới cần có tín hiệu vào lệnh mới sau thời gian tạm dừng giao dịch.

Tôi có thể dùng Reverse factor % cùng với Reverse closing không?

Không. Nếu tùy chọn cũ Reverse closing được bật, Reverse factor % sẽ bị bỏ qua. Hãy chỉ dùng một trong hai.

Tôi có thể tối ưu hóa các tham số này không?

Có. Min move, Trend interval, Cooldown và Reverse factor % đều có thể được đưa vào các lần chạy tối ưu hóa trên dữ liệu lịch sử.