企业微信

连接原理与前置条件

qmt和掘金连接招商证券api,本质是通过券商提供的交易接口实现程序化下单与行情获取。招商证券对个人客户开放api有严格限制,需要先满足特定条件。

  • 账户资产门槛:多数券商要求50万以上资产,招商证券可能更高,具体咨询客户经理。

  • 签署协议:必须临柜或线上签署程序化交易风险揭示书,获取量化交易权限

  • 获取接口文档:招商证券会提供专用api文档,包含认证方式、交易指令格式、回报推送机制。

  • 安装环境:qmt需要券商提供的定制客户端,掘金需要下载招商证券专用版本或使用通用版配置券商通道

没有券商授权,任何第三方软件都无法直连招商证券api,这是合规红线。

qmt连接招商证券api的实操步骤

qmt(迅投)本身是券商定制化平台,招商证券的qmt版本内置了api连接模块。

qmt和掘金怎样连接招商证券api

开通与下载

联系招商证券客户经理申请qmt权限,通过后收到下载链接。安装时选择招商证券站点,登录账号为资金账号,密码为交易密码。

配置api连接

登录qmt后,进入“系统设置”->“接口配置”,选择“招商证券api”并填写以下参数:

  • 服务器地址:招商证券提供的交易网关IP,通常为内网地址或专线地址。

  • 端口号:常见为9001或券商指定端口。

  • 认证密钥:由券商分配,用于签名交易请求。

  • 行情源:选择招商证券的level-1或level-2行情。

配置完成后点击“测试连接”,返回成功即表示api通道已打通。

编写策略调用api

qmt支持python策略,通过内置的passorder函数下单,该函数底层调用招商证券api。示例代码:


# qmt策略中调用招商证券api下单

def init(Context):

    Context.account = '你的资金账号'

    Context.api_key = '券商分配的密钥'

def handlebar(Context):

    # 获取行情

    tick = Context.get_tick('600519.SH')

    if tick.lastPrice > 1800:

        # 买入100股

        passorder(23, 1101, Context.account, '600519.SH', 5, tick.lastPrice, 100, Context)

注意:passorder参数需严格按招商证券api要求填写,委托类型、价格类型必须匹配。

期货连接差异

招商证券的期货api通常通过子公司招商期货提供。qmt连接期货api需要单独开通期货账户并申请qmt期货权限。期货api的认证多一层ctp协议,qmt内部已封装,但配置时需填写ctp前置地址、brokerid等。

掘金连接招商证券api的实操步骤

掘金(myquant)是第三方量化平台,连接招商证券api需要券商提供专用接口或使用掘金终端内置的券商通道。

获取掘金招商证券专版

招商证券与掘金有合作,客户可申请掘金招商证券定制版。该版本内置了招商证券api的封装库。安装后登录掘金账号,在“交易”->“添加账户”中选择“招商证券”,输入资金账号和密码。

手动配置api

如果使用掘金通用版,需要手动配置。打开掘金终端,进入“设置”->“交易接口”->“添加”,选择“招商证券api”。

  • 填写api地址:从招商证券获取,格式为tcp://ip:port

  • 填写资金账号和交易密码。

  • 上传券商提供的证书文件(如.pfx或.pem)。

  • 设置超时时间和重连间隔。

保存后点击“连接”,状态显示“已连接”即可。

策略中调用

掘金使用自己的策略语言(类似python),连接成功后可直接调用交易函数。示例:


# 掘金策略中调用招商证券api

def initialize(context):

    context.set_account('招商证券', '你的账号', '密码')

def handle_data(context):

    # 订阅行情

    subscribe('600519.SH')

    # 获取当前价

    price = get_last_price('600519.SH')

    if price > 1800:

        # 买入

        order('600519.SH', 100, price)

掘金内部会将order转换为招商证券api的委托指令,并处理回报。

期货连接要点

掘金连接招商期货api需要单独配置ctp。在掘金中添加“招商期货”接口,填写:

  • brokerid:招商期货的brokerid,通常为9999或券商指定。

  • 前置地址:tcp://期货ctp前置ip:port。

  • 投资者账号和密码。

  • appid和authcode:由招商期货提供。

配置完成后,掘金即可交易期货。

常见问题与排查

连接失败时,按以下顺序检查:

  • 权限是否开通:登录招商证券官网或app,查看“业务办理”中是否有“量化交易”权限。

  • 账号密码错误:确保使用资金账号而非股东账号,密码为交易密码,非通讯密码。

  • 网络限制:部分券商api只允许特定ip访问,需将本机ip加入白名单。

  • 软件版本:qmt和掘金必须使用招商证券提供的版本,通用版可能缺少券商证书。

  • 日志查看:qmt日志在安装目录的log文件夹,掘金在userdata/log下,搜索“api”或“connect”关键词。

  • 期货与股票分离:股票api和期货api通常独立,需要分别配置,不要混用端口。

如果多次尝试仍失败,直接联系招商证券量化交易技术支持,提供日志文件,他们能快速定位。

量化交易中的api使用规范

连接成功后,编写策略需注意:

  • 频率控制:招商证券api有每秒请求限制,超频会被封禁。qmt和掘金内部有队列机制,但自定义循环需加延时。

  • 错误处理:每次下单后检查返回码,非0表示失败,需重试或记录。

  • 资金校验:下单前查询可用资金,避免废单。

  • 行情订阅:期货行情需订阅主力合约,注意换月。

  • 回测与实盘分离:qmt和掘金都支持回测,但回测不经过api,实盘前用模拟账号测试。

遵守这些规范,能稳定运行股票和期货量化策略

qmt连接招商证券api依赖券商定制客户端,配置密钥和服务器地址即可。掘金连接需要专版或手动配置api地址和证书。两者都要求先开通量化权限。期货连接额外需要ctp参数。按步骤操作,连接成功率很高。遇到问题优先查日志和联系券商技术支持。