Sổ Lệnh đọc dữ liệu nến từ file trên máy bạn, không tải sẵn dữ liệu về máy chủ. Bạn tự xuất từ MetaTrader của chính mình, nên dữ liệu khớp đúng với sàn bạn đang dùng — kể cả spread. Bài này chỉ cách lấy file đó.
Cách nhanh: xuất nhiều cặp một lượt bằng script
Nếu bạn cần vài cặp, đừng bấm tay từng cái. Trong bản tải về có sẵn file
mt5/XuatLichSu.mq5 làm việc đó một lượt.
- Mở MT5, vào
File → Open Data Folder - Đi tiếp vào thư mục
MQL5\Scripts - Chép file
XuatLichSu.mq5vào đó - Quay lại MT5, cửa sổ Navigator → chuột phải →
Refresh - Mở mục Scripts, kéo
XuatLichSuthả vào biểu đồ bất kỳ - Bảng tham số hiện ra — điền rồi bấm OK
Các tham số và ý nghĩa:
| Tham số | Mặc định | Nên đặt gì |
|---|---|---|
InpSymbols | EURUSD,GBPUSD,… | Danh sách cặp, cách nhau bằng dấu phẩy |
InpTimeframe | PERIOD_M1 | Để M1. Lý do ở mục dưới |
InpYears | 2 | Số năm lịch sử. Bắt đầu bằng 1 cho nhẹ |
InpFolder | SoLenh | Thư mục con trong MQL5\Files |
InpUseSuffix | bật | Tự dò hậu tố của sàn, ví dụ EURUSD.pro hay EURUSDm |
File ra nằm ở MQL5\Files\SoLenh\, tên dạng GBPUSD_M1.csv.
Chạy xong MT5 hiện hộp thoại báo số file và số nến đã xuất.
Cách thủ công trên MT5
View → Symbols(phím tắtCtrl+U)- Tìm và chọn cặp tiền trong cây bên trái
- Sang thẻ Bars
- Chọn khung thời gian và khoảng ngày, bấm Request
- Bấm Export, lưu file
Cách thủ công trên MT4
Tools → History Center (phím tắt F2), chọn cặp, chọn khung
thời gian, bấm Export.
File MT4 kiểu cũ không có dòng tiêu đề và phân cách bằng dấu phẩy. Bộ đọc vẫn hiểu, nhưng nó không có cột spread — hệ thống sẽ dùng spread bạn khai trong Cài đặt thay vì spread thật của từng cây nến.
Vì sao nên xuất khung M1
Vì engine luôn tua theo khung gốc của file, còn biểu đồ thì đổi khung được. Nạp file M1 nghĩa là bạn xem phân tích trên H4 hay D1 tuỳ thích, nhưng lệnh được kiểm tra chạm cắt lỗ / chốt lời với độ chính xác từng phút — đúng cách thị trường thật vận hành.
Nạp file M5 thì mất khung M1, và mọi lệnh chỉ được kiểm tra năm phút một lần. Với lệnh có cắt lỗ hẹp, khác biệt này không nhỏ.
Bù lại, file M1 nặng hơn nhiều. Xem mục cuối bài về giới hạn dung lượng.
Đặt tên file cho đúng
Đặt dạng GBPUSD_M5_....csv thì hệ thống tự nhận ra cặp tiền và khung thời
gian, khỏi phải chọn tay. Bộ đọc chấp nhận:
- File MT5 có dòng tiêu đề
<DATE> <TIME> <OPEN> …, phân cách bằng tab - File MT4 kiểu cũ, không tiêu đề, phân cách bằng dấu phẩy, tên dạng
EURUSD60.csv - File chung có tiêu đề
Date,Open,High,Low,Close,Volumevới ngày giờ gộp một cột - Phân cách bằng tab, dấu phẩy, chấm phẩy hoặc khoảng trắng — tự dò
Ba lỗi hay gặp
Xuất ra ít nến hơn mong đợi
MT5 chỉ tải lịch sử về máy khi cần. Lần chạy đầu thường thiếu vì terminal đang tải dở. Cách xử lý: mở biểu đồ cặp đó, chuyển sang khung M1, kéo lui về quá khứ cho MT5 tải đủ, rồi xuất lại. Với script thì cứ chạy lại lần hai — lần đầu nó đã kích cho MT5 bắt đầu tải.
Ngoài ra nhiều sàn chỉ giữ lịch sử M1 vài năm gần nhất. Đặt InpYears là 10
không có nghĩa bạn sẽ nhận được 10 năm.
Giờ trong file lệch với giờ Việt Nam
Mốc thời gian trong file MT5 là giờ máy chủ của sàn, thường UTC+2 hoặc UTC+3 tuỳ mùa. Hệ thống hiển thị đúng con số trong file, không tự quy đổi — vì quy đổi sai còn tệ hơn không quy đổi.
Chỗ duy nhất cần biết độ lệch là phần phân loại phiên Á / Âu / Mỹ trên trang thống kê. Khai độ lệch ở Cài đặt → Lệch giờ sàn so với UTC. Không biết sàn mình đặt múi nào thì mở một biểu đồ M1 và so giờ cây nến mới nhất với giờ thật.
File quá nặng, nạp lại lần sau bị mất
Một năm dữ liệu M1 của một cặp khoảng 370.000 nến, file 40–45 MB. Trình duyệt chỉ cho mỗi trang web lưu một hạn mức nhất định, thường vài chục MB, nên file cỡ đó chạy bình thường trong phiên làm việc nhưng không được giữ lại — lần mở sau phải nạp lại. Hệ thống báo rõ khi điều này xảy ra chứ không im lặng.
Muốn giữ được thì cắt bớt: xuất 3–6 tháng M1 thay vì cả năm, hoặc dùng M5 nếu bạn chỉ phân tích khung lớn. Ba tháng M1 đã đủ cho vài trăm lệnh backtest — mà vài trăm lệnh chính là ngưỡng để các chỉ số bắt đầu đáng tin.
Về bản quyền dữ liệu
Dữ liệu bạn xuất từ terminal của chính bạn, dùng cho việc của chính bạn, ở ngay trên máy bạn — không có phát tán lại. Đó là lý do công cụ này được thiết kế đọc file từ máy người dùng thay vì phục vụ sẵn kho dữ liệu. Nếu bạn định chia sẻ lại file dữ liệu cho người khác, hãy xem điều khoản sử dụng của sàn trước.