Exclusion des transactions qui se chevauchent - Aidez-moi
7 réponses
tassa1975
il y a 10 ans #114585
Bonjour l'équipe,
J'aimerais comprendre ce que fait exactement l'option "Exclure les transactions qui se chevauchent" dans la section "What If".
J'ai un panier d'EA avec un certain nombre de paires de devises.
Lorsqu'un signal est déclenché dans une paire, plusieurs transactions simultanées sont effectuées.
Si je coche la case ci-dessus et qu'une autre paire est déclenchée pour être négociée "en même temps" alors que le premier lot de positions est encore ouvert, cela sera-t-il ignoré ?
Exclut-il les transactions qui se chevauchent au moment où les transactions sont initiées/ouvertes OU empêche-t-il simplement la négociation de plus d'une paire de devises à N'IMPORTE QUEL moment ?
Santé
Chris
0
Tamas
il y a 10 ans #134659
0
Chris
il y a 2 ans #284098
Bonjour,
J'ai également du mal à comprendre la fonction "exclure les transactions qui se chevauchent". J'ai joint une image contenant une liste de transactions (côté gauche) montrant le portefeuille original, et une liste de transactions (côté droit) montrant le portefeuille après avoir appliqué le filtre des transactions qui se chevauchent. Puisque le premier trade USDCAD a été fermé le 01.10.2012 à 11:00:00, le trade EURCAD surligné dans la liste de gauche ne devrait-il pas être ouvert ensuite puisqu'il a été ouvert le 01.10.2012 à 16:00:00 ou même le trade suivant EURGBP 02.10.2012 à 06:00:00 au lieu du trade AUDCAD 02.10.2012 à 19:00:00 ? Ou est-ce que j'ai raté quelque chose ? Il semble également que toutes les transactions d'une durée supérieure à 8 jours ont été ignorées, même si elles étaient sur le point d'être ouvertes.
J'admire vraiment ce logiciel et je commence à développer un certain niveau de dépendance à son égard, mais ce problème diminue ma confiance. J'espère qu'il y a quelque chose qui m'échappe.
Merci pour votre temps !
Chris
1
SantiagoKM
il y a 2 ans #285019
<span class="Y2IQFc" lang="en">Bonjour, je suis également dans la même situation. Les résultats de la simulation étant trop bons, cela m'a semblé très étrange, et en comparant la liste des trades, j'ai trouvé des incohérences. La simulation saute des positions qui auraient dû être ouvertes, et ce qui est plus frappant, c'est que les positions qu'elle ne prend pas en compte sont celles qui causent des pertes. Il en résulte une courbe très harmonieuse, avec un profit très élevé et un drawdown minimal. Ce qui est loin de la réalité. J'apprécierais beaucoup une explication si je me trompe. Je vous prie d'agréer, Madame, Monsieur, l'expression de mes salutations distinguées.</span>
1
SantiagoKM
il y a 2 ans #285042
J'ai effectué la simulation dans Excel en ajoutant du code à un nouveau module dans le fichier csv téléchargé de QA, correspondant au portefeuille original.
Le code était le suivant :
SubDeleteRows()
Dim i As Long
Dim lastRow As Long
Dim iterationCounter As Long
Fixer la limite d'itération
Const iterationLimit As Long = 20000
' Trouver la dernière ligne contenant les données de la colonne A
lastRow = Cells(Rows.Count, 1).End(xlUp).Row
Commencez à partir de la troisième rangée et bouclez jusqu'à la dernière rangée.
i = 3
iterationCounter = 0
Do While i <= lastRow
' Vérifier si A(i) est inférieur à B(i-1)
Si Cells(i, 1).Value < Cells(i - 1, 2).Value Alors
Supprimer la ligne i
Rows(i).Delete
' Mise à jour de la dernière ligne après suppression d'une ligne
lastRow = lastRow - 1
Ne pas incrémenter i puisqu'une ligne a été supprimée
Autre
Incrémenter le compteur pour analyser la ligne suivante
i = i + 1
Fin Si
Incrémente le compteur d'itération
iterationCounter = iterationCounter + 1
' Ajouter une condition pour sortir après 20000 itérations
Si iterationCounter >= iterationLimit Then
MsgBox "La limite de 20000 itérations a été atteinte. Le processus a été arrêté."
Exit Sub
Fin Si
Boucle
End Sub
Je joins des captures d'écran du portefeuille original, de celui créé par QA et de celui créé par Excel. J'espère que cela vous aidera à comprendre les différences.
Meilleures salutations
1
SantiagoKM
il y a 2 ans #285048
J'ai déjà trouvé où se situe la différence dans l'interprétation des données, et cela dépend de la façon dont la liste des transactions est ordonnée. J'ai pu reproduire cela dans Excel.
Pour que la fonction "Exclure les transactions qui se chevauchent" rende la simulation conforme à la réalité, la liste des transactions doit être ordonnée avec le chiffre "1" dans le filtre. Si la liste ne comporte pas le chiffre "1", la simulation Excel obtient un résultat exactement identique à celui de l'AQ.
L'inconvénient est que Quant Analiyzer, par défaut, prend toujours la liste triée sans le chiffre "1", ce qui donne toujours la même courbe lissée.
Je n'ai pas identifié les critères de commande des transactions lorsque le filtre ne contient pas le chiffre "1".
Je sais que vous avez beaucoup de travail, mais j'espère que cette fonctionnalité pourra être corrigée dans les prochaines mises à jour. QA est vraiment une excellente plateforme.
Meilleures salutations
1
Chris
il y a 1 an #288627
Merci d'avoir partagé cette information avec nous, Santiago ! Les résultats que je voyais étaient également trop beaux pour être vrais et j'ai choisi de ne pas utiliser cette fonction. Je vais utiliser votre code dans Excel pour simuler cela à partir de maintenant.
J'espère que l'équipe QA corrigera ce problème un jour, merci encore !
0
Peter Chan
il y a 1 an #290709
Dans Portfolio Master, si je coche "Filter out overlapping trades", le code source généré fera-t-il la même chose dans le trading en direct ?

0
Affichage de 7 réponses de 1 à 7 (sur un total de 7)