−25%

Windows 연간 결제, 10월 31일까지. 요금제 보기

EQVPS
시작하기

VPS에서 Freqtrade 돌리기: 요구 사항, Docker 설정, 그리고 솔직한 한계

2026년 7월 4일 · 4 분 읽기 · EQVPS Team

노트북에서 트레이딩 봇을 돌리는 것은 지루한 한 가지 이유로 나쁜 생각입니다: 당신의 노트북은 24시간 내내 온라인이 아니고, 시장은 그렇습니다. 거래 중에 뚜껑을 닫으면 봇은 열린 포지션 관리를 멈춥니다. Freqtrade — 인기 있는 오픈소스 Python 트레이딩 봇 — 는 무인으로 돌아가도록 만들어졌고, 그것이 바로 작은 VPS의 용도입니다. 그것이 실제로 무엇을 필요로 하는지, Docker로 어떻게 설정하는지, 그리고 부딪히기 전까지 아무도 언급하지 않는 솔직한 한계를 여기 적습니다.

왜 당신의 기기가 아니라 서버인가

두 가지 이유, 둘 다 실용적:

  • 가동 시간. 봇은 밤낮없이 시장을 지켜보고 포지션을 관리해야 합니다. 노트북이 잠들거나 재부팅될 때마다 봇은 눈이 멉니다 — 놓친 진입, 아니면 더 나쁘게, 아무도 지켜보지 않는 열린 포지션.
  • 지연과 안정성. VPS는 거래소로 꾸준한 경로를 가진 데이터센터 연결 위에 앉습니다. 가정용 wifi 지터와 NAT 리셋은 가격에 반응하는 봇에 도움이 안 됩니다.

이것은 어떤 트레이딩 봇이든 VPS에서 돌리는 뒤에 있는 같은 논리입니다 — Freqtrade는 요구 사항을 구체적으로 만들 뿐입니다.

실제로 무엇이 필요한가

Freqtrade 자체는 가볍지만, 워크로드에는 현실적으로:

  • live / dry-run 봇: 2 GB RAM이 편안한 바닥입니다. Docker 이미지, 몇 개의 페어, 인디케이터, SQLite 거래 DB가 모두 약간의 여유를 원합니다. **$5 Micro(2 vCPU / 2 GB / 25 GB)**가 알맞은 출발점입니다. 1 GB로도 소수 페어의 단일 단순 전략은 돌아가지만, 가장자리에 가깝습니다.
  • 많은 페어 / 여러 전략: **$8 Small(4 vCPU / 4 GB / 35 GB)**로 올리세요 — 페어가 많으면 동시 인디케이터 계산이 늘고 메모리의 dataframe이 커집니다.
  • 디스크: 수수함. 이미지, 당신의 user_data, 거래 DB가 25 GB에 여유 있게 들어갑니다. 백테스트용으로 내려받은 과거 데이터만 자라나는 것 — 그리고 그것은 대부분 로컬 기기에 있습니다(아래 참조).

Docker Compose로 설정하기

Docker는 Freqtrade를 돌리는 유지 관리되는, 가장 덜 아픈 방법입니다. 새 박스에서:

sudo apt update && sudo apt install -y docker.io docker-compose-v2
mkdir ~/ft && cd ~/ft
docker run --rm -v "$(pwd)/user_data:/freqtrade/user_data" \
  freqtradeorg/freqtrade:stable create-userdir --userdir user_data

공식 compose 파일을 받고, 설정을 대화식으로 만드세요(거래소, 스테이크, dry-run에 대해 물어봅니다):

curl -s https://raw.githubusercontent.com/freqtrade/freqtrade/stable/docker-compose.yml -o docker-compose.yml
docker compose run --rm freqtrade new-config --config user_data/config.json

먼저 dry-run — 항상

새 전략을 실제 돈에 겨누지 마세요. Freqtrade는 기본이 dry-run(페이퍼 트레이딩)이고, 전략이 얼마간 live 시장 데이터에서 스스로를 증명할 때까지 거기 두어야 합니다. config.json에서:

{
  "dry_run": true,
  "dry_run_wallet": 1000
}

시작하고 지켜보세요:

docker compose up -d
docker compose logs -f

compose 파일의 restart: unless-stopped 정책이 여기서 당신의 systemd 대응물입니다 — Docker가 크래시나 서버 재부팅 후 봇을 되돌립니다, 수동 단계 없이. (Docker 밖에서 돌리는 걸 선호하면 Restart=always인 systemd 유닛이 같은 일을 합니다 — 어떤 봇이든 살려 두는 것과 같은 원리.)

거래소 API 키 — 사람을 무는 부분

여기서 트레이딩 설정이 비싸게 어긋납니다. 두 가지 규칙, 협상 불가:

  • 거래 권한만. 출금은 절대 켜지 않기. 키가 새어도 최악은 원치 않는 거래 — 자금이 문밖으로 걸어 나가는 것이 아닙니다. Freqtrade는 결코 출금 접근이 필요 없습니다.
  • 키를 IP 화이트리스트에. 대부분의 거래소는 API 키를 특정 IP에 묶게 해줍니다. 이것이 **전용 IP 요금제**에서 돌리는 구체적 이유입니다: 키는 당신 서버의 고정 주소에서만 작동합니다. NAT 요금제에서는 봇이 노드의 아웃바운드 IP를 공유하고, 그것은 당신만의 것이 아닙니다 — 봇이 작동하는 데는 괜찮지만, 깔끔하게 화이트리스트할 수 없습니다.

키를 config.json에 두고, 모두 읽기 불가로 만들고(chmod 600), 컨테이너를 비-root 사용자로 돌리세요. 그리고 먼저 박스를 잠그세요 — 새 VPS 보안 체크리스트는 10분이 걸리고 중요한 문들을 닫습니다.

user_data 백업

당신의 전략, 설정, 거래 내역이 모두 user_data에 있습니다. 그것이 잃고 싶지 않은 것입니다:

tar czf ft-backup-$(date +%F).tar.gz user_data

그것을 주기적으로 서버에서 빼내세요(또는 오브젝트 스토리지로). 거래 DB를 잃는 것은 성과 내역을 잃는 것; 조정된 전략을 잃는 것은 최적화를 다시 하는 것입니다.

솔직한 한계

  • 백테스트와 hyperopt는 무겁다 — 로컬에서. 그것들은 긴 구간 CPU를 붙잡고, 공유되는 버스트 지향 VPS는 스파이크성 워크로드용이지 몇 시간의 지속적 100% 부하용이 아닙니다(이용 정책에도 어긋납니다). 자신의 기기에서 최적화하고, 결과를 live로 돌리려 배포하세요. VPS는 live 봇을 위한 것이지 연구를 위한 것이 아닙니다.
  • CPU는 공유/버스트. 대체로 캔들을 기다리다 반응하는 live 봇에는 훌륭; 1년치 1분 데이터를 hyperopt로 가는 데는 부적합.
  • 한 지역, CPU 전용. 서버는 독일에 있고 GPU가 없습니다. Freqtrade에는 괜찮음(CPU/로직이지 ML 훈련이 아님) — 전략이 무거운 ML 모델에 기댄다면 알아둘 가치가 있고, 그것은 역시 로컬에서 훈련하는 게 낫습니다.

결론

VPS의 Freqtrade는 live 봇을 위한 알맞은 설정입니다: 집중된 전략에는 $5 Micro, 많은 페어를 돌리면 $8 Small, 가동 시간에는 restart: unless-stopped의 Docker Compose, 그리고 유출이 당신을 털 수 없도록 거래 전용, IP 화이트리스트된 API 키. 무거운 백테스트와 hyperopt는 노트북에 두고, user_data를 백업하고, 서버에는 잘하는 한 가지 — 시장이 움직이는 동안 온라인을 유지하는 것 — 을 시키세요. 가입은 이메일만이고 USDC나 USDT로 결제합니다; 전용 IP는 여기서 값어치 있는 유일한 업그레이드로, 순전히 API 키 화이트리스트를 위한 것입니다.


배포할 준비가 됐나요? Freqtrade는 Micro 요금제에서 편안합니다; 더 무거운 백테스트나 많은 페어에는 Small로 크기를 올리세요.

FAQ

VPS에서 Freqtrade에 RAM이 얼마나 필요한가요?

live나 dry-run 봇에는 2 GB가 편안한 기준입니다 — Freqtrade 자체는 가볍지만, Docker 이미지에 더해 몇 개의 페어와 인디케이터가 여유를 원합니다. 1 GB로도 소수 페어의 단일 전략은 돌아가지만, 2 GB($5 Micro)가 더 안전한 바닥입니다. 백테스트와 hyperopt는 다른 이야기입니다 — 메모리와 CPU를 많이 먹으니, 서버가 아니라 자신의 기기에서 돌려야 합니다.

VPS에서 백테스트와 hyperopt를 할 수 있나요?

할 수는 있지만 보통 하면 안 됩니다. 긴 구간의 백테스트와 hyperopt는 CPU 바운드이고 버스트성입니다 — 몇 분에서 몇 시간 코어를 붙잡습니다. 공유되는 버스트 지향 요금제에서 그것은 잘못된 워크로드입니다(지속적 100% 부하는 이용 정책에도 걸립니다). 무거운 최적화는 로컬에서 하고, 조정된 전략을 VPS에 보내 live로 돌리세요.

서버에서 거래소 API 키를 어떻게 안전하게 지키나요?

키를 거래 권한만으로 만드세요 — 출금은 절대 켜지 마세요. 거래소가 IP 화이트리스트를 지원하면 키를 서버의 IP에 묶으세요. 이것이 전용 IP 요금제를 쓰는 진짜 이유입니다(NAT 요금제는 노드의 아웃바운드 IP를 공유합니다). 키는 Freqtrade 설정 안의 root 읽기 가능하고 모두 읽기 불가한 파일에 두고, 봇은 비-root 사용자로 돌리세요.

왜 노트북 대신 VPS에서 봇을 돌리나요?

시장은 닫히지 않고, 트레이딩 봇은 신호에 반응하고 열린 포지션을 관리하려면 끊임없이 온라인이어야 합니다. 노트북은 잠들고, 재부팅하고, wifi를 떨굽니다 — 모든 틈이 놓친 진입이거나 관리되지 않은 청산입니다. VPS는 24시간 내내 가동과 거래소로의 안정적이고 낮은 지연의 연결을 줍니다. 그것이 전부의 요점입니다.

댓글

아직 댓글이 없습니다. 첫 번째가 되세요.

댓글 남기기

댓글은 표시되기 전에 검토됩니다.