1. Giới Thiệu
Trong phân tích kỹ thuật và phát triển hệ thống giao dịch, đường equity (vốn chủ sở hữu) là một trong những công cụ trực quan và quan trọng nhất để đánh giá hiệu quả của một chiến lược. Đường equity mô tả sự thay đổi số vốn trong tài khoản theo thời gian, qua các lệnh giao dịch có lời hoặc lỗ.
Nếu bạn kiểm tra lại hệ thống trong 1 năm, đường equity sẽ bắt đầu từ số vốn ban đầu, và thể hiện các biến động lên/xuống ứng với kết quả của các giao dịch. Đường này cho phép bạn:
- Đánh giá hiệu suất hệ thống.
- Xác định các giai đoạn drawdown nghiêm trọng.
- Phân tích độ ổn định của lợi nhuận.
- So sánh với các chiến lược khác.
Mục tiêu lý tưởng của một hệ thống là tạo ra đường equity mượt, tăng đều, ít biến động – điều này phản ánh một chiến lược ổn định và hiệu quả trên nhiều điều kiện thị trường.
2. Biểu Đồ Equity Cá Nhân (Individual Equity)
2.1 Khái Niệm
Biểu đồ equity cá nhân thể hiện vốn chủ sở hữu theo thời gian cho một mã chứng khoán duy nhất, dựa trên kết quả của lần kiểm tra lại gần nhất. Đây là công cụ rất hữu ích để phân tích chi tiết hiệu quả của hệ thống đối với từng mã.
2.2 Cách Hiển Thị
- Sau khi thực hiện kiểm tra lại (backtest), bạn nhấp chuột vào mũi tên bên cạnh nút “Equity” trong cửa sổ Analysis (Phân Tích Tự Động).
- Chọn “Individual Equity”.
Biểu đồ sẽ hiển thị đường equity ứng với mã đang hoạt động. Nếu bạn chuyển sang mã khác (kể cả mã chưa test), AmiBroker sẽ tính toán lại biểu đồ dựa trên hệ thống đã kiểm tra gần đây.
❗ Lưu ý: Biểu đồ equity cá nhân không phản ánh các hiệu ứng cấp danh mục như giới hạn vị thế, phân bổ vốn hoặc các lệnh bị bỏ lỡ vì lý do kỹ thuật.
3. Biểu Đồ Equity Cấp Danh Mục (Portfolio Equity)
3.1 Mục Đích
Biểu đồ Portfolio Equity thể hiện toàn bộ hiệu suất của danh mục đầu tư, phản ánh đầy đủ các yếu tố thực tế mà một nhà giao dịch phải đối mặt như:
- Giới hạn vị thế tối đa.
- Phân bổ vốn cho nhiều mã.
- Các giao dịch bị bỏ qua do thiếu vốn.
- Hiệu ứng từ các hàm như HoldMinBars, ApplyStop, phí hoa hồng, trượt giá, v.v.
3.2 Cách Thực Hiện
- Nhấn đúp vào nút “Equity” hoặc chọn “Portfolio Equity” từ menu thả xuống trong Analysis sau khi kiểm tra lại.
3.3 Tùy Chỉnh Hiển Thị
Khi biểu đồ được mở, bạn có thể nhấn chuột phải → chọn “Parameters” để:
- Hiển thị đường equity dưới nước (underwater – mức giảm từ đỉnh gần nhất).
- Số lượng thanh (bars) kể từ mức cao nhất.
- Hồi quy tuyến tính (để đánh giá xu hướng vốn chủ sở hữu).
4. Hàm Equity() – Công Cụ Vẽ Đường Vốn Chủ Sở Hữu Bằng Mã AFL
4.1 Giới Thiệu
Hàm Equity() cho phép bạn tính toán và trực quan hóa đường vốn chủ sở hữu cho một mã chứng khoán ngay bên trong công thức AFL, mà không cần thực hiện backtest từ Analysis.
4.2 Cú Pháp
afl
Copy code
Equity( flags = 0, rangeType = -1, from = 0, to = 0 )
Tham Số:
- flags: xác định cách tính toán và áp dụng các tín hiệu.
- 0: chỉ tạo mảng equity như phiên bản cổ điển.
- 1: áp dụng tất cả lệnh dừng, cập nhật tín hiệu như backtest thực sự.
- 2: không di chuyển lại tín hiệu khi có độ trễ (ít dùng).
- rangeType:
- -1: mặc định, sử dụng phạm vi Analysis.
- 0: toàn bộ dữ liệu.
- 1: n bar gần nhất.
- 2: n ngày gần nhất.
- 3: từ ngày đến ngày (dùng from và to).
- from / to: dùng với rangeType = 3, định dạng ngày là YYMMDD.
4.3 Ví Dụ Cơ Bản
afl
Copy code
Buy = C > Ref(C, -1);
Sell = C < Ref(C, -1);
Graph0 = Equity(); // Vẽ đường vốn chủ sở hữu
Hàm Equity() tự động áp dụng các quy tắc Buy/Sell được xác định trước khi gọi hàm, và mô phỏng quá trình giao dịch tương tự như khi backtest.
5. Ghi Chú Sử Dụng Hàm Equity()
- Phụ thuộc vào cài đặt Analysis như:
- Vốn khởi đầu.
- Hoa hồng.
- Lãi suất khi không giao dịch.
- Sử dụng SellPrice hoặc CoverPrice để tính toán giao dịch cụ thể.
- Không phản ánh giới hạn danh mục (số mã, vốn).
- Có thể gọi nhiều lần trong một công thức để so sánh hệ thống hoặc điều kiện khác nhau.
6. Biểu Tượng Equity Đặc Biệt: “~~~EQUITY”
Khi bạn kiểm tra lại một danh mục, AmiBroker lưu kết quả equity vào mã đặc biệt:
afl
Copy code
PortEquity = Foreign(“~~~EQUITY”, “C”);
Plot(PortEquity, “Danh Mục Equity”, colorRed);
Đây là cách mặc định mà biểu đồ Portfolio Equity sử dụng phía sau hậu trường.
7. Tính Toán Thống Kê Dựa Trên Hàm Equity()
Bạn có thể dùng Equity() để phân tích nâng cao:
Lợi Nhuận Tối Đa
afl
Copy code
E = Equity();
Plot(Highest(E), “Tôi Đã Giàu Nhất Khi”, colorGreen);
Mức Drawdown Hiện Tại
afl
Copy code
Plot(Highest(E) – E, “Drawdown”, colorRed);
Lợi Nhuận Giao Dịch Dài / Ngắn
afl
Copy code
LongProfit = IIf(Sell, E – ValueWhen(Buy, E), 0);
ShortProfit = IIf(Cover, ValueWhen(Short, E) – E, 0);
Plot(LongProfit, “Long Profit”, colorBlue);
Plot(ShortProfit, “Short Profit”, colorOrange);
Lợi Nhuận Giao Dịch Mới Nhất
afl
Copy code
LastBar = Cum(1) == LastValue(Cum(1));
CurProfit = IIf(LastBar AND Buy, E – ValueWhen(Buy, E),
IIf(LastBar AND Short, ValueWhen(Short, E) – E, 0));
Plot(CurProfit, “Lợi Nhuận Giao Dịch Hiện Tại”, colorViolet);
8. Kết Luận
Hàm Equity() và các biểu đồ equity là những công cụ cực kỳ mạnh trong AmiBroker, giúp bạn:
- Theo dõi hiệu suất của từng chiến lược.
- Phân tích hành vi hệ thống khi thị trường thay đổi.
- Đánh giá khả năng sinh lời và rủi ro.
- Tạo chỉ báo tổng hợp từ kết quả giao dịch.
Bạn nên kết hợp biểu đồ equity cá nhân để mổ xẻ từng mã, và biểu đồ equity danh mục để nhìn tổng thể toàn chiến lược. Kết hợp thêm các chỉ số như drawdown, lợi nhuận trung bình, hồi quy… sẽ giúp bạn có cái nhìn toàn diện hơn.