VPS cho Forex: chạy MT4/MT5 trên Windows VPS 24/7
- 21 tháng 10, 2026
- 09:00
- Bởi Adrien Roche
- Hướng dẫn

VPS cho forex thực sự mang lại gì cho bạn
VPS cho forex chẳng có gì kỳ lạ: đó là một máy chủ ảo Windows trong trung tâm dữ liệu mà bạn truy cập qua Remote Desktop. Nó không bao giờ ngủ, nằm trên đường truyền của trung tâm dữ liệu với tuyến ổn định tới broker, và vẫn làm việc khi bạn gập máy. MetaTrader chạy trên VPS; laptop của bạn trở thành chiếc điều khiển từ xa.
Virtual Hosting của MetaQuotes, được bán ngay trong terminal, phù hợp cho một tài khoản nhưng chỉ cho bạn một bản sao được di chuyển lên, không phải một cỗ máy. Một VPS do bạn quản trị có thể chạy song song terminal của nhiều broker và cho phép bạn giữ các tệp. MT4 là 32-bit (terminal.exe); MT5 là 64-bit (terminal64.exe). Cả hai đều chạy nguyên trạng trên Windows Server 2019/2022 và Windows 10/11 Pro.
Cài MetaTrader 4/5 và đăng nhập vào broker
1. Kết nối và tải bộ cài
Mở VPS bằng ứng dụng tích hợp sẵn trong Windows: Win + R, mstsc, IP của máy chủ, mật khẩu Administrator. Lưu một tệp .rdp và chuyển hướng (redirect) một ổ đĩa cục bộ; đó là cách đơn giản nhất để đưa bộ cài vào và lấy bản sao lưu ra. Hướng dẫn Windows Remote Desktop Connection (mstsc) giải thích mọi tab tùy chọn. Hãy tải terminal từ trang của broker; MetaQuotes không còn phát hành bộ cài MT4 chung nữa.
2. Chọn thư mục cài đặt có chủ đích
Bộ cài đề xuất C:\Program Files\<Broker> MetaTrader 5 (Program Files (x86) với MT4). Nếu có khả năng bạn sẽ chạy terminal thứ hai, hãy cho mỗi terminal một thư mục riêng, chẳng hạn C:\Trading\BrokerA-MT5. Theo mặc định, dữ liệu, kể cả EA, nằm trong %APPDATA%\MetaQuotes\Terminal\<32-character id>\; tham số /portable giữ dữ liệu ngay trong thư mục cài đặt, giúp các bản sao và bản sao lưu trở nên độc lập:
"C:\Trading\BrokerA-MT5\terminal64.exe" /portable
"C:\Trading\BrokerB-MT4\terminal.exe" /portableĐặt tham số này vào trường Target của shortcut và luôn dùng shortcut đó; chỉ cần khởi chạy một lần thiếu nó, terminal sẽ tạo ra một thư mục dữ liệu thứ hai, trống rỗng.
3. Đăng nhập và để terminal ghi nhớ
File > Login to Trade Account: số tài khoản, mật khẩu, máy chủ. Tích Save account information (MT4) hoặc Save password (MT5) để terminal tự kết nối lại sau khi khởi động lại. Kiểm tra trong tab Journal rằng lần đăng nhập đã được chấp nhận.
Gắn EA và bật AutoTrading
File > Open Data Folder, rồi thả các tệp .ex4/.mq4 vào MQL4\Experts hoặc .ex5/.mq5 vào MQL5\Experts, indicator vào Indicators. Nhấp chuột phải vào Expert Advisors trong Navigator và chọn Refresh.
Trong Tools > Options > Expert Advisors, Allow automated trading (MT4) hoặc Allow algorithmic trading (MT5) phải được bật. Chỉ bật Allow DLL imports cho EA thực sự cần và có tác giả bạn tin tưởng; EA gọi API bên ngoài cần đưa URL của chúng vào danh sách WebRequest trên cùng tab đó.
Kéo EA vào biểu đồ đúng mã và đúng khung thời gian, tích Allow live trading (MT4) hoặc Allow Algo Trading (MT5) trong tab Common, đặt các Inputs. Sau đó bật nút AutoTrading chung trên thanh công cụ (Algo Trading trong các bản MT5 gần đây) hoặc nhấn Ctrl+E. Giao dịch cần cả nút chung lẫn ô đánh dấu của từng EA; quên một trong hai là bạn có một EA im lặng với biểu tượng mặt buồn hoặc dấu gạch chéo ở góc biểu đồ. Kiểm tra lỗi trong tab Experts của Toolbox, và chạy thử trên tài khoản demo trước.
Rời đi mà không dừng gì cả: ngắt kết nối, đừng bao giờ đăng xuất
Phiên RDP và việc đăng nhập Windows là hai chuyện khác nhau. Đóng cửa sổ Remote Desktop bằng dấu X, hoặc chạy tsdiscon, chỉ ngắt màn hình của bạn nhưng giữ phiên chạy cùng mọi terminal trong đó. Sign out trong menu Start, hoặc logoff, sẽ kết thúc phiên và đóng MetaTrader. Kết nối lại sẽ đưa bạn trở về đúng phiên cũ.
| Bạn làm gì | Phiên | EA của bạn |
|---|---|---|
Đóng cửa sổ RDP (X) hoặc chạy tsdiscon | Được giữ, ở trạng thái ngắt kết nối | Tiếp tục chạy |
Menu Start > Sign out, hoặc logoff | Kết thúc | Dừng |
| Khởi động lại không có tự động đăng nhập | Mất, không ai đăng nhập | Chết cho đến khi bạn đăng nhập |
| Khởi động lại có tự động đăng nhập + tác vụ chạy khi đăng nhập | Phiên console mới | Tự động chạy lại |
Có hai thứ có thể phá vỡ điều này. Chính sách nhóm (group policy) kết thúc các phiên đã ngắt kết nối nằm trong gpedit.msc tại Computer Configuration > Administrative Templates > Windows Components > Remote Desktop Services > Remote Desktop Session Host > Session Time Limits: Set time limit for disconnected sessions phải là Not Configured hoặc Disabled (registry: MaxDisconnectionTime trong HKLM\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services).
Thứ còn lại là mạng trên chính VPS. Định tuyến máy chủ qua VPN sẽ kéo kết nối RDP sập theo, trừ khi bạn làm như mô tả trong dùng VPN trên máy chủ RDP mà không mất kết nối. Còn khi kết nối lại bị treo ở "Connecting" rồi thất bại, nguyên nhân được trình bày trong khắc phục lỗi hết thời gian chờ kết nối Remote Desktop; phía máy chủ, phiên và EA của bạn thường vẫn ổn.
Sống sót qua khởi động lại: tự động đăng nhập và lịch khởi động lại terminal
Windows Update, một đợt bảo trì của nhà cung cấp, hay chính bản sửa lỗi của bạn rồi cũng sẽ khởi động lại VPS, và sau khi khởi động lại thì không ai đăng nhập, nên không có gì chạy cả. Ba bước sau lấp khoảng trống đó.
1. Tự động đăng nhập tài khoản khi khởi động
Dùng Autologon của Sysinternals: chạy nó, nhập tài khoản và mật khẩu, nhấn Enable; mật khẩu được lưu dưới dạng LSA secret đã mã hóa. Cách dùng registry (AutoAdminLogon, DefaultUserName, DefaultPassword trong HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon) cũng cho kết quả tương tự nhưng để mật khẩu ở dạng văn bản thuần. Phiên console giờ ở trạng thái không khóa; một shortcut trong thư mục Startup (shell:startup) trỏ tới rundll32.exe user32.dll,LockWorkStation sẽ khóa nó ngay sau khi đăng nhập mà không dừng thứ gì.
2. Khởi chạy các terminal khi đăng nhập
Tạo C:\Trading\start-terminals.cmd với một dòng start cho mỗi terminal, rồi đăng ký nó thành một tác vụ chạy khi đăng nhập, trễ một phút để mạng sẵn sàng:
@echo off
start "" "C:\Trading\BrokerA-MT5\terminal64.exe" /portable
start "" "C:\Trading\BrokerB-MT4\terminal.exe" /portable
schtasks /create /tn "Start MetaTrader" /tr "C:\Trading\start-terminals.cmd" /sc onlogon /delay 0001:00 /it /rl highestChạy schtasks bằng chính tài khoản tự động đăng nhập; không có /ru, tác vụ sẽ chạy trong phiên tương tác của người dùng đó, điều mà một ứng dụng có giao diện đồ họa cần. Với thông tin đăng nhập và profile đã lưu, terminal tự đăng nhập, gắn lại các EA cùng các input của chúng và khôi phục trạng thái AutoTrading.
3. Khởi động lại các terminal theo lịch
Terminal tích tụ log và thỉnh thoảng bị kẹt khi kết nối lại. Một lần khởi động lại hằng tuần khi thị trường đóng cửa (thứ Bảy an toàn ở mọi nơi trên thế giới) giữ chúng gọn gàng; taskkill không có /F yêu cầu đóng một cách nhẹ nhàng, nhờ đó profile cũng được lưu:
taskkill /IM terminal64.exe
timeout /t 30 /nobreak
taskkill /IM terminal64.exe /F 2>nul
call C:\Trading\start-terminals.cmd
schtasks /create /tn "Weekly MetaTrader restart" /tr "C:\Trading\restart-terminals.cmd" /sc weekly /d SAT /st 10:00 /it /rl highestThêm các dòng tương tự cho terminal.exe nếu có cả MT4. Cuối cùng, đặt Windows Update ở chế độ tải về và thông báo (sconfig trên Server, hoặc chính sách Configure Automatic Updates) và tự khởi động lại vào thứ Bảy; chuỗi bước trên sẽ đưa mọi thứ trở lại.
Nhiều terminal trên một VPS, và cách chọn cấu hình
Một terminal phục vụ một tài khoản, nên nhiều tài khoản nghĩa là nhiều terminal: mỗi cái một thư mục riêng, mỗi cái khởi chạy với /portable. Các tệp mà EA ghi với cờ common nằm trong %APPDATA%\MetaQuotes\Terminal\Common\Files, được dùng chung cho tất cả.
Mức tiêu thụ tài nguyên phụ thuộc ít vào số terminal hơn là vào việc mỗi terminal làm gì: số biểu đồ đang mở, số nến giữ trong bộ nhớ (Tools > Options > Charts > Max bars in chart), các indicator vẽ lại mỗi tick, EA bận rộn lúc có tin, và luồng tin tức, có thể tắt trong Options > Server. Strategy tester của MT5 sẽ chiếm mọi lõi nó tìm thấy, nên đừng bao giờ tối ưu hóa trên máy đang giao dịch thật. Hãy đo sau một ngày giao dịch trọn vẹn:
Get-Process terminal, terminal64 -ErrorAction SilentlyContinue |
Select-Object Name, Id, @{n="RAM_MB";e={[int]($_.WorkingSet64/1MB)}}, CPUNếu RAM ở trạng thái ổn định vượt khoảng ba phần tư của gói, hoặc CPU chạm trần lúc phiên London và New York mở cửa, hãy nâng lên một bậc trước khi thêm terminal. CPU và RAM dành riêng rất quan trọng: trên các lõi dùng chung bị bán vượt mức, đỉnh tải của máy hàng xóm sẽ rơi trúng việc xử lý tick của bạn.
Đo độ trễ tới broker và chọn khu vực
Độ trễ chỉ quan trọng với các chiến lược tính bằng mili giây: scalping, giao dịch theo tin, arbitrage. Một EA trên biểu đồ H1 quan tâm đến thời gian hoạt động liên tục, không phải thời gian khứ hồi.
Hãy hỏi broker nơi đặt máy chủ giao dịch của họ; nhiều broker sẽ trả lời bằng một địa điểm Equinix như NY4 ở Secaucus, LD4 gần London, hoặc FR2 ở Frankfurt. Sau đó đo từ VPS. Nhấp vào biểu tượng kết nối ở góc dưới bên phải terminal để xem danh sách các điểm truy cập của broker kèm ping của từng điểm (MT5 cũng hiển thị trên thanh trạng thái; đó là thời gian khứ hồi tới điểm truy cập, không nhất thiết tới bộ khớp lệnh). Rồi tìm địa chỉ mà terminal đang kết nối, ping và trace tới nó; một số broker chặn ICMP, khi đó phương án dự phòng là kiểm tra TCP trên cổng thông dụng 443:
Get-NetTCPConnection -State Established -OwningProcess (Get-Process terminal64).Id |
Select-Object RemoteAddress, RemotePort
ping -n 20 203.0.113.45
tracert -d 203.0.113.45
Test-NetConnection -ComputerName 203.0.113.45 -Port 443Hãy để ý khoảng chênh giữa giá trị nhỏ nhất và lớn nhất, chứ không chỉ giá trị trung bình; một tuyến ổn định tốt hơn một tuyến nhanh hơn chút nhưng chập chờn. Rồi chọn: broker đặt tại Mỹ, VPS New York; London hoặc Frankfurt, VPS châu Âu. Có tài khoản ở cả hai bờ Đại Tây Dương: đặt VPS gần tài khoản nhạy cảm với độ trễ, hoặc chạy mỗi khu vực một VPS.
Sao lưu thư mục MQL, và phần còn lại của thư mục dữ liệu
EA, các preset .set và bố cục biểu đồ mất hàng giờ để dựng lại, và tất cả đều nằm trong thư mục dữ liệu: MQL4 hoặc MQL5 (Experts, Indicators, Include, Libraries, Files, Presets), profiles và templates trong MT4 hoặc MQL5\Profiles trong MT5, và config cho cài đặt terminal. Bỏ qua lịch sử giá; terminal sẽ tải lại. Một bản mirror hằng ngày cộng với một bản lưu trữ có ghi ngày đủ để xử lý hầu hết các sự cố:
robocopy "C:\Trading\BrokerA-MT5\MQL5" "C:\Backups\BrokerA\MQL5" /MIR /R:1 /W:2 /NP
powershell -Command "Compress-Archive -Path C:\Backups\BrokerA -DestinationPath C:\Backups\BrokerA-$(Get-Date -Format yyyyMMdd).zip -Force"/MIR xóa ở đích những tệp không còn tồn tại ở nguồn: đúng cho một bản mirror, nhưng nguy hiểm nếu bạn trỏ nhầm thư mục. Thêm một dòng thứ hai cho config, lên lịch cho script bằng schtasks /sc daily, rồi đưa bản lưu trữ ra khỏi VPS qua ổ đĩa được chuyển hướng hoặc bằng một ứng dụng đồng bộ đám mây theo dõi C:\Backups.
Nếu bạn vẫn cần chính máy chủ, một Forex VPS của rdp.monster tại New York hoặc châu Âu được giao trong khoảng 10 giây sau khi thanh toán được xác nhận, với toàn quyền quản trị (Administrator), CPU và RAM dành riêng, băng thông không giới hạn (sử dụng hợp lý), không cần KYC, và chấp nhận tiền mã hóa khi thanh toán, từ $8.99/tháng. Bạn chọn khu vực khi thanh toán; hãy kiểm tra độ trễ tới broker trước.
Câu hỏi thường gặp
Tôi có cần VPS để chạy Expert Advisor trên MT4 hoặc MT5 không?
Đóng cửa sổ Remote Desktop có làm dừng MetaTrader không?
tsdiscon, vẫn để MetaTrader tiếp tục giao dịch. Thứ làm nó dừng là Sign out từ menu Start, lệnh logoff, hoặc một lần khởi động lại. Ngoại lệ duy nhất là một chính sách nhóm kết thúc các phiên đã ngắt kết nối sau một khoảng thời gian; hãy kiểm tra Session Time Limits trong gpedit.msc và đảm bảo nó không được cấu hình. Khi kết nối lại, bạn trở về đúng phiên cũ, với các biểu đồ vẫn mở như trước.Tôi có thể chạy bao nhiêu terminal MetaTrader trên một VPS?
/portable, rồi đo sau một ngày giao dịch trọn vẹn bằng Task Manager hoặc Get-Process. Nếu RAM ở trạng thái ổn định tiến gần giới hạn của gói hoặc CPU bão hòa lúc phiên London hay New York mở cửa, hãy nâng cấp trước khi thêm terminal, chứ đừng đợi đến sau lệnh bị lỡ đầu tiên.Vị trí VPS nào tốt nhất cho giao dịch forex?
ping cùng tracert từ VPS xác nhận tuyến đường. Độ trễ chỉ quan trọng với chiến lược scalping và giao dịch theo tin; với EA chậm hơn, thời gian hoạt động liên tục và kết nối ổn định quan trọng hơn vài mili giây.Adrien Roche, Biên tập viên hạ tầng & hosting
Kỹ sư hệ thống với hơn 10 năm vận hành các hệ thống Windows Server và Linux. Adrien phụ trách tài liệu hạ tầng của rdp.monster và viết các hướng dẫn về RDP, hosting VPS, quản trị máy chủ, mạng và công cụ bảo vệ quyền riêng tư.
Bài viết liên quan




