Пакет IBrokers R: проблема с классом twsconn (R)
В данный момент я перехожу с Python на R и пытаюсь написать простой код для оценки портфеля, используя пакет Jeb Ryan Ibrokers. Я хотел бы иметь поле класса twsconn
в одном из моих объектов
setClass( "MktAsset",
representation( IB.id = "character",
asset.type = "factor",
ccy = "factor",
IB.conn = "twsconn") )
но система, похоже, не рада этому
Сообщение
В.completeClassSlots(ClassDef, где): неопределенные классы слотов в определении "MktAsset": IB.connection(класс "twsconn")
но когда я спрашиваю класс TWS (инициализируется с tws <- twsConnect()
, это возвращает
[1] "twsconn" "environment"
Я пытался пройти через код, чтобы проверить наличие класса twsconn
но я ничего не нашел.
Может кто-нибудь помочь?
большое спасибо
1 ответ
Вопрос S3 в S4. Это должно работать:
setOldClass("twsconn") # this is what you are missing
setClass( "MktAsset",
representation( IB.id = "character",
asset.type = "factor",
ccy = "factor",
IB.conn = "twsconn") )
# [1] "MktAsset"
a <- new("MktAsset")
ibg <- ibgConnect() # connect to IB Gateway
a@IB.conn <- ibg
a
An object of class "MktAsset"
Slot "IB.id":
character(0)
Slot "asset.type":
factor(0)
Levels:
Slot "ccy":
factor(0)
Levels:
Slot "IB.conn":
<twsConnection,1 @ 20110325 13:15:22 CST, nextId=1>
Если вы сможете приехать в R/Finance в Чикаго в апреле http://www.rinfinance.com/, я буду проводить двухчасовой семинар в пятницу утром (29 апреля), посвященный IBrokers (и алгоритмической торговле в целом с R), который было бы интересно, я подозреваю.