输入/搜索内容
入门
欢迎使用发明者量化交易平台
快速开始
密钥安全性
平台基础
账号与计费
实盘计费与充值
子账号
交易所
通用协议
本地凭据文件
交易所特殊说明
证券与期货
加密货币
托管者
策略库
实盘
编写策略
开发工具
回测系统
进阶专题
数据与研究
对外接口

托管者管理页面列出当前账号下的托管者,可以切换列表或详细信息展示,查看托管者的IP地址、版本、编译时间等信息。点击部署托管者进入托管者部署页面,有两种方式:一键租用托管者、手动部署托管者。

托管者部署页面

在托管者部署页面点击一键租用托管者标签,根据配置、服务器机房地区等需求选择需要部署的服务器。

点击「立即购买」并输入当前发明者量化交易平台的账号密码进行验证,验证通过后将自动进行托管者程序部署。整个部署过程需要几分钟时间,系统会自动安装常用的Python库。

点击「立即购买」后租用的服务器由于是通过平台代为租用,仅具有有限的系统权限,不支持远程登录。如果需要使用未预装的第三方Python库,建议使用私有服务器进行手动部署。

通过一键租用托管者功能租用的服务器采用独立计费方式,与实盘计费相互独立。

点击「重新部署」按钮不会删除托管者目录下logs目录中的实盘日志和数据文件。

可以把托管者部署在个人电脑、服务器、树莓派(64位系统)等设备上。托管者只发布64位版本:

  • Linux命令行版:x86_64(amd64)、ARM64(aarch64)
  • macOS命令行版:Intel、Apple Silicon
  • Windows:x64、ARM64,各有命令行版和界面版

在托管者部署页面点击手动部署托管者,按系统下载对应的托管者程序并解压,可执行文件robot即托管者程序。同一页面还显示部署需要的两项信息:

手动部署托管者页面

  1. 通信地址:包含账号UID,形如node.fmz.com/123456。
  2. 密码:UID对应的发明者量化交易平台账号的密码。

Windows界面版
运行robot.exe,在界面上填写通信地址和密码,点击启动。

命令行版

bash
chmod +x robot # Linux/macOS 首次运行前加上执行权限 ./robot -s node.fmz.com/123456 # 启动后提示输入密码,输入时不回显

123456只是示例,实际的通信地址在托管者部署页面查看。不要用-p在命令行里写明文密码,它会留在shell历史和进程列表里;需要无人值守启动时,把地址和密码写进只有自己可读的配置文件robot.conf:

bash
cat > robot.conf <<'EOF' s=node.fmz.com/123456 p=你的密码 EOF chmod 600 robot.conf ./robot -c robot.conf # 启动目录下有robot.conf时,直接 ./robot 也会自动加载

全部参数和配置文件格式见命令行参数。

在后台运行
托管者忽略终端挂断信号:在SSH里前台启动后直接断开连接,托管者会继续运行,运行日志同时写在logs/docker.log。需要开机自启或崩溃后自动拉起时,可以用systemd等服务管理器运行,例如/etc/systemd/system/robot.service:

ini
[Unit] Description=FMZ robot After=network-online.target Wants=network-online.target [Service] WorkingDirectory=/opt/robot ExecStart=/opt/robot/robot -c /opt/robot/robot.conf Restart=on-failure TimeoutStopSec=90 [Install] WantedBy=multi-user.target
bash
sudo systemctl daemon-reload sudo systemctl enable --now robot

systemctl stop robot发送的SIGTERM会让托管者优雅退出:先停止其上的所有实盘、上报状态,再从平台下线。TimeoutStopSec留出足够的时间,避免收尾未完成就被强制结束。

**升级托管者**
策略运行时和交易所连接器由平台按需下发,不需要手动更新。升级托管者程序本身:先停止托管者(见托管者操作注意事项),用新版本替换robot可执行文件,再在同一工作目录启动。工作目录下的logs目录保留了托管者身份和实盘数据,启动后沿用原来的托管者ID。

**用Docker容器隔离策略进程**
Linux和macOS的命令行版可以用-i参数让每个策略进程运行在独立的Docker容器里(需要本机已安装并运行Docker)。这是策略进程的隔离方式,不是托管者本身的Docker镜像,参数见命令行参数。

先停实盘,再停托管者
删除托管者或停止托管者进程前,先确认它上面没有运行中的实盘。

正常停止托管者

  • 命令行版:在终端按一次Ctrl+C,或向进程发送SIGTERM(kill <PID>、systemctl stop)。
  • Windows界面版:点击界面上的停止按钮。

托管者收到停止指令后会优雅退出:先停止其上的所有实盘、上报最终状态,再从平台下线。收尾期间再按一次Ctrl+C会跳过状态上报和下线,直接退出,一般不要这样做。

避免强制结束
不要用kill -9结束托管者进程,也不要直接断电或强制关机。这样托管者来不及下线,平台上的实盘可能仍显示为运行中并继续计费;出现这种情况,需要先删除已离线的托管者,才能停止这些实盘。重启服务器前先停止托管者;用systemd等服务管理器运行时,系统关机会自动发送SIGTERM。