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