В этом примере показано, как соединиться с CQG® и создайте рыночный порядок.
c = cqg;
Запустите сеанс CQG. Настройте обработчики событий для подписки на инструменты, порядков и связанных с ними событий.
startUp(c)
streamEventNames = {'InstrumentSubscribed', ...
'InstrumentChanged','IncorrectSymbol'};
for i = 1:length(streamEventNames)
registerevent(c.Handle,{streamEventNames{i}, ...
@(varargin)cqgrealtimeeventhandler(varargin{:})})
end
orderEventNames = {'AccountChanged','OrderChanged','AllOrdersCanceled'};
for i = 1:length(orderEventNames)
registerevent(c.Handle,{orderEventNames{i}, ...
@(varargin)cqgordereventhandler(varargin{:})})
endПодпишитесь на обеспечение, привязанное к EURIBOR.
realtime(c,'F.US.IE')
pause(2)CQGInstrument ОбъектЧтобы использовать инструмент для создания порядка, импортируйте имя инструмента cqgInstrumentName в текущий MATLAB® рабочей области. Затем создайте CQGInstrument cqgInst объекта.
cqgInstrumentName = evalin('base','cqgInstrument'); cqgInst = c.Handle.Instruments.Item(cqgInstrumentName);
Установите флаги CQG, чтобы включить поиск информации о счете.
c.Handle.set('AccountSubscriptionLevel','aslNone'); c.Handle.set('AccountSubscriptionLevel','aslAccountUpdatesAndOrders'); pause(2) accountHandle = c.Handle.Accounts.ItemByIndex(0);
Создайте рыночный порядок, который покупает одну долю подписанного cqgInst безопасности использование учетных данных accountHandle.
orderType = 1; % Market order flag quantity = 1; % Positive quantity is Buy, negative is Sell oMarket = createOrder(c,cqgInst,orderType,accountHandle,quantity); oMarket.Place
close(c)
close | cqg | createOrder | realtime | startUp