condition simple sur indicatereur supertrend

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

    Voilà le code modifié. Précision: j’utilise donc une EMA20 pour le filtre de tendance, teste juste si c’est rouge (descend sur 1 période) ou vert (monte sur une 1 période). Les cours touchent les bandes avec le High/Low et non le Close comme auparavant, il y a donc beaucoup plus de signaux, mais à priori ça n’est pas important selon ta remarque.

    Merci de bien intégrer le fonctionnement de ProBacktest : les signaux sont considérés à la clôture de la bougie 5-min et pas en cours de bougie. Le filtre est basé sur la clôture de la dernière bougie 30 minutes (donc à 10h48, c’est la tendance de 10h30 qu’on utilise). Si les conditions sont réunies, l’ordre est passé à l’ouverture de la bougie qui suit.

    DEFPARAM CumulateOrders = False // Cumul des positions désactivé
    
    //x = 5 //quantité de bougies tendance SuperTrend
    //stoploss = 50
    //takeprofit = 100
    
    timeframe(30 minutes,updateonclose)
    filtre = exponentialaverage[20]
    bullish = filtre>filtre[1] //EMA20 verte
    bearish = filtre<filtre[1]//EMA20 rouge !! summation[x](close<st)=x
    
    timeframe(default)
    noEntryBeforeTime = 093000
    timeEnterBefore = time >= noEntryBeforeTime
    
    noEntryAfterTime = 163000
    timeEnterAfter = time < noEntryAfterTime
    
    daysForbiddenEntry = OpenDayOfWeek = 6 OR OpenDayOfWeek = 0
    
    up, ignored, down = CALL "Bande de Mogalef"
    //les cours touchent, avec le High/Low
    ibuy = (low <= down) and down=down[1]
    isell = (high >= up) and up=up[1]
    atr = averagetruerange[14]
    
    IF (ibuy AND bullish) AND timeEnterBefore AND timeEnterAfter AND not daysForbiddenEntry THEN
    BUY 1 SHARES AT MARKET
    set stop loss atr*0.25
    set target profit atr
    ENDIF
    
    IF (isell AND bearish) AND timeEnterBefore AND timeEnterAfter AND not daysForbiddenEntry THEN
    SELLSHORT 1 SHARES AT MARKET
    set stop loss atr*0.25
    set target profit atr
    ENDIF
    
    //debug
    graphonprice filtre
    graph bullish coloured(0,255,0)
    graph bearish coloured(255,0,0)
    #121939 quote
    Canis Majoris
    Participant
    Average

    Merci Nicolas ,

    Pour être sûr qu’il n’y aie pas d’ambiguïté  :

    1- Tester juste si c’est rouge (descend sur 1 période) ou vert (monte sur une 1 période). Q: Une période pour toi veut dire une seule bougie  30 min  ?  Pour moi il faudrait que visuellement quand je regarde la EMA20 sur l’UT  30 min je vois un tracé continu (Donc plusieurs des bougies 30 min ) Vertes ou Rouges  .

    2- Les cours touchent les bandes avec le High/Low et non le Close comme auparavant, il y a donc beaucoup plus de signaux, mais à priori ça n’est pas important selon ta remarque

    Q- Pourquoi ne pas prendre les deux conditions : si la bougie enfonce les  bandes  que se soit avec le corps ou la mèche, prendre ce signal et le checker en 30 min ?

    3- Concernant le fonctionnement de Probacktest, n’est il pas possible de prendre instantanément l’ordre ou non  lorsqu’il y a contact de la bougie courante avec les bandes après avoir vérifier la  condition en UT 30 min ?

    #121944 quote
    Nicolas
    Keymaster
    Master
    1. oui en effet
    2. si ce sont les mèches qu’on teste, ce sont déjà les extrêmes du prix, donc inutile de checker le corps. Donc c’est soit l’un, soit l’autre.
    3. si c’est possible, mais dans ce cas, si on prend un ordre à l’intérieur d’une bougie 5 minutes, il est possible qu’à la fin de cette bougie (donc au Close comme maintenant), les bandes aient bougées et donc tu considéreras ce type d’ordre comme un “faux signal” car sur l’historique on ne voit pas ce qui s’est passé à l’intérieur de la bougie. A toi de choisir.
    #121968 quote
    Canis Majoris
    Participant
    Average

    Mes réponses Nicolas,

    1- Avoir une couleur rouge ou verte sur une seule période n’est pas significatif pour dire que la tendance est H ou B , peut on  avoir une variable  comme avant pour  paramétrer  le nombre de période ( pour moi 10 x périodes de 30 min   est un minimum)

    2- Ok pour moi

    3- Ok  , faisons comme tu dis : L’ordre est passé à l’ouverture de la bougie qui suit. Mais à condition de s’assurer d’une manière ou d’une autre  que cette  bougie qui suit n’a pas  fait  bouger la ligne  inf / sup  , j’imagine ce contrôle en ajoutant une sous condition qui vérifie  par exemple “si la ligne mogalef à laquelle correspond la bougie suivante a bougé par rapport à sa position dans la bougie passé qui a déclenché le signal ) qu’est ce que t’en penses ?  Illustration ci jointe pour expliquer mon point de vu

    On y arrive :)..

    Capture-d’écran-2020-03-12-à-17.58.09.png Capture-d’écran-2020-03-12-à-17.58.09.png
    #121971 quote
    Nicolas
    Keymaster
    Master

    3 – Ton exemple n’est pas bon, à la bougie 1, à sa clôture la bande a bougé, donc il n’y aurait pas eu d’ordre à la bougie 2.

    #121983 quote
    Canis Majoris
    Participant
    Average

    Effectivement donc décalons vers la gauches les deux bougies 1 et 2 , ok ?

     

    j’ai mis à jour la capture d’écran ( et imaginons que la mèche de la bougie 1 touche la ligne )

    Capture-d’écran-2020-03-12-à-18.48.26.png Capture-d’écran-2020-03-12-à-18.48.26.png
    #122020 quote
    Nicolas
    Keymaster
    Master

    Je ne comprends pas ta question puisque cela équivaudrait à connaître le futur ? Je crois que tu n’as pas encore bien compris, j’ai bien expliqué dans mes précédents messages, mais je réitère, j’ai refait le plein de patience cette nuit 😉

    A l’issue de la bougie 1 (à sa fermeture, au Close), on teste les conditions dont celle du non déplacement des bandes, si c’est validé, alors un ordre est lancé. Celui-ci s’ouvre dés que la bougie suivante apparaît. Ces 2 événements se font en quelques centièmes de seconde.

    Exemple :

    13h05 – clôture de la bougie de 13h00, conditions OK, algo envoi l’ordre au courtier

    13h05 01s – courtier répond par l’ouverture de l’ordre

    13h07 – la bougie fait se décaler les bandes

    13h08 – la bougie retrace, la bande n’est plus décalé

    13h09 – la bougie repart dans le mauvais sens, la bande décale

    13h10 – clôture de la bougie de 13h05, finalement la bougie a bien fait bouger la bande à sa clôture.

    Selon ta description, à 13h10 je devrai retourner dans le passé pour éviter qu’à 13h05 j’ouvre une position, si seulement …

    #122062 quote
    Canis Majoris
    Participant
    Average

    Merci pour ta patience en tout cas , je  pense que ce post est parmi les plus longs

    Ecoutes Nicolas  , si toi tu as bien assimilé ce que je voulais faire , je te fais confiance , tu peux essayer de faire  une dernière version du code que j’utiliserai .

    Je pense que par manque de compréhension de probacktest et mon  manque expérience   je n’arrive pas à te convaincre.

    Dans ma vision des choses ,il  ne s’agit pas de retourner dans le passé ou prédire le future ,  simplement  avant d’envoyer l’ordre au courtier – attendre  de voir ce qui va arriver suite à la clôture  de la bougie 2 , en ayant une pré-validation de la bougie 1   , donc checker les bougies 1 et 2  avant d’envoyer l’ordre au courtier .”peut être que là encore je dit des chose fantastique  “

    #122064 quote
    Canis Majoris
    Participant
    Average

    Je suis pourtant un vieux analyste développeur  ..

    #122073 quote
    Nicolas
    Keymaster
    Master

    attendre  de voir ce qui va arriver suite à la clôture  de la bougie 2

    Pourquoi pas attendre 10 secondes avant la fin de la bougie 2, mais le problème sera le même : dans les 10 secondes ensuite, ta bande pourrait se décaler.

    ou

    Attendre la clôture effective de la bougie 2, donc ordre envoyé à l’ouverture de la bougie 3, mais dans ce cas la stratégie n’est plus la même ? et quid de la bougie 3 ?

    C’est pas pour embêter que je pose ces questions, je vais t’aider et coder ce que tu veux, mais si c’est pas possible ou “incohérent”, je préfère le dire, c’est pas drôle de perdre son temps, le tient comme le mien 🙂

    #122074 quote
    Canis Majoris
    Participant
    Average

    Qu’est ce que tu suggères maintenant   ?,  en écriture je dis haut les mains Nicolas

    De toute manière la bourse est entrain de s’effondrer

    #122082 quote
    Nicolas
    Keymaster
    Master

    La stratégie actuelle est codée telle que décrite par l’auteur. Dans la quasi totalité des cas, on prend les signaux à la clôture pour justement éviter les mauvaises informations et par ce que les indicateurs sont figés à cet instant précis, donc on est conforme.

    #122087 quote
    Canis Majoris
    Participant
    Average

    Ok Super Nicolas , c’est quand tu veux pour le  code final , et merci encore pour ton temps 🙂

    #122415 quote
    Canis Majoris
    Participant
    Average

    Bonjour Nicolas,

    Tu as eu un peu le temps de voir la dernière version du code ?

    Merci

    #122426 quote
    Nicolas
    Keymaster
    Master

    Désolé, je dois changer quoi exactement ?

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

condition simple sur indicatereur supertrend


ProOrder : Trading Automatique & Backtests

New Reply
Author
Summary

This topic contains 59 replies,
has 3 voices, and was last updated by Canis Majoris
5 years, 10 months ago.

Topic Details
Forum: ProOrder : Trading Automatique & Backtests
Language: French
Started: 03/02/2020
Status: Active
Attachments: 17 files
Logo Logo
Loading...