提交x_trader订单
此示例显示了如何连接到x_trader®并提交订单。
连接至x_trader
x = xtrdr;
创建一个乐器
createInstrument(x,'交换',,,,'cme',,,,'产品',,,,'2F',,,,...“ prodtype',,,,'未来',,,,'合同',,,,'Aug13',,,,...“别名”,,,,'suberderInstrument1')
注册活动处理程序
注册订单服务器的事件处理程序。回调ttorderserverstatus
被分配给活动OnexchangeStateUpdate
验证请求的仪器的交换订单服务器正在运行。否则,不能提交订单。
sexChange = X.Instrument.exchange;RegisterEvent(X.Gate,{'OnexchangeStateUpdate',,,,...@(varargin)ttorderserverstatus(varargin {:},sexChange)})
创建订单集
这订单组
对象将订单发送到x_trader。
设置属性订单组
对象并详细介绍订单状态事件的级别。启用订单更新并拒绝(失败)事件,因此您可以分配回调以处理这些条件。
createOrderSet(x)x.orderset(1).enableOrderRejectData = 1;X.orderset(1).enableOrderUpDatedAta = 1;X.orderset(1).orderstatusnotifymode ='ord_notify_normal';
设置位置限制检查
设置订单集是否在提交订单时检查自我强加的位置限制。
X.orderset(1).set(“ Netlimits”,错误的)
设置回调功能
设置一个回调以处理Onorderfill
事件。每次填写订单(或部分填写)时,都会调用此回调。
RegisterEvent(X.orderset(1),{“ Onorderfill”,,,,...@(varargin)ttorderevent(varargin {:},x)})
启用订单提交
您必须首先启用订单提交,然后才能将订单提交给X_Trader。
X.orderset(1).open(1)
建立订单配置文件
使用现有仪器构建订单配置文件。订单配置文件包含定义提交订单的设置。有效放
显示参数:
OrderProfile = CreateOrderProfile(X);orderProfile.Insrument = X.Instrument(1);OrderProfile.customer ='' ;
样本:创建市场订单
创建市场订单以购买100股。
orderProfile.set('买卖',,,,'买')orderProfile.set('QTY',100)订单fofile.set('ordertype',,,,'M')
示例:创建限制顺序
通过设置OrderType
并限制订单价格。
orderProfile.set('ordertype',,,,'L')orderProfile.set(“限制$”,,,,'127000')
样本:创建停止市场订单
创建停止市场订单,并将订单限制设置为停止订单和停止价格。
orderProfile.set('ordertype',,,,'M')orderProfile.set(“订购”,,,,')orderProfile.set(“停止$”,,,,'129800')
示例:创建停止限制顺序
创建一个停止限制顺序,并设置订单限制,类型,限制价格和停止价格。
orderProfile.set('ordertype',,,,'L')orderProfile.set(“订购”,,,,')orderProfile.set(“限制$”,,,,'128000')orderProfile.set(“停止$”,,,,'127500')
检查订单服务器状态
在提交订单之前先检查订单服务器状态并添加计数器,以免示例延迟。
ncounter = 1;尽管〜存在('bserverup',,,,'var')&& ncounter <20暂停(1)ncounter = ncounter + 1;结尾
验证订单服务器可用性
在提交订单之前,请验证是否可以使用有关的订单服务器。
如果存在('bserverup',,,,'var')&& bserverup fistQuantity = x.orderset(1).sendOrder(orderProfile);disp([[“发送数量:”num2str(提交)]))别的disp(订单服务器已关闭。无法提交订单')结尾
关闭连接
关闭(x)
也可以看看
xtrdr
|关
|CreateInstrument
|CreateOrderProfile
|CreateOrderSet