Why do I get "No method 'reqMktDataEx' with matching signature found for class 'COM.TWS_TwsCtrl_1'." in 2014a

1 回表示 (過去 30 日間)
When I try to use the 'ibtws' class in MATLAB R2013b to access data from the Interactive Brokers (IB) Trader Workstation , for instance if I am trying to run the example function 'reqMktDataEx', I get the following error:
No method 'reqMktDataEx' with matching signature found for class 'COM.TWS_TwsCtrl_1'.
My code is as follows, how can I fix this?
ib = ibtws('',7496);
eventNames = {'errMsg','tickSize','tickString','tickPrice'};
for i = 1:length(eventNames)
registerevent(ib.Handle,{eventNames{i},...
@(varargin)ibExampleRealtimeEventHandler(varargin{:})})
end
f = findobj('Tag','IBStreamingDataWorkflow');
if isempty(f)
f = figure('Tag','IBStreamingDataWorkflow','MenuBar','none',...
'NumberTitle','off');
pos = get(f,'Position');
set(f,'Position',[pos(1) pos(2) pos(3)+37 109])
colnames = {'Trade' 'Size' 'Bid' 'BidSize' 'Ask' 'AskSize' ...
'Total Volume'};
rownames = {'AAA','BBB','DDDD'};
data = cell(3,6);
uitable(f,'Data',data,'RowName',rownames,'ColumnName',colnames,...
'Position',[10 30 582 76],'Tag','SecurityDataTable');
uicontrol('Style','text','Position',[10 5 497 20],'Tag','IBMessage');
uicontrol('Style','pushbutton','String','Close',...
'Callback',...
'evalin(''base'',''close(ib);close(findobj(''''Tag'''',''''IBStreamingDataWorkflow''''));'')',...
'Position',[512 5 80 20]);
end
ibContract = ib.Handle.createContract;
ibContract.symbol = 'IBM';
ibContract.secType = 'STK';
ibContract.exchange = 'SMART';
ibContract.currency = 'USD';
reqMktDataEx(ib.Handle,1,ibContract,'100',0);

採用された回答

Friedrich
Friedrich 2014 年 5 月 19 日
Hi,
I think you missed to install something. The steps you need to take are
1) Download/Install Interactive Brokers Trader Workstation (Desktop Trading Client) from the following link: https://www.interactivebrokers.com/en/index.php?f=552
2) Download/Install the Interactive Brokers API software from the following link:
3) Log into IB Trader Workstation with a license user account.
  1 件のコメント
Mike
Mike 2014 年 7 月 12 日
編集済み: Image Analyst 2014 年 7 月 13 日
This answer is wrong. It's a version change issue. This function needs an additional argument.
reqMktDataEx(IB.Handle, 3, ibContract,'100',0,IB.Handle.createTagValueList);
Your answer is wrong, unfortunately.

サインインしてコメントする。

その他の回答 (1 件)

Yair Altman
Yair Altman 2014 年 7 月 12 日
You may wish to try the cross-platform IB-Matlab product, which is Java-based (not ActiveX):
IB-Matlab doesn't have such bugs, it is very reliable.

カテゴリ

Help Center および File ExchangeTransaction Cost Analysis についてさらに検索

タグ

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by