Saturday 4 March 2017

Backtesting Excel Forex Revenu

Backtesting in Excel vs MQL4 Inscrit en juillet 2011 Statut: Membre 4 Posts Est-ce que quelqu'un ne backtesting dans Excel, ou connaître les membres qui ne Je voudrais discuter de la méthodologie et des modèles avec quiconque utilise Excel. Quelqu'un at-il des modèles simples (ou complexes) qu'ils seraient disposés à partager pour des indicateurs ou des systèmes de base Or. Devrais-je consacrer un certain temps à l'apprentissage MQL4 J'ai beaucoup de l'expérience de la modélisation dans Excel, mais je n'ai aucune expérience avec la programmation informatique. Je suis réticent à passer du temps à apprendre MQL4 que je vais être à partir de rien, mais peut-être que ce serait plus facile. Existe-t-il d'autres non-programmeurs là-bas qui sont devenus compétents en MQL4 Inscrit Oct 2007 Statut: Membre 92 Posts Excel est un outil puissant. Bien qu'il soit conçu pour fonctionner comme une feuille de calcul et de modélisation, etc, les gens l'ont utilisé pour faire toutes sortes de choses étonnantes, y compris l'IA, bases de données, etc, même si il ya des outils spécialisés conçus spécifiquement pour ces tâches. MQL4 est un langage assez grossier mais il est conçu spécifiquement pour le commerce et il a donc beaucoup de choses spécifiques à cette tâche. Bien qu'il y ait un débat en cours sur l'efficacité du testeur de stratégie comme un outil de test arrière, Im sûr que vous serez de retour d'essai dix fois plus rapide avec MQL4 même si vous devez apprendre la langue à partir de zéro. Youre probablement déjà familier avec beaucoup des concepts fondamentaux de programmation comme des boucles et des énoncés conditionnels. Pour l'itinéraire Excel, vous voudrez peut-être chercher des outils qui sont déjà disponibles, Id être surpris si quelqu'un n'a pas déjà fait cela. Si vous ne pouvez pas trouver quelque chose de prêt, vous devrez tout d'abord concevoir un simulateur de commerce, gérer les rapports, traiter vos données historiques, puis avoir une interface raisonnable. Tout cela vient gratuitement avec MT4. Rejoint Oct 2007 Statut: Membre 887 Posts Tout ce qui implique des calculs que je fais dans Excel, ont fait pendant des années. Cependant, je ne suis pas sûr youd obtenir quelque chose de mes modèles comme theyre spécifique à ce que je fais. Excel est beaucoup plus flexible et transparent, vous pouvez donc interroger et vérifier les données correctement. Pour le non-programmeur son or. Juste comme un exemple, combien de temps cela vous prendrait knock up une EA qui montre la volatilité moyenne d'une heure donnée pour les 14 derniers jours. Je ne dis pas son impossible - je n'ai aucune idée - mais dans Excel, une table pivotante et 5 minutes plus tard et youre fait. Où Excel tombe est en négociation en direct - il ne joue pas joliment accrocher à d'autres plates-formes de négociation (FXCM IBCurrenex), mais pour backtesting, que doesnt matter. Inscrit juin 2009 Statut. Ou là environ 216 messages Quand j'ai commencé à faire ma propre analyse, j'ai commencé avec Excel car je n'avais aucune expérience de programmation et trouvé VBA plus facile à apprendre que MQL4. Maintenant, j'utilise une combinaison des deux. Dans mon expérience limitée, MQL4 est plus rapide à effectuer des calculs que Excel, en particulier si votre feuille Excel utilise beaucoup de fonctions définies par l'utilisateur. Un de mes projets en cours est de construire une feuille de calcul pour analyser 70ish différents instruments sur les délais hebdomadaires et quotidiens. Au début, j'ai pensé que j'utiliserais MQL4 pour écrire des fichiers. csv de OHLC info pour chaque instrument et chaque période, puis crunch les nombres dans Excel. Inconvénient - prendre quelques minutes pour recalculer Donc, maintenant, je effectuer tous les calcs dans MT4 et ensuite écrire seulement deux fichiers. Excel est alors l'interface utilisateur et il n'ya pas d'attente sur calcs. Je suppose que ce que je veux dire, c'est que si vous pouvez utiliser les deux, alors vous vous donnez la possibilité d'utiliser celui qui est le mieux adapté à la tâche que vous vous êtes fixé. Juste mes 2 pence. Joint May 2006 Statut: Un seul nom d'utilisateur. 1 367 Posts Ive essayé ces méthodes au fil des ans: MT4 Strategy Tester Programmes personnalisés Python OpenOffice Calc (compatible Excel) Chaque EA a ses propres caractéristiques mais, en général Ive a eu les meilleurs résultats avec MT4 IndicatorsScripts. Si vous pouvez créer un indicateur qui duplique les actions d'une EA donnée possible de transformer cet indicateur en un outil d'analyse. Toutes les EE ne se prêtent pas à cette approche, mais si vous en avez une, vous obtiendrez des résultats presque instantanés (pas assez précis pour le pip, mais suffisamment proches) et vous épargnerez de bricoler avec des fichiers csv ou d'autres techniques d'interface plus complexes. IMHO, laisser la nature de l'EA que vous testez dicter la meilleure méthode de test. Old Benjamin was right06172013 La dernière version de TraderCode (v5.6) inclut de nouveaux indicateurs d'Analyse Technique, de Graphique de Point-and-Figure et de 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 commerciales 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 rangée 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 variations 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 quand 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 Technical Analysis Expert. Cela vous permet d'exécuter tous vos tests de retour 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 utilisation dans l'Expert Backtesting. 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 effectuera le backtesting sur les stratégies spécifiées dans la feuille de calcul StrategyBackTestingInput. 4. Cliquez sur la feuille de travail StrategyBackTestingInput. Dans ce tutoriel, vous n'aurez besoin que de savoir que nous avons spécifié à la fois une stratégie longue et une stratégie courte utilisant des crossovers de moyenne mobile. Nous allons entrer dans les détails des stratégies de spécification 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. Durant les 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 TradeLogOutput contient un récapitulatif des métiers effectués par le Backtesting Expert. Les données peuvent être facilement filtrées pour ne montrer que les données d'une stratégie spécifique. Cette fiche de travail est utile pour déterminer le profit global ou la perte d'une stratégie à différents moments. La sortie la plus importante des tests de retour est placée dans la feuille de travail TradeSummaryOutput. Cette feuille de travail contient le bénéfice total des stratégies mises en œuvre. 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. Sur ces métiers, 5 sont des positions longues et 5 sont des positions courtes. La victoire Ratio supérieure à 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 de l'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 dépasse 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. Par conséquent, 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. 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 satisfaire aux 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 formule est sensible à la casse et il 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 au-dessous de 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. Opérateurs Supérieurs à Égaux Non égaux Supérieurs ou égaux Addition - Soustraction Multiplication Division Colonnes (de AnalysisOutput) A - Colonne AB - Colonne BC .. .. YY - Colonne YY ZZ - Colonne ZZ C'est la partie la plus intéressante et la plus souple de l'entrée Conditions. Il permet de spécifier les colonnes de la feuille de calcul AnalysisOutput. Lorsque les tests de retour sont effectués, chaque ligne de la colonne sera utilisée pour l'évaluation. Par exemple, A 50 signifie que chacune des lignes de la colonne A de la feuille de calcul AnalysisOutput sera déterminée si elle est supérieure à 50. AB Dans cet exemple , Si la valeur dans la colonne A dans la feuille de calcul AnalysisOutput est supérieure ou égale à la valeur de la colonne B, la condition d'entrée sera satisfaite. Et (A B, CD) Dans cet exemple, si la valeur dans la colonne A dans la feuille de calcul AnalysisOutput est supérieure à la valeur de la colonne B et la valeur de la colonne C est supérieure à la colonne D, la condition d'entrée sera satisfaite. Crossabove (A, B) Dans cet exemple, si la valeur de la colonne A dans la feuille de calcul AnalysisOutput croise au-dessus de la valeur de B, la condition d'entrée sera satisfaite. Crossabove signifie que A a initialement une valeur qui est inférieure ou égale à B et la valeur de A devient par la suite plus grande que B. Conditions de sortie Les conditions de sortie peuvent utiliser des fonctions, des opérateurs et des colonnes telles que définies dans les conditions d'entrée. En plus de cela, il peut également utiliser les variables comme indiqué ci-dessous. Variables pour Exit Conditions profit Ceci est défini comme le prix de vente moins le prix d'achat. Le prix de vente doit être supérieur au prix d'achat pour un bénéfice à réaliser. Sinon, le profit sera nul. Perte Il s'agit du prix de vente moins le prix d'achat lorsque le prix de vente est inférieur au prix d'achat. (Prix de vente - prix d 'achat) prix d' achat. Le prix de vente doit être supérieur ou égal au prix d'achat. Sinon, profitpct sera nul. (Prix de vente - prix d 'achat). Le prix de vente doit être inférieur au prix d'achat. Sinon losspct sera nul. Exemples profitpct 0.2 Dans cet exemple, si le profit en pourcentage est supérieur à 20, les conditions de sortie seront satisfaites. Commission - Commission en termes de pourcentage du cours de bourse. Si le prix de négociation est de 10 et la Commission est de 0,1, alors la commission sera 1. Le pourcentage de commission et de commission en dollars sera résumé pour calculer le total de la commission. Commission - Commission en dollars. Le pourcentage de commission et de commission en dollars sera résumé pour calculer la commission totale. Nombre d'actions - Nombre d'actions à acheter ou à vendre lorsque les conditions d'entrée en vigueur de la stratégie sont remplies. Feuille de travail TradeSummaryOutput Cette feuille de travail contient un récapitulatif de tous les métiers effectués lors des back tests. Les résultats sont classés en métiers long et court. Vous trouverez une description de tous les champs ci-dessous. Total ProfitLoss - Total des profits ou pertes après la commission. Cette valeur est calculée en additionnant tous les bénéfices et les pertes de tous les métiers simulés dans le test arrière. Total ProfitLoss before Commission - Bénéfice ou perte total avant commission. Si la commission est réglée à zéro, ce champ aura la même valeur que Total ProfitLoss. Commission totale - Commission totale requise pour tous les métiers simulés lors du test arrière. Nombre total de métiers - Nombre total de métiers réalisés lors du test de simulation de dos. Nombre de métiers gagnants - Nombre de métiers qui réalisent un bénéfice. Nombre de métiers qui perdent - Nombre de transactions qui font une perte. Pourcentage de métiers gagnants - Nombre de métiers gagnants divisé par Nombre total de métiers. Pourcentage de métiers perdants - Nombre de métiers perdants divisé par Nombre total de métiers. Moyenne des gains - La valeur moyenne des profits des métiers gagnants. Perte moyenne de perte - La valeur moyenne des pertes des métiers perdants. Commerce moyen - Valeur moyenne (bénéfice ou perte) d'un seul métier du test de retour simulé. Le plus grand gain Trade - Le bénéfice du plus grand gain de commerce. La plus grande perte de commerce - La perte de la plus grande perte de commerce. Ratio average winaverage loss - Moyenne gagnante Trade divisé par la moyenne de perdre Trade. Ratio winloss - Somme de tous les profits dans les métiers gagnants divisé par la somme de toutes les pertes dans les métiers perdants. Un ratio supérieur à 1 indique une stratégie rentable. Feuille de travail TradeLogOutput Cette feuille de calcul contient tous les métiers simulés par l'Expert Backtesting classés par date. Il vous permet de zoomer sur n'importe quel commerce ou période spécifique pour déterminer la rentabilité d'une stratégie rapidement et facilement. Date - Date d'entrée ou de sortie d'une position Long ou Court. Stratégie - La stratégie utilisée pour l'exécution de ce métier. Position - La position du métier, Long ou Court. Commerce - Indique si ce commerce est d'acheter ou de vendre des stocks. Actions - Nombre d'actions négociées. Prix ​​- Le prix dans lequel les actions sont achetées ou vendues. Comm. - Commission totale pour ce commerce. PL (B4 Comm.) - Bénéfice ou perte avant commission. PL (Comm. Arrière) - Bénéfice ou perte après commission. Sperme. PL (Comm. Arrière) - Bénéfice ou perte cumulés après commissions. Ceci est calculé comme le total des profits cumulés du premier jour d'une opération. PL (position de clôture) - Bénéfice ou perte lorsque la position est fermée (sortie). La commission d'entrée et la commission de sortie seront comptabilisées dans ce PL. Par exemple, si nous avons une position Longue où le PL (Comm. B4) est 100. En supposant que la position est entrée, une commission 10 est chargée et quand la position est sortie, une autre commission de 10 est chargée. Le PL (à la position de fermeture) est de 100 à 10 - 10 80. La commission pour entrer et sortir de la position est comptabilisée en position fermée. Retour à TraderCode Technical Analysis Logiciels et indicateurs techniques


No comments:

Post a Comment