Trong bài viết này
Sau khi đọc bài này…
- So khai báo hai lượt và tìm bằng chứng còn thiếu.
- Tách chênh phí khỏi bằng chứng môi trường đúng.
- Nhận ra lãi ròng bằng nhau có thể che hai thay đổi.
Tra cứu thuật ngữ ngay trong bài
Backtesting (kiểm thử dữ liệu lịch sử) Phí hoa hồng giao dịch Expert Advisor — EACùng tên robot và tham số hiển thị vẫn có thể cho kết quả khác khi code, dữ liệu, quy cách sản phẩm hoặc mô phỏng thực hiện đổi. Manifest ghi các điều kiện ấy. Công cụ dưới so hai khai báo, không xác minh môi trường thực; giữ báo cáo và log làm bằng chứng phía sau từng bản ghi.
Lưu gì trước khi chạy lại?
Giữ cả báo cáo, danh sách thực hiện, nhật ký và bộ tham số, kể cả kết quả xấu hơn. Ảnh đường equity không xác định giá khớp đầu, số lần khớp từng phần hay ngày bắt đầu thực. Cần nối điều kiện chạy với thao tác rồi kết quả cuối.
Tách test đơn, tìm tham số tối ưu và đánh giá kỳ sau theo tài liệu Strategy Tester. Cùng tên file EA có thể là bản biên dịch hoặc thư viện khác; lưu build terminal, chương trình và phụ thuộc. Tên file không định danh nội dung.
So requestedStart với actualStart. MetaQuotes mô tả chuẩn bị lịch sử; khi lịch sử trước kỳ không đủ, test có thể bắt đầu muộn hơn. Cả tháng với kỳ rút ngắn không phải cùng đánh giá. Công cụ kiểm tra phủ CSV chỉ kiểm tra bản xuất; bài này xét điều kiện rộng hơn.
Hai manifest cùng định dạng
Dán hai JSON với đúng 13 khóa dưới, không dịch hoặc thêm khóa cấp đầu. version là số 1, chỉ phiên bản định dạng chứ không phải phiên bản EA. Các giá trị khác là chuỗi; inputs, costs, initialState cũng có thể là object thường mô tả cài đặt.
| Khóa | Nội dung cần lưu |
|---|---|
| version, platform, build, codeRevision | Định dạng, nền tảng, build, code và phụ thuộc. |
| inputs, dataSnapshot | Tham số và phiên bản dữ liệu được giữ. |
| symbolSpecification, executionModel, costs | Hợp đồng, quy tắc mô phỏng và mọi phí giả định. |
| requestedStart, actualStart, end | Ranh giới yêu cầu và thực tế. |
| initialState | Số dư, vị thế và điều kiện khởi tạo. |
dataSnapshot ghi mã lưu trữ hoặc checksum tính riêng. “data-v1” chỉ là khai báo, trang không đọc file; gọi codeRevision là hash cũng không tự xác minh nó. Không nhập mật khẩu, mã truy cập hay thông tin cá nhân; chưa biết thì để trạng thái cần xác định, không bịa phiên bản.
Ghi ngày có múi giờ rõ, ưu tiên UTC nhất quán. Công cụ so chuỗi, không tự đổi lịch nhà cung cấp. Hai mô tả cùng thời điểm có thể cần chuẩn hóa tay. Thêm Z vào giờ server không phải chuyển sang UTC. Ví dụ riêng: 14:00 giờ Việt Nam UTC+7 bằng 07:00Z cùng ngày, không phải 14:00Z; sai lệch 7 giờ dù nhãn ngày giống nhau.
Công cụ thực sự kiểm tra gì?
Hai bản mẫu có thể sửa để so trường và khai báo thiếu. Phân tích cục bộ, không gửi dữ liệu, nhập file hoặc lưu bền vững; không chạy MT5 hoặc đọc tài khoản. Object bằng nhau chỉ là mục nhập bằng nhau, không chứng nhận cùng điều kiện thị trường hoặc môi trường đầy đủ.
So hai bản ghi backtest
Mô hình: cùng giao dịch, hoa hồng khác
Hợp đồng tuyến tính, tài khoản USD, một giao dịch đóng với hai lần khớp. Lãi theo giá 10 USD; giá, lượng, kỳ giống nhau, tài trợ và phí khác bằng 0. A khai hoa hồng 1 USD/lần khớp trong costs, B là 2 USD. Không phải biểu phí broker.
A: 10−2×1=8 USD. B: 10−2×2=6 USD. Phí giải thích chênh 2 USD; không chứng minh tín hiệu kém, dữ liệu lỗi hoặc trượt giá. Công cụ cần đánh dấu costs đổi, nhưng diễn giải vẫn cần báo cáo và giả định khác.
Một lệnh, hai giả định phí
Cuộn ngang để xem hết sơ đồ.
Nếu khai báo vẫn giống nhau?
Tìm thực hiện khác đầu tiên: giờ tín hiệu, mã, phía giá, lượng và lý do vào/thoát. Số dư cuối có thể che khác biệt ngay từ lần đọc chỉ báo đầu. Ghi cả quyết định không giao dịch. Mỗi lượt kiểm soát chỉ đổi một điều kiện và giữ báo cáo cũ; đổi nhiều thứ khó quy nguyên nhân.
Kiểm tra phụ thuộc file và khởi tạo. Tài liệu tester tách agent khỏi terminal, gồm global variables và thao tác file. Code dùng ngẫu nhiên cần lưu cách khởi tạo bộ sinh. Đừng mặc định mọi chênh do cache hoặc xóa bản lưu trước khi xác định nguyên nhân.
Manifest có thể bỏ sót phụ thuộc hoặc mô tả dữ liệu sai. Đừng chọn bản lãi cao hay gán bản thấp cho lỗi nền tảng. Sổ phiên bản và bằng chứng mở rộng kiểm định; hướng dẫn MT4/MT5 bàn cài đặt.
Giá trị bổ sung: cùng lãi ròng có thể che hai thay đổi
Phản ví dụ riêng: A lãi theo giá 10 USD, tổng phí 2, ròng 8; B lãi theo giá 12 USD, phí 4, ròng cũng 8. Chênh giá +2 và chênh phí +2 bù nhau. Số cuối giống nhau không xác nhận cùng khớp hoặc code; phải đối chiếu từng thành phần và sự kiện. Đây là số hư cấu, không phải hai lần chạy thực.
| Thành phần | A | B |
|---|---|---|
| Theo giá | 10 USD | 12 USD |
| Phí | 2 USD | 4 USD |
| Ròng | 8 USD | 8 USD |
Lãi ròng bằng nhau, thành phần khác nhau
So từng thành phần và sự kiện đầu tiên khác nhau.
Trên màn hình nhỏ, bạn có thể cuộn ngang hoặc phóng to sơ đồ. Các giá trị và kết luận cũng có ở phần văn bản bên dưới.
- Theo giá A/B
- 10 / 12 USD – B cao hơn 2.
- Phí A/B
- 2 / 4 USD – B cũng cao hơn 2.
- Ròng A/B
- 8 / 8 USD – Bằng nhau không chứng nhận cùng khớp.
Sau khi so hai lượt chạy
- Giữ A/B riêng, hoàn thiện 13 trường và nối mã với bản code/dữ liệu/cài đặt đúng. Chưa có bằng chứng thì ghi chưa biết.
- Chọn một khác biệt, kiểm tra trong mô hình ngắn. Với hoa hồng, đối chiếu số khớp và phí; với ngày đầu, tìm tín hiệu sớm nhất. Giữ cả lượt không xác nhận giả thuyết.
- Nếu khai báo giống nhau, tìm sự kiện nhật ký khác đầu tiên và dữ liệu cần để tái lập quyết định. Chỉ quay lại đánh giá chiến lược sau khi giải thích nguyên nhân; công cụ không dự đoán lợi nhuận hoặc chứng nhận lịch sử.
Kiểm tra mức độ hiểu bài
Bài tập: khoảng 2 phút.
Xem đáp án và giải thích
A: 10−2=8 USD; B: 10−4=6 USD, chênh 2 USD.
Câu hỏi khác
Manifest giống nhau chứng nhận backtest tái lập?
Xóa cache hoặc biên dịch lại trước?
Vì sao actualStart khác requestedStart?
Chọn bản có lãi cao hơn?
Nguồn và kiểm chứng
- www.metatrader5.com
Nguồn tham khảo cho nội dung; xem phạm vi và giả định được nêu trong bài.
- www.metatrader5.com
Nguồn tham khảo cho nội dung; xem phạm vi và giả định được nêu trong bài.
- www.metatrader5.com
Nguồn tham khảo cho nội dung; xem phạm vi và giả định được nêu trong bài.
Các phép tính dùng giả định được nêu rõ. Chúng không thay thế dữ liệu thị trường hiện tại hoặc điều khoản của nhà cung cấp.
