В этом примере показано, как соединиться с 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