www.gusucode.com > trading工具箱matlab源码程序 > trading/tradingdemos/ibExampleHistoryEventHandler.m
function ibExampleHistoryEventHandler(varargin) %IBEXAMPLEHISTORYEVENTHANDLER Interactive Brokers' Trader Workstation historical data example event handler. % Copyright 2012-2013 The MathWorks, Inc. % Process event based on identifier persistent ibHistoricalData ibHistoricalDataCounter if isempty(ibHistoricalDataCounter) ibHistoricalDataCounter = 1; end switch varargin{end} case 'errMsg' varargin{5} case 'historicalData' histData = varargin{13}; if strfind(histData.date,'finished') clear ibHistoricalDataCounter return end ibHistoricalData{histData.reqId}{ibHistoricalDataCounter,1} = histData.date; ibHistoricalData{histData.reqId}{ibHistoricalDataCounter,2} = histData.open; ibHistoricalData{histData.reqId}{ibHistoricalDataCounter,3} = histData.high; ibHistoricalData{histData.reqId}{ibHistoricalDataCounter,4} = histData.low; ibHistoricalData{histData.reqId}{ibHistoricalDataCounter,5} = histData.close; ibHistoricalData{histData.reqId}{ibHistoricalDataCounter,6} = histData.volume; ibHistoricalData{histData.reqId}{ibHistoricalDataCounter,7} = histData.barCount; ibHistoricalData{histData.reqId}{ibHistoricalDataCounter,8} = histData.WAP; ibHistoricalData{histData.reqId}{ibHistoricalDataCounter,9} = histData.hasGaps; ibHistoricalDataCounter = ibHistoricalDataCounter + 1; assignin('base','ibHistoricalData',ibHistoricalData) otherwise varargin{:} end