exponenta event banner

Запрос CQG внутридневные данные галочки

В этом примере показано, как подключиться к CQG ®, определить обработчики событий и запросить внутридневные и синхронизированные данные полосы.

Подключение к 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 см. в Справочном руководстве по API CQG.

Создайте соединение CQG.

startUp(c)
CELStarted
DataConnectionStatusChanged

Обработчик событий подключения отображает имена событий для успешного соединения CQG.

Регистрация обработчика событий для построения и инициализации структуры выходных данных cqgTickData используется для хранения внутридневных данных делений.

rawEventNames = {'TicksResolved','TicksAdded'};

for i = 1:length(rawEventNames)
  registerevent(c.Handle,{rawEventNames{i}, ...
    @(varargin)cqgintradayeventhandler(varargin{:})})
end

Запрос CQG внутридневные данные галочки

Передача дополнительного необязательного свойства запроса путем создания структуры xи установка дополнительного свойства. Просмотр только данных галочки предложения, например, установка TickFilter кому 'tfBid'.

x.TickFilter = 'tfBid';

TickFilter и SessionsFilter являются единственными допустимыми дополнительными необязательными свойствами для вызова timeseries без запроса временной полосы. Дополнительные значения свойств см. в Справочном руководстве CQG API.

Запрос внутридневных данных галочки для прибора XYZ.XYZ в течение последних 2 дней с использованием дополнительного свойства необязательного запроса x. XYZ.XYZ - имя образца прибора. Чтобы запросить внутридневные данные галочки для вашего инструмента, замените имя символа в instrument.

instrument = 'XYZ.XYZ';
startdate = now - 2;
enddate = now;

timeseries(c,instrument,startdate,enddate,[],x)
pause(1)

pause заставляет MATLAB ® ждать 1 секунду, прежде чем продолжать давать время CQG для подписки на инструмент. MATLAB записывает переменнуюcqgTickData в обозреватель рабочей области.

Показ cqgTickData.

cqgTickData 
cqgTickData = 
              Timestamp: {2x1 cell}
                  Price: [2x1 double]
                 Volume: [2x1 double]
              PriceType: {2x1 cell}
         CorrectionType: {2x1 cell}
    SalesConditionLabel: {2x1 cell}
     SalesConditionCode: [2x1 double]
          ContributorId: {2x1 cell}
      ContributorIdCode: [2x1 double]
            MarketState: {2x1 cell}

Отображение данных в Timestamp имущество cqgTickData.

cqgTickData.Timestamp 
ans = 
    '4/17/2013 2:14:00 PM'
    '4/18/2013 2:14:00 PM'

Запрос данных временной полосы CQG

Регистрация обработчика событий для построения и инициализации матрицы выходных данных cqgTimedBarData используется для хранения данных временной шкалы.

aggEventNames = {'TimedBarsResolved','TimedBarsAdded', ...
    'TimedBarsUpdated','TimedBarsInserted', ...
    'TimedBarsRemoved'};

for i = 1:length(aggEventNames)
  registerevent(c.Handle,{aggEventNames{i}, ...
    @(varargin)cqgintradayeventhandler(varargin{:})})
end

Передача дополнительных дополнительных свойств запроса путем создания структуры xи установка дополнительного свойства.

x.UpdatesEnabled = false;

Запрос данных временной шкалы для прибора XYZ.XYZ для последней части дня с использованием дополнительного необязательного свойства request x. XYZ.XYZ - имя образца прибора. Чтобы запросить данные временной шкалы для прибора, замените имя символа в instrument.

instrument = 'XYZ.XYZ';
startdate = now - .1;
enddate = now;
intraday = 1;

timeseries(c,instrument,startdate,enddate,intraday,x)
pause(1)

MATLAB записывает переменную cqgTimedBarData в обозреватель рабочей области.

Показ cqgTimedBarData.

cqgTimedBarData
cqgTimedBarData =
   1.0e+09 *
    0.0007   -2.1475   -2.1475   -2.1475   -2.1475   -2.1475   -2.1475   -2.1475   -2.1475
    0.0007   -2.1475   -2.1475   -2.1475   -2.1475   -2.1475   -2.1475   -2.1475   -2.1475
    0.0007   -2.1475   -2.1475   -2.1475   -2.1475   -2.1475   -2.1475   -2.1475   -2.1475
    0.0007   -2.1475   -2.1475   -2.1475   -2.1475   -2.1475   -2.1475   -2.1475   -2.1475
    0.0007   -2.1475   -2.1475   -2.1475   -2.1475   -2.1475   -2.1475   -2.1475   -2.1475
    ...

cqgTimedBarData возвращает данные временной шкалы для указанного прибора. Столбцы cqgTimedBarData отображение данных, соответствующих отметке времени, открытой цене, высокой цене, низкой цене, цене закрытия, средней цене, HLC3, средней цене и объему галочки.

Закрытие соединения CQG

close(c)

См. также

| | | | | | |

Связанные примеры

Подробнее

Внешние веб-сайты