服务器选型与初始化:云服务器选择、操作系统配置、基础环境安装

做量化策略实盘部署,第一步就是选服务器。这事我踩过不少坑,今天跟你聊聊我的经验。

一、云服务器怎么选?

国内主流就三家:AWS、阿里云、腾讯云。说实话,选哪家主要看你的交易标的和网络延迟要求。

云厂商 优势 适合场景 我个人的偏好
AWS 全球节点多,API稳定 做美股、全球市场 美股首选,但国内访问有时慢
阿里云 国内节点多,延迟低 A股、期货、国内量化 我大部分项目用阿里云
腾讯云 性价比高,轻量服务器便宜 个人策略、小资金实盘 适合新手入门

配置建议:实盘策略,我建议至少 4核8G。为什么?因为策略跑起来,回测、数据同步、监控脚本都在抢资源。我曾经用 2核4G 的机器跑一个多因子策略,结果行情一波动,CPU 直接飙到 100%,订单都发不出去。嗯,那次教训挺深刻的。

核心原则:服务器离交易所越近越好。做 A 股就选华东或华南节点,做美股就选 AWS 东京或弗吉尼亚节点。

二、操作系统配置

我个人习惯用 Ubuntu 20.04 LTS。为什么?稳定、社区活跃、遇到问题好搜解决方案。CentOS 也行,但我觉得 Ubuntu 的包管理更顺手。

拿到服务器后,第一件事就是更新系统:

sudo apt update && sudo apt upgrade -y
sudo apt install -y build-essential curl wget git vim htop

这里有个坑——防火墙。量化策略的 API 端口经常被误杀。我建议先配好安全组规则,只开放必要的端口:

  • SSH 端口(22):改成非标准端口,比如 2222,防暴力破解
  • 策略 API 端口:按需开放,最好绑定内网 IP
  • 监控端口:只允许内网访问

警告:千万不要用 root 账号跑策略!我曾经见过有人直接用 root 跑策略,结果被入侵后,整个服务器被拿来挖矿。建议创建一个普通用户:

sudo adduser trader
sudo usermod -aG sudo trader

三、基础环境安装

1. Python 环境

量化策略离不开 Python。但系统自带的 Python 版本往往太老。我建议用 pyenv 管理多版本:

# 安装 pyenv
curl https://pyenv.run | bash

# 安装 Python 3.10
pyenv install 3.10.12
pyenv global 3.10.12

# 验证
python --version

为什么要用 pyenv?说白了,就是怕不同策略依赖不同版本的库。我有个策略用 TensorFlow 1.x,另一个用 2.x,没有 pyenv 的话,这两个策略根本没法共存。

2. Git 配置

Git 是策略版本管理的命根子。我建议这样配:

git config --global user.name "Your Name"
git config --global user.email "your@email.com"
git config --global core.editor vim

# 生成 SSH 密钥
ssh-keygen -t ed25519 -C "your@email.com"

然后把公钥加到 GitHub/GitLab 上。这样拉取代码就不用每次输密码了。

小技巧:我习惯在服务器上建一个 /opt/strategies 目录,所有策略代码都放这里。然后用 Git 的 post-receive 钩子自动部署。这样本地改完代码,push 一下,服务器就自动更新了。

3. Docker 安装

Docker 是实盘部署的利器。它能把策略、依赖、环境全部打包,换台机器也能直接跑。

# 安装 Docker
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh

# 将当前用户加入 docker 组
sudo usermod -aG docker $USER

# 安装 Docker Compose
sudo apt install -y docker-compose

# 验证
docker --version
docker-compose --version

安装完后,记得重启终端或重新登录,让用户组生效。

四、知识体系总览

下面这张图,是我整理的这个章节的核心逻辑。你一看就明白了:

服务器选型与初始化流程 云服务器选择 AWS 阿里云 腾讯云 操作系统配置 Ubuntu 20.04 安全配置 基础环境 Python Git Docker 最终目标:稳定、安全、可复用的实盘运行环境 策略代码 + 依赖 + 配置 = 一键部署

五、避坑指南

最后,分享几个我踩过的坑:

  • 磁盘空间:行情数据会越积越多。我建议系统盘 40GB,数据盘至少 200GB,而且挂载到 /data 目录。
  • 时区设置:量化策略对时间敏感。记得把服务器时区设为 Asia/Shanghaisudo timedatectl set-timezone Asia/Shanghai
  • Swap 分区:内存不够时,Swap 能救命。我一般设 4GB Swap,防止策略内存溢出。

一句话总结:服务器选型看交易标的,操作系统用 Ubuntu,环境用 Docker 打包。这三步走稳了,后面部署策略就是水到渠成的事。

专注资料整理