massimi e minimi

Viewing 15 posts - 1 through 15 (of 17 total)
  • #179307

    ” non gira sotto versione 10.2 – non riconosce drawonlastbaronly” è semplicemente una serie di massimi e minimi da tracciare sul grafico” uso prorealtime e t3 webank – sulla prima è perfetto sulla seconda non funzione. Mi serve averla sulle due piatte e gira solo sulla prima” vi condivido il mio listato di due anni fà con la speranza che qualcuno sappia rattopparlo. Grazie “

     

    defparam drawonlastbaronly = true
    hk = highest[500](high)
    lk = lowest[500](low)
    hh = highest[250](high)
    lH = lowest[250](low)
    hs = highest[125](high)
    ls = lowest[125](low)
    hm = highest[22](high)
    lm = lowest[22](low)
    hw = highest[10](high)
    lw = lowest[10](low)

    DRAWHLINE(dhigh(0))coloured(0,255,0)
    DRAWHLINE(dhigh(1))coloured(0,255,0)
    DRAWHLINE(dhigh(2))coloured(0,255,0)
    DRAWHLINE(dhigh(3))coloured(0,255,0)
    DRAWHLINE(dhigh(4))coloured(0,255,0)
    DRAWHLINE(dhigh(5))coloured(0,255,0)

    DRAWHLINE(dlow(0))coloured(255,0,0)
    DRAWHLINE(dlow(1))coloured(255,0,0)
    DRAWHLINE(dlow(2))coloured(255,0,0)
    DRAWHLINE(dlow(3))coloured(255,0,0)
    DRAWHLINE(dlow(4))coloured(255,0,0)
    DRAWHLINE(dlow(5))coloured(255,0,0)

    DRAWHLINE(hk)coloured(0,0,0)
    DRAWHLINE(lk)coloured(0,0,0)
    DRAWHLINE(hh)coloured(0,0,0)
    DRAWHLINE(lH)coloured(0,0,0)
    DRAWHLINE(hs)coloured(0,0,0)
    DRAWHLINE(ls)coloured(0,0,0)
    DRAWHLINE(hm)coloured(0,0,0)
    DRAWHLINE(lm)coloured(0,0,0)
    DRAWHLINE(hw)coloured(0,0,0)
    DRAWHLINE(lw)coloured(0,0,0)
    Voffset = 5*pipsize
    DRAWTEXT(“MAX DUE ANNI”,barindex-60,hk+Voffset,SansSerif,Bold,16)coloured(153,153,0)
    DRAWTEXT(“MIN DUE ANNI”,barindex-60,Lk+Voffset,SansSerif,Bold,16)coloured(255,0,0)
    DRAWTEXT(“MAX ULTIMO ANNO”,barindex-40,hH+Voffset,SansSerif,Bold,16)coloured(153,153,0)
    DRAWTEXT(“MIN ULTIMO ANNO”,barindex-40,LH+Voffset,SansSerif,Bold,16)coloured(255,0,0)
    DRAWTEXT(“MAX SEMESTRE”,barindex-28,hS+Voffset,SansSerif,Bold,16)coloured(153,153,0)
    DRAWTEXT(“MIN SEMESTRE”,barindex-28,LS+Voffset,SansSerif,Bold,16)coloured(255,0,0)
    DRAWTEXT(“MAX MENSILE”,barindex-15,hM+Voffset,SansSerif,Bold,16)coloured(153,153,0)
    DRAWTEXT(“MIN MENSILE”,barindex-15,LM+Voffset,SansSerif,Bold,16)coloured(255,0,0)
    DRAWTEXT(“MAX SETTIMANALE”,barindex,hW+Voffset,SansSerif,Bold,16)coloured(153,153,0)
    DRAWTEXT(“MIN SETTIMANALE”,barindex,LW+Voffset,SansSerif,Bold,16)coloured(255,0,0)

    DRAWTEXT(“MAX oggi”,barindex-0,dhigh(0)+Voffset,SansSerif,Bold,10)coloured(153,153,0)
    DRAWTEXT(“MAX ieri”,barindex-1,dhigh(1)+Voffset,SansSerif,Bold,10)coloured(153,153,0)
    DRAWTEXT(“MAX ieri-2”,barindex-2,dhigh(2)+Voffset,SansSerif,Bold,10)coloured(153,153,0)
    DRAWTEXT(“MAX ieri-3”,barindex-3,dhigh(3)+Voffset,SansSerif,Bold,10)coloured(153,153,0)
    DRAWTEXT(“MAX ieri-4”,barindex-4,dhigh(4)+Voffset,SansSerif,Bold,10)coloured(153,153,0)
    DRAWTEXT(“MAX ieri-5”,barindex-5,dhigh(5)+Voffset,SansSerif,Bold,10)coloured(153,153,0)
    DRAWTEXT(“MIN oggi”,barindex-0,dlow(0)+Voffset,SansSerif,Bold,10)coloured(255,0,0)
    DRAWTEXT(“MIN ieri”,barindex-1,dlow(1)+Voffset,SansSerif,Bold,10)coloured(255,0,0)
    DRAWTEXT(“MIN ieri-2”,barindex-2,dlow(2)+Voffset,SansSerif,Bold,10)coloured(255,0,0)
    DRAWTEXT(“MIN ieri-3”,barindex-3,dlow(3)+Voffset,SansSerif,Bold,10)coloured(255,0,0)
    DRAWTEXT(“MIN ieri-4”,barindex-4,dlow(4)+Voffset,SansSerif,Bold,10)coloured(255,0,0)
    DRAWTEXT(“MIN ieri-5”,barindex-5,dlow(5)+Voffset,SansSerif,Bold,10)coloured(255,0,0)

    period = 500

    Yhh = highest[period](high)
    Yll = lowest[period](low)

    FOR i = 0 to period do
    if high[i] = Yhh then
    Xhh = barindex[i]
    endif
    if low[i] = Yll then
    Xll = barindex[i]
    endif
    NEXT

    DRAWVLINE(Xhh)coloured(0,200,0)
    DRAWVLINE(Xll)coloured(200,0,0)
    period = 250

    Yhh = highest[period](high)
    Yll = lowest[period](low)

    FOR i = 0 to period do
    if high[i] = Yhh then
    Xhh = barindex[i]
    endif
    if low[i] = Yll then
    Xll = barindex[i]
    endif
    NEXT

    period = 125

    Yhh = highest[period](high)
    Yll = lowest[period](low)

    FOR i = 0 to period do
    if high[i] = Yhh then
    Xhh = barindex[i]
    endif
    if low[i] = Yll then
    Xll = barindex[i]
    endif
    NEXT

    period = 22

    Yhh = highest[period](high)
    Yll = lowest[period](low)

    FOR i = 0 to period do
    if high[i] = Yhh then
    Xhh = barindex[i]
    endif
    if low[i] = Yll then
    Xll = barindex[i]
    endif
    NEXT

    period = 10

    Yhh = highest[period](high)
    Yll = lowest[period](low)

    FOR i = 0 to period do
    if high[i] = Yhh then
    Xhh = barindex[i]
    endif
    if low[i] = Yll then
    Xll = barindex[i]
    endif
    NEXT

    DRAWVLINE(Xhh)coloured(0,200,0)
    DRAWVLINE(Xll)coloured(200,0,0)
    DRAWVLINE(Xhh)coloured(0,200,0)
    DRAWVLINE(Xll)coloured(200,0,0)
    DRAWVLINE(Xhh)coloured(0,200,0)
    DRAWVLINE(Xll)coloured(200,0,0)
    DRAWVLINE(Xhh)coloured(0,200,0)
    DRAWVLINE(Xll)coloured(200,0,0)
    RETURN

    #179309

    Due sono le possibilità:

    • togliere la prima riga (defparam drawonlastbaronly = true)
    • riscrivere l’indicatore limitandolo alle sole ultime righe, mediante una serie di IF (ma occorrerebbe verificare esattamente cosa deve fare l’indicatore).

     

     

     

    #179319

    dovrebbe semplicemente tracciare i max e min ——————–daily – weekly – montly

    poi il resto lo ho allungato io aggiungendo i/ x day/ x weeks /x months e alche semestri e anni (ma la logica e sempre quella)

    ————————————————————————————————————————

    bastano anche solo i max e min ——————–daily – weekly – montly

    se puoi giusto qualche riga di esempio, ho il cervello atrofizzato dopo due anni. GRAZIE MILLE

    #179603

    Eccolo (Min+Max Giornalieri, Settimanali e Mensili):

     

    1 user thanked author for this post.
    #179607

    I colori non li ho messi, così puoi sceglierli a tuop piacimento dalle proprietà.

     

    1 user thanked author for this post.
    #179669

    Grazie mille per l’impegno. Funziona sotto la mi PRT ma non va sotto la T3 (anche se questo forum è per PRT)

    Sei gentilissimo, ma la t3 mi chiede di dichiarare le tre variabili

    OpenMonth
    OpenDayOfWeek
    OpenDay
    le ho dichiarate nell’apposita sezione dando valore 1, ma non funziona.
    SEI GENTILISSIMO A PRESCINDERE DALLA SOLUZIONE, GRAZIE MILLE
    #179670

    Togli Open:

    • Month
    • DayOfWeek
    • Day
    è probabile che sfalzi un po’ qualcosa, perché con Open restituisce il valore all’apertura della candela, senza, invece, quello alla chiusura.
    Quindi alla chiusura della candela Giornaliera, OpenDay restituirà il giorno di apertura (cioè ieri), mentre Day il giorno alla chiusura (cioè oggi).
    1 user thanked author for this post.
    #179690

    questo restituisce con

    OpenMonth
    OpenDayOfWeek
    OpenDay
    ——————————————–
    se le cambio con
    • Month
    • DayOfWeek
    • Day                      mi dice addirittura “utilizza le variabili  Month dayofweek day”

    P.S. i valori che restituisce non sono ne mass ne min ne apert ne chius di nessun time frame.


    Questa banale linea di codice sarebbe perfetta se permettesse di variare il numero di candele da analizzare (ad esempio le ultime 5 il venerdì sera per avere i max min op cl di una settimana)

    n=0
    return DOpen(n) as “Apertura” , DHigh(n) as “Massimo” , DLow(n) as “Minimo” , DClose(n) as “Chiusura”

    2 screenshot relativo a questa ipotesi

    #179692

    //SEMPLICE A x PERIODI
    Periodi = 5
    Preced = 0
    Massimo = highest[Periodi](high[Preced])
    Minimo = lowest[Periodi](low[Preced])
    RETURN Massimo AS “Max”,Minimo AS “Min”

    Questo sarebbe perfetto se solo fosse realistico…………….restituisce forse bene i max e non i min (posso fare a meno delle open e close)….FUNZIONA SU TUTTI I TF SENZA VARIARE NULLA (solo i periodi a piacimento)

    Io ti rompo le scatole, ma liberissimo di non rispondermi più………….GRAZIE MILLE

    #179697

    La versione che hai no ha le costanti di sistema Month, DayOfWeek e Day?

    Allora non ho soluzioni da suggerirti.

     

    1 user thanked author for this post.
    #179755

    Ho corretto BENE il codice come mi hai suggerito sopra ed ora funziona, ma sfalza le linee……….non trovo una logica precisa: ti riallego un screen shot grafico DAILY – dove i massimi ed i minimi Month sono in nero, in giallo i Weekly, in bordeaux i Day. Grazie per la pazienza, ma ora è diventata una questione di principio…………funziona, perchè sfalza???? 

    Grazie ancora

    —————————————————————————–

    ONCE MaxDoggi = high
    ONCE MinDoggi = low
    ONCE MaxWoggi = high
    ONCE MinWOggi = low
    ONCE MaxMoggi = high
    ONCE MinMOggi = low
    ONCE MaxDieri = high
    ONCE MinDieri = low
    ONCE MaxWieri = high
    ONCE MinWieri = low
    ONCE MaxMieri = high
    ONCE MinMieri = low
    // aggiornamento mensile
    IF Month <> Month[1] THEN
    MaxMieri = MaxMoggi
    MinMieri = MinMoggi
    MaxMoggi = high
    MinMoggi = low
    ENDIF
    // aggiornamento settimanale
    IF DayOfWeek < DayOfWeek[1] THEN
    MaxWieri = MaxWoggi
    MinWieri = MinWoggi
    MaxWoggi = high
    MinWoggi = low
    ENDIF
    // aggiornamento giornaliero
    IF Day <>Day[1] THEN
    MaxDieri = MaxDoggi
    MinDieri = MinDoggi
    MaxDoggi = high
    MinDoggi = low
    ENDIF
    //
    MaxMoggi = max(high,MaxMoggi)
    Minmoggi = min(low, MinMoggi)
    //
    MaxWoggi = max(high,MaxWoggi)
    MinWoggi = min(low, MinWoggi)
    //
    MaxDoggi = max(high,MaxDoggi)
    MinDoggi = min(low, MinDoggi)
    //
    RETURN MaxMieri AS “Max M”,MinMieri AS “Min M”,MaxWieri AS “Max W”,MinWieri AS “Min W”,MaxDieri AS “Max D”,MinDieri AS “Min D”

     

    #179772

    Cosa intendi per “sfalzare”?

     

    1 user thanked author for this post.
    #179775

    Vedi lo screenshot ….. massimi e minimi segnati con i relativi colori. Se sbaglio ad interpretare corregimi. Grazie

    #179778

    Si, ma sfalzati rispetto a cosa?

     

    1 user thanked author for this post.
    #179785

    Ho capito, io ti avevo calcolato i valori sulle candele chiuse, non sui dati correnti, qui sono indietro tutti di una candela (Mensile, Settimanale e Giornaliera).

    Cambia l’ultima riga con questa:

     

    1 user thanked author for this post.
Viewing 15 posts - 1 through 15 (of 17 total)

Create your free account now and post your request to benefit from the help of the community
Register or Login