Monday, February 20, 2017

Python Forex Backtesting

Python Algorithmic Trading Library PyAlgoTrade est une bibliothèque de négociation Algorithmique Python centrée sur le backtesting et le support pour le trading de papier et le trading en direct. Disons que vous avez une idée pour une stratégie de trading et youd comme pour l'évaluer avec des données historiques et voir comment il se comporte. PyAlgoTrade vous permet de le faire avec un minimum d'effort. Caractéristiques principales Entièrement documenté. Événement. Prend en charge les commandes Market, Limit, Stop et StopLimit. Prend en charge les fichiers Yahoo Finance, Google Finance et NinjaTrader CSV. Supporte tout type de données de séries chronologiques au format CSV, par exemple Quandl. Bitcoin trading support via Bitstamp. Indicateurs techniques et filtres comme SMA, WMA, EMA, RSI, bandes de Bollinger, exposant de Hurst et d'autres. Des mesures de performance comme le ratio Sharpe et l'analyse de retrait. Gestion des événements Twitter en temps réel. Profiler d'événements. Intégration TA-Lib. Très facile à mettre à l'échelle horizontalement, c'est-à-dire à utiliser un ou plusieurs ordinateurs pour revoir une stratégie. PyAlgoTrade est libre, open source, et il est sous licence Apache, Version 2.0.bt - Backtesting flexible pour Python Qu'est-ce que bt bt est un framework de backtesting flexible pour Python utilisé pour tester des stratégies de trading quantitatives. Backtesting est le processus de test d'une stratégie sur un ensemble de données donné. Ce cadre vous permet de créer facilement des stratégies qui mélangent et correspondent différents Algos. Il vise à favoriser la création de blocs de logique de stratégie faciles à tester, réutilisables et flexibles pour faciliter le développement rapide de stratégies commerciales complexes. L'objectif: sauver les quants de la réinvention de la roue et les laisser se concentrer sur la partie importante de l'emploi - développement de la stratégie. Bt est codé en Python et rejoint un écosystème dynamique et riche pour l'analyse des données. De nombreuses bibliothèques existent pour l'apprentissage des machines, le traitement du signal et les statistiques et peuvent être utilisées pour éviter de réinventer la roue - ce qui arrive trop souvent quand on utilise d'autres langues qui n'ont pas la même richesse de projets Open Source de haute qualité. Bt est construit sur ffn - une bibliothèque de fonctions financières pour Python. Check it out Un exemple rapide Voici un goût rapide de bt: A Simple Strategy Backtest Let8217s créer une stratégie simple. Nous allons créer une stratégie mensuelle rééquilibrée, à long seulement, où nous placerons des pondérations égales sur chaque actif dans notre univers d'actifs. Premièrement, nous allons télécharger des données. Par défaut, bt. get (alias pour ffn. get) télécharge la fermeture ajustée de Yahoo Finance. Nous allons télécharger des données à partir du 1er janvier 2010 aux fins de cette démo. Une fois que nous avons nos données, nous allons créer notre stratégie. L'objet Stratégie contient la logique de stratégie en combinant divers Algos. Enfin, nous créerons un Backtest. Qui est la combinaison logique d'une stratégie avec un jeu de données. Une fois cela fait, nous pouvons exécuter le backtest et analyser les résultats. Maintenant, nous pouvons analyser les résultats de notre backtest. L'objet Result est un wrapper mince autour de ffn. GroupStats qui ajoute quelques méthodes auxiliaires. Une application pour backtest les stratégies de trading de base pour le marché FX, basé sur des données historiques. Ce code est écrit pour Python 2.7 et n'est pas compatible avec Python 3. Prérequis: Tkinter Pour exécuter le programme, téléchargez tous les fichiers, conservez la même structure de répertoire et exécutez le fichier inputhandling. py à partir de l'interpréteur Python. Les paramètres sont les suivants: StartEnd Date: les dates qui lient les données historiques qui vont être testées Dépôt initial: le montant d'argent (USD) dans le compte de courtage pour commencer avec TimeFrame: la largeur de chaque barre de l'historique Les données qui vont être testées est le calendrier utilisé pour chaque stratégie Symbole: soutien pour EURUSD seulement, USDJPY, GBPUSD et USDCHF avec les données incluses Position to Trade: restreindre le backtest pour inclure uniquement les positions longues, positions courtes ou les deux Trading Critère: la principale stratégie utilisée pour simuler les transactions historiques (moyenne mobile Crossover et stochastique inclus) Levier (marge): le ratio de levier maximal admissible Taille de lot privilégié: une taille de lot fixe à négocier lorsqu'une position est ouverte. Si la marge libre limite la taille du lot à être moindre, elle sera ajustée au cours de l'essai. Technique de gestion de la négociation: TPSL - fixer un bénéfice de prise fixe et un niveau de perte de stop en pips à partir du prix d'entrée Prix SL - définir la perte d'arrêt à un pourcentage du prix et Mettre à jour toutes les barres Une fois ces paramètres saisis, le programme exécutera un backtest rudimentaire en utilisant l'analyse barre par barre pour déterminer quel sera le solde final du compte. Ce programme peut être étendu en ajoutant plus de stratégies commerciales. Ils doivent mettre en œuvre la même interface que les stratégies Moyenne mobile et Stochastique. Vous ne pouvez pas effectuer cette action en ce moment. Vous avez ouvert une session avec un autre onglet ou une autre fenêtre. Rechargez pour actualiser votre session. Vous avez déconnecté dans un autre onglet ou une fenêtre. Rechargez pour actualiser votre session.


No comments:

Post a Comment