Ένα trading bot στο laptop σας είναι κακή ιδέα για έναν βαρετό λόγο: το laptop σας δεν είναι online 24/7, και οι αγορές είναι. Κλείστε το καπάκι στη μέση ενός trade και το bot σταματά να διαχειρίζεται μια ανοιχτή θέση. Το Freqtrade — το δημοφιλές open-source Python trading bot — είναι φτιαγμένο να τρέχει χωρίς επίβλεψη, που είναι ακριβώς αυτό για το οποίο υπάρχει ένα μικρό VPS. Ιδού τι πραγματικά χρειάζεται, πώς να το στήσετε με Docker, και τα έντιμα όρια που κανείς δεν αναφέρει μέχρι να τα χτυπήσετε.
Γιατί server, όχι η μηχανή σας
Δύο λόγοι, και οι δύο πρακτικοί:
- Uptime. Το bot πρέπει να παρακολουθεί την αγορά και να διαχειρίζεται θέσεις όλο το εικοσιτετράωρο. Κάθε φορά που το laptop σας κοιμάται ή επανεκκινεί, το bot είναι τυφλό — μια χαμένη είσοδος, ή χειρότερα, μια ανοιχτή θέση που κανείς δεν παρακολουθεί.
- Latency και σταθερότητα. Ένα VPS κάθεται σε μια σύνδεση datacenter με σταθερή διαδρομή προς το exchange. Το jitter του οικιακού wifi και τα NAT resets δεν βοηθούν ένα bot που αντιδρά στην τιμή.
Αυτή είναι η ίδια λογική πίσω από το τρέξιμο οποιουδήποτε trading bot σε VPS — το Freqtrade απλώς κάνει τις απαιτήσεις συγκεκριμένες.
Τι πραγματικά χρειάζεται
Το ίδιο το Freqtrade είναι ελαφρύ, αλλά να είστε ρεαλιστές για το φορτίο:
- Live / dry-run bot: 2 GB RAM είναι ένα άνετο κατώφλι. Η Docker image, μια χούφτα ζευγάρια, δείκτες, και η SQLite trade DB θέλουν όλα λίγο περιθώριο. Ένα $5 Micro (2 vCPU / 2 GB / 25 GB) είναι το σωστό σημείο εκκίνησης. 1 GB μπορεί να τρέξει μία απλή στρατηγική σε λίγα ζευγάρια, αλλά είστε πιο κοντά στο όριο.
- Πολλά ζευγάρια / πολλαπλές στρατηγικές: ανεβείτε σε ένα $8 Small (4 vCPU / 4 GB / 35 GB) — περισσότερα ζευγάρια σημαίνει περισσότερος ταυτόχρονος υπολογισμός δεικτών και ένα μεγαλύτερο dataframe στη μνήμη.
- Δίσκος: μέτριος. Η image, το
user_dataσας, και η trade DB χωρούν άνετα σε 25 GB. Τα κατεβασμένα ιστορικά δεδομένα για backtesting είναι το μόνο πράγμα που μεγαλώνει — και αυτό κυρίως ζει στην τοπική σας μηχανή (δείτε παρακάτω).
Στήστε το με Docker Compose
Το Docker είναι ο συντηρούμενος, λιγότερο επώδυνος τρόπος να τρέξετε το Freqtrade. Σε ένα φρέσκο box:
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 file και δημιουργήστε μια config διαδραστικά (θα ρωτήσει για το exchange, το stake, και το 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 (paper trading) και θα πρέπει να το αφήσετε εκεί μέχρι η στρατηγική να αποδείξει τον εαυτό της σε ζωντανά δεδομένα αγοράς για λίγο. Στο config.json:
{
"dry_run": true,
"dry_run_wallet": 1000
}
Ξεκινήστε το και παρακολουθείτε:
docker compose up -d
docker compose logs -f
Η πολιτική restart: unless-stopped στο compose file είναι το ισοδύναμο systemd σας εδώ — το Docker φέρνει το bot πίσω μετά από crash ή επανεκκίνηση server, χωρίς χειροκίνητο βήμα. (Αν προτιμάτε να το τρέχετε εκτός Docker, ένα systemd unit με Restart=always κάνει την ίδια δουλειά — ίδια αρχή με το να κρατάτε οποιοδήποτε bot ζωντανό.)
API keys exchange — το μέρος που δαγκώνει τους ανθρώπους
Εδώ μια trading εγκατάσταση πάει στραβά ακριβά. Δύο κανόνες, μη διαπραγματεύσιμοι:
- Μόνο δικαίωμα trade. Ποτέ μην ενεργοποιήσετε withdrawal. Αν το key διαρρεύσει, η χειρότερη περίπτωση είναι ανεπιθύμητα trades — όχι τα κεφάλαιά σας να φεύγουν από την πόρτα. Το Freqtrade δεν χρειάζεται ποτέ πρόσβαση withdrawal.
- IP-whitelist το key. Τα περισσότερα exchanges σας αφήνουν να δέσετε ένα API key σε συγκεκριμένα IPs. Αυτός είναι συγκεκριμένος λόγος να τρέξετε σε ένα πακέτο αποκλειστικού IP: το key λειτουργεί μόνο από τη σταθερή διεύθυνση του server σας. Σε ένα πακέτο NAT το bot μοιράζεται το εξερχόμενο IP του κόμβου, που δεν είναι μόνο δικό σας — εντάξει για να λειτουργεί το bot, αλλά δεν μπορείτε να το κάνετε whitelist καθαρά.
Κρατήστε τα keys στο config.json, κάντε το όχι-world-readable (chmod 600), και τρέξτε το container ως non-root χρήστη. Και κλειδώστε το box πρώτα — η checklist ασφαλείας νέου-VPS παίρνει δέκα λεπτά και κλείνει τις πόρτες που μετρούν.
Κάντε backup το user_data
Οι στρατηγικές σας, η config, και το ιστορικό trades ζουν όλα στο user_data. Αυτό είναι το πράγμα που δεν θέλετε να χάσετε:
tar czf ft-backup-$(date +%F).tar.gz user_data
Τραβήξτε το από τον server περιοδικά (ή σε object storage). Το να χάσετε την trade DB σημαίνει να χάσετε το ιστορικό απόδοσής σας· το να χάσετε μια ρυθμισμένη στρατηγική σημαίνει να ξανακάνετε τη βελτιστοποίηση.
Τα έντιμα όρια
- Το backtesting και το hyperopt είναι βαριά — κάντε τα τοπικά. Καρφώνουν CPU για εκτεταμένες περιόδους, και ένα κοινόχρηστο, burst-προσανατολισμένο VPS είναι φτιαγμένο για αιχμηρά φορτία, όχι για ώρες συνεχούς 100% φορτίου (που επίσης συγκρούεται με την πολιτική αποδεκτής χρήσης). Βελτιστοποιήστε στη δική σας μηχανή, αναπτύξτε το αποτέλεσμα για να τρέξει live. Το VPS είναι για το live bot, όχι για την έρευνα.
- Η CPU είναι κοινόχρηστη/burst. Εξαιρετική για ένα live bot που κυρίως περιμένει candles και αντιδρά· λάθος για το άλεσμα ενός έτους δεδομένων 1-λεπτού μέσα από hyperopt.
- Μία περιοχή, μόνο CPU. Ο server είναι στη Γερμανία χωρίς GPU. Εντάξει για το Freqtrade (είναι CPU/λογική, όχι εκπαίδευση ML) — αξίζει να το ξέρετε αν η στρατηγική σας στηρίζεται σε ένα βαρύ μοντέλο ML, που πάλι εκπαιδεύεται καλύτερα τοπικά.
Κατακλείδα
Το Freqtrade σε VPS είναι η σωστή εγκατάσταση για το live bot: ένα $5 Micro για μια εστιασμένη στρατηγική, ένα $8 Small αν τρέχετε πολλά ζευγάρια, Docker Compose με restart: unless-stopped για uptime, και ένα trade-only, IP-whitelisted API key ώστε μια διαρροή να μην μπορεί να σας αδειάσει. Κρατήστε το βαρύ backtesting και hyperopt στο laptop σας, κάντε backup το user_data, και αφήστε τον server να κάνει το ένα πράγμα στο οποίο είναι καλός — να μένει online όσο κινείται η αγορά. Η εγγραφή είναι μόνο-email και πληρώνετε σε USDC ή USDT· ένα αποκλειστικό IP είναι η μία αναβάθμιση που αξίζει εδώ, καθαρά για το whitelist του API-key.
Έτοιμοι να αναπτύξετε; Το Freqtrade είναι άνετο σε ένα Micro πακέτο· για βαρύτερα backtests ή πολλά ζευγάρια, ανεβείτε σε Small.
Σχόλια
Δεν υπάρχουν ακόμη σχόλια. Γίνετε ο πρώτος.