Overview
A trading terminal should feel instant. Cloudzy’s One-Click MetaTrader 4 VPS pairs dedicated EPYC vCPUs, DDR5 RAM, and pure-NVMe storage with a 10 Gbps uplink so order tickets open fast and Expert Advisors run without stutter. Hourly billing lets you spin up a London or New York instance during your active sessions, then right-size later. You get Windows for MT4 4.0.0 plus an optional Node.js stack for webhooks and dashboards.
Description
This image ships with MetaTrader 4 preinstalled on Windows Server 2012 R2 or Windows Server 2016. It is tuned for low-latency logins to common broker servers, stable EA uptime, and predictable disk I/O for tick logs and history files. You also get snapshot controls and a static IP so terminals reconnect cleanly after maintenance.
Access the Desktop
Connect using any RDP client, then sign in with the Administrator password you set at deploy time. Once on the desktop, launch MetaTrader 4, add your broker server, and log in to your trading account. Keep your VPS running during market hours so EAs and alerts stay active even if your laptop sleeps.
Advanced Features
These are the upgrades that matter for automated and manual trading. They keep charts responsive during volatile candles and prevent platform stalls when EAs write logs.
- Dedicated vCPUs & DDR5 RAM for consistent strategy tester and EA performance
- Pure NVMe storage for fast tick cache, logs, and history writes
- 10 Gbps network port with Tier-1 blend to reduce packet loss during news spikes
- Snapshots and instant rollback before platform or EA updates
- Hourly billing for staging or weekend test boxes
- A single reboot applies any resize. No data migration needed.
Ease of use
You control power actions, snapshots, and region moves from the dashboard. Use the VPS IP directly in your RDP client for immediate access, or point a DNS record later. A built-in latency view helps you pick a region that maps closest to your broker’s servers for steadier pings.
Performance Focus
Stable TTFB to broker gateways helps with faster logins, snappier symbol changes, and fewer hiccups during EA I/O. NVMe plus high clock EPYC cores reduce the lag you feel when switching profiles or running the Strategy Tester on historical data.
Full Platform Control
Administrator rights let you install additional terminals, fonts, VPN clients, and file sync tools. KVM isolation protects your session from neighbor workloads. Dedicated IPv4 and optional IPv6 keep your connection reputation cleaner, which helps reduce security prompts and re-auth loops.
Powerful Tools
Everything here supports a clean MT4 experience and simple maintenance, so you can focus on trading instead of server chores.
- Preinstalled MetaTrader 4 terminal 4.0.0 on Windows
- Optional hardening and monitoring add-ons on request
- Snapshot recipes for pre-update safety
- Simple backup patterns to S3-compatible storage
- Predictable memory and I/O profile so EAs and indicators don’t time out on heavy logging
Optional Node.js Companion for Webhooks, Dashboards, and APIs
Some traders run trade copiers, REST hooks, or status pages. Your image includes an optional Node.js setup recipe on Ubuntu 24.04 that prepares an app stack behind Nginx with PM2 for process control. Use it as a sidecar VPS or as an alternate image in the same region.
What the script does
Creates a nodejs user, installs NVM v0.40.3, Node.js 22 (set as default), updates npm, installs PM2, enables PM2 on boot, installs and enables Nginx as a reverse proxy to http://localhost:3000, and configures WebSocket headers and client IP forwarding. Nginx restarts and enables at boot.
Security and access
The nodejs user is in sudo. A default password of password is set during automation. Change it immediately after login:
passwd nodejs |
Node.js app setup
ssh <your-server-ip> su – nodejs mkdir -p /home/nodejs/your-app git clone your_repo.git /home/nodejs/your-app cd /home/nodejs/your-app npm install –omit=dev pm2 start app.js –name your-app-name pm2 save |
Set your app to listen on port 3000 or edit /etc/nginx/sites-available/default, test with nginx -t, then:
sudo systemctl restart nginx |
Your app will be reachable at http://<server-ip>.
Variables you can set
- NVM_VERSION for the Node.js version, default 22
- NODEJS_USER_PASSWORD to reset the initial nodejs password
Important files and directories
- /home/nodejs/.nvm/ NVM and Node.js installs
- /home/nodejs/.bashrc NVM sourcing lines
- /etc/nginx/sites-available/default Nginx reverse proxy config
- /usr/lib/node_modules/pm2/ PM2 install path
- /var/www/html default web root
Logs
- Nginx logs at /var/log/nginx/access.log and /var/log/nginx/error.log
- PM2 with pm2 logs or ~/.pm2/logs/ as nodejs
- App logs via PM2 or your app’s own files
Future enhancements
- HTTPS with Certbot using the nginx plugin
- A minimal sample app for quick deployment
- Optional MongoDB integration for telemetry
Global Reach
Pick the data center closest to your broker or copy-trading network. Cloudzy operates points of presence across the following:
- North America: New York City, Dallas, Miami, Utah, Las Vegas
- Europe: London, Amsterdam, Frankfurt, Zurich
- Asia-Pacific: Singapore
Each site offers a 10 Gbps port, Tier-1 carrier mix, and a 99.95% uptime SLA. The only variable is distance.
Application Details
Version: 4.0.0
OS: Windows Server 2012 R2, Windows Server 2016
Minimum RAM: 4 GB
IP Types: IPv4, IPv6
Deploy Cloudzy’s One-Click MetaTrader 4 VPS Now! Your trading terminal, EAs, and optional webhook stack can be live in minutes.
Important: Configuration & Domain Responsibilities
You get full SSH/root access on every OCA. That power also means your changes can break the app. Please read this before tweaking configs.
- You manage the domain. We don’t sell or host domains/DNS. If the app needs a domain, you must point your domain to the server (A/AAAA/CNAME, and MX/TXT if relevant). SSL issuance and many dashboards depend on this being correct.
- Changing the domain/hostname after install isn’t trivial. Many OCAs write the domain into configs (.env, reverse proxy, app URLs). If you change it, also update:
- Reverse proxy (Nginx/Caddy) and TLS certificates
- App “external URL”/base URL and callback/webhook URLs
- Any hard-coded links in the app or add-ons
- Credentials matter. Renaming the default admin, rotating passwords, or changing service ports without updating the app config can lock you out or stop services. Keep credentials safe and in sync across the app, proxy, and any integrations.
- Nameserver changes can cause downtime. Moving your domain to new nameservers or editing NS records triggers propagation delays. Plan changes, lower TTL ahead of time, and verify A/AAAA records before switching.
- Firewall/port edits can break access. If you change SSH, HTTP/HTTPS, RDP, or app ports, update firewalls (UFW/CSF/security groups) and reverse-proxy rules accordingly.
- Email (SMTP) ports are restricted by default. Outbound mail ports (e.g., 25/465/587) may be closed to prevent abuse. If your OCA must send email, request SMTP Access from support or use a transactional email provider (SendGrid/Mailgun/SES) via API or approved SMTP.
- Email & allowlists. If the app sends mail or receives webhooks, changing IPs/hostnames may affect deliverability or allowlists. Update SPF/DKIM/DMARC and any IP allowlists.
- Before any big change: take a snapshot. Use the panel’s snapshot/backup first. If a plugin, update, or config edit backfires, you can roll back in minutes.
- Support scope. We provide the server and the preinstalled OCA image. Ongoing application-level configuration (domains, DNS, app settings, plugins, custom code) is the user’s responsibility.
Quick rule of thumb: if you touch domain, ports, passwords, hostnames, or proxy/SSL configs, expect to update the app’s settings too, and snapshot first.
The script creates a nodejs user, installs Node Version Manager (NVM), Node.js (version 22), PM2 (a process manager), and Nginx as a reverse proxy, and configures them for deploying Node.js applications.
- Creates a nodejs user with a home directory (/home/nodejs) and Bash shell.
- Adds nodejs to the sudo group.
- Sets the user password to password.
- Runs as nodejs user via sudo -H -u nodejs to ensure correct home directory (/home/nodejs).
- Downloads and installs NVM (v0.40.3) from https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh.
- Configures .bashrc to source NVM automatically:
- Adds export NVM_DIR=”$HOME/.nvm”.
- Adds NVM script and bash completion.
- Sources .bashrc to make NVM available in the script.
- Installs Node.js 22 via NVM as nodejs user.
- Sets it as the default version: nvm alias default 22.
- Updates npm globally: npm install -g npm.
- Installs PM2 globally as nodejs user: npm install -g pm2.
- Configures PM2 to start on boot by generating and executing a systemd startup command.
- Installs Nginx: apt install -y nginx.
- Configures a default Nginx site in /etc/nginx/sites-available/default:
- Listens on port 80.
- Proxies requests to http://localhost:3000 (assumed Node.js app port).
- Includes headers for WebSocket support and client IP forwarding.
- Restarts and enables Nginx: systemctl restart nginx, systemctl enable nginx.
NodeJS app setup:
- Login via ssh to your server.
- Use the following commands in order:
- su – nodejs
- mkdir /home/nodejs/your-app
- git clone your_repo.git /home/nodejs/your-app
- cd /home/nodejs/your-app
- npm install –omit=dev
- pm2 start app.js –name your-app-name
- pm2 save
- Adjust your app’s port to 3000 or update the NGINX config accordingly (edit /etc/nginx/sites-available/default, test with nginx -t, and restart systemctl restart nginx).
- Your app is accessible at http://<server-ip>
- Notes:
- The nodejs user has sudo access.
- Change nodejs user password: passwd nodejs.
- Enable HTTPS with Certbot: apt install certbot python3-certbot-nginx, then certbot –nginx.
OS: Ubuntu 24.04
Variables:
- NVM_VERSION: Node.js version (default: 22).
- NODEJS_USER_PASSWORD: Password for nodejs user.
Important Files and Directories:
- /home/nodejs/.nvm/: NVM and Node.js installations.
- /home/nodejs/.bashrc: Configures NVM sourcing.
- /etc/nginx/sites-available/default: Nginx configuration for proxying to Node.js.
- /usr/lib/node_modules/pm2/: PM2 installation.
- /var/www/html: Default web root.
- Logs:
- Nginx: /var/log/nginx/{access.log,error.log}.
- PM2: pm2 logs or ~/.pm2/logs/ (as nodejs user).
- Node.js app: Managed by PM2 or app-specific logs.
Future Enhancements:
- Add HTTPS setup with Certbot.
- Include app deployment example in the script.
- MongoDB integration.