[PYTHON] Collecte de données FX à l'aide de l'API REST OANDA

motivation

Lors de la création d'un bot de trading automatique pour FX, il est nécessaire de considérer le type de stratégie à utiliser pour le trading automatique. Et la stratégie doit être évaluée pour sa performance. Cet article sert également de rappel comment collecter des données FX à l'aide de l'API OANDA REST pour vérifier les performances de votre stratégie.

Comment faire

1. Enregistrement OANDA

L'API REST OANDA fait référence à un groupe d'API publiées par un fournisseur FX appelé Oanda. Il y a très peu d'entreprises qui publient des API FX, et compte tenu de la quantité d'informations sur le net, je pense qu'il est préférable d'utiliser l'API OANDA REST pour les API liées aux FX. Pour utiliser l'API, vous devez vous inscrire auprès d'OANDA et obtenir une clé API émise. Vous pouvez vous inscrire en environ 5 minutes à partir du lien ci-dessous

OANDA JAPAN

2. Installez oandapy V20

Inscrivez-vous sur OANDA, et une fois la clé API émise, créons un environnement dans lequel vous pouvez accéder à l'API. Il est pratique de placer la clé API dans un fichier séparé.


pip install oandapyV20

oanda_access_key.py


ACCOUNT_ID = "xxxxxxxxxxx"
PERSONAL_ACCESS_TOKEN = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"

instruments_candles.py


from oandapyV20.endpoints.instruments import InstrumentsCandles
import oandapyV20
import oanda_access_key as oak

account_id = oak.ACCOUNT_ID
access_token = oak.PERSONAL_ACCESS_TOKEN

api = oandapyV20.API(access_token = access_token, environment = "practice")

3. Acquisition de données

Utilisez Instruments Candles pour obtenir des données historiques. Document officiel Documentation Oandapy V20 En gros, c'est un échantillon qui acquiert des données de 15 minutes et plonge dans la base de données ↓ Après cela, vous pouvez cuisiner librement en vous plongeant dans la base de données ou en utilisant les données telles quelles.


ic = InstrumentsCandles(
		instrument="USD_JPY", #Sélectionnez une paire de devises
		params={
			"granularity": "M15", #Sélectionnez le type de pied de bougie
			"alignmentTimezone": "Japan", #Fuseau horaire
			# "count": 5000 #Nombre de données à acquérir, à partir de-Si to est spécifié, count n'est pas spécifié
			"from": start_datetime.strftime(datetime_format),
			"to": (start_datetime + relativedelta(days=date_window) - relativedelta(seconds=1)).strftime(datetime_format)
		}
	)
api.request(ic)
data = []
for candle in ic.response["candles"]:
	data.append(
		[
			candle['time'],
			candle['volume'],
			candle['mid']['o'],
			candle['mid']['h'],
			candle['mid']['l'],
			candle['mid']['c']
		]
	)
df = pd.DataFrame(data)

Recommended Posts

Collecte de données FX à l'aide de l'API REST OANDA
Obtenir des données Salesforce à l'aide de l'API REST
Obtenez des données LEAD à l'aide de l'API REST de Marketo en Python
Acquisition de données à l'aide de l'API googlemap de python
Obtenez des données Amazon à l'aide de Keep API # 1 Obtenez des données
Mémo d'acquisition de données à l'aide de l'API Backlog
J'ai essayé d'utiliser l'API de données YOUTUBE V3
Obtenez des données Youtube en Python à l'aide de l'API Youtube Data
Collection d'images à l'aide de l'API Google Custom Search
Créer une feuille de calcul Google à l'aide de l'API Python / Google Data
Connaissance de l'utilisation de l'API de données Aurora Severless
API SBI FX
Créons une API REST en utilisant SpringBoot + MongoDB
Comment obtenir des données d'article à l'aide de l'API Qiita
Créer un bot de collecte de données en Python à l'aide de Selenium
[Python] Obtenez des données insight à l'aide de l'API Google My Business
J'ai essayé APN (notification à distance) à l'aide de l'API REST Parse.com
Créer un pseudo serveur d'API REST à l'aide de pages GitHub
J'ai essayé d'utiliser l'API de Sakenowa Data Project
Analyse des données à l'aide de xarray
Nettoyage des données 2 Nettoyage des données à l'aide de DataFrame
Nettoyage des données à l'aide de Python
J'ai essayé de rechercher des vidéos à l'aide de l'API de données Youtube (débutant)
Obtenez des données à l'aide de l'API du ministère des Affaires intérieures et des Communications
Comment réinitialiser le mot de passe via l'API à l'aide du framework Rest Django
[Python] J'ai essayé de collecter des données en utilisant l'API de wikipedia
Jouez avec l'API de données YouTube v3 à l'aide du client Python de l'API Google