主要内容

创建订单使用X_TRADER

这个例子展示了如何连接到Trading Technologies®X_TRADER®创造一个市场秩序。

连接到交易技术X_TRADER

c = xtrdr;

创建合同工具

为芝加哥商品交易所到期日期为2014年8月的CAISO NP15 EZ Gen Hub 5 MW Peak Calendar-Day Real-Time LMP期货合约创建一个工具。

createInstrument (c,“交换”芝加哥商品交易所的“产品”“2 f”...“ProdType”“未来”“合同”“Aug14”...“别名”“SubmitOrderInstrument3”

为订单服务器注册事件处理程序

注册一个事件处理程序来检查订单服务器状态。

sExchange = c.Instrument.Exchange;c.Gate.registerevent ({“OnExchangeStateUpdate”...@(变长度输入宗量)ttorderserverstatus(变长度输入宗量{:},sExchange)})

创建订单集和设置订单属性

创建一个空订单集。然后,设置顺序设置属性。将第一个属性设置为true (1)使X_TRADER API能够发送订单拒绝通知。将第二个属性设置为true (1)允许X_TRADER API将所有订单更新的订单对添加到该订单集中的订单跟踪器列表中。将第三个属性设置为ORD_NOTIFY_NORMAL将订单状态事件的X_TRADER API通知模式设置为正常。

c.OrderSet createOrderSet (c)(1)。EnableOrderRejectData = 1;c.OrderSet(1)。EnableOrderUpdateData = 1;c.OrderSet(1)。OrderStatusNotifyMode =“ORD_NOTIFY_NORMAL”

设置头寸限制检查

c.OrderSet(1)这里(“NetLimits”假)

为订单状态注册事件处理程序

注册事件处理程序以跟踪与订单状态相关的事件。

registerevent (c.OrderSet (1) {“OnOrderFilled”...@(变长度输入宗量)ttorderevent(变长度输入宗量{:},c)}) registerevent (c.OrderSet (1) {“OnOrderRejected”...@(变长度输入宗量)ttorderevent(变长度输入宗量{:},c)}) registerevent (c.OrderSet (1) {“OnOrderSubmitted”...@(变长度输入宗量)ttorderevent(变长度输入宗量{:},c)}) registerevent (c.OrderSet (1) {“OnOrderDeleted”...@(变长度输入宗量)ttorderevent(变长度输入宗量{:},c)})

使订单提交

打开仪器进行交易,并使X_TRADER API在打开仪器时检索市场深度信息。

.Open c.OrderSet (1) (1)

用现有仪器建立订单配置文件

orderProfile = createOrderProfile (c,“工具”, c.Instrument (1));

设置客户默认属性

指定交易工具的客户违约。

orderProfile。客户=“默认> <”

建立订单档案作为市场订单

建立一个购买225股的市场订单。

orderProfile。集(“BuySell”“买入”) orderProfile。集(“数量”“225”) orderProfile。集(“订单类型”“米”

检查订单服务器状态

nCounter = 1;~ (“bServerUp”“var”) && nCounter < 20% bServerUp由ttorderserverstatus创建暂停(1)nCounter = nCounter + 1;结束

验证订单服务器可用性并提交订单

如果存在(“bServerUp”“var”) & & bServerUp%提交订单submittedQuantity = c.OrderSet (1) .SendOrder (orderProfile);disp ([的发送数量:num2str (submittedQuantity)))其他的disp (订单服务器坏了。无法提交订单。”结束

X_TRADER API将订单提交给交易所,并在输出参数中返回基于批的合约发送的合约数量或基于流的合约发送的流量数量submittedQuantity

关闭交易技术X_TRADER连接

关闭(c)

另请参阅

||||

相关的例子

更多关于

外部网站