Проблемы с использованием пакета IBrokers

Я пытался использовать пакет IBrokers с простейшим кодом, как показано ниже:

library(IBrokers)

tws <- twsConnect()

aapl.csv <- file("AAPL.csv", open="wa")

# run an infinite-loop ( <C-c> to break )
reqMktData(tws, twsSTK("AAPL"), 
        eventWrapper=eWrapper.MktData.CSV(1), 
        file=aapl.csv)

close(aapl.csv)
close(tws)

Я получаю эту ошибку:

2 1 321 Error validating request:-'oc' : 
cause - Incorrect generic tick list of 100,101,104,106,165,221,225,236. 
Legal ones for (STK)

И все зависает...

весь лог здесь:

R version 2.13.0 (2011-04-13)
Copyright (C) 2011 The R Foundation for Statistical Computing
ISBN 3-900051-07-0
Platform: x86_64-pc-mingw32/x64 (64-bit)

> library(IBrokers)
Loading required package: xts
Loading required package: zoo

Attaching package: 'zoo'

The following object(s) are masked from 'package:base':

    as.Date, as.Date.numeric

IBrokers version 0.9-3:
Implementing API Version 9.64
This software comes with NO WARRANTY.  Not intended for production use!
See ?IBrokers for details
Warning messages:
1: package 'IBrokers' was built under R version 2.13.2
2: package 'xts' was built under R version 2.13.2
3: package 'zoo' was built under R version 2.13.2
>
> tws <- twsConnect()
>
> aapl.csv <- file("AAPL.csv", open="a")
>
> # run an infinite-loop ( <C-c> to break )
> reqMktData(tws, twsSTK("AAPL"),
+         eventWrapper=eWrapper.MktData.CSV(1),
+         file=aapl.csv)
2 -1 2104 Market data farm connection is OK:cashfarm
2 -1 2104 Market data farm connection is OK:usfarm
2 -1 2106 HMDS data farm connection is OK:ushmds2a
2 1 321 Error validating request:-'oc' : cause - Incorrect generic tick list of 100,101,104,106,165,221,225,236.  Legal ones for (STK) are: 100(Option Volume),101(Option Open Interest),104(Historical Volatility),105(Average Opt Volume),106(Option Implied Volatility),107(Close Implied Volatility),125(Bond analytic data),165(Misc. Stats),166(CScreen),225(Auction),233(RTVolume),236(inventory),258/47(Fundamentals),291(Close Implied Volatility),293(TradeCount),294(TradeRate),295(VolumeRate),318(LastRTHTrade),370(ParticipationMonitor),370(ParticipationMonitor),377(CttTickTag),377(CttTickTag),381(IB Rate),384(RfqTickRespTag),384(RfqTickRespTag),387(DMM),388(Issuer Fundamentals),391(IBWarrantImpVolCompeteTick),407(FuturesMargins),411(Real-Time Historical Volatility)

> (Command cancelled)
>
> close(aapl.csv)
> close(tws)

Что я здесь делаю неправильно? Любая идея для разрешения или указателя на ссылки высоко ценится.


person user947967    schedule 03.11.2011    source источник
comment
Я лично не сталкивался с этой проблемой, а IBGateway работает в основном круглосуточно и без выходных. Согласно документам IB individuals.interactivebrokers.com/php/apiUsersGuide/ apiguide/ кажется действительным.   -  person Jeff R    schedule 09.11.2011


Ответы (1)


Ошибка говорит о том, что ваш тик-лист неверный. Если вы сравните его с действительными, о которых он сообщает, вы увидите, что 221 является виновником. К счастью, выполнение ?reqMktData говорит нам, что вы можете указать свой собственный список тиков с опцией tickGenerics. Так что просто сделайте что-то вроде

> reqMktData(tws, twsSTK("AAPL"), 
         eventWrapper=eWrapper.MktData.CSV(1), 
         file=aapl.csv, tickGenerics="100,101,104,106,165,225,236")

и вы должны быть готовы идти.

person John Colby    schedule 03.11.2011