R IBrokers.Comment faire fonctionner le contrat de devise dans les appels reqHistoricalData ?par exemple.Les taux CADUSD ?Et comment tirer les prix des indices ?par exemple.S&P, DJI ?
Question
J'apprends actuellement à utiliser le IBrokers
emballer.
Je peux tirer les prix des actions aux fréquences que je veux, ainsi que les prix des options, mais je suis actuellement bloqué sur la hausse des taux de change.
Je ne sais pas comment configurer le droit twsContract
, pour appeler avec reqHistoricalData
.
Je souhaite obtenir des devises CADUSD, par exemple sur une base d'une minute.Comment puis-je faire ceci?
L'exemple dans le manuel donne :
currency <- twsCurrency("EUR")
Quand j'essaie d'appeler ça en disant reqHistoricalData(tws, currency)
il revient avec une erreur disant quelque chose comme "aucune donnée historique disponible 1D".Comme je n'arrive même pas à faire fonctionner l'exemple du manuel, je suis plutôt coincé...
Quelqu'un peut-il m'éclairer sur la syntaxe correcte ?Si j’ai quelques exemples qui fonctionnent réellement, je peux partir de là.
De plus, lorsque j'essaie d'utiliser "USD.CAD"
ou "CAD.USD"
comme le ticker dans le twsContract
objet, je reçois des plaintes selon lesquelles ce n'est pas une sécurité valide.Comment puis-je savoir quel est le bon nom de ticker pour USD.CAD
serait?En ce moment, je trouve le ticket pour les actions en regardant mon application de courtier interactive qui est ouverte en même temps évidemment, en tapant le nom de l'entreprise et en effectuant une recherche.Le téléscripteur revient généralement, par ex.(tapez apple, récupérez AAPL lorsque je souhaite ajouter cette sécurité à mon portefeuille dans le poste de travail des courtiers interactifs).
Toute aide serait très appréciée.
En outre, une autre question connexe est de savoir comment puis-je extraire l'historique, par exemple, de l'indice des prix S&P500 sur une base d'une minute, par exemple ?
Je suppose que j'utiliserais un twsContract
objet dans R, mais je ne sais pas quels paramètres utiliser.Quel devrait être le téléscripteur ?Le poste de travail commercial mentionne qu'il s'agit d'un type de produit « index » (évidemment), qui ne rentre dans aucun des emballages comme twsStock
, twsCurrency
etc...Encore une fois, existe-t-il un exemple quelque part qui fonctionne réellement ?
La solution
Vous rencontrez des difficultés pour obtenir des données pour FX car vous essayez d'obtenir TRADES
données qu'IBrokers ne diffuse pas pour FX.Au lieu de cela, vous devriez utiliser whatToShow="BID"
ou whatToShow="Ask"
.par exemple.
tws <- twsConnect()
ccy <- reqContractDetails(tws, twsCurrency("USD", "CAD"))[[1]]$contract
reqHistoricalData(tws, ccy, whatToShow='BID')
L'obtention de données pour l'indice S&P 500 est similaire
reqHistoricalData(tws, reqContractDetails(tws, twsIndex("SPX", "CBOE", "USD"))[[1]]$contract)
Votre question est assez large et se lit comme une demande d'aperçu du package.Avez-vous lu la vignette ?(vignette("IBrokers")
)
j'ai un package sur R-Forge appelé twsInstrument qui fournit des wrappers pour vous faciliter la tâche.
library(twsInstrument)
get_quote("USD.CAD")
getBAT("USD.CAD") #gets the last 5 days of minutely Bid/Ask/Trade/Midpoint
Regarde aussi ?reqTBBOhistory
et twsInstrument:::update.data
pour télécharger beaucoup de données sur le disque.
Enfin, je recommande de poser ce type de questions sur le liste de diffusion r-sig-finance où Jeff est susceptible de le voir.