交易支撑:聚宽模拟盘远程实盘¶
这页只保留最小流程:聚宽策略如何连到远程 bullet-trade server 做真实下单。
新用户请先按聚宽从零接入教程完成环境准备和两种方案的选择。下文显式 bt.xxx 简写不自动识别回测;兼顾回测时必须按教程分流,不能直接用于回测交易点。
聚宽侧改策略有两种策略修改方案:
- 策略修改方案 1:显式调用 helper:下单处写
bt.order(...)、bt.order_target_value(...)。 - 策略修改方案 2:接管聚宽函数:在
process_initialize安装兼容层,原来的order(...)、context.portfolio尽量不改。
两种方案的优缺点见 聚宽策略修改方案对比。
1. 先启动远程 server¶
下面是 MiniQMT 后端的启动方式。若 Windows 侧使用大 QMT,请先按 大 QMT 服务向导 在大 QMT 里运行 helper,再启动 bullet-trade server --server-type big_qmt;聚宽侧 helper 仍然连接 58620。
Windows 机器上的 .env 最少只要:
QMT_DATA_PATH=C:\国金QMT交易端\userdata_mini
QMT_ACCOUNT_ID=123456
QMT_SERVER_TOKEN=secret
启动命令:
bullet-trade --env-file .env server --listen 0.0.0.0 --port 58620 --enable-data --enable-broker
如果是单账户,到这里就够了。
2. 上传 helper 到聚宽¶
上传这个文件到聚宽根目录:
helpers/bullet_trade_jq_remote_helper.py
3. 在策略里最小配置(显式 helper 调用)¶
import bullet_trade_jq_remote_helper as bt
def initialize(context):
set_benchmark('000300.XSHG')
def process_initialize(context):
bt.configure(
host="your.server.ip",
port=58620,
token="secret",
)
def handle_data(context, data):
bt.order('000001.XSHE', 100)
单账户默认不用写 account_key。
只有多账户时才写,例如:
bt.configure(
host="your.server.ip",
port=58620,
token="secret",
account_key="main",
)
常见问题¶
account_key 必须写吗¶
不是。
单账户场景不用写;只有多账户才需要。
server 端为什么不能写 --data-path¶
因为当前版本没有这个参数。
MiniQMT 数据目录要放到 .env 里的 QMT_DATA_PATH。大 QMT 不使用这个配置入口。
:stock 必须写吗¶
也不是。
股票账户默认就是 stock,所以多账户示例写成:
--accounts main=123456
就可以。
只有期货账户才需要写成:
--accounts hedge=654321:future
更多 MiniQMT server 说明见 QMT server。大 QMT 后端见 大 QMT 服务向导。