В этом примере показано, как подключиться к CQG ®, определить обработчики событий и запросить текущие данные.
Создание объекта соединения CQG с помощью cqg.
c = cqg;
Зарегистрировать обработчик события образца cqgconnectioneventhandler для отслеживания событий для состояния соединения.
eventNames = {'CELStarted','DataError','IsReady', ...
'DataConnectionStatusChanged','GWConnectionStatusChanged', ...
'GWEnvironmentChanged'};
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 см. в Справочном руководстве по API CQG.
Установление соединения с CQG.
startUp(c)
CELStarted DataConnectionStatusChanged GWConnectionStatusChanged
Обработчик событий подключения отображает имена событий для успешного соединения CQG.
Зарегистрируйте обработчик событий для отслеживания событий, связанных с подпиской на инструмент CQG.
streamEventNames = {'InstrumentSubscribed','InstrumentChanged', ...
'IncorrectSymbol'};
for i = 1:length(streamEventNames)
registerevent(c.Handle,{streamEventNames{i}, ...
@(varargin)cqgrealtimeeventhandler(varargin{:})})
end
При установленном соединении подписаться на инструмент. Имя прибора должно быть отформатировано в виде длинного символа CQG. Например, чтобы подписаться на безопасность, привязанную к кукурузе, введите следующее. (F.US.EZC - имя образца прибора. Чтобы запросить данные для прибора в реальном времени, замените это имя образца на имя прибора.)
instrument = 'F.US.EZC';
realtime(c,instrument)
MATLAB ® записывает структурную переменнуюcqgDataEZC в обозреватель рабочей области.
Показ cqgDataEZC.
cqgDataEZC(1,1)
ans =
Price: {15x1 cell}
Volume: {15x1 cell}
ServerTimestamp: {15x1 cell}
Timestamp: {15x1 cell}
Type: {15x1 cell}
Name: {15x1 cell}
IsValid: {15x1 cell}
Instrument: {15x1 cell}
HasVolume: {15x1 cell}
cqgDataEZC возвращает текущие кавычки для безопасности.
Отображение данных в Price имущество cqgDataEZC.
cqgDataEZC(1,1).Price
ans =
[-2.1475e+09]
[-2.1475e+09]
[-2.1475e+09]
[ 660.5000]
[]
[]
[-2.1475e+09]
[-2.1475e+09]
[-2.1475e+09]
[-2.1475e+09]
[-2.1475e+09]
[-2.1475e+09]
[-2.1475e+09]
[ 660.5000]
[-2.1475e+09]
close(c)
close | cqg | createOrder | history | realtime | shutDown | startUp | timeseries