Friday, 20 January 2017

Forex Backtesting Tableur

Auto Trade System Back Testing Introduction Lorsque vous utilisez l'étude Spreadsheet System for Trading ou que vous avez créé une étude de système ACSIL (Advanced Custom Study et Interface Language Language) qui utilise les fonctions ACSIL Trading, vous pouvez effectuer Back Testing en utilisant Trade Simulation Mode et lecture du graphique. Ou en effectuant un test basé sur les barres. Afin d'évaluer comment votre système d'échange a effectué historiquement et de voir les métiers historiques pour les données passées, il est nécessaire d'exécuter un test de retour. Un Bar Based Back Test utilise les données Open, High, Low, Close des barres de graphique chargées elles-mêmes pour évaluer le système de trading automatisé. Ce sont ces données qui sont ajoutées de façon incrémentielle au graphique pendant le test de retour. Cette méthode de Back Testing est plus rapide par rapport à un Replay Back Test, mais elle est moins précise qu'un Replay Back Test. Un test de retour en arrière utilise les données sous-jacentes du fichier de données Intraday pour évaluer le système de négociation automatisée. Ces données sous-jacentes ont un intervalle de temps par enregistrement allant de 1 à 1 minute (dépend de divers facteurs, y compris le service DataTrading utilisé, les données historiques disponibles et les paramètres de Sierra Chart). Ce sont ces données sous-jacentes plus détaillées dans le fichier de données Intraday qui est ajoutée de façon incrémentielle au graphique pendant le test de retour. Il s'agit d'une méthode plus lente de back testing par rapport à un Bar Based Back Test, mais il est plus précis. Avec l'une ou l'autre méthode de Back Testing, un rapport complet de statistiques de commerce peut être regardé basé sur tous les bourrages de commande produits pendant l'essai arrière. Reportez-vous à la section Affichage des résultats de test. Bar Based Back Testing Pris en charge pour les graphiques historiques et intraday. Le test de retour sur les barres chargées est une méthode de test arrière utilisant les valeurs Open, High, Low et Close des barres chargées. Les données sous-jacentes dans le fichier de données ne sont pas utilisées directement, seules les barres chargées elles-mêmes. Cela ne fonctionne généralement pas avec la précision élevée d'un test de retour par rapport à un test de retour de retour. Toutefois, il est généralement plus rapide et la méthode recommandée si les tests rapides est important. Assurez-vous qu'il y ait une coche par Trade gtgt Auto Trading Activé si il n'y en a pas déjà. Sinon, le système de négociation automatisée ne générera aucun métier. Déconnectez-vous du serveur de données et de commerce si ce n'est déjà fait, en sélectionnant Fichier gtgt Déconnecter. Il n'est pas possible d'effectuer un back test basé sur la barre pendant qu'il est connecté au serveur de données ou de commerce. Pour effectuer un test de retour à haute vitesse basé sur les barres chargées, sélectionnez Trade Tight Auto Trade System Based Back Test. Vous serez invité à saisir l'incré - ment du traitement des barres. La valeur par défaut est 250. Cela spécifie le nombre de barres qui sont traitées à la fois avant que l'entrée de l'interface utilisateur soit traitée. Ce qui signifie que si vous spécifiez 250, puis 250 barres seront traitées à la fois, puis 250. Entre chacun de ces blocs de traitement, vous pouvez interrompre le test arrière en appuyant sur la touche Échap du clavier. Plus le nombre est élevé, plus l'interface utilisateur reste occupée. Pour afficher les résultats détaillés du test de retour, reportez-vous à la section Affichage des résultats de test de retour. Bar Based Back Testing Notes Les études sont calculées sur le graphique 4 fois pour chaque barre. Pour chaque barre dans le diagramme, les études sont calculées d'abord avec le prix ouvert, puis le haut et le bas de la barre. Soit le High est utilisé en premier ou le Low est utilisé en premier, en fonction de la direction déterminée du mouvement des prix. Le Low est utilisé en premier lorsque la fermeture de la barre est plus proche de la hauteur de la barre. Le High est utilisé en premier lorsque la fermeture de la barre est plus proche de la basse de la barre, ou la fermeture est une distance égale à la haute et basse. Enfin, le prix Close de la barre est traité. Les prix de remplissage des commandes seront basés sur les valeurs des barres d'ouverture, de haut, de bas et de fermeture ou à moins d'une case de celles-ci, sauf si les ordres sont des ordres de repos (ordres non marchands qui n'ont pas été remplis immédiatement). Pour plus d'informations, reportez-vous à la rubrique Comment les commandes sont remplies. Gardez cela à l'esprit lorsque vous regardez les prix de remplissage. L'horodatage d'un remplissage d'ordre sera l'heure de début de la barre à laquelle le remplissage s'est produit. Il n'y a rien de spécial que vous devez faire avec le développement d'un système de négociation ACSIL ou un système de négociation Spreadsheet lors de l'exécution des tests en arrière basée sur la barre. Si vous voulez faire un commerce à la fin du bar quand vos règles sont remplies, vous saurez que votre système est évalué par rapport au prix de clôture quand vous voyez que le sc. LastTradePrice. Dans le cas d'un système de négociation ACSIL, est égal à la valeur de clôture de la barre ou à l'intérieur d'une case de celle-ci. Basé sur la barre d'essai arrière est une méthode rapide de dos test, sauf si vous avez besoin de haute précision tic-tac par la tique de rejouer basée test arrière. Replay Back Testing - Automatique Pris en charge pour les graphiques intraday seulement. Cette section explique comment effectuer un test de retour à l'aide de la commande Trade Test Trade Reprise Back Test. Cela simplifie le processus d'exécution d'un test de retour basé sur Replay. Déconnectez-vous du flux de données en sélectionnant Fichier gtgt Déconnecter dans le menu. Sélectionnez Chart gtgt Chart Settings (Paramètres de graphique) et réglez le nombre de jours à charger sur le nombre de jours pendant lesquels vous souhaitez effectuer votre test retour. Appuyer sur OK . Une fois cette option définie, elle ne doit plus être modifiée. Assurez-vous qu'il y ait une coche par Trade gtgt Auto Trading Activé si il n'y en a pas déjà. Sinon, le système de négociation automatisée ne générera aucun métier. Sélectionnez Trade gtgt Auto Trade System Rejouer Back Test dans le menu. Cette commande efface toutes les données commerciales simulées pour le symbole des graphiques et reproduit le graphique entier depuis le début à une vitesse élevée. Sierra Chart sera occupé pendant le Back Test. Vous pouvez arrêter le test arrière en appuyant sur le bouton Arrêter de la fenêtre Relecture de graphique. Vous aurez l'occasion d'appuyer sur ce bouton toutes les quelques secondes. Pour afficher les résultats détaillés du test de retour, reportez-vous à la section Affichage des résultats de test de retour. Replay Back Testing - Manual Pris en charge pour les graphiques intraday seulement. Le test manuel est utilisé lorsque vous voulez exécuter le test de retour à une vitesse plus lente pour observer ce qu'il fait et il peut être nécessaire d'utiliser ce type de test arrière lorsque vous êtes de retour à tester un système de négociation qui implique plusieurs cartes. Assurez-vous qu'il y ait une coche par Trade gtgt Trade Simulation Mode On s'il n'y en a pas déjà. Toutefois, Sierra Chart sera placé dans ce mode de toute façon lorsque vous démarrez un Back Test. Assurez-vous qu'il y ait une coche par Trade gtgt Auto Trading Activé si il n'y en a pas déjà. Sinon, le système de négociation automatisée ne générera aucun métier. Sélectionnez Chart gtgt Replay Chart pour afficher la fenêtre de relecture. Sur la fenêtre de relecture, sélectionnez le mode de test du système de négociation précis. Si vous souhaitez rejouer plusieurs diagrammes dans un système de négociation qui utilise plusieurs graphiques, puis activer Pour tous les graphiques dans Chartbook sur la fenêtre de relecture. Sinon, cette option doit être désactivée. Pour plus d'informations, reportez-vous à Effectuer des tests de retour sur un système de négociation qui utilise plusieurs graphiques. Faites défiler jusqu'au point du graphique dans lequel vous souhaitez commencer le test en arrière et appuyez sur le bouton Lecture de la fenêtre de relecture. Lorsque la reprise est lancée, la position commerciale simulée actuelle pour le symbole, le cas échéant, les ordres simulés pour le symbole, le cas échéant, et tous les remplissages d'ordres simulés pour le symbole sont tous effacés. Pour plus de détails, reportez-vous à la page Rejouer des graphiques. Pour afficher les résultats détaillés du test de retour, reportez-vous à la section Affichage des résultats de test de retour. Effectuer des tests de retour sur un système de négociation qui utilise des graphiques multiples Lorsque vous avez un système de négociation qui implique plusieurs graphiques, la question est de savoir si vous avez besoin de rejouer ou Back Test seulement le graphique de l'étude du système commercial ou tous les graphiques que le Système commercial fait référence à. Vous voudrez rejouer tous les graphiques auxquels un système de négociation fait référence en utilisant la méthode Replay Back Testing - Manual si vous voulez que votre système d'échange utilise les prix et les valeurs d'étude des barres en cours de formation plutôt que d'utiliser l'étude Et les valeurs de prix dans les cartes source qui ont des valeurs complètes et finalisées. Par exemple, considérez un graphique de 5 minutes par barre. Dans le diagramme de source que le système de négociation se réfère à, si elle n'est pas rejouer en même temps, il aura barres de 5 minutes complète. Alors que si vous le rejouez, graduellement au cours de la période de cinq minutes, une barre de 5 minutes va construire et les valeurs de l'étude va changer. S'il est important d'avoir des valeurs changeantes de barre et des valeurs d'étude pour votre système commercial, et seulement vous pouvez répondre à cette question, alors vous voulez rejouer toutes les cartes que le système commercial utilise. Vous ne voudrez pas rejouer tous les graphiques qu'un système de négociation est référencement et plutôt seulement rejouer ou effectuer un back test sur le graphique particulier sur lequel le système de négociation est, s'il est acceptable pour vous d'avoir terminé et finalisé bar et les valeurs d'étude Dans le ou les tableaux source. Lorsqu'un système commercial fait des références à d'autres graphiques, il doit utiliser l'une des deux méthodes pour le faire. Il faudra utiliser l'étude StudyPrice Overlay. Ou dans le cas d'un système de négociation ACSIL il peut faire des références à d'autres graphiques en utilisant la méthode documentée sur le référencement d'autres cadres de temps et des symboles lors de l'utilisation de la page ACSIL. Lors de l'utilisation de la Surimpression StudyPrice pour superposer les données de prix ou d'étude sur le graphique sur lequel le système de négociation est activé, et les barres de diagrammes sont basées sur le volume, le nombre de métiers, la gamme, le renko, l'inversion, le volume Delta ou les changements de prix Pour définir l'entrée d'étude du mode de copie de données pour utiliser la valeur la plus ancienne à partir de la période correspondante. Sinon, dans le cas où l'autre graphe référencé ne rejoue pas et n'est pas synchronisé dans le diagramme de destination, les données de la dernière barre du diagramme référencé seront utilisées pour que la barre en cours soit testée à nouveau. Les données référencées ne seraient donc pas correctes. Lorsque vous rejouez plusieurs graphiques en même temps pour effectuer un test de retour, vous devez utiliser la méthode Replay Back Testing - Manual. Dans la fenêtre Rejouer, vous devez activer l'option Pour tous les graphiques dans Chartbook. Et, dans la fenêtre de relecture, sélectionnez le mode de test de base du système de négociation précis ou calculer à chaque TickTrade. Lorsque vous effectuez cette opération, un test de retour synchronisé sera effectué. Pour ce type de test, il est recommandé de vous déconnecter des serveurs de données et de commerce en sélectionnant Fichier gtgt Déconnecter. Avec un test de retour synchronisé, la dépendance entre les diagrammes est déterminée et les calculs sont effectués dans l'ordre approprié. Cela assure la cohérence et la précision. Vous pouvez utiliser n'importe quelle vitesse de relecture. Lorsque vous lancez la répétition synchronisée du test de retour, vous serez invité à entrer l'incrément de pas de temps pour effectuer le test de retour dans (Entrer étape de traitement en secondes). La valeur par défaut est 60 secondes. Plus le délai est petit, plus le test de retour est précis, mais cela prendra plus de temps. Plus le délai est important, plus le test de retour sera rapide, mais il sera moins précis. Cependant, la précision dépend vraiment de l'intervalle de temps des barres de diagramme de source et de destination. Vous ne voudriez pas utiliser un incrément de pas de temps qui est plus long que l'intervalle de temps des barres impliquées dans le système de négociation. Vous voudrez peut-être choisir un délai qui est d'environ 25 de la durée moyenne de la barre. Affichage des résultats de test de retour Vous pouvez afficher les résultats détaillés de votre système de négociation en cliquant sur Commerce dans le menu déroulant. En haut du journal des activités commerciales, sélectionnez le symbole sur lequel le test de retour a été exécuté. Vous devez choisir le symbole qui a SIM en face de celui-ci. En haut du journal des activités commerciales, vous devez sélectionner Simulé dans la liste des Sources des activités de commande pour afficher l'activité de commande et de remplissage pour le test de retour. Pour obtenir des instructions complètes, reportez-vous à l'onglet Statistiques commerciales. Il existe de nombreux champs affichés qui fournissent des résultats détaillés de la négociation. Pour un journal Commerce par métier, sélectionnez Trade gtgt Trade Activity Log gtgt Trades dans le menu. Pour obtenir des instructions complètes, reportez-vous à l'onglet Trades. Pour visualiser visuellement les commandes commerciales sur le graphique, activez Commerce Afficher les remplissages de commandes dans le menu de la fenêtre principale ou de la fenêtre de graphique. Pour savoir exactement quand une commande a été remplie, vous devez regarder les remplissages d'ordres sur le graphique plutôt que de regarder les flèches placées par un système commercial sur le graphique parce que ces flèches ne représentent pas nécessairement les ordres réels acceptés et remplis. Pour plus d'informations à ce sujet, reportez-vous à Signaux ignorés avec des systèmes de feuille de calcul ou des alertes (Ceci s'applique à l'étude Spreadsheet System for Trading). Amélioration de la performance des tests de retour Il ya certaines choses qui peuvent être faites pour améliorer les performances des tests de retour. Le test de retour le plus rapide va être lors de l'utilisation de la méthode de test Back Based Back Back Backing. Dans le cas de l'utilisation du Spreadsheet System for Trading. Reportez-vous à la section Amélioration des performances des systèmes de négociation de feuilles de calcul en plus des éléments ci-dessous. Développer un système automatisé de négociation en utilisant l'interface d'étude personnalisée avancée et le langage va toujours donner la meilleure performance par rapport à l'aide de feuilles de calcul. Lors de l'exécution d'un test de répétition, si les données contenues dans le fichier de données du graphique Intraday contiennent des enregistrements de 1 Tick ou 1 Second, les tests de retour seront plus lents par rapport aux enregistrements de données temporelles dans le fichier de données Intraday. Par conséquent, augmentez les paramètres globaux gtgt DataTrade Service Paramètres gtgt Intraday Data Storage Time Unit. Après cela, re-télécharger les données du graphique Intraday en allant dans le graphique Intraday et sélectionnez Modifier gtgt Supprimer toutes les données et télécharger. Cela ne doit être fait qu'une seule fois par symbole. Cela aidera à réduire le temps pour les tests de retour. La prochaine chose à vérifier pour déterminer la source de back back test est de supprimer toutes les études de la carte ou des graphiques qui sont rejoués, ou à partir du graphique un test de base en arrière est effectué sur. Exécutez le test de retour à nouveau et voir si vous obtenez de meilleures performances. Si c'est le cas, alors c'est l'une de ces études particulières qui a causé le problème. Vous pouvez ensuite ajouter des études progressivement un par un pour voir lequel prend plus de temps à calculer. Si une étude personnalisée cause un problème de performance, le développeur de cette étude doit améliorer la performance de cette étude. L'étude personnalisée doit définir sc. FreeDLL 0 dans le bloc de code sc. SetDefaults pour améliorer les performances. Amélioration de la performance des tests de retour des systèmes de négociation de feuilles de calcul Dans le cas de l'utilisation de l'étude de tableur pour l'étude de négociation, les tests de retour ne sont généralement pas très rapides. La raison en est que toutes les données de graphique sont sorties vers un objet Spreadsheet séparé. Chaque fois qu'une nouvelle barre est ajoutée au graphique lors d'un test de retour, toutes les données du graphique doivent être renvoyées à la feuille de calcul. Cela provoque beaucoup de calculs se produire. Inherently en utilisant ACSIL est beaucoup plus rapide. Toutefois, vous pouvez améliorer les performances en suivant les étapes ci-dessous. Regardez vos formules dans les cellules K-Z (dernière colonne de formule lorsque vous utilisez 16 colonnes de formule). Déterminer combien de lignes de la ligne actuelle 3, ils renvoient à. Par exemple, si les formules ne se réfèrent pas au-delà de la ligne 12, l'étude de feuille de calcul doit uniquement afficher 10 lignes de données dans la feuille de calcul. Réduire le nombre d'entrées de lignes dans la fenêtre Paramètres d'étude pour l'étude Spreadsheet System for Trading au nombre minimum de lignes requises. Effacez les données des lignes de feuilles qui ne sont plus utilisées dans la feuille de calcul. Pour ce faire, sélectionnez ces lignes en sélectionnant les numéros de lignes sur le côté gauche de la Feuille de la feuille de calcul et appuyez sur la touche Supprimer du clavier ou sélectionnez Spreadsheet gtgt Clear Selection. Supprimez les feuilles non utilisées dans la feuille de calcul. En haut à gauche de la fenêtre Feuille de calcul, sélectionnez la feuille particulière qui n'est pas utilisée, puis sélectionnez Feuille de calcul, Supprimer la feuille. S'il existe également une étude personnalisée avancée sur le graphique que vous avez développé vous-même, assurez-vous que sc. FreeDLL est réglé sur 0. C'est essentiel pour la performance. Effectuez le test de retour en utilisant l'une des méthodes décrites sur cette page. Le test de retour le plus rapide sera un test de base basée sur le dos. Différences entre le test de retour et l'évaluation du système d'échange automatique en temps réel Les actions de commande BuyEntry, BuyExit, SellEntry et SellExit sont évaluées lorsque l'étude de négociation est calculée. Pendant la mise à jour normale du graphique en temps réel, ce calcul se produit à l'intervalle de mise à jour graphique défini dans Paramètres globaux gtgt Paramètres généraux. Toutefois, lorsque l'intervalle de mise à jour des graphiques est écoulé, les études de négociation ne seront calculées que si des données sont reçues du flux de données ou si des ordres de négociation ou des données de position sont à jour. Lors d'un test de retour, il existe des règles définitives qui contrôlent lorsque les études commerciales sont calculées. Pour un test basé sur le bar. Les études de trading sont calculées pour chacune des valeurs Open, High, Low, Close de la barre. Lors d'un test de retour. Les études de négociation sont calculées lorsqu'une nouvelle barre est ajoutée au graphique et chaque fois qu'il ya un changement avec les valeurs Haute, Basse, Fermer de la dernière barre du graphique lorsque les données sont traitées dans le fichier de données du graphique Intraday. Pendant la mise à jour en temps réel. Entre les périodes où les calculs de trading sont calculés et qui se trouve à l'intervalle de mise à jour des graphiques. Il peut y avoir plus d'un enregistrement de données ajouté au graphique. Cela est particulièrement vrai avec les données de la coche par la coche. Par conséquent, l'étude n'est pas calculée à chaque tique. Si vous souhaitez que vos actions de commande soient évaluées le plus rapidement possible lors de la mise à jour du graphique en temps réel, vous pouvez réduire l'intervalle de mise à jour des graphiques. Nous ne recommandons pas de descendre de 50 à 100 ms. Le point de cette discussion est qu'il peut y avoir des incohérences entre un système de négociation exécutant en temps réel et lors d'un test de retour en raison des conditions et la fréquence pour quand les études, y compris l'étude de négociation sont calculés. Vous aurez la plus grande cohérence entre les tests en arrière et en temps réel de l'évaluation du système d'échange automobile lorsque vous effectuez un test de retour basé sur Replay basé sur tick par tick. Pour vous assurer d'avoir des données ticks par tick dans les fichiers de données Intraday, reportez-vous à la Configuration des données Tick by Tick. Dans le cas de l'étude Spreadsheet System for Trading, si vous souhaitez évaluer vos formules condition seulement sur une barre de fermer. Puis positionnez le signal correspondant uniquement sur une barre Fermer les entrées avec le système de feuilles de calcul pour l'étude de négociation sur Oui. Cela donnera à votre système une plus grande stabilité et ne sera pas affecté par l'intervalle de mise à jour des graphiques. Dans le cas d'un système commercial ACSIL, vous voulez utiliser sc. GetBarHasClosedStatus (). Dans le cas d'un système de négociation utilisant plusieurs diagrammes, lors de la mise à jour en temps réel des diagrammes, pour contrôler l'ordre de calcul des diagrammes en fonction de la dépendance entre eux, vous devez activer les paramètres globaux gtgt Paramètres généraux gtgt Utiliser la mise à jour du diagramme des ordres contrôlés. Cela permet une plus grande cohérence entre les tests en arrière et l'évaluation du système de négociation en temps réel pour les systèmes de trading utilisant plusieurs graphiques. Back Testing et Continuous Contrats à Contrats Il est possible d'effectuer des Back Testing lors de l'utilisation de l'un des Paramètres de Graphique gtgt Paramètres Avancés gtgt Options de contrat Continu. Lors de la reprise des tests sur un graphique de contrats Continuous Futures, bien que les contrats à terme expirés soient chargés dans le graphique, le graphique ne comporte qu'un seul symbole utilisé pour le négoce même si vous effectuez un retour des données historiques. Donc, les métiers se produisent sur les prix expirés contrat, mais étant spécifié avec le symbole actuel. Par conséquent, vous ne verrez qu'un symbole lors de l'examen des résultats commerciaux dans le journal des activités commerciales. Consistance entre les tests de dos Lorsque vous effectuez des tests de retour, vous devez utiliser l'une des méthodes documentées sur cette page et suivre les procédures indiquées. Lors de l'exécution d'un test de retour basé sur Replay, sur la fenêtre de relecture, vous devez sélectionner le mode de test de retour du système de négociation précis afin d'avoir la cohérence lorsque Back Testing le même système de négociation automatisée dans les mêmes conditions. Lors d'un test de retour, lorsque Sierra Chart traite les enregistrements de données sous-jacents pour un test de retour basé sur Replay ou les données de barre pour un test de base basée, les prix Bid and Ask sont définis à partir des enregistrements sous-jacents dans le fichier de données Intraday Ou sont dérivées de la base de données Open High Low Close. Ces prix Bid and Ask sont utilisés pour remplir les ordres qui sont soumis par un système automatisé de trading. Il ya toujours une cohérence de 100 avec la définition des prix Bid and Ask entre Back Tests sur les mêmes données de graphique que les données sont traitées. Si votre système de négociation donne des résultats incohérents entre les tests en arrière sans apporter de modifications aux données du graphique, aux paramètres de graphique ou aux paramètres d'étude, vous devez examiner vos propres formules de code du système d'échange pour une cause. Quand il ya des incohérences, cela ne peut être attribué à votre propre code. Il est très peu probable que ce soit le résultat de la façon dont Sierra Chart traite le test de retour. Incohérences révèle que votre propre système commercial produit des résultats incohérents basés sur la façon dont il est conçu et fonctionnel. Même si vous n'obtenez pas un résultat cohérent entre les tests de retour, généralement cela ne signifie pas nécessairement beaucoup parce que même si vous voulez voir un résultat cohérent chaque fois que vous exécutez un test de retour, en supposant que votre étude fonctionne de façon cohérente et Sierra Chart ne Ne pas avoir de contrôle sur cela, il ne change pas le fait qu'avec la négociation en direct vous obtiendrez un autre résultat différent de votre système commercial. Essayez l'un des systèmes de trading fournis par Sierra Chart. Exécutez-le plusieurs fois. Vous obtiendrez un résultat cohérent à chaque fois. Si vous obtenez un résultat cohérent à chaque fois, et avec votre propre système de négociation vous n'avez pas, alors cela prouve très probablement le problème d'incohérence est dans votre propre système commercial. Les systèmes de trading de Sierra Graphique peuvent être trouvés dans Analyse gtgt Études gtgt Ajouter étude personnalisée gtgt Sierra Chart Études et exemples personnalisés gtgt Exemple de trading:. Si vous êtes Back Test d'un système commercial qui implique de rejouer plusieurs cartes en même temps, alors c'est quelque chose qui implique beaucoup plus de complexité. C'est quelque chose à considérer si vous avez des incohérences entre les tests de retour. Utilisation des prix d'offre et de demande réels pendant le test de retour Sierra Chart prend en charge l'utilisation des prix de soumission et de demande réels lors d'un test de retour basé sur la répétition. Ces prix Bid and Ask sont utilisés pour remplir les commandes. Cela permet d'obtenir un très haut degré de précision lors du test arrière. Les prix historiques d'enchères et d'enchères sont disponibles en utilisant les données historiques fournies par les services de données historiques de Sierra Chart. Dans la plupart des cas, ce service est utilisé pour les données historiques pour les graphiques. Ces données historiques relatives aux prix des soumissions et demandes commencent le 23 juin 2014. Suivez les étapes ci-dessous pour utiliser les prix des enchères et des demandes réelles au cours des tests rétrospectifs. Définir Sierra Chart pour stocker les données cocher par tique. Reportez-vous à la Configuration des données Tick by Tick. C'est une étape essentielle. Effectuer un test de retour automatique ou manuel. Il doit s'agir d'un test de retour. Dernière modification le jeudi 15 décembre 2016.06172013 La dernière version de TraderCode (v5.6) inclut les nouveaux indicateurs d'Analyse Technique, le Graphique en Ligne et le Backtesting de Stratégie. 06172013 Dernière version de NeuralCode (v1.3) pour Neural Networks Trading. 06172013 ConnectCode Barcode Font Pack - permet de codes à barres dans les applications bureautiques et comprend un add-in pour Excel qui prend en charge la génération en masse de codes à barres. 06172013 InvestmentCode, une suite complète de calculatrices financières et de modèles pour Excel est maintenant disponible. 09012009 Lancement de Free Investment and Financial Calculator pour Excel. 0212008 Release of SparkCode Professional - add-in pour la création de tableaux de bord en Excel avec sparklines 12152007 Annonce de ConnectCode Duplicate Remover - un puissant add-in pour trouver et supprimer des entrées en double dans Excel 09082007 Lancement de TinyGraphs - add-in open source pour créer sparklines et minuscules Graphiques dans Excel. Stratégie Backtesting dans Excel Stratégie Backtesting Expert Le Backtesting Expert est un modèle de feuille de calcul qui vous permet de créer des stratégies de trading en utilisant les indicateurs techniques et en exécutant les stratégies à travers des données historiques. La performance des stratégies peut ensuite être mesurée et analysée rapidement et facilement. Pendant le processus de backtesting, l'Expert de Backtesting parcourt les données historiques d'une ligne par rangée de haut en bas. Chaque stratégie spécifiée sera évaluée pour déterminer si les conditions d'entrée sont remplies. Si les conditions sont remplies, une transaction sera enregistrée. D'autre part, si les conditions de sortie sont remplies, une position qui a été entrée précédemment sera sortie. Différentes variantes d'indicateurs techniques peuvent être générées et combinées pour former une stratégie commerciale. Cela fait du Backtesting Expert un outil extrêmement puissant et flexible. Backtesting Expert Le Backtesting Expert est un modèle de feuille de calcul qui vous permet de créer des stratégies commerciales à l'aide des indicateurs techniques et d'exécuter les stratégies à l'aide de données historiques. La performance des stratégies peut ensuite être mesurée et analysée rapidement et facilement. Le modèle peut être configuré pour entrer dans les positions Long ou Short lorsque certaines conditions se produisent et quitter les positions lorsqu'un autre ensemble de conditions sont remplies. En négociant automatiquement sur des données historiques, le modèle peut déterminer la rentabilité d'une stratégie commerciale. Backtesting Expert Step by Step Tutoriel 1. Démarrez le Backtesting Expert Le Backtesting Expert peut être démarré à partir du menu Démarrer de Windows - Programmes - TraderCode - Backtesting Expert. Ceci lance un modèle de tableur avec plusieurs feuilles de calcul pour que vous puissiez générer des indicateurs d'analyse technique et exécuter des tests sur les différentes stratégies. Vous remarquerez que le Backtesting Expert comprend de nombreuses feuilles de travail familières comme DownloadedData, AnalysisInput, AnalysisOutput, ChartInput et ChartOutput du modèle Expert d'analyse technique. Cela vous permet d'exécuter tous vos tests en arrière rapidement et facilement à partir d'un environnement de feuille de calcul familier. 2. Tout d'abord, sélectionnez la feuille de données DownloadedData. Vous pouvez copier des données à partir de feuilles de calcul ou de fichiers séparés par des virgules (csv) dans cette feuille de calcul pour une analyse technique. Le format des données est le suivant. Sinon, vous pouvez vous référer au document Download Stock Trading Data pour télécharger des données provenant de sources de données bien connues telles que Yahoo Finance, Google Finance ou Forex pour une utilisation dans le Backtesting Expert. 3. Une fois que vous avez copié les données, allez à la feuille de calcul AnalysisInput et cliquez sur le bouton Analyser et BackTest. Cela générera les différents indicateurs techniques dans la feuille de calcul AnalysisOutput et exécutera backtesting sur les stratégies spécifiées dans la feuille de calcul StrategyBackTestingInput. 4. Cliquez sur la feuille de calcul StrategyBackTestingInput. Dans ce tutoriel, il vous suffira de savoir que nous avons spécifié des stratégies longues et courtes utilisant des croisements moyens mobiles. Nous allons entrer dans les détails de la spécification des stratégies dans la prochaine section de ce document. Le diagramme ci-dessous montre les deux stratégies. 5. Une fois les tests terminés, la sortie sera placée dans les feuilles de calcul AnalysisOutput, TradeLogOutput et TradeSummaryOutput. La feuille de calcul AnalysisOutput contient les prix historiques complets et les indicateurs techniques du stock. Lors des tests de retour, si les conditions d'une stratégie sont satisfaites, des informations telles que le prix d'achat, le prix de vente, la commission et le résultat seront enregistrées dans cette feuille de travail pour faciliter la consultation. Cette information est utile si vous voulez tracer les stratégies pour voir comment les positions d'actions sont entrées et sorties. La feuille de travail TradeLogOutput contient un résumé des métiers effectués par l'Expert Backtesting. Les données peuvent être facilement filtrées pour ne montrer que les données d'une stratégie spécifique. Cette feuille de travail est utile pour déterminer le profit global ou la perte d'une stratégie à des périodes différentes. La sortie la plus importante des tests de retour est placée dans la feuille de calcul TradeSummaryOutput. Cette feuille de travail contient le bénéfice total des stratégies réalisées. Comme le montre le diagramme ci-dessous, les stratégies ont généré un bénéfice total de 2 548,20 en faisant un total de 10 métiers. Parmi ces métiers, 5 sont des positions longues et 5 sont des positions courtes. La victoire Ratio de plus de 1 indique une stratégie rentable. Explication des différentes feuilles de travail Cette section contient l'explication détaillée des différentes feuilles de travail dans le modèle d'expert Backtesting. Les feuilles de travail DownloadedData, AnalysisInput, AnalysOutput, ChartInput et ChartOutput sont identiques à celles du modèle Technical Analysis Expert. Ainsi, ils ne seront pas décrits dans cette section. Pour une description complète de ces feuilles de travail, veuillez consulter la section Analyse technique. StrategyBackTestingInput worksheet Toutes les entrées pour le backtesting incluant les stratégies sont saisies à l'aide de cette feuille de calcul. Une stratégie est fondamentalement un ensemble de conditions ou de règles que vous allez acheter dans un stock ou vendre un stock. Par exemple, vous pouvez vouloir exécuter une stratégie pour aller Long (stocks d'achat) si la moyenne mobile de 12 jours du prix croise au-dessus de la moyenne mobile de 24 jours. Cette feuille de travail fonctionne avec les indicateurs techniques et les données de prix dans la feuille de calcul AnalysisOutput. De ce fait, les indicateurs techniques de moyenne mobile doivent être générés afin d'avoir une stratégie commerciale basée sur la moyenne mobile. La première entrée requise dans cette feuille de calcul (comme illustré dans le diagramme ci-dessous) consiste à spécifier s'il faut quitter Toutes les opérations à la fin de la session de test de retour. Imaginez le scénario où les conditions pour l'achat d'un stock est survenu et l'Expert Backtesting est entré dans un commerce Long (ou Short). Cependant, le délai est trop court et s'est terminé avant que le commerce puisse respecter les conditions de sortie, ce qui entraîne que certains métiers ne sortent pas lorsque la session de backtesting se termine. Vous pouvez définir ce paramètre sur Y pour forcer tous les métiers à quitter à la fin de la session de backtesting. Sinon, les métiers seront laissés ouverts lors de la session backtesting se termine. Stratégies Un maximum de 10 stratégies peuvent être soutenues en un seul test de retour. Le diagramme ci-dessous montre les entrées nécessaires pour spécifier une stratégie. Initiales de stratégie - Cette entrée accepte un maximum de deux alphabets ou nombres. Les initiales de stratégie sont utilisées dans les feuilles de calcul AnalysisOutput et TradeLog pour identifier les stratégies. Long (L) Court (S) - Permet d'indiquer s'il faut entrer une position Long ou Court lorsque les conditions d'entrée de la stratégie sont remplies. Conditions d'entrée Une transaction longue ou courte sera enregistrée lorsque les conditions d'entrée seront remplies. Les conditions d'entrée peuvent être exprimées sous forme d'expression de formule. L'expression de la formule est sensible à la casse et elle peut utiliser les fonctions, les opérateurs et les colonnes comme décrit ci-dessous. Crossabove (X, Y) - Retourne True si la colonne X croise au-dessus de la colonne Y. Cette fonction vérifie les périodes précédentes pour s'assurer qu'un crossover s'est effectivement produit. Crossbelow (X, Y) - Retourne True si la colonne X passe sous la colonne Y. Cette fonction vérifie les périodes précédentes pour s'assurer qu'un crossover s'est effectivement produit. Et (logicalexpr,) - Boolean Et. Renvoie True si toutes les expressions logiques sont True. Ou (logicalexpr,) - Boolean Or. Renvoie True si l'une des expressions logiques est True. Daysago (X, 10) - Retourne la valeur (dans la colonne X) de il y a 10 jours. Previoushigh (X, 10) - Retourne la valeur la plus élevée (dans la colonne X) des 10 derniers jours, y compris aujourd'hui. Previouslow (X, 10) - Retourne la valeur la plus basse (dans la colonne X) des 10 derniers jours, y compris aujourd'hui. Operators Greater than Equal Not equal Greater than or equal Addition - Subtraction Multiplication Division Columns (from AnalysisOutput) A - Column A B - Column B C .. .. YY - Column YY ZZ - Column ZZ This is the most interesting and flexible part of the Entry Conditions. It allows columns from the AnalysisOutput worksheet to be specified. When the back tests are carried out, each row from the column will be used for evaluation. For example, A 50 means each of the rows in column A of the AnalysisOutput worksheet will be determined whether it is greater than 50. A B In this example, if the value in column A in AnalysisOutput worksheet is greater than or equal the value of column B, the entry condition will be satisfied. and(A B, CD) In this example, if the value in column A in AnalysisOutput worksheet is greater than the value of column B and the value of column C is greater than column D, the entry condition will be satisfied. crossabove(A, B) In this example, if the value of column A in AnalysisOutput worksheet crosses above the value of B, the entry condition will be satisfied. crossabove means that A originally has a value that is less than or equal to B and the value of A subsequently becomes greater than B. Exit Conditions The Exit Conditions can make use of Functions, Operators and Columns as defined in the entry conditions. On top of that it can also make use of Variables as shown below. Variables for Exit Conditions profit This is defined as the selling price minus the purchase price. The selling price must be greater than the purchase price for a profit to be made. Otherwise the profit will be zero. loss This is defined as the selling price minus the purchase price when the selling price is less than the purchase price. profitpct (selling price - purchase price) purchase price Note. selling price must be greater than or equal to purchase price. Otherwise profitpct will be zero. losspct (selling price - purchase price) purchase price Note. selling price must be less than purchase price. Otherwise losspct will be zero. Examples profitpct 0.2 In this example, if the profit in terms of percentage is greater than 20, the exit conditions will be satisfied. Commission - Commission in terms of a percentage of the trading price. If the trading price is 10 and Commission is 0.1 then commission will be 1. The percentage commission and commission in dollars will be summed up to calculate the total commission. Commission - Commission in dollar terms. The percentage commission and commission in dollars will be summed up to calculate the total commission. No. of Shares - Number of shares to purchase or sell when the entryexit conditions of the strategy are met. TradeSummaryOutput worksheet This is a worksheet that contains a summary of all the trades carried out during the back tests. The results are categorised into Long and Short Trades. A description of all the fields can be found below. Total ProfitLoss - Total profit or loss after commission. This value is calculated by summing all the profits and losses of all the trades simulated in the back test. Total ProfitLoss before Commission - Total profit or loss before commission. If commission is set to zero, this field will have the same value as Total ProfitLoss. Total Commission - Total commission required for all the trades simulated during the back test. Total number of Trades - Total number of trades carried out during the simulated back test. Number of winning Trades - Number of trades that make a profit. Number of losing Trades - Number of trades that make a loss. Percent winning Trades - Number of winning trades divided by Total number of trades. Percent losing Trades - Number of losing trades divided by Total number of trades. Average winning Trade - The average value of the profits of the winning trades. Average losing Trade - The average value of the losses of the losing trades. Average Trade - The average value (profit or loss) of a single trade of the simulated back test. Largest winning Trade - The profit of the largest winning trade. Largest losing Trade - The loss of the largest losing trade. Ratio average winaverage loss - Average winning Trade divided by the Average losing Trade. Ratio winloss - Sum of all the profits in the winning trades divided by the sum of all the losses in the losing trades. A ratio of greater than 1 indicates a profitable strategy. TradeLogOutput worksheet This worksheet contains all the trades simulated by the Backtesting Expert sorted by the date. It allows you to zoom in to any specific trade or time frame to determine the profitability of a strategy quickly and easily. Date - The date where a Long or Short position is entered or exited. Strategy - The strategy that is used for executing this trade. Position - The position of the trade, whether Long or Short. Trade - Indicates whether this trade is buying or selling stocks. Shares - Number of shares traded. Price - The price in which the stocks are purchased or sold. Comm. - Total commission for this trade. PL (B4 Comm.) - Profit or Loss before commission. PL (Aft Comm.) - Profit or Loss after commission. Cum. PL (Aft Comm.) - Cumulative profit or loss after commissions. This is calculated as the cumulative total profitloss from the first day of a trade. PL (on Closing Position) - Profit or loss when the position is closed (exited). Both the entry commission and exit commission will be accounted for in this PL. For example, if we have a Long position where the PL (B4 Comm.) is 100. Assuming when the position is entered, a 10 commission is charged and when the position is exited, another commission of 10 is charged. The PL (on Closing Position) is 100- 10 - 10 80. Both the commission on entering the position and exiting the position are accounted for on position close. Back to TraderCode Technical Analysis Software and Technical IndicatorsUsing Excel to Back Test Trading Strategies How to back test with Excel Ive done a fair amount of trading strategy back testing. J'ai utilisé des langages de programmation sophistiqués et des algorithmes et Ive également fait avec du crayon et du papier. Vous n'avez pas besoin d'être un spécialiste des fusées ou un programmeur pour tester de nombreuses stratégies de trading. Si vous pouvez exploiter un tableur tel que Excel, vous pouvez tester plusieurs stratégies. L'objectif de cet article est de vous montrer comment tester une stratégie de trading à l'aide d'Excel et d'une source de données publiquement disponible. Cela ne devrait pas vous coûter plus que le temps qu'il faut pour faire le test. Avant de commencer à tester une stratégie, vous avez besoin d'un jeu de données. Au minimum, il s'agit d'une série de dates et de prix. Plus réaliste, vous avez besoin de la date, ouverte, haute, basse, fermer les prix. Vous avez généralement besoin de la composante de temps de la série de données si vous tester des stratégies de négociation intraday. Si vous voulez travailler le long et apprenez comment doser le test avec Excel tandis que vous lisez ceci alors suivez les étapes que je contourne dans chaque section. Nous devons obtenir des données pour le symbole que nous allons tester. Accédez à: Yahoo Finance Dans la zone Entrez les symboles, entrez: IBM et cliquez sur GO Sous Cotations, sur le côté gauche, cliquez sur Prix historiques et entrez les plages de date souhaitées. J'ai choisi du 1er janvier 2004 au 31 décembre 2004 Faites défiler jusqu'au bas de la page et cliquez sur Télécharger dans la feuille de calcul Enregistrez le fichier avec un nom (tel que ibm. csv) et un endroit que vous pourrez trouver plus tard. Préparation des données Ouvrez le fichier (que vous avez téléchargé ci-dessus) à l'aide d'Excel. En raison de la nature dynamique de l'Internet, les instructions que vous avez lues ci-dessus et le fichier que vous ouvrez peuvent avoir changé au moment où vous lisez ceci. Lorsque j'ai téléchargé ce fichier, les quelques premières lignes ressemblaient à ceci: Vous pouvez maintenant supprimer les colonnes que vous n'allez pas utiliser. Pour le test que je suis sur le point de faire, je n'utiliserai que la date, les valeurs d'ouverture et de fermeture de sorte que j'ai supprimé les High, Low, Volume et Adj. Fermer. J'ai également trié les données afin que la date la plus ancienne était la première et la dernière date était en bas. Utilisez les options de menu Data - gt Sort pour ce faire. Au lieu de tester une stratégie en soi je vais essayer de trouver le jour de la semaine qui a fourni le meilleur retour si vous avez suivi un achat de l'ouvrir et de vendre la stratégie de fermeture. Rappelez-vous que cet article est ici pour vous présenter comment utiliser Excel pour tester les stratégies de test. Nous pouvons construire sur ce à l'avenir. Voici le fichier ibm. zip qui contient la feuille de calcul contenant les données et les formules de ce test. Mes données se trouvent maintenant dans les colonnes A à C (Date, Ouvrir, Fermer). Dans les colonnes D à H, j'ai des formules de place pour déterminer le rendement d'un jour particulier. Saisie des formules La partie délicate (à moins que vous soyez un expert Excel) est d'élaborer les formules à utiliser. C'est juste une question de pratique et plus vous pratiquez les formules plus vous découvrirez et plus vous aurez de flexibilité avec vos tests. Si vous avez téléchargé la feuille de calcul, jetez un coup d'œil à la formule de la cellule D2. Il ressemble à ceci: Cette formule est copiée à toutes les autres cellules dans les colonnes D à H (sauf la première ligne) et n'a pas besoin d'être ajusté une fois qu'il a été copié. Ill expliquer brièvement la formule. La formule IF a une condition, une partie vraie et une partie fausse. La condition est la suivante: Si le jour de la semaine (converti en un nombre de 1 à 5 qui correspond du lundi au vendredi) est le même que le jour de la semaine dans la première ligne de cette colonne (D1) puis. La partie vraie de la déclaration (C2 - B2) nous donne simplement la valeur de la fermeture - Ouvert. Cela indique que nous avons acheté l'Open et vendu la fermeture et c'est notre profitloss. La partie fausse de la déclaration est une paire de guillemets doubles () qui ne met rien dans la cellule si le jour de la semaine n'est pas assorti. Les signes à gauche de la colonne numéro de lettre ou de ligne verrouillent la colonne ou la ligne de sorte que lorsque sa copie de cette partie de la référence de la cellule ne change pas. Dans notre exemple, lorsque la formule est copiée, la référence à la cellule de date A2 modifiera le numéro de ligne si elle est copiée sur une nouvelle ligne, mais la colonne restera à la colonne A. Vous pouvez imbriquer les formules et créer des règles exceptionnellement puissantes Et des expressions. Les résultats Au bas des colonnes de la semaine, j'ai placé quelques fonctions récapitulatives. Notamment les fonctions moyenne et somme. Ceux-ci nous montrent que, en 2004, la journée la plus rentable pour mettre en œuvre cette stratégie a été un mardi et cela a été suivi de près par un mercredi. Lorsque j'ai testé les vendredis expiration - Bullish ou Bearish stratégie et a écrit cet article, j'ai utilisé une approche très similaire avec une feuille de calcul et des formules comme celle-ci. L'objectif de ce test était de voir si les vendredis étaient généralement haussiers ou baissiers. Essayez-le. Téléchargez des données de Yahoo Finance. Le charger dans Excel et essayer les formules et de voir ce que vous pouvez venir avec. Postez vos questions sur le forum. Good luck and profitable strategy hunting


No comments:

Post a Comment