LECTURE SEULEMENT

Le forum est désormais une archive en lecture seule.

Pour les rapports de bogues et les questions relatives à la plateforme → [email protected]

Notre communauté vit sur Discord et YouTube - rejoignez-nous !

JOIGNEZ-NOUS SUR Discord YouTube

Exclusion des transactions qui se chevauchent - Aidez-moi

7 réponses

tassa1975

Abonné, bbp_participant, communauté, 3 réponses.

Visiter le profil

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

Client, bbp_participant, communauté, sq-ultimate, administrateur, 71 réponses.

Visiter le profil

il y a 10 ans #134659

Bonjour tassa1975,
 
"Exclure les échanges qui se chevauchent" 
 
il supprime les transactions qui ont été ouvertes avant la clôture de la transaction précédente.
 
Voir l'extrait dans QuantEditor.
C'est très simple et direct.
 
Je vous prie d'agréer, Madame, Monsieur, l'expression de mes salutations distinguées,
Tomas

0

Chris

Abonné, bbp_participant, 2 réponses.

Visiter le profil

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

Pièces jointes :
Vous devez être connecté pour visualiser les fichiers joints.

1

SantiagoKM

Abonné, bbp_participant, 3 réponses.

Visiter le profil

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

Abonné, bbp_participant, 3 réponses.

Visiter le profil

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

Pièces jointes :
Vous devez être connecté pour visualiser les fichiers joints.

1

SantiagoKM

Abonné, bbp_participant, 3 réponses.

Visiter le profil

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

Pièces jointes :
Vous devez être connecté pour visualiser les fichiers joints.

1

Chris

Abonné, bbp_participant, 2 réponses.

Visiter le profil

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

Abonné, bbp_participant, sq-ultimate, 3 réponses.

Visiter le profil

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)