[TOC]

Nếu bạn hỏi một nhà giao dịch định lượng rằng câu hỏi khó khăn nhất của họ là gì, ngoài “làm thế nào để tìm tín hiệu vào lệnh tốt”, thì đó sẽ là “tôi nên đặt điểm dừng lỗ ở đâu?”.
Khi nói đến lệnh cắt lỗ, bạn sẽ hối hận nếu đặt quá sớm, nhưng sẽ còn hối hận hơn nữa nếu đặt quá muộn. Bạn thấy một loại tiền điện tử tăng giá 1,4%, tự mãn chờ đợi nó đạt mục tiêu lợi nhuận 2%, rồi đột nhiên nó lao dốc không phanh, chạm mức -0,1% và kích hoạt lệnh cắt lỗ của bạn.
Điều đáng thất vọng hơn nữa là đây không phải là một sự việc cá biệt, mà là một vấn đề lặp đi lặp lại. Đường cong lợi nhuận biến động mạnh, giống như xem một bộ phim kinh dị không có kịch bản.
Bài viết này sẽ chia sẻ các phương pháp cắt lỗ khác nhau mà chúng tôi đã thử nghiệm, dựa trên một chiến lược xoay vòng được hỗ trợ bởi trí tuệ nhân tạo thực tế. Chúng tôi hy vọng điều này sẽ mang lại nguồn cảm hứng cho những người cũng đang gặp khó khăn với vấn đề cắt lỗ.
Dưới đây là phần giới thiệu ngắn gọn về khuôn khổ chiến lược của chúng tôi:

Chiến lược này quả thực có thể xác định được một số loại tiền điện tử đầy triển vọng và đạt được lợi nhuận tốt bằng cách theo xu hướng. Tuy nhiên, thị trường tiền điện tử cực kỳ biến động, thường dẫn đến việc sụt giảm lợi nhuận đáng kể hoặc thậm chí thua lỗ, khiến vấn đề lệnh dừng lỗ trở thành mối lo ngại thường trực. Vì vậy, chúng tôi đã bắt đầu một hành trình dài tìm kiếm các giải pháp lệnh dừng lỗ.

Lệnh dừng lỗ theo sau (trailing stop-loss) là phương pháp dừng lỗ kinh điển nhất. Logic cốt lõi rất đơn giản:
Theo dõi điểm lợi nhuận cao nhất kể từ khi thiết lập vị thế và kích hoạt lệnh cắt lỗ khi giá điều chỉnh giảm từ điểm cao nhất nhiều hơn một tỷ lệ phần trăm đã thiết lập.
Triết lý đằng sau cách tiếp cận này là: “Tôi không biết giá có thể tăng cao đến mức nào, nhưng tôi biết mình nên bán ra khi giá bắt đầu giảm.”
// 核心逻辑
const currentPnl = (currentPrice - entryPrice) / entryPrice; // 当前盈亏
const drawdown = maxProfit - currentPnl; // 回撤幅度
// 更新最高盈利
if (currentPnl > maxProfit) {
maxProfit = currentPnl;
_G(symbolKey, maxProfit);
}
// 触发止损
if (drawdown >= TRAILING_STOP_PERCENT) {
closePosition(coin, "移动止损");
}
lợi thế:
khuyết điểm:

Vì cách tiếp cận “một kích cỡ phù hợp cho tất cả” đối với việc di chuyển điểm dừng lỗ không đủ chính xác, chúng ta sẽ thiết lập các chiến lược khác nhau dựa trên các mức lợi nhuận khác nhau.
Cũng giống như chơi game, bạn có thể mạo hiểm ở ngôi làng khởi đầu, nhưng nên thận trọng hơn khi đã đạt cấp độ tối đa với trang bị tốt.
Thiết kế nhiều lớp của chúng tôi:
| Phạm vi lợi nhuận | Mức cắt lỗ | người mẫu |
|---|---|---|
| < 0% | -1% | Bảo vệ và ngăn ngừa tổn thất |
| 0% ~ 0.5% | 0% | Điểm hòa vốn và cắt lỗ |
| 0.5% ~ 1% | +0.5% | Chốt lời và ngăn ngừa thua lỗ |
| 1% ~ 1.5% | +1% | Chốt lời và ngăn ngừa thua lỗ |
| 1.5% ~ 2% | +1.5% | Chốt lời và ngăn ngừa thua lỗ |
| ≥ 2% | Điểm cao nhất -1,5% | Đánh chặn di động |
const STOP_LOSS_TIERS = [
{ minProfit: -Infinity, maxProfit: 0.0001, stopAt: -0.01 },
{ minProfit: 0.0001, maxProfit: 0.005, stopAt: 0 },
{ minProfit: 0.005, maxProfit: 0.01, stopAt: 0.005 },
// ... 更多层级
{ minProfit: 0.02, maxProfit: Infinity, trailing: 0.015 }
];
// 根据最高盈利找到对应层级,返回止损位
function calculateStopLevel(maxProfit) {
for (let tier of STOP_LOSS_TIERS) {
if (maxProfit >= tier.minProfit && maxProfit < tier.maxProfit) {
return tier.trailing ? maxProfit - tier.trailing : tier.stopAt;
}
}
}
lợi thế:
khuyết điểm:

Vì đây là chiến lược theo xu hướng, chúng ta hãy đơn giản hóa cách tiếp cận, để lợi nhuận tăng trưởng và chỉ sử dụng lệnh cắt lỗ. Đôi khi, sự đơn giản và trực tiếp lại là một đức tính tốt.
Tôi chỉ tập trung vào việc kiểm soát thua lỗ; còn về lợi nhuận có thể kiếm được, tôi để cho các tín hiệu AI quyết định thời điểm đóng vị thế.
Phương pháp này phù hợp với những trường hợp bạn tin tưởng vào tín hiệu vào lệnh và chỉ cần kiểm soát mức thua lỗ tối đa.
// 简单到令人发指
if (currentPnl <= -FIXED_LOSS_PERCENT) {
closePosition(coin, "固定止损");
}
lợi thế:
khuyết điểm:

Kết quả không được như mong muốn; lợi nhuận thường xuyên bị bỏ lỡ. Vì chỉ dựa vào lệnh cắt lỗ là quá cực đoan, chúng ta hãy xem xét cả hai khía cạnh:
Tôi đặt ra mục tiêu lợi nhuận và giới hạn cắt lỗ. Tôi biết mình muốn kiếm được bao nhiêu và mình có thể chấp nhận mất bao nhiêu.
Nghe có vẻ rất hợp lý, đúng như một nhà giao dịch dày dạn kinh nghiệm nên có.
// 止盈检查
if (currentPnl >= FIXED_PROFIT_PERCENT) {
closePosition(coin, "固定止盈");
}
// 止损检查
if (currentPnl <= -FIXED_STOPLOSS_PERCENT) {
closePosition(coin, "固定止损");
}
lợi thế:
khuyết điểm:

Kết quả vẫn chưa khả quan; giới hạn chốt lời kết hợp với tín hiệu vào lệnh không ổn định dẫn đến tỷ lệ lãi/lỗ âm. Vì khó có thể kiểm soát lợi nhuận một cách đáng tin cậy từ một cặp tiền tệ duy nhất, chúng ta hãy thay đổi phương pháp và kết hợp số liệu thống kê từ nhiều loại tiền tệ.
Mức chốt lời và cắt lỗ được tính toán động dựa trên số lượng vị thế đang nắm giữ. Hiệu suất cá nhân không phải là vấn đề quan trọng, miễn là toàn đội có lãi.
Ví dụ: nếu mỗi vị thế là 100U, nắm giữ 3 vị thế, với mục tiêu lợi nhuận là 0.1, thì mục tiêu lợi nhuận = 3 × 100 × 0.1 = 30U; mục tiêu cắt lỗ = 3 × 100 × -0.05 = -15U.
// 计算动态止盈止损额度
const profitTarget = positionCount * AMOUNT_PER_POSITION * PROFIT_RATIO;
const lossLimit = positionCount * AMOUNT_PER_POSITION * LOSS_RATIO;
// 检查总体盈亏
if (totalProfit >= profitTarget) {
closeAllPositions("止盈");
}
if (totalProfit <= -lossLimit) {
closeAllPositions("止损");
}
lợi thế:
khuyết điểm:

Sau khi thử nhiều phương pháp cắt lỗ khác nhau, đôi khi người ta có thể rơi vào tình thế khó xử về mặt triết học:
Có lẽ vấn đề không phải là phương pháp cắt lỗ của tôi sai, mà là ngay từ đầu tôi không nên sử dụng chức năng cắt lỗ tự động.
Chế độ ngẫu nhiên: Hoàn toàn tin tưởng vào các tín hiệu vào lệnh và ra lệnh của AI, mà không cần thiết lập bất kỳ lệnh cắt lỗ tự động nào.
Các trường hợp:
if (STOP_MODE === "随缘") {
// 什么都不做,一切交给AI信号
return { status: "随缘模式", message: "不进行自动平仓" };
}
Mặc dù chế độ “thuận theo tự nhiên” nghe có vẻ rất thoải mái, nhưng nó đòi hỏi một hệ thống tín hiệu mạnh mẽ và một mức độ kiên cường nhất định. Người bình thường nên sử dụng nó một cách thận trọng, nếu không tiền của bạn có thể “trôi theo dòng chảy” ngay cả trước khi bạn kịp làm gì.
Phần trên đã nêu khung chiến lược tổng thể cho các lệnh cắt lỗ. Tuy nhiên, các thiết kế tinh tế hơn có thể được áp dụng khi thực hiện các lệnh cắt lỗ trong thực tế.
Ví dụChống mất chốt khi lắp kim:

Trong thế giới tiền điện tử có một hiện tượng khá nổi tiếng gọi là “sụp đổ chớp nhoáng” - sự biến động giá đột ngột, mạnh mẽ, sau đó là sự phục hồi nhanh chóng, được thiết kế đặc biệt để nhắm vào những người đã đặt lệnh cắt lỗ.
Một chiến lược để đối phó với điều này là:Thay vì dừng lỗ ngay lập tức, chúng tôi đếm số lần đường dừng lỗ bị chạm trong một khoảng thời gian nhất định, và chỉ dừng lỗ khi đạt đến ngưỡng đó.
Lý luận ở đây là: nếu chỉ là sự tăng đột biến nhất thời, giá sẽ nhanh chóng phục hồi; nếu đó là sự đảo chiều xu hướng thực sự, giá sẽ tiếp tục chạm mức cắt lỗ.
// 核心逻辑
let triggerCount = 0;
const THRESHOLD = 3; // 需要触及3次才真正止损
// 每次检查时
if (currentPnl <= STOP_LOSS_PERCENT) {
triggerCount++;
if (triggerCount >= THRESHOLD) {
closePosition(coin, "防插针止损");
triggerCount = 0;
}
} else {
triggerCount = 0; // 价格恢复,重置计数
}
Tất nhiên, điều này cũng tiềm ẩn rủi ro: nếu thị trường thực sự sụp đổ, bạn có thể chịu tổn thất lớn hơn nữa vì bạn đang “chờ xác nhận”. Do đó, phương pháp này phù hợp hơn với môi trường thị trường nơi giá cả thường xuyên biến động mạnh.
Có rất nhiều thiết kế tinh tế tương tự, và ý tưởng cốt lõi đều giống nhau:Trong khuôn khổ chiến lược tổng thể, các tối ưu hóa có mục tiêu được thực hiện cho các kịch bản cụ thể.

Sau khi thử nghiệm các phương pháp trên, chúng tôi đã đi đến một kết luận có phần trái ngược với trực giác:
Chiến lược cắt lỗ tự động đơn giản nhất thực sự mang lại hiệu quả tốt nhất trong phương pháp này.
Tại sao?
Vì mục đích của chiến lược này là chọn lọc những loại tiền điện tử có tiềm năng cao, sự tăng vọt của một vài loại tiền điện tử có thể che khuất sự thua lỗ của những loại khác. Do đó, các lệnh cắt lỗ di động linh hoạt hơn có thể nắm bắt xu hướng tốt hơn.
Tuy nhiên, điều này không có nghĩa là lệnh dừng lỗ tự động (trailing stop-loss) là giải pháp tối ưu cho mọi chiến lược. Kết luận của chúng tôi là:
Thành thật mà nói, chúng ta vẫn chưa giải quyết triệt để vấn đề cắt lỗ; chúng ta mới chỉ tìm ra một giải pháp tương đối chấp nhận được ở giai đoạn này.
Chúng tôi cảm thấy có một số hướng đi đáng để tiếp tục khám phá:
Điều chỉnh tham số động dựa trên biến độngCác thông số cắt lỗ hiện tại được cố định, nhưng độ biến động lại rất khác nhau giữa các loại tiền tệ và các giai đoạn thị trường khác nhau. Về lý thuyết, nếu mức cắt lỗ có thể được tự động điều chỉnh dựa trên ATR (Số lần cố gắng điều chỉnh lỗ) gần đây, nó sẽ có khả năng thích ứng tốt hơn với thị trường. Tất nhiên, thường có sự khác biệt rất lớn giữa “về lý thuyết” và “trong thực tế”.
Các chiến lược khác nhau được sử dụng cho các loại tiền tệ khác nhau.Biến động giá của BTC và các altcoin hoàn toàn khác nhau, vì vậy việc sử dụng cùng một logic cắt lỗ là không chính xác. Có lẽ sẽ tốt hơn nếu tự động lựa chọn phương pháp cắt lỗ phù hợp nhất dựa trên đặc điểm biến động giá trong quá khứ của từng loại tiền điện tử.
Có tính đến thời gian giữViệc đặt lệnh cắt lỗ chặt chẽ hơn khi mở vị thế sẽ bảo vệ vốn gốc. Vị thế được giữ càng lâu, xu hướng càng ổn định, và cũng càng biến động mạnh, cho phép đặt lệnh cắt lỗ rộng hơn để linh hoạt hơn. Logic này nghe có vẻ hợp lý, nhưng cách thiết kế hàm suy giảm theo thời gian cụ thể vẫn cần được nghiên cứu thêm.
Kết hợp nhiều nguồn tín hiệu hơnHiện tại, lệnh cắt lỗ chỉ dựa hoàn toàn vào giá cả, nhưng việc kết hợp điều này với các tín hiệu như khối lượng giao dịch bất thường, thay đổi lãi suất tài trợ, và thậm chí cả tâm lý thị trường dựa trên tin tức có thể cho phép đánh giá chính xác hơn liệu đó là “sự điều chỉnh giảm bình thường” hay “sự đảo chiều xu hướng”. Tất nhiên, càng nhiều nguồn tín hiệu và hệ thống càng phức tạp, thì khả năng phát sinh vấn đề càng cao.
Những ý tưởng này hiện vẫn đang ở giai đoạn “ý tưởng”. Chúng tôi sẽ chia sẻ chúng với mọi người khi chúng được triển khai thực tế và mang lại kết quả.
Đến đây, bạn có thể tự hỏi: Tôi nên sử dụng loại lệnh cắt lỗ nào?
Câu trả lời của tôi là:Hãy thử cả hai xem sao.
Mỗi chiến lược đều có “cá tính” riêng, và mỗi thị trường đều có “tính khí” riêng. Bạn cần tìm ra sự hài hòa giữa chiến lược của mình và thị trường. Các phương pháp cắt lỗ chỉ là công cụ; điều kiện tiên quyết để sử dụng công cụ hiệu quả là phải hiểu chúng.
Nếu bạn có những ý tưởng hay hơn về lệnh cắt lỗ, hãy thoải mái chia sẻ chúng — xét cho cùng, trên con đường giao dịch định lượng, tất cả chúng ta đều là những người lữ hành học hỏi từ những sai lầm mắc phải.
Cuối cùng, một lời khuyên:
Ngăn chặn thua lỗ không có nghĩa là thừa nhận thất bại, mà là chuẩn bị cho một cuộc tấn công tốt hơn vào lần sau.
Chúc bạn giao dịch thành công! 🚀