Buongiorno
Per capire come gestisce le date PRT ho provato ad inserire il seguente codice per visualizzare la data di oggi vicino all’ultima candela:
defparam drawonlastbaronly = true
DataOggi = Today
DRAWTEXT(" #DataOggi#",barindex,high[1]+0.04,Dialog,Bold,12) coloured(0,0,0,255)
Return
Oggi è il 03/05/2021, quindi mi aspettavo di vedere visualizzata la data nel formato PRT e cioè 20210503.
Invece mi appare 20,M
Ho provato a moltiplicare il valore per 1000000000 e mi appare 20.210.503G che ci assomiglia, ma non è corretto.
Voi avete una spiegazione ?
Grazie in anticipo a chiunque mi risponderà.
Un saluto
Si, purtroppo è un difetto della piattaforma.
Siccome supporta solo i dati numerico, essendo molto grande lo riporta come 20 milioni.
Devi scomporre la data in GG, MM e AAAA e poi stamparli singolarmente. Questo te la stampa sia in formato AAAA/MM/GG che GG/MM/AAAA, con due difetti, a) l’anno lo considera un numero e mette il punto delle migliaia b) lascia uno spazio dopo il numero:
DEFPARAM DrawOnLastBarOnly = TRUE
MyDate = Today
MyYear = round((MyDate / 10000) - 0.5)
MyMonth1 = MyDate - (MyYear * 10000)
MyMonth = round((MyMonth1 / 100) - 0.5)
MyDay = MyMonth1 - (MyMonth * 100)
DRAWTEXT("Today = #MyDate# ■ MyDate = #MyYear#/#MyMonth#/#MyDay#",BarIndex,high+range*2.0) coloured(0,0,255,255)
DRAWTEXT("Today = #MyDate# ■ MyDate = #MyDay#/#MyMonth#/#MyYear#",BarIndex,high+range*2.5) coloured(0,128,0,150)
RETURN
Grazie mille…
E’ proprio come dici tu.
Ho provato anche a costruire la data di oggi con quest’altro approccio, ma il risultato è il medesimo:
DEFPARAM DrawOnLastBarOnly = TRUE
MyDay = day
MyMonth = currentmonth
MyYear = currentyear
MyDate = MyYear * 10000
MyDate = MyDate + MyMonth*100
MyDate = MyDate + MyDay
DRAWTEXT("MyDate = #MyDate#",BarIndex,high+8) coloured(0,0,255,255)
RETURN
Desideravo usare la data di oggi all’interno di una condizione (if…. then…) ma l’istruzione today o un suo “codice sostitutivo” non funzionano.
Devo studiare qualche soluzione alternativa usando IntradayBarIndex e BarIndex.
Comunque grazie ancora.
Un saluto