Công cụ backtest chiến lược chỉ báo tổng hợp
Công cụ biến điểm tổng hợp minh bạch (giá trị power law, xu hướng, sụt giảm, động lượng, biến động thấp) thành quy tắc: mua khi điểm thấp, bán bớt khi điểm cao. Mỗi quan sát tháng chỉ dùng dữ liệu có trước thời điểm đó, có tính phí và trượt giá, và kết quả được so với DCA có cùng dòng tiền và cùng chi phí.
Giao diện tương tác của phòng nghiên cứu này hiện bằng tiếng Anh; phần hướng dẫn bên dưới mô tả đầy đủ dữ liệu đầu vào, phương pháp và giới hạn.
Dữ liệu đầu vào
- Vốn ban đầu (USD; mặc định 10.000) và góp hằng tháng (USD; mặc định 500)
- Mua khi điểm ≤ (1–98; mặc định 30) và bán bớt khi điểm ≥ (2–99; mặc định 75)
- % tiền mặt dùng mỗi lần mua (1–100; mặc định 50) và % BTC bán mỗi lần bán (1–100; mặc định 25)
- Phí một chiều và trượt giá một chiều (0–500 bps; mặc định 10 và 5)
- Năm trọng số value, trend, drawdown, momentum, risk (0–100; mặc định 30/20/20/20/10)
Kết quả hiển thị
- Giá trị cuối kỳ của chiến lược và của DCA
- Sụt giảm tối đa, tổng phí, số giao dịch
- Thời gian tỷ trọng cao (% số tháng có BTC ≥ 50% danh mục)
- Đường vốn chiến lược so với DCA
- Xuất CSV (ngày, điểm, giá, giá trị chiến lược, giá trị DCA) và tạo snapshot vĩnh viễn
Cách sử dụng
- Đặt vốn ban đầu và khoản góp hằng tháng.
- Chọn ngưỡng điểm mua và bán; ngưỡng mua phải thấp hơn ngưỡng bán.
- Điều chỉnh tỷ lệ mua/bán, phí, trượt giá và năm trọng số.
- So sánh giá trị cuối kỳ, sụt giảm tối đa và phí với DCA.
- Xuất CSV để kiểm tra từng tháng hoặc tạo snapshot để lưu cấu hình.
Công thức
Mỗi quan sát tháng (quan sát tuần cuối cùng của tháng, tối đa 240 tháng): cộng khoản góp, tính điểm tổng hợp = Σ(thành phần × trọng số) / Σ trọng số. Nếu điểm ≤ ngưỡng mua và tiền mặt > $1: giá trị lệnh = tiền mặt × % mua / (1 + phí), giá khớp = giá × (1 + trượt giá). Nếu không, khi điểm ≥ ngưỡng bán và còn BTC: bán BTC × % bán ở giá × (1 − trượt giá), trừ phí. DCA: BTC += khoản góp / (1 + phí) / (giá × (1 + trượt giá)).
Ví dụ tính
Điểm tháng này 28 (≤ 30), tiền mặt $6.000, dùng 50% → ngân sách $3.000. Phí 10 bps: giá trị lệnh = 3.000 / 1,001 ≈ $2.997,00, phí ≈ $3,00. Giá $60.000 với trượt giá 5 bps → $60.030. BTC mua được = 2.997,00 / 60.030 ≈ 0,049925 BTC; tiền mặt còn $3.000.
Cách đọc kết quả
- Đánh giá giá trị cuối kỳ cùng sụt giảm tối đa và thời gian tỷ trọng cao, không chỉ nhìn lợi nhuận.
- Rất ít giao dịch nghĩa là điểm hiếm khi chạm ngưỡng; kết quả khi đó chủ yếu phản ánh khoản góp tích lũy dưới dạng tiền mặt.
- DCA trả cùng phí và trượt giá, nên chênh lệch giữa hai đường đến từ quy tắc giao dịch chứ không phải giả định chi phí.
Lưu ý và giới hạn
- Không có bộ trọng số đúng duy nhất; dò đi dò lại ngưỡng trên cùng lịch sử dễ biến nhiễu thành quy luật.
- Dữ liệu tháng không mô phỏng được đường đi của giá và việc khớp lệnh trong tháng.
- Cần ít nhất 24 quan sát tháng; công cụ không tự tìm ngưỡng hay trọng số tối ưu.
Câu hỏi thường gặp
Backtest chỉ báo tổng hợp có dùng dữ liệu tương lai không?
Không. Mỗi quan sát trong API lịch sử chỉ dùng thông tin có tại ngày đó, và thứ hạng của từng thành phần chỉ so với các tháng đã qua.
Vì sao backtest không có giao dịch nào?
Điểm tổng hợp chưa bao giờ xuống tới ngưỡng mua hoặc lên tới ngưỡng bán. Hãy nâng ngưỡng mua, hạ ngưỡng bán hoặc đổi trọng số rồi xem lại.
Mỗi tháng có thể vừa mua vừa bán không?
Không. Mỗi tháng tối đa một hành động: điều kiện mua được xét trước, chỉ khi không mua mới xét điều kiện bán.