风险提示:本内容为量化技术及平台操作的纯知识分享,不构成任何投资建议,不推荐任何具体证券或交易时机。部分内容可能理解包含错误,请自行核实。市场有风险,投资需谨慎
昨天我们研究实现了ptrade的新股,新可转债的申购,今天我去研究了一下实现了利用qmt去申购这个,通过定时器在每天指定时间(14:30)自动触发申购流程,对当日所有可申购的新股和新可转债进行满额申购,实现"一键打新"的自动化操作

看一下qmt官方的文档,使用的接口主要是下单接口,和数据查询接口

官方参考代码
#coding:gbk
def init(ContextInfo):
ipoData=get_ipo_data()
返回新股新债信息 ipoStock=get_ipo_data("STOCK")# 返回新股信息 ipoCB=get_ipo_data("BOND")# 返回新债申购信息
读取到了数据调用下单函数就可以用法: get_ipo_data([,type]) 返回结果为一个字典,包括新股申购代码,申购名称,最大申购数量,最小申购数量等数据 参数: type: 为空时返回新股新债信息,type="STOCK"时只返回新股申购信息,type="BOND"时只返回新债申购信息 示例: def init(ContextInfo): ipoData = get_ipo_data() 返回新股新债信息 ipoStock = get_ipo_data("STOCK") 返回新股信息 ipoCB = get_ipo_data("BOND") 返回新债申购信息
官方给的简单的例子和普通的下单函数一样,价格使用系统返回的申购价格,申购数量用系统返回最大数据
#coding:gbk
def init(C):
ipoStock=get_ipo_data("STOCK")#返回新股信息
print(ipoStock)
accont = '123456789'
for stock in ipoStock:
ipo_price = ipoStock[stock]['issuePrice']
发行价 maxPurchaseNum = ipoStock[stock]['maxPurchaseNum'] # 可申购额度 passorder(23,1101, accont, stock,11,ipo_price, maxPurchaseNum,'新股申购',2,stock,C)
在QMT建立策略,优化完善代码就可以,定时函数启动策略每天的14点30运行策略

查询数据并下单申购

把策略挂模型交易就可以,选择实盘模拟

查询到的可以申购的数据,注意目前北京交易所的不支持,具体看证券公司的QMt版本,有的支持有的不行

下单的接口申购

成功申购

不懂的问我就可以,加我备注入群可以加入量化交流群

函数关系图

策略原理图

|