www.gusucode.com > trading工具箱matlab源码程序 > trading/tradingdemos/EMSXRouteManagementWorkflow.m

    %% Make initial connection to Bloomberg
b = emsx('//blp/emapisvc_beta')

% process events associated with initial connection
b.processEvent

%% Set up route subscription
[r,rsubs] = b.routes({'EMSX_BROKER','EMSX_WORKING'})

%% Create request structure
reqStruct.EMSX_TICKER = 'IBM';
reqStruct.EMSX_AMOUNT = int32(3358);
reqStruct.EMSX_ORDER_TYPE = 'MKT';
reqStruct.EMSX_BROKER = 'EFIX';
reqStruct.EMSX_TIF = 'DAY';
reqStruct.EMSX_HAND_INSTRUCTION = 'ANY';
reqStruct.EMSX_SIDE = 'SELL';

% create and route order
rOrder = b.createOrderAndRoute(reqStruct)

%% Modify route and get information
modStruct.EMSX_SEQUENCE = rOrder.EMSX_SEQUENCE;
modStruct.EMSX_ROUTE_ID = rOrder.EMSX_ROUTE_ID;
modStruct.EMSX_TICKER = 'IBM';
modStruct.EMSX_AMOUNT = int32(3000);
modStruct.EMSX_ORDER_TYPE = 'MKT';
modStruct.EMSX_TIF = 'DAY';
rModifyRoute = b.modifyRoute(modStruct);

%% Delete route and get information
% note that the structure returned from the createOrderAndRoute call can be used as
% the input to delete the order or the user can create a new structure
% where the field EMSX_SEQUENCE contains the order number to be cancelled
delStruct.EMSX_SEQUENCE = rOrder.EMSX_SEQUENCE;
delStruct.EMSX_ROUTE_ID = rOrder.EMSX_ROUTE_ID;
rDeleteRoute = b.deleteRoute(delStruct)

%% Unsubscribe from routes
b.Session.unsubscribe(rsubs)

%% Close the connection
close(b)
b.processEvent