REPLYOPSAI RESEARCH NOTE
FREQTRADE GUIDE

How to Run Freqtrade on a VPS

A trading bot should survive a closed laptop, a dropped SSH session and a server reboot. This guide focuses on the infrastructure around Freqtrade rather than promising trading performance.

Recommended architecture

Use a small Linux VPS, keep Freqtrade and its user data isolated, run the process under Docker or systemd, and persist configuration, strategy files, models, logs and the trade database outside disposable containers. Start in dry-run mode before considering live execution.

VPS → Freqtrade/FreqAI → exchange API

Keep the exchange API restricted to the minimum permissions required. Withdrawal permission should not be needed for a trading bot.

Deployment checklist

  1. Provision a supported Linux VPS and install security updates.
  2. Create a non-public application directory and persistent data volume.
  3. Install Docker or a dedicated Python environment.
  4. Configure Freqtrade with dry_run enabled first.
  5. Restrict firewall exposure and do not publish the bot database.
  6. Run the process as a service with automatic restart.
  7. Verify logs, database persistence and restart behavior.
  8. Collect PAPER results long enough to expose operational and strategy failures.

Production layout: separate what can fail

EXCHANGE↔BOT→LOCAL STATE→SANITIZED METRICS

The public website should not be the bot control plane. In our lab, trading runs on separate infrastructure and the website receives a small sanitized metrics payload. A compromise of the publishing layer therefore does not expose exchange credentials or bot controls.

Persistent

Configuration, strategies, models and trade state must survive container and server restarts.

Private

Exchange credentials, databases and internal control endpoints should never be published with a dashboard.

Observable

Logs, data freshness, service state and restart behavior need monitoring just like PnL.

Reproducible

Freeze meaningful versions so the running strategy can be matched to its recorded results.

How much VPS capacity?

Basic rule-based bots can run on modest hardware. FreqAI training changes the requirement: model type, feature count, pair count and retraining frequency can increase CPU and memory demand substantially. Measure actual resource use rather than buying a large server by default.

Failure tests before leaving PAPER mode

TESTPASS CONDITION
SSH disconnectBot continues running
Process crashService restarts without duplicate state
Server rebootPersistent files and trade state return intact
API interruptionError is logged and recovery does not create unintended orders
Disk / log growthStorage remains bounded and observable
Public dashboardNo secret, raw config or control endpoint is exposed

A profitable strategy running on fragile infrastructure is still a fragile trading system. Operational tests should happen before real capital is involved.

What we run

Our current V6 experiment runs FreqAI in PAPER mode on BTC, ETH and SOL. Its public result page is updated from a sanitized metrics feed; the website never receives exchange credentials.

See the V6 experiment →

See the architecture in use

Our V6 build separates trading infrastructure from the public metrics layer and keeps exchange credentials on the trading host.

Building V6 →