Lợi ích của Expert Advisors có sẵn so với Lập trình / Freelancer.
Push.Mail. Làm việc với email và thông báo trong MetaTrader

Mô tả
Scalping là một trong những phương pháp kiếm tiền đầy thách thức, rủi ro và đồng thời nhanh chóng. Tuy nhiên, không có gì đảm bảo rằng bạn sẽ nhận được lợi nhuận sau khi giao dịch.
Chiến lược dựa trên tốc độ dữ liệu tick (tick data rate) có lẽ là một trong những hệ thống có lợi nhuận được bàn luận nhiều nhất. Tuy nhiên, có một số khía cạnh cần cân nhắc.
Các báo giá (quotes) nhập vào terminal chứa các lượng dữ liệu khác nhau.
Ngay cả khi bạn cài đặt hai terminal giống hệt từ cùng một công ty và khởi chạy chúng cùng lúc (điều này là không thực tế), bạn sẽ không đạt được kết quả chính xác 100%.
Ngoài ra, việc khởi chạy các scalper của bạn cùng lúc cũng sẽ không cho ra kết quả đồng bộ hoàn hảo.
Các giao dịch trên hai terminal có thể khác nhau.
Sự khác biệt này hoàn toàn phụ thuộc vào luồng truyền tải dữ liệu (data transmission flow) từ máy chủ đến terminal của bạn.
Cuộc thảo luận về hệ thống của tôi TickSniper for MT4 và TickSniper for MT5 diễn ra trên các diễn đàn với một câu hỏi: Tại sao có các vị trí mở và lợi nhuận khác nhau trên MT4 và MT5?
Câu trả lời đơn giản: sự khác biệt về báo giá. Terminal MT4 có luồng báo giá (quote flow) chậm hơn, có lẽ do tắc nghẽn lưu lượng dữ liệu.
Trong terminal MetaTrader 5, luồng báo giá (quote stream) nhanh gấp mười lần, dẫn đến sự khác biệt đáng kể giữa các giao dịch mở.
Trong bài viết này, hai Expert Advisor đã được phát triển đặc biệt: TEST TICK for MT5 và TEST TICK for MT4. Chúng hoàn toàn giống nhau về mã (tất nhiên, ngôn ngữ lập trình khác nhau, do đó tên các hàm cũng khác nhau).
Mã cho MT4:
#property copyright "Copyright 2024, expforex" #property link "" int timestart = 0; int ticknumber = 0; // Số thứ tự tick (tick number) double PriceBID = 0; // Giá BID của tick double PriceASK = 0; // Giá ASK của tick int TimemsTick = 0; // Thời gian tick tính bằng ms int init() { timestart = Time[0]; // Bắt đầu đếm từ một thanh mới để đảm bảo rằng tất cả các EA trên tất cả các terminal khởi động cùng nhau. return(0); } // Expert bắt đầu với mỗi tick int start() { if(timestart != Time[0]) { if(TimemsTick == 0) TimemsTick = GetTickCount(); ticknumber++; PriceBID = Bid; PriceASK = Ask; Comment("\n\n\n\n Số thứ tự tick = " + ticknumber + "\nPriceBID = " + PriceBID + "\nPriceASK = " + PriceASK + "\nTimeTickinms = " + (GetTickCount() - TimemsTick)); Print("Số thứ tự tick = " + ticknumber + " PriceBID = " + PriceBID + " PriceASK = " + PriceASK + " TimeTickinms = " + (GetTickCount() - TimemsTick)); } return(0); }
Mã cho MT5:
#property copyright "Copyright 2024, expforex." #property link "" #property version "1.00" int timestart = 0; int ticknumber = 0; // Số thứ tự tick (tick number) double PriceBID = 0; // Giá BID của tick double PriceASK = 0; // Giá ASK của tick int TimemsTick = 0; // Thời gian tick tính bằng ms int OnInit() { datetime Time[]; ArraySetAsSeries(Time, true); CopyTime(_Symbol, _Period, 0, 1, Time); timestart = (int)Time[0]; // Bắt đầu đếm từ một thanh mới để đảm bảo rằng tất cả các EA trên tất cả các terminal khởi động cùng nhau. return(INIT_SUCCEEDED); } // Expert bắt đầu với mỗi tick void OnTick() { datetime Time[]; ArraySetAsSeries(Time, true); CopyTime(_Symbol, _Period, 0, 1, Time); if(timestart != (int)Time[0]) { if(TimemsTick == 0) TimemsTick = (int)GetTickCount(); ticknumber++; MqlTick last_tick; SymbolInfoTick(_Symbol, last_tick); double Bid = last_tick.bid; SymbolInfoTick(_Symbol, last_tick); double Ask = last_tick.ask; PriceBID = Bid; PriceASK = Ask; Comment("\n\n\n\n Số thứ tự tick = " + ticknumber + "\nPriceBID = " + PriceBID + "\nPriceASK = " + PriceASK + "\nTimeTickinms = " + (GetTickCount() - TimemsTick)); Print("Số thứ tự tick = " + ticknumber + " PriceBID = " + PriceBID + " PriceASK = " + PriceASK + " TimeTickinms = " + (GetTickCount() - TimemsTick)); } return; }
Các Expert thực hiện những điều sau:
Khi khởi tạo, Expert ghi lại thanh bắt đầu để đảm bảo rằng tất cả các Expert trên bốn terminal đều khởi động đồng thời ở thanh tiếp theo (trong trường hợp của chúng ta, M30).
Sau đó, với mỗi tick, Expert ghi lại dữ liệu trên màn hình và trong nhật ký: số thứ tự tick, giá BID/ASK, và thời gian tick tính bằng mili giây kể từ khi bắt đầu tính toán.
Tôi đã tải về hai terminal MT4 và hai terminal MT5 từ cùng một nhà môi giới để làm cho bài kiểm tra của chúng ta trở nên đáng tin cậy hơn.
Bạn đã cài đặt MetaTrader chưa?
Việc cài đặt từ www.expforex.com yêu cầu có MetaTrader
Tôi đã khởi chạy các terminal, áp dụng biểu đồ EURUSD M30 cho cả bốn terminal, và sử dụng một Expert Advisor để xác minh các quan sát của chúng ta.
Các mục ban đầu trong nhật ký của chúng ta cho thấy rằng chúng ta đã bắt đầu đồng thời:
mt4_1:
18:29:58 TEST TICK EURUSD, M30: Số thứ tự tick = 1 PriceBID = 1.32281000 PriceASK = 1.32289000 TimeTickinms = 0
mt4_2:
18:29:58 TEST TICK EURUSD, M30: Số thứ tự tick = 1 PriceBID = 1.32281000 PriceASK = 1.32289000 TimeTickinms = 0
mt5_1:
GR 0 18:29:58 TEST TICK (EURUSD, M30) Số thứ tự tick = 1 PriceBID = 1.32336000 PriceASK = 1.32344000 TimeTickinms = 1065503
mt5_2:
GR 0 18:29:58 TEST TICK (EURUSD, M30) Số thứ tự tick = 1 PriceBID = 1.32335000 PriceASK = 1.32345000 TimeTickinms = 1065674
Như được thấy trong các ảnh chụp màn hình tiếp theo, báo giá bắt đầu giống hệt nhau, nhưng chúng ta quan sát được sự khác biệt 1-2 tick. Điều này cho thấy rõ ràng:
Scalper không thể đạt được kết quả giống hệt 100% trên hai nền tảng MT4 và MT5 khác nhau.
Nó cũng không thể mở giao dịch đồng thời trên hai terminal của cùng một nền tảng MT4/MT5.
Điều này là không thực tế và không phải lỗi của nhà môi giới.
Giao thức truyền tải đi qua mạng từ máy chủ đến máy tính của bạn, dẫn đến mất gói tin – một hiện tượng bình thường.
Sự khác biệt trong tính toán và phân tích
Các ảnh chụp màn hình sau minh họa cho những chênh lệch:
Chỉ 3 phút sau khi các Expert bắt đầu.
Hãy tham khảo nhật ký của chúng ta cho số thứ tự tick 1433 trên terminal MT4:
18:47:44 TEST TICK EURUSD, M30: Số thứ tự tick = 1433 PriceBID = 1.32336000 PriceASK = 1.32344000 TimeTickinms = 1065503
18:47:44 TEST TICK EURUSD, M30: Số thứ tự tick = 1433 PriceBID = 1.32335000 PriceASK = 1.32345000 TimeTickinms = 1065674
Chúng ta có cùng thời gian máy chủ, nhưng thời gian tính bằng ms và báo giá lại khác nhau.
Số thứ tự tick 1684
18:52:05 TEST TICK EURUSD, M30: Số thứ tự tick = 1684 PriceBID = 1.32377000 PriceASK = 1.32385000 TimeTickinms = 1326586
18:52:03 TEST TICK EURUSD, M30: Số thứ tự tick = 1684 PriceBID = 1.32374000 PriceASK = 1.32382000 TimeTickinms = 1324496
Không chỉ thời gian khác nhau, mà giá BID/ASK cũng khác nhau.
Bây giờ hãy so sánh tương tự trên các terminal MT5:
ES 0 18:48:42 TEST TICK (EURUSD, M30) Số thứ tự tick = 4316 PriceBID = 1.3231 PriceASK = 1.32318 TimeTickinms = 1124050
DS 0 18:48:43 TEST TICK (EURUSD, M30) Số thứ tự tick = 4316 PriceBID = 1.32311 PriceASK = 1.3232 TimeTickinms = 1124502
Cùng số thứ tự tick, nhưng tại sao giá lại khác nhau?
Hoặc đây là một ví dụ khác:
RJ 0 18:52:21 TEST TICK (EURUSD, M30) Số thứ tự tick = 4984 PriceBID = 1.32363 PriceASK = 1.32371 TimeTickinms = 1342701
H 0 18:52:22 TEST TICK (EURUSD, M30) Số thứ tự tick = 4984 PriceBID = 1.32364 PriceASK = 1.3237 TimeTickinms = 1344355
Thời gian đến của tick khác nhau tính bằng mili giây, Giá ASK/BID khác nhau
Bản lưu trữ chứa tất cả các tài liệu liên quan đến bài viết này, bao gồm các Expert Advisor, video, hình ảnh và file nhật ký của terminal.
Câu hỏi được đặt ra:
Expert Advisor giống nhau trên hai tài khoản thật/trực tiếp, cùng một nhà môi giới, cùng một nền tảng có thể thực hiện giao dịch giống hệt với độ chính xác 100% không?
Câu trả lời rõ ràng là Không.
Điều này không xảy ra!
Tôi hy vọng bài viết này sẽ giải đáp tất cả các câu hỏi của bạn một cách chi tiết trong tương lai. Với kiến thức này, bạn sẽ có thể vận hành scalper của mình một cách chính xác hơn trên các terminal của bạn.
Tăng lợi nhuận của bạn.
Cách kiểm tra Ping (Thời gian truy cập máy chủ của nhà môi giới)
Tốc độ từ VPS đến máy chủ của nhà môi giới dễ dàng được xác định. Chức năng này là tiêu chuẩn trong Windows và được gọi là PING.
Để xác định thời gian truy cập, bạn cần tìm địa chỉ máy chủ của mình.
Đầu tiên, mở thư mục terminal của bạn và điều hướng đến thư mục con CONFIG.
Tìm file có tên máy chủ của bạn.
Tiếp theo, mở file trong Notepad và tìm đường dẫn đến nhà môi giới của bạn. Sao chép nó vào clipboard.
Sau đó, mở menu Start và nhập lệnh cmd.
Sau đó, nhập lệnh ping theo sau là địa chỉ máy chủ của bạn.
ping mt4-demo.roboforex.com
Kết quả hiển thị thời gian từ máy tính của bạn đến máy chủ của nhà môi giới tính bằng mili giây (ms).
Giá trị càng thấp thì càng tốt đối với bất kỳ Expert Advisor nào, đặc biệt là đối với scalper.
Bạn cũng có thể kiểm tra ping đến máy chủ hoặc thay đổi Trung tâm dữ liệu (Data Center) ở góc dưới bên phải của terminal của bạn:
Nếu ping của bạn quá cao, bạn có thể cài đặt Expert Advisor trên một máy chủ VPS.
Câu hỏi?
Nếu bạn có bất kỳ câu hỏi nào, xin vui lòng hỏi. Chúng tôi không bán cho bạn điều gì mà bạn không hiểu.
Mỗi sản phẩm của chúng tôi đều có thể được thử nghiệm trước khi mua.
Chúng tôi đánh giá cao phản hồi và yêu cầu của bạn đối với sản phẩm của chúng tôi và luôn nỗ lực duy trì tiêu chuẩn chất lượng cao.
Cảm ơn bạn đã đồng hành cùng chúng tôi!
Bạn có câu hỏi không?
Bài viết này cũng có sẵn bằng: English Українська Portuguese Español Deutsch Chinese Русский Français Italiano Türkçe 日本語 한국어 العربية Indonesian ไทย Tiếng Việt
Leave a Reply