Rettangoli automatici
Forums › ProRealTime forum Italiano › Supporto ProBuilder › Rettangoli automatici
- This topic has 8 replies, 2 voices, and was last updated 4 years ago by robertogozzi.
-
-
09/21/2019 at 1:17 PM #108116
Buongiorno,
avrei bisogno del codice per creare un indicatore che disegni un rettango da un determinato punto fino all’ultima candela presente sul grafico.
Es. Se l’RSI rompo il livello di ipervenduto, l’indicatore deve creare un rettangolo su tutto il corpo della candela e protrarlo nel tempo.
Allego uno screen esplicativo.
Grazie a chi mi aiuterà
09/21/2019 at 2:07 PM #108119Eccolo:
12345678910111213IF barindex = 0 THENRsiFlag = 0ENDIFIF Rsi[14](close) CROSSES UNDER 30 thenRsiFlag = 1Barra = BarIndexMassimo = highMinimo = lowENDIFIF RsiFlag = 1 THENDRAWRECTANGLE(Barra,Massimo,BarIndex,Minimo) COLOURED(0,0,0,0)ENDIFRETURN1 user thanked author for this post.
09/21/2019 at 10:18 PM #108130Infinite grazie Roberto, ma il mio problema era riuscire a mantenere disegnato il rettangolo anche quando se ne crea un successivo.
Quello che mi interessava è proprio la sovrapposizione dei rettangoli che creano una zona di supp/resistenza.
Ovviamente per non “intasare” il grafico avevo pensato di filtrare con un comando che conteggiasse solo le ultime 500 barre.
Secondo te c’è un modo per farli sovrapporre invece di annullare il precedente rettangolo e crearne uno nuovo?
09/22/2019 at 10:45 PM #108191Si può fare in maniera limitata.
PRT non supporta i vettori, quindi bisogna preimpostare non tanto le barre, quanto i rettangoli che vuoi siano visualizzati. Io te lo farò per gli ultimi 3 rettangoli, poi tu potrai aumentarli a piacimento aggiungendo del codice.
1 user thanked author for this post.
09/23/2019 at 11:43 AM #108235Eccolo:
12345678910111213141516171819202122232425262728293031323334353637DEFPARAM DrawOnLastBarOnly = trueIF barindex = 0 THENRsiFlag = 0Barra1 = 1Barra2 = 0Barra3 = 0Minimo1 = 0Minimo2 = 0Minimo3 = 0Massimo1= 0Massimo2= 0Massimo3= 0ENDIFIF Rsi[14](close) CROSSES UNDER 30 thenRsiFlag = 1Barra3 = Barra2Barra2 = Barra1Barra1 = BarIndexMassimo3= Massimo2Massimo2= Massimo1Massimo1= highMinimo3 = Minimo2Minimo2 = Minimo1Minimo1 = lowENDIFIF RsiFlag = 1 THENIF Barra3 > 0 THENDRAWRECTANGLE(Barra3,Massimo3,BarIndex,Minimo3) COLOURED(0,0,0,0)ENDIFIF Barra2 > 0 THENDRAWRECTANGLE(Barra2,Massimo2,BarIndex,Minimo2) COLOURED(0,0,0,0)ENDIFIF Barra1 > 0 THENDRAWRECTANGLE(Barra1,Massimo1,BarIndex,Minimo1) COLOURED(0,0,0,0)ENDIFENDIFRETURNCome puoi vedere ogni volta che l’RSI entra in ipervenduto scala di un posto a tutti i rettangoli per fare posto a quello nuovo. Basta che tu ne aggiunga altri, 4, 5, 6, quelli che desideri e li vedrai tutti sul grafico.
Devi scrivere un pò di righe, ma è semplice.
09/23/2019 at 12:26 PM #10825109/23/2019 at 2:29 PM #108272Per l’ipercomprato lo duplichi con un nome diverso e basta che metti CROSSES OVER 70 invece di CROSSES UNDER 30.
09/23/2019 at 4:04 PM #10828409/23/2019 at 4:25 PM #108286Un ciclo sarebbe utile e semplice se ci fossero i vettori, così puoi utilizzarne quanti vuoi ma senza cicli.
-
AuthorPosts