R IBrokers (API Interactive Brokers)

Кто-нибудь знает, как использовать algoStrategy и algoParams в пакете IBrokers? Я пытался создать список для algoParams, но тщетно.

Например:

library(IBrokers)

twsOrder(reqIds(twsconn), 
         "BUY", 
         "10", 
         "MKT", 
         transmit = TRUE, 
         algoStrategy = "VWAP",
         algoParams = list(maxPctVol = "0.2", startTime = "13:00:00 HKT", 
                           endTime = "13:30:00 HKT", allowPastEndTime = 0, 
                           noTakeLiq = 0, speedUp = 0, monetaryValue = ""))

Мои ордера оказались рыночными ордерами. Таким образом, я предполагаю, что мой ввод в algoStrategy и algoParams был проигнорирован. Буду признателен, если кто-нибудь здесь сможет протянуть руку помощи. Благодарю вас!


person WaiLi    schedule 29.09.2017    source источник


Ответы (1)


Функция placeOrder в IBrokers не реализует algoStrategy и algoParams. Если вы проверите код функции:

 order <- c(order,
             "", # DEPRECATED FIELD
             Order$discretionaryAmt,
             Order$goodAfterTime,
             Order$goodTillDate,
             Order$faGroup,
             Order$faMethod,
             Order$faPercentage,
             Order$faProfile,
             Order$shortSaleSlot,
             Order$designatedLocation,
             Order$ocaType,
             Order$rule80A,
             Order$settlingFirm,
             Order$allOrNone,
             Order$minQty,
             Order$percentOffset,
             Order$eTradeOnly,
             Order$firmQuoteOnly,
             Order$nbboPriceCap,
             Order$auctionStrategy,
             Order$startingPrice,
             Order$stockRefPrice,
             Order$delta,
             Order$stockRangeLower,
             Order$stockRangeUpper,
             Order$overridePercentageConstraints,
             Order$volatility,
             Order$volatilityType,
             Order$deltaNeutralOrderType,
             Order$deltaNeutralAuxPrice,
             Order$continuousUpdate,
             Order$referencePriceType,
             Order$trailStopPrice,
             Order$scaleInitLevelSize,
             Order$scaleSubsLevelSize,
             Order$scalePriceIncrement,
             Order$clearingAccount,
             Order$clearingIntent,
             Order$notHeld,
             "0", # Order$underComp .. not yet supported by IBrokers
             "",  # Order$algoStrategy .. not yet supported by IBrokers
             Order$whatIf
             )

Конец функции должен быть изменен:

  order <- c(order,
             Order$clearingAccount,  
             Order$clearingIntent,  
             Order$notHeld,  
             "0", #underComp # FALSE #NEW but not using it  
             Order$algoStrategy,     
             Order$algoParams,
              Order$whatIf, # "0", 
             "" # miscOptionsStr("")
  )

И параметры должны быть похожи на: algoParams=c("6","maxPctVol","0.2","startTime","08:50:00 GMT","endTime","allowPastEndTime","1","noTakeLiq","1","monetaryValue","100000") , где первый символ — это количество параметров, которые передаются стратегии алгоритма.

person marie1234    schedule 22.02.2018