Affichage indicateur de gap à l'Open du marché uniquement

Viewing 13 posts - 1 through 13 (of 13 total)
  • Author
    Posts
  • #102260 quote
    fredd786
    Participant
    Senior

    Bonjour

    J’ai programmé un petit indicateur qui me marque l’amplitude des gaps d’ouverture selon une pourcentage défini

    Je voudrais marque ces niveaux par deux points sur et sous le cours d’ouverture et  uniquement à l’ouverture précise de 07H00

    Et pas tout au long de la journée ou la veille comme sur mon graph ci-dessous

    J’aimerai également que ce point ne soit pas pris en compte par mon axe afin de pouvoir mieux centrer mes chandeliers

    Je ne sais pas si cela est possible mais merci d’avance de votre aide

     

    va = DHigh(1) - Dlow(1)
    va40 = Average[40](va)
    amplitude = va40*0.6
    
    If time = 070500 then
    GUp = DClose(1) + amplitude
    GDown = DClose(1) - amplitude
    endif
    
    Return  GUp, GDown
    09-07-2019-12-52-42.png 09-07-2019-12-52-42.png
    #102284 quote
    Nicolas
    Keymaster
    Master

    Dans ce cas là, on utilisera une instruction graphique, ici un DRAWTEXT avec un caractère ASCII :

    va = DHigh(1) - Dlow(1)
    va40 = Average[40](va)
    amplitude = va40*0.6
    
    If time = 070500 then
     GUp = DClose(1) + amplitude
     GDown = DClose(1) - amplitude
     drawtext("■",barindex,gup,dialog,bold,22) coloured(0,255,0)
     drawtext("■",barindex,gdown,dialog,bold,22) coloured(255,0,0)
    endif
    
    Return

    (non testé).

    fredd786 thanked this post
    #102288 quote
    fredd786
    Participant
    Senior

    Je débute donc je n’ai pas du tout pensé à cette fonction drawtext mais je la note et je vais dorénavant la regarder de plus près

    Merci Nicolas

    Une petite demande supplémentaire si possible

    Comment faire pour n’afficher ces carrés (drawtext) que le jour en cours , et pas les jours précédents ?

    J’ai cherché avec today  =

    Mais je n’ai rien trouvé de concluant

    Merci encore

    #102449 quote
    fredd786
    Participant
    Senior

    Je me réponds car en cherchant sur le forum, j’ai trouvé et arrangé mon code à ma façon 😀

    Et merci à Nicolas pour cette encyclopédie de codes qu’il essaime tout au long de ses discussions 😉

    va = DHigh(1) - Dlow(1)
    va40 = Average[40](va)
    amplitude = va40*0.6
     
    If date = today and time = 070500 then
     GUp = DClose(1) + amplitude
     GDown = DClose(1) - amplitude
     drawtext("#GUp# ■",barindex,gup,dialog,bold,22) coloured(0,255,0)
     drawtext("#GDown# ■",barindex,gdown,dialog,bold,22) coloured(255,0,0)
    else 
    GUp = undefined
    GDown = undefined
    endif
     
    Return

    Valable pour un graph intraday 5minutes, sinon adapter l’horaire.

    Nicolas thanked this post
    #102883 quote
    fredd786
    Participant
    Senior

    Bonjour à tous

    J’ai encore besoin de votre aide 🙂

    Dans mon indicateur ci-dessus  , j’utilise DHigh(1), DLow(1)

    Mais sur une cotation de 24 heures, j’aurais aimé prendre les valeurs High et Low de la session 07h00-21h00

    Car pour une session comme celle de cette nuit, avec de grandes variations nocturnes, la différence dans le calcul est trop  importante

    J’ai essayé avec des “SessionTimeStart” ou encore des “intradaybarindex”, mais je suis trop débutant en codage et mes essais  ne donnent rien 🙁

    Quelqu’un pourrait-il m’aider ?

    Merci d’avance 😉

    #102892 quote
    Nicolas
    Keymaster
    Master

    Tu peux essayer avec ce code:

    start=070000
    end=210000
    tc=time>=start and time<end
    if tc then 
    if not tc[1] then
    prevhh=hh
    prevll=ll
    hh=0
    ll=close*100
    endif 
    hh=max(hh,high)
    ll=min(ll,low)
    endif
    
    va = prevhh-prevll//DHigh(1) - Dlow(1)
    va40 = Average[40](va)
    amplitude = va40*0.6
     
    If date = today and time = 070500 then
    GUp = DClose(1) + amplitude
    GDown = DClose(1) - amplitude
    drawtext("#GUp# ■",barindex,gup,dialog,bold,22) coloured(0,255,0)
    drawtext("#GDown# ■",barindex,gdown,dialog,bold,22) coloured(255,0,0)
    else
    GUp = undefined
    GDown = undefined
    endif
     
    Return

    Je n’ai pas vérifié les valeurs, mais ça devrait le faire !

    #102900 quote
    fredd786
    Participant
    Senior

    merci Nicolas

    Je n’aurais effectivement jamais trouvé seul 🙁

    On y presque effectivement avec une petite erreur de ma part

    Il faudrait récupérer également la close de 21h pour le calcul de

    GUp = DClose(1) + amplitude
    GDown = DClose(1) - amplitude
    Et petite question pour apprendre:
    à quoi correspond le 100 dans ta formule ligne 9 ?
    Je croix comprendre que c’est un choix aléatoire pour fixer un range de recherche du max et du min ?
    Est-ce bien ça ?
    merci encore 😉
    #102937 quote
    Nicolas
    Keymaster
    Master

    C’est le reset du minimum, en multipliant par 100 je m’assure que le premier minimum trouvé sera bien inférieur 🙂

    Pour le  close de 21h00, test l’heure exacte et si elle est vrai alors enregistre le Close dans une variable que tu utiliseras à la place de Dclose(1).

    fredd786 thanked this post
    #102959 quote
    fredd786
    Participant
    Senior

    Merci beaucoup Nicolas

    Je vais essayer de m’en sortir avec tes indications 😉

    #103019 quote
    fredd786
    Participant
    Senior

    J’ai donc réussi à retourner ma valeur correcte de close avec un petit bout de code et en l’utilisant à la place de Dclose(1)

    if time = 210000 then
    cc = close(0)
    endif

    Par contre, mon résultat global (GUp et GDown) est faux

    J’ai donc affiché toutes les valeurs calculées afin de voir laquelle était fausse

    Et j’ai trouvé.

    C’est la moyenne retourner par le code ligne 16

    va40 = Average[40](va)

    Mais j’ai beau chercher et modifier dans tout les sens, je ne trouve pas où est l’erreur dans le calcul de cette moyenne

    Nicolas, si tu as une suggestion, je  suis preneur 😉

    #103037 quote
    Nicolas
    Keymaster
    Master

    Le calcul de la moyenne se fait sur les 40 dernières barres et non les 40 dernières valeurs de va, et je suppose que c’est ce que tu veux faire.

    Si oui il faudra faire une boucle pour trouver ces 40 dernières valeurs.

    #103038 quote
    fredd786
    Participant
    Senior

    Bonsoir Nicolas

    Exactement 😀

    J’étais justement en train de travailler sur mon code.

    Je vais donc maintenant chercher comment faire une boucle

    Merci 😉

    #103055 quote
    fredd786
    Participant
    Senior

    Trop compliqué pour moi ce codage de boucle 🙁

    Je veux bien un peu d’aide si possible

    Merci d’avance 😉

Viewing 13 posts - 1 through 13 (of 13 total)
  • You must be logged in to reply to this topic.

Affichage indicateur de gap à l'Open du marché uniquement


ProBuilder : Indicateurs & Outils Personnalisés

New Reply
Author
author-avatar
fredd786 @fredd786 Participant
Summary

This topic contains 12 replies,
has 2 voices, and was last updated by fredd786
6 years, 7 months ago.

Topic Details
Forum: ProBuilder : Indicateurs & Outils Personnalisés
Language: French
Started: 07/09/2019
Status: Active
Attachments: 1 files
Logo Logo
Loading...