Trading automatique avec “Buy Sell Magical Trend”

Viewing 15 posts - 31 through 45 (of 72 total)
  • Author
    Posts
  • #215751 quote
    Nicolas
    Keymaster
    Master

    Autre version du filtre, pour référence, ou j’ai ajouté un poids supplémentaire basé sur la différence en points de chaque tendance, marquant ainsi un peu plus les périodes ou le marché bouge peu (filtre range).

    Dans cette version, $pricediff est utilisé pour suivre le mouvement des prix pendant chaque tendance. Il est calculé comme la différence absolue entre le prix de clôture au début et à la fin de chaque tendance. Une deuxième pondération (weightPrice), est ensuite calculée pour chaque tendance avec: 1/$pricediff[i]. Cela donne un poids plus important aux tendances dont les mouvements de prix sont plus faibles, car 1/x est plus grand pour les petits x. Le poids total (totalWeight) est calculé en multipliant donc le poids de la durée par celui du prix. Ce poids total est ensuite appliqué à la durée de la tendance lors de l’addition des différences, et le total de tous les poids totaux est également calculé dans le poids total. On applique ensuite par au dessus une moyenne pondérée comme dans la version précédente.

    // --- settings
    SignalPeriod = 12
    ArrowPeriod = 2
    xTrendDurationAverage = 10
    // --- end of settings
    
    bbup = average[signalperiod]+std[signalperiod]*arrowperiod
    bbdn = average[signalperiod]-std[signalperiod]*arrowperiod
    
    if ts=0 then
    if close crosses over bbup then
    ts=bbdn
    trend=1
    startPrice = close
    elsif close crosses under bbdn then
    ts=bbup
    trend=-1
    startPrice = close
    endif
    endif
    
    if trend=1 then
    ts=max(ts,bbdn)
    elsif trend=-1 then
    ts=min(ts,bbup)
    endif
    
    if trend=1 and close crosses under ts then
    trend=-1
    ts=bbup
    t=t+1 //trend count
    $bardiff[t]=barindex-lastbarindex //trend duration in bars
    $pricediff[t]=abs(close-startPrice) //price movement
    startPrice=close
    lastbarindex=barindex
    endif
    
    if trend=-1 and close crosses over ts then
    trend=1
    ts=bbdn
    t=t+1 //trend count
    $bardiff[t]=barindex-lastbarindex //trend duration in bars
    $pricediff[t]=abs(close-startPrice) //price movement
    startPrice=close
    lastbarindex=barindex
    endif
    
    //weighted average of trend duration
    if t>xTrendDurationAverage then
    diff=0
    totalWeight=0
    for i = t downto t-xTrendDurationAverage do
    weightDuration=xTrendDurationAverage-(t-i)
    weightPrice=1/$pricediff[i]
    weightTotal=weightDuration*weightPrice
    diff=diff+weightTotal*$bardiff[i]
    totalWeight=totalWeight+weightTotal
    next
    trendavg=diff/totalWeight
    endif
    
    return trendavg as "weighted average of previous X trend duration"
    
    #216995 quote
    RICOU
    Participant
    New

    Bonjour Nicolas,

    ton indicateur est vraiment TOP !!!

    en revanche quand je backtest la stratégie les points d’entrées courts ou longs ne sont pas les mêmes, y a t il une raison?

    #217879 quote
    KumoNoJuzza
    Participant
    New

    Bonjour Nicolas,

    Tout d’abord, merci encore pour tes contributions.

    En lisant le code dois je comprendre, que l’instruction sellshort permet aussi de fermer la position longue ouverte et que l’instruction Buy ferme la position courte?

    #217885 quote
    GraHal
    Participant
    Master

    Oui ci-dessus est une déclaration correcte.

    Cependant, si vous obtenez des “choses étranges”, vous pouvez essayer / utiliser Sell et ExitShort pour voir si les “choses étranges” s’arrêtent.

    KumoNoJuzza thanked this post
    #217916 quote
    Nicolas
    Keymaster
    Master

    SELLSHORT ouvre une position de vente à découvert et donc ferme une position d’achat. Un ordre inverse fermera automatiquement l’ordre en cours.

    Comme le stipule GraHal, pour fermer une position d’achat on utilise l’instruction SELL (revente).

    #218003 quote
    Alby118
    Participant
    Average

    Hi everyone, this strategy looks good. when i download  itf. file from FXtonio in PRT. its says there is an error Endif in the code.

    Salut tout le monde, cette stratégie semble bonne. quand je télécharge itf. fichier de FXtonio dans PRT. cela dit qu’il y a une erreur Endif dans le code.

    #218005 quote
    GraHal
    Participant
    Master

    erreur Endif dans le code.

    Soit ajouter un Endif à la fin du code, soit mettre // devant un endif à la fin du code.
    Faites-nous savoir si l’une des solutions ci-dessus fonctionne ?

    Si vous publiez le .itf, je vais l’essayer sur ma plate-forme.

    #218042 quote
    robertogozzi
    Moderator
    Master

    @Alby118

    Publiez uniquement dans la langue du forum dans laquelle vous publiez. Par exemple, l’anglais uniquement dans les forums anglophones et le français uniquement dans les forums francophones.

    Mertci 🙂

    #218045 quote
    lnskrlssn
    Participant
    Average

    Salut tout le monde,

    J’utilise le système en démo depuis quelques semaines et j’ai d’abord été surpris des mauvais résultats compte tenu du bon backtest. Alors aujourd’hui, il m’est apparu que je n’avais pas exécuté le backtest en mode tick-by-tick. Cela a entraîné un résultat bien pire. J’ai donc essayé de jouer avec les temps de trading par exemple et j’ai vu que les heures 12 et 13 n’étaient pas très bonnes. Ensuite, j’ai essayé d’implémenter le filtre Nicolas dans le post #215751 mais je n’arrive pas à le faire fonctionner (je suis assez nouveau dans le codage). Quelqu’un d’autre a-t-il essayé?

    #218128 quote
    KumoNoJuzza
    Participant
    New

    Je travaille dessus également. Cet indicateur est super.

    En démo les résultats en H4 sont excellents sur le DJ et bons sur le DAX.

    En M15 et H1 c’est plus mitigé. Pour le moment, ma conclusion est qu’il faut utiliser la stratégie pour prendre les positions automatiquement aux changements de trends puis l’arrêter pour gérer le trade manuellement, surtout sur les courtes TF.

    D’ailleurs je hais les DXS qui limite le nombre de repositionnements des stops.

    Je constate aussi que toutes les positions sont gagnantes à un moment donné. Il faut choisir entre sécuriser ses gains ou être prêt à perdre un peu de sous pour attraper les gros trades.

    #218222 quote
    Nicolas
    Keymaster
    Master

    Ne pas oublier que cet indicateur c’est uniquement la cassure de la bande supérieure ou inférieure des Bollinger qui inverse la tendance. Peut être qu’utiliser plusieurs timeframes pour déterminer un sens plus générale (long terme) et trader les rebonds (court terme) est envisageable ?

    KumoNoJuzza thanked this post
    #218756 quote
    Alby118
    Participant
    Average

    ne marche toujours pas…..

    #218780 quote
    Nicolas
    Keymaster
    Master

    @Alby118

    Qu’est ce qui ne marche pas ? Comment peut on t’aider ?

    #218841 quote
    RICOU
    Participant
    New

    Bonjour Nicolas,

    je n’arrive pas a y intégrer la notion de “trading time” :

    j’ai bien le code : TradingTime = time >= 150000 and time <= 160000

    mais j’ai essayé de l’intégrer à plusieurs endroit mais ça ne fonctionne pas ???

    merci de votre aide

    #218873 quote
    Alby118
    Participant
    Average

    tout trié, fonctionne. merci

Viewing 15 posts - 31 through 45 (of 72 total)
  • You must be logged in to reply to this topic.

Trading automatique avec “Buy Sell Magical Trend”


ProOrder : Trading Automatique & Backtests

New Reply
Author
author-avatar
FXtonio @fxtonio Participant
Summary

This topic contains 71 replies,
has 17 voices, and was last updated by Dams3164
1 year, 8 months ago.

Topic Details
Forum: ProOrder : Trading Automatique & Backtests
Language: French
Started: 04/25/2023
Status: Active
Attachments: 11 files
Logo Logo
Loading...