RDP Monster

VPS cho Forex: chạy MT4/MT5 trên Windows VPS 24/7

VPS cho Forex: chạy MT4/MT5 trên Windows VPS 24/7

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ênEA 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ốiTiếp tục chạy
Menu Start > Sign out, hoặc logoffKết thúcDừng
Khởi động lại không có tự động đăng nhậpMất, không ai đăng nhậpChế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ậpPhiên console mớiTự độ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 highest

Chạ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 highest

Thê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)}}, CPU

Nế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 443

Hã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?

Không bắt buộc, nhưng không có VPS thì EA của bạn sẽ dừng mỗi khi PC ngủ, khởi động lại hoặc mất kết nối.
Một EA trên PC ở nhà giao dịch y hệt EA trên máy chủ. Khác biệt nằm ở thời gian hoạt động liên tục. Máy bàn khởi động lại để cập nhật, laptop đi vào chế độ ngủ, mạng gia đình bị rớt, và mỗi sự kiện đều dừng terminal, đôi khi đúng lúc có một lệnh đang mở với trailing stop không còn di chuyển. Một VPS chạy trong trung tâm dữ liệu được xây dựng để hoạt động liên tục và giữ terminal sống khi bạn không theo dõi: không bắt buộc với người giao dịch thủ công đóng hết lệnh vào ban đêm, nhưng thiết yếu với một EA giao dịch trong lúc bạn ngủ.

Đóng cửa sổ Remote Desktop có làm dừng MetaTrader không?

Không. Đóng cửa sổ chỉ ngắt kết nối màn hình của bạn; phiên và terminal vẫn chạy cho đến khi bạn đăng xuất.
Windows giữ một phiên RDP đã ngắt kết nối sống cùng mọi chương trình của nó, nên nhấn X trên cửa sổ Remote Desktop, hoặc chạy 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?

Bao nhiêu tùy RAM và CPU cho phép; mỗi terminal quản lý một tài khoản, và mức tiêu thụ của nó phụ thuộc vào số biểu đồ, độ sâu lịch sử và các EA.
Không có con số cố định. Mỗi terminal đăng nhập vào một tài khoản, và bộ nhớ nó dùng tăng theo số biểu đồ đang mở, thiết lập Max bars in chart, các indicator, và mức độ hoạt động của EA. Cài mỗi terminal vào một thư mục riêng, khởi chạy với /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?

Vị trí gần máy chủ giao dịch của broker nhất: New York cho broker đặt máy chủ tại Mỹ, châu Âu cho broker đặt máy chủ ở London hoặc Frankfurt.
Broker đặt máy chủ giao dịch trong một trung tâm dữ liệu cụ thể, thường là một địa điểm Equinix như NY4 gần New York, LD4 gần London, hoặc FR2 ở Frankfurt. Hãy hỏi broker, rồi đặt VPS trên cùng châu lục. Kiểm chứng từ chính máy chủ: terminal hiển thị ping của từng điểm truy cập khi bạn nhấp vào biểu tượng kết nối, và 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ư.

Đăng ký chương trình đại lý của chúng tôi

Thông tin của bạn

Nếu bạn có bất kỳ câu hỏi nào, liên hệ với chúng tôi tại đây !
Họ và tên(Bắt buộc)
Nhập địa chỉ email của bạn, bạn cần có tài khoản trên manager.rdp.monster !

Công ty của bạn

Nhập địa chỉ website của bạn nếu có
Giải thích ngắn gọn cách bạn sẽ bán dịch vụ cho khách hàng. Ví dụ: trò chuyện với mọi người trên các diễn đàn.

Đến quái vật cũng mê cookie!

Chúng tôi sử dụng cookie để cải thiện trải nghiệm duyệt web của bạn, hiển thị quảng cáo hoặc nội dung phù hợp và phân tích lưu lượng truy cập. Khi nhấn "Chấp nhận", bạn đồng ý với việc chúng tôi sử dụng cookie.