В этом примере показано, как соединиться с CQG®задайте обработчики событий и запросите исторические данные.
Создайте объект соединения CQG с помощью cqg.
c = cqg;
Зарегистрируйте образец обработчика событий cqgconnectioneventhandler для отслеживания событий, связанных со статусом подключения.
eventNames = {'CELStarted','DataError','IsReady', ...
'DataConnectionStatusChanged'};
for i = 1:length(eventNames)
registerevent(c.Handle,{eventNames{i}, ...
@(varargin)cqgconnectioneventhandler(varargin{:})})
end
cqgconnectioneventhandler назначается событиям в eventNames.
Установите свойства строения API. Для примера, чтобы установить часовой пояс восточным временем, введите следующее.
c.APIConfig.TimeZoneCode = 'tzEastern';c.APIConfig является объектом строения CQG. Для получения дополнительной информации об установке свойств строения API см. Руководство по Ссылке CQG API.
Создайте соединение CQG.
startUp(c)
CELStarted DataConnectionStatusChanged
Обработчик событий подключения отображает имена событий для успешного соединения CQG.
Зарегистрируйте обработчик событий, чтобы создать и инициализировать матрицу выходных данных cqgHistoryData.
histEventNames = {'ExpressionResolved','ExpressionAdded', ...
'ExpressionUpdated'};
for i = 1:length(histEventNames)
registerevent(c.Handle,{histEventNames{i}, ...
@(varargin)cqgexpressioneventhandler(varargin{:})})
end
Передайте дополнительное необязательное свойство запроса путем создания структуры x и установка необязательного свойства.
x.UpdatesEnabled = false;
Дополнительные дополнительные свойства, которые можно задать, см. в разделе CQG API Ссылки Руководства.
Запрашивайте ежедневные данные для XYZ.XYZ приборов за последние 10 дней с использованием дополнительного необязательного свойства запроса x. XYZ.XYZ - имя инструмента для образца. Чтобы запросить исторические данные для вашего инструмента, замените имя символа на instrument.
instrument = {'Close(XYZ.XYZ)','Open(XYZ.XYZ)'};
startdate = floor(now) - 10;
enddate = floor(now);
period = 'hpDaily';
history(c,instrument,startdate,enddate,period,x)
pause(1)MATLAB® записывает переменную cqgHistoryData в браузер Рабочей области.
Отобразите cqgHistoryData.
cqgHistoryData
cqgHistoryData =
1.0e+05 *
7.3533 0.0063 0.0063
7.3533 0.0064 0.0064
7.3533 0.0065 0.0065
7.3534 0.0065 0.0065
7.3534 0.0066 0.0066
7.3534 0.0065 0.0065
7.3534 0.0066 0.0066
7.3534 0.0066 0.0066
7.3534 0.0064 0.0064
Каждая строка в cqgHistoryData представляет данные за 1 день. Столбцы в cqgHistoryData показать численное представление временной метки, цены закрытия и открытой цены для инструмента в течение дня.
close(c)
close | cqg | createOrder | history | realtime | shutDown | startUp | timeseries