文档1.0 (latest)
页面QuantCloud · 24 / 29

QuantCloud

QuantCloud 在专用的云端运行器(runner)上运行 bulk forward 任务,即使您的工作站关机或 QuantCraft 已关闭,它们也会继续运行。每个运行器一次运行一个 bulk forward 任务,因此您按运行器配置和监控一个批次。运行器仅运行 IDE 算法 —— 智能体(包括智能体 bulk 运行)在本地通过 AutoTrading 运行。桌面应用在您登录后会连接到为您的账户配置的运行器 —— 这些任务不使用您本地的 Python 服务。

这是 AutoTrading 的云端对应版本,后者在您的本地机器上运行同类批次。本页介绍您在应用中执行的操作;服务器的搭建和运维不在本文档范围内。

当您的版本启用了 QuantCloud 功能时,会出现 QuantCloud 页面和导航入口。


购买云端运行器

点击 Buy Cloud Runner,然后:

  1. 选择一个机器规格——每张卡片显示规格名称、价格($X/mo)、实例类型和简短描述。
  2. 点击 Continue to payment(或点击 ← Back 更改规格)。下一步显示订单摘要和 PayPal 订阅按钮。付款是 PayPal 订阅;应用不会直接收集银行卡信息。
  3. 获批后,运行器会被配置,并在几分钟内出现在页面上 —— 使用 Refresh runners 进行检查。

您需要一个包含 QuantCloud 的有效 QuantCraft 订阅(参见您的方案)。


运行器卡片

每个运行器显示一个状态 —— Warmup、Running、Loading…、Unavailable 或 Ready —— 以及其标签和端点。新配置的运行器会显示一个 warmup 横幅(含剩余时间),暂时阻止 bulk 运行、依赖项安装和刷新。

运行器上的操作:Dependencies、New bulk run(存在任务时为 Edit / Stop / Delete / Resume)和 Refresh。可折叠的页脚显示已安装的 Packages 和最新的安装日志。


安装依赖项

点击运行器上的 Dependencies 来安装 PyPI 软件包(运行器使用与 bulk/forward 算法相同的 Python,不是您本地 IDE 的 .venv)。如果您的算法导入了默认之外的软件包(例如 pandas、numpy),请在此添加:

  • 输入以逗号分隔的软件包名称,可选择带版本(例如 pandas==2.1.0, numpy, scipy>=1.10)。使用新版本重新安装某个软件包会替换旧的固定版本。
  • 点击 Install 查看实时安装日志;安装成功后运行器会重启,以便导入新软件包(这最多可能需要一分钟)。
  • 当 bulk 任务运行期间(请先停止它)以及 warmup 期间,安装会被阻止。
  • 已安装的软件包以颜色编码的徽章(例如 pandas 2.1.0)显示在 Packages 面板中。
  • 您添加的软件包带有 × 按钮用于移除(在 Remove package? 确认之后)。移除不会重启运行器 —— 它在下一次运行时生效 —— 并且在 bulk 任务或安装运行期间会被阻止。

当运行时需要这些软件包时,请在 IDE 的 Packages(依赖项)下安装您所使用的相同库。


在运行器上运行批次

  • 在空闲的运行器上,点击 New bulk run。这会打开与 AutoTrading 相同的 New Run 对话框 —— 参见 AutoTrading 了解 Algorithm / Targets / Schedule & data 标签页 —— 并绑定到该运行器。Screener 目标范围可用,因此云端任务可以交易已保存的筛选所匹配的标的,并按自己的计划(Refresh interval (days) / Refresh time (ET))重新筛选,而无需您的工作站开机。新运行器上的第一次选股器运行会下载整个基本面数据全集(较慢);之后每个 UTC 日刷新一次。运行器使用您的 QuantCraft 登录信息下载,且无法续期,因此在持续多日的运行中,登录过期后,重新筛选会继续使用最后一次的数据。参见选股器。
  • 选择您的已编译算法(.qcraft.json)、目标标的或范围、周期/时间周期,以及可选的脚本参数。如果您的策略定义了 on_timer,请设置 timerIntervalMs(策略生命周期)。
  • 每个运行器一个任务: 一旦存在任务,您会看到 Edit run、Stop bulk run、Delete run 和 Resume bulk run,而不是 New。Resume bulk run 适用于处于 pending resume 状态的任务,并且需要有效的交易账户。
  • 运行器的 bulk 部分显示 Details 和 Logs(与本地 bulk 卡片布局相同),以及 Pause / Resume(仅暂停或恢复实时日志尾部 —— 不会暂停任务)、Refresh、Download logs(CSV)和 Clear logs。

您可以使用对话框顶部的 Load / Save 来复用运行预设 (.qcs)。编辑已有的 bulk 运行时,算法(algoId)是固定的 —— Load 会更新目标、定时器、tick 模式和 params,但不会更换算法文件。


日志

每个 bulk forward 运行都会将 stdout、stderr 和状态事件流式输出到 QuantCloud 中该运行器的 Logs 标签页:

操作作用
Live stream运行时会出现新的日志行。
Pause / Resume仅暂停或恢复实时日志尾部 —— 不会暂停任务;运行器会继续写入。
Refresh从运行器重新加载最近的日志尾部。
Download logs将可见历史导出为 CSV。
Clear logs仅清除屏幕上的列表 —— 不会删除服务器历史。

日志量较大时,较旧的行可能会被丢弃。如果您怀疑只看到了完整历史的尾部,请使用 Refresh。删除 bulk 运行会移除运行器上该任务保存的日志文件,被弃用任务的日志可能会在约 7 天后被清除。


监控与停止

  • QuantCloud 页面处于活动状态时,bulk 状态大约每 5 秒轮询一次,否则大约每 30 秒轮询一次。
  • Stop bulk run 和 Delete bulk forward run 各自都会要求确认;删除会清除运行器上的已保存状态,并将任务从列表中移除。

提示

  • 使 IDE 和运行器的软件包保持一致 — 如果 Test 在本地通过,但云端运行因 ImportError 失败,请通过 Dependencies 添加缺少的软件包。
  • on_timer 用于前向运行 — IDE 回测对话框不配置定时器;请改为在 bulk forward 对话框中设置 timerIntervalMs。
  • 前向运行中的 on_tick — 在算法运行期间,每次来自已连接券商的券商价格更新都会触发;参见策略生命周期。
  • 券商凭据 — 以实盘或模拟盘交易的 bulk 任务可能需要在每次运行时提交券商凭据;请根据您的账户类型按对话框提示操作。
  • 工作区文件夹 — 保存 .qcs 预设需要已关联的工作区文件夹。

另请参阅

阅读约 2 分钟建议修改 ↗
QuantCloud — 文档 (1.0 (latest)) | QuantCraft