Một chiến lược trading cần những thành phần dữ liệu nào
Thành phần dữ liệu
Khi mới bắt đầu giao dịch, nhiều người thường nghĩ một chiến lược trading chỉ cần một tín hiệu mua bán. Ví dụ, RSI dưới 30 thì mua, MACD cắt lên thì mua, giá vượt MA20 thì mua, thủng hỗ trợ thì bán. Nhưng nếu nhìn theo hướng giao dịch định lượng, một chiến lược trading không chỉ là một tín hiệu vào lệnh. Nó là một hệ thống gồm dữ liệu đầu vào, điều kiện lọc, tín hiệu vào lệnh, tín hiệu thoát lệnh, quản trị vốn, chi phí giao dịch và cách đo hiệu quả.

Nói đơn giản, nếu chỉ có một câu “mua khi cổ phiếu vượt đỉnh” thì đó mới là một ý tưởng. Muốn biến nó thành chiến lược thật, cần trả lời thêm rất nhiều câu hỏi. Vượt đỉnh trong bao nhiêu phiên. Cổ phiếu có cần đủ thanh khoản không. Thị trường chung đang tốt hay xấu. Mua bao nhiêu phần trăm tài khoản. Cắt lỗ ở đâu. Chốt lời thế nào. Có tính phí giao dịch không. Nếu cổ phiếu gap tăng quá mạnh thì có mua không. Nếu tín hiệu xuất hiện ở mã thanh khoản thấp thì có bỏ qua không.
Đây là lý do dữ liệu rất quan trọng. Dữ liệu giúp trader không giao dịch bằng cảm giác. Nó giúp biến một nhận định mơ hồ thành một bộ quy tắc có thể kiểm tra, có thể lặp lại và có thể cải thiện. Một chiến lược tốt không nhất thiết phải phức tạp, nhưng cần đủ dữ liệu để biết khi nào vào, khi nào ra, rủi ro bao nhiêu và kết quả có đáng tin không.
Bài viết này sẽ đi theo ba phần. Phần một nói về dữ liệu thị trường cần có. Phần hai nói về dữ liệu tín hiệu và quản trị lệnh. Phần ba nói về dữ liệu đánh giá hiệu quả chiến lược.
Phần 1: Dữ liệu thị trường, nền móng của mọi chiến lược
Thành phần dữ liệu đầu tiên và cơ bản nhất là dữ liệu giá. Trong chứng khoán, dữ liệu giá thường gồm open, high, low, close và volume. Open là giá mở cửa. High là giá cao nhất trong phiên. Low là giá thấp nhất trong phiên. Close là giá đóng cửa. Volume là khối lượng giao dịch.
Đây là bộ dữ liệu nền tảng nhất để xây dựng hầu hết chiến lược kỹ thuật và định lượng. Từ dữ liệu này, trader có thể tính return, xu hướng, biến động, thanh khoản, breakout, pullback, hỗ trợ kháng cự, moving average, RSI, MACD, Bollinger Bands và rất nhiều chỉ báo khác.
Ví dụ, một chiến lược đơn giản có thể dùng giá đóng cửa và MA20. Quy tắc là nếu giá đóng cửa nằm trên MA20 và MA20 đang dốc lên, cổ phiếu được xem là có xu hướng ngắn hạn tích cực. Nếu giá đóng cửa thủng MA20, tín hiệu yếu đi. Chỉ với dữ liệu close, trader đã có thể tạo ra một bộ lọc xu hướng cơ bản.
Nhưng nếu muốn chiến lược thực tế hơn, chỉ nhìn giá đóng cửa là chưa đủ. Cần thêm volume. Một cổ phiếu vượt kháng cự với volume cao hơn trung bình 20 phiên thường đáng chú ý hơn một cổ phiếu vượt kháng cự trong thanh khoản yếu. Ví dụ, cổ phiếu A có khối lượng trung bình 20 phiên là 1 triệu cổ phiếu. Hôm nay giá vượt vùng 30.000 đồng với khối lượng 2,5 triệu cổ phiếu. Điều này cho thấy dòng tiền tham gia mạnh hơn bình thường. Nếu cùng cú vượt 30.000 nhưng volume chỉ 400.000 cổ phiếu, tín hiệu sẽ kém tin cậy hơn.
Dữ liệu tiếp theo là dữ liệu thanh khoản. Thanh khoản không chỉ là volume một phiên, mà nên nhìn bằng giá trị giao dịch trung bình. Giá trị giao dịch bằng giá cổ phiếu nhân với khối lượng khớp lệnh. Một cổ phiếu giá 5.000 đồng khớp 1 triệu cổ phiếu chỉ tương đương 5 tỷ đồng. Một cổ phiếu giá 50.000 đồng khớp 1 triệu cổ phiếu tương đương 50 tỷ đồng. Vì vậy, nếu xây chiến lược giao dịch thật, nên có bộ lọc giá trị giao dịch trung bình 20 phiên hoặc 60 phiên.
Ví dụ, một trader có tài khoản 500 triệu. Nếu chọn cổ phiếu chỉ giao dịch trung bình 2 tỷ đồng mỗi phiên, vị thế 200 triệu đã chiếm 10% thanh khoản ngày. Khi cần bán, rất dễ bị trượt giá. Ngược lại, nếu cổ phiếu giao dịch trung bình 100 tỷ đồng mỗi phiên, vị thế 200 triệu chỉ chiếm 0,2% thanh khoản ngày, việc vào ra lệnh sẽ thực tế hơn nhiều. Vì vậy, dữ liệu thanh khoản là thành phần bắt buộc nếu không muốn chiến lược chỉ đẹp trên giấy.
Một thành phần nữa là dữ liệu benchmark. Benchmark là mốc so sánh, chẳng hạn VN-Index, VN30 hoặc chỉ số ngành. Nếu bạn giao dịch cổ phiếu toàn thị trường, VN-Index có thể là benchmark. Nếu bạn chỉ giao dịch nhóm vốn hóa lớn, VN30 phù hợp hơn. Nếu bạn giao dịch nhóm chứng khoán, ngân hàng hoặc bất động sản, nên so sánh cổ phiếu với chính nhóm ngành của nó.
Benchmark giúp chiến lược biết cổ phiếu đang mạnh hay yếu so với thị trường. Ví dụ trong 20 phiên, VN-Index tăng 3%, cổ phiếu A tăng 12%, cổ phiếu B giảm 2%. A đang có sức mạnh tương đối tốt hơn thị trường, B đang yếu hơn thị trường. Nếu chiến lược của bạn là momentum, cổ phiếu A đáng chú ý hơn B. Không có dữ liệu benchmark, bạn rất dễ nhìn một cổ phiếu tăng nhẹ rồi tưởng là khỏe, trong khi nó thực ra đang yếu hơn thị trường chung.
Ngoài benchmark, dữ liệu nhóm ngành cũng rất quan trọng. Cổ phiếu thường không chạy một mình. Nhiều con sóng bắt đầu từ nhóm ngành. Nếu một cổ phiếu mạnh hơn thị trường nhưng cả nhóm ngành của nó yếu, cần thận trọng hơn. Ngược lại, nếu cả nhóm ngành đang hút tiền và cổ phiếu đó là mã khỏe nhất nhóm, tín hiệu sẽ có chất lượng hơn.
Ví dụ nhóm chứng khoán trong 1 tháng tăng trung bình 10%, trong đó cổ phiếu A tăng 22%, B tăng 8%, C tăng 3%. Nếu lọc theo sức mạnh ngành, A là mã dẫn dắt hơn. Nếu chỉ nhìn từng chart riêng lẻ, bạn có thể bỏ lỡ bối cảnh quan trọng là dòng tiền đang ưu tiên nhóm chứng khoán.
Dữ liệu thị trường còn bao gồm trạng thái thị trường chung. Một chiến lược có thể hoạt động tốt trong uptrend nhưng kém trong downtrend hoặc sideway. Vì vậy, nhiều hệ thống cần bộ lọc market regime. Ví dụ chỉ mua cổ phiếu khi VN-Index nằm trên MA50, hoặc khi số mã tăng nhiều hơn số mã giảm, hoặc khi thanh khoản thị trường cải thiện.
Ví dụ, một chiến lược breakout có thể cho kết quả tốt khi VN-Index đang trên MA50 và nhóm dẫn dắt rõ ràng. Nhưng nếu VN-Index dưới MA50, thị trường yếu, các cú breakout dễ thất bại hơn. Nếu không có dữ liệu trạng thái thị trường, chiến lược sẽ giao dịch trong mọi môi trường, kể cả khi xác suất không thuận lợi.
Tóm lại, dữ liệu thị trường gồm giá, volume, thanh khoản, benchmark, nhóm ngành và trạng thái thị trường. Đây là nền móng giúp chiến lược biết mình đang giao dịch trong môi trường nào, mã nào đủ điều kiện và tín hiệu nào đáng tin hơn.
Phần 2: Dữ liệu tín hiệu, điểm vào, điểm thoát và quản trị lệnh
Sau khi có dữ liệu thị trường, chiến lược cần dữ liệu tín hiệu. Tín hiệu là điều kiện cụ thể để vào lệnh hoặc thoát lệnh. Đây là phần biến một ý tưởng thành quy tắc.
Ví dụ ý tưởng là mua cổ phiếu mạnh hơn thị trường. Nhưng để thành chiến lược, cần định nghĩa rõ “mạnh hơn” là gì. Có thể là return 20 phiên của cổ phiếu cao hơn VN-Index ít nhất 5%. Có thể là cổ phiếu nằm trong top 20% cổ phiếu có return 60 phiên cao nhất. Có thể là cổ phiếu vừa vượt đỉnh 20 phiên với volume lớn hơn 150% trung bình 20 phiên. Mỗi cách định nghĩa sẽ tạo ra kết quả khác nhau.
Một tín hiệu vào lệnh cần có điều kiện đủ rõ. Ví dụ:
Cổ phiếu có giá trị giao dịch trung bình 20 phiên trên 30 tỷ đồng.
Return 20 phiên cao hơn VN-Index ít nhất 5%.
Giá đóng cửa nằm trên MA20 và MA50.
Giá vượt đỉnh 20 phiên.
Volume phiên breakout lớn hơn 1,5 lần volume trung bình 20 phiên.
Khi tất cả điều kiện xảy ra, chiến lược phát tín hiệu mua. Lúc này, trader không còn mua vì “cảm giác mã này khỏe”, mà mua vì cổ phiếu thỏa bộ tiêu chí đã định nghĩa trước.
Nhưng một chiến lược không thể chỉ có điểm vào. Nó bắt buộc phải có điểm thoát. Nhiều người mới chỉ tập trung vào tín hiệu mua mà quên mất tín hiệu bán. Trong thực tế, thoát lệnh mới là phần quyết định lớn đến lợi nhuận. Một điểm mua tốt nhưng thoát sai vẫn có thể biến thành kết quả kém.
Tín hiệu thoát có thể là stop loss, chốt lời, trailing stop hoặc tín hiệu đảo chiều. Ví dụ nếu mua theo breakout, stop loss có thể đặt khi giá đóng cửa dưới vùng breakout. Nếu mua theo trend, stop loss có thể đặt dưới MA20 hoặc dưới đáy gần nhất. Nếu chiến lược theo momentum, có thể bán khi cổ phiếu rơi khỏi top ranking hoặc khi relative strength suy yếu.
Ví dụ, bạn mua cổ phiếu ở 42.000 đồng vì nó vượt đỉnh 20 phiên tại 40.000 đồng. Nếu giá rơi lại dưới 39.500 đồng và đóng cửa yếu, breakout có thể thất bại. Đây là điểm thoát kỹ thuật. Nếu không có điểm thoát, bạn sẽ dễ chuyển từ “mua breakout” thành “gồng lỗ dài hạn”.
Dữ liệu quản trị rủi ro cũng là thành phần không thể thiếu. Chiến lược phải biết mỗi lệnh rủi ro bao nhiêu phần trăm tài khoản. Ví dụ tài khoản 100 triệu, rủi ro mỗi lệnh tối đa 1%, tức 1 triệu. Nếu mua ở 50.000 và stop loss ở 47.500, rủi ro mỗi cổ phiếu là 2.500 đồng. Số lượng mua phù hợp là 1.000.000 chia 2.500, bằng 400 cổ phiếu. Tổng vị thế là 20 triệu đồng.
Nếu không có dữ liệu position sizing, chiến lược rất dễ sai lệch. Cùng một tín hiệu, mua 20 triệu khác hoàn toàn mua 100 triệu. Một chiến lược tốt trên giấy có thể trở nên nguy hiểm nếu khối lượng lệnh quá lớn. Vì vậy, dữ liệu vào lệnh phải đi cùng dữ liệu khối lượng.
Một thành phần khác là dữ liệu chi phí giao dịch. Trong backtest, nhiều người quên tính phí, thuế và trượt giá. Với cổ phiếu cơ sở, mỗi lần mua bán đều có phí giao dịch và thuế bán. Với phái sinh, có phí giao dịch, chênh lệch giá, trượt giá và tốc độ khớp lệnh. Nếu một chiến lược giao dịch quá nhiều, chi phí có thể ăn mòn lợi nhuận rất mạnh.
Ví dụ một chiến lược tạo lợi nhuận trung bình 0,5% mỗi lệnh trước phí. Nhưng tổng phí, thuế và trượt giá khoảng 0,25% đến 0,35% cho một vòng mua bán. Lợi nhuận thực tế còn lại rất mỏng. Nếu thêm vài lệnh khớp xấu, chiến lược có thể từ dương thành âm. Vì vậy, dữ liệu chi phí phải được đưa vào từ đầu.
Dữ liệu thời gian cũng quan trọng. Chiến lược cần biết giao dịch theo khung nào. Dữ liệu ngày, dữ liệu giờ, dữ liệu phút hay dữ liệu tick. Một chiến lược swing trading dùng dữ liệu ngày sẽ khác hoàn toàn chiến lược intraday dùng dữ liệu 5 phút. Tín hiệu trên khung nhỏ thường nhiều hơn nhưng nhiễu hơn, chi phí giao dịch cao hơn và yêu cầu kỷ luật thực thi cao hơn.
Ví dụ một chiến lược dùng MA20 trên khung ngày có thể phát tín hiệu vài lần mỗi tháng. Nhưng nếu dùng MA20 trên khung 5 phút, tín hiệu có thể xuất hiện rất nhiều lần trong ngày. Nếu không tính chi phí và nhiễu, backtest khung nhỏ rất dễ cho kết quả không thực tế.
Tóm lại, dữ liệu tín hiệu gồm điều kiện vào lệnh, điều kiện thoát lệnh, stop loss, chốt lời, trailing stop, position sizing, chi phí giao dịch và khung thời gian. Nếu thiếu những thành phần này, chiến lược chỉ là một ý tưởng chưa hoàn chỉnh.
Phần 3: Dữ liệu đánh giá hiệu quả chiến lược
Sau khi có dữ liệu thị trường và dữ liệu tín hiệu, phần cuối cùng là dữ liệu đánh giá hiệu quả. Đây là phần giúp trader biết chiến lược có thật sự đáng dùng không. Không thể đánh giá một chiến lược chỉ bằng vài lệnh thắng hoặc một giai đoạn lời đẹp. Cần nhìn nhiều chỉ số để hiểu cả lợi nhuận và rủi ro.
Chỉ số đầu tiên là tổng lợi nhuận. Ví dụ chiến lược lời 25% trong một năm. Đây là con số dễ hiểu, nhưng chưa đủ. Cần so với benchmark. Nếu VN-Index cùng kỳ tăng 30%, chiến lược lời 25% chưa chắc tốt. Nếu VN-Index giảm 10% mà chiến lược vẫn lời 8%, đó lại là kết quả đáng chú ý. Vì vậy, lợi nhuận luôn nên được đặt cạnh benchmark.
Chỉ số thứ hai là max drawdown, tức mức sụt giảm lớn nhất từ đỉnh xuống đáy của tài khoản. Một chiến lược lời cao nhưng drawdown quá sâu có thể rất khó theo. Ví dụ chiến lược A lời 40% nhưng từng drawdown 35%. Chiến lược B lời 22% nhưng drawdown chỉ 8%. Với nhiều người, chiến lược B có thể phù hợp hơn vì dễ chịu đựng hơn.
Chỉ số thứ ba là win rate, tức tỷ lệ lệnh thắng. Nhưng như đã nói ở các topic trước, win rate không quyết định tất cả. Một chiến lược thắng 70% số lệnh vẫn có thể lỗ nếu lệnh thua quá lớn. Vì vậy, cần đi cùng expectancy, tức kỳ vọng lợi nhuận trung bình mỗi lệnh.
Ví dụ một chiến lược thắng 45% số lệnh, lệnh thắng trung bình +3R, lệnh thua trung bình -1R. Expectancy = 45% x 3R - 55% x 1R = 0,8R. Đây là hệ thống có kỳ vọng dương dù win rate dưới 50%. Ngược lại, hệ thống thắng 75% nhưng thắng trung bình +0,5R và thua trung bình -2R lại có kỳ vọng âm.
Chỉ số thứ tư là Sharpe ratio hoặc các chỉ số đo lợi nhuận điều chỉnh theo rủi ro. Sharpe giúp trả lời câu hỏi lợi nhuận có xứng đáng với mức biến động phải chịu không. Một chiến lược lợi nhuận cao nhưng biến động quá lớn chưa chắc tốt bằng chiến lược lợi nhuận vừa phải nhưng ổn định hơn.
Chỉ số thứ năm là số lượng lệnh và độ ổn định qua thời gian. Một chiến lược chỉ có 10 lệnh trong backtest chưa đủ đáng tin. Một chiến lược chỉ thắng trong một giai đoạn thị trường tăng mạnh cũng chưa chắc bền. Cần xem kết quả qua nhiều giai đoạn như thị trường tăng, giảm, sideway, thanh khoản cao, thanh khoản thấp.
Ví dụ chiến lược breakout lời rất tốt trong năm thị trường tăng, nhưng lỗ liên tục khi thị trường sideway. Nếu biết điều này, trader có thể thêm bộ lọc thị trường. Chỉ dùng chiến lược breakout khi VN-Index trên MA50 hoặc khi độ rộng thị trường tích cực. Nhờ dữ liệu đánh giá, trader biết chiến lược phù hợp với môi trường nào.
Dữ liệu đánh giá cũng cần bao gồm turnover, tức tần suất xoay vòng danh mục. Một chiến lược giao dịch quá nhiều có thể tạo chi phí lớn. Nếu mỗi tuần mua bán liên tục, phí giao dịch và trượt giá sẽ ảnh hưởng mạnh hơn so với chiến lược giữ vị thế vài tuần hoặc vài tháng.
Ngoài ra, cần có dữ liệu nhật ký giao dịch. Nhật ký không chỉ ghi lời lỗ, mà còn ghi lý do vào lệnh, lý do thoát lệnh, trạng thái thị trường, cảm xúc khi giao dịch và có làm đúng hệ thống không. Với trader định lượng, nhật ký giúp phân biệt lỗi chiến lược và lỗi thực thi. Có khi chiến lược đúng nhưng trader vào sai khối lượng, thoát sai điểm hoặc bỏ lỡ tín hiệu vì cảm xúc.
Ví dụ hệ thống yêu cầu cắt lỗ khi giá thủng MA20, nhưng trader không cắt vì hy vọng. Sau đó lỗ lớn. Nếu chỉ nhìn kết quả, có thể tưởng chiến lược sai. Nhưng khi xem nhật ký, lỗi nằm ở việc không tuân thủ hệ thống. Đây là dữ liệu rất quan trọng để cải thiện.
Một chiến lược trading hoàn chỉnh nên có đầy đủ ba lớp dữ liệu. Lớp đầu tiên là dữ liệu thị trường gồm giá, volume, thanh khoản, benchmark, nhóm ngành và trạng thái thị trường. Lớp thứ hai là dữ liệu tín hiệu gồm điều kiện vào lệnh, thoát lệnh, stop loss, position sizing, chi phí và khung thời gian. Lớp thứ ba là dữ liệu đánh giá gồm lợi nhuận, drawdown, win rate, expectancy, Sharpe, số lượng lệnh, turnover và nhật ký thực thi.
Kết luận lại, một chiến lược trading không chỉ là “mua khi có tín hiệu”. Một chiến lược đúng nghĩa phải trả lời được toàn bộ quá trình từ chọn mã, vào lệnh, quản trị lệnh, thoát lệnh đến đánh giá hiệu quả. Dữ liệu giúp trader biến cảm giác thành quy trình, biến ý tưởng thành hệ thống và biến kết quả ngẫu nhiên thành thứ có thể kiểm chứng.
