2017-09-29 3 views
0

Wer hat eine Idee, wie man im IBrokers-Paket algoStrategy und algoParams verwendet? Ich habe versucht, eine Liste für algoParams zu erstellen, aber vergeblich.R IBrokers (Interactive Brokers API)

Zum Beispiel:

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 = "")) 

Meine Bestellungen entpuppen Market Order sein. Daher nehme ich an, dass meine Eingabe in algoStrategy und algoParams ignoriert wurde. Ich werde dankbar sein, wenn hier jemand helfen kann. Vielen Dank!

Antwort

1

Die Funktion placeOrder in IBrokers implementiert keine algoStrategy und algoParams. Wenn Sie den Code der Funktion überprüfen:

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 
      ) 

Das Ende der Funktion muss geändert werden:

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("") 
) 

Und die Parameter sollten ähnlich sein: algoParams=c("6","maxPctVol","0.2","startTime","08:50:00 GMT","endTime","allowPastEndTime","1","noTakeLiq","1","monetaryValue","100000") wo das erste Zeichen das ist Anzahl der Parameter, die an die Algo-Strategie übergeben werden.

Verwandte Themen