solo se dibuje en las ultimas 4 velas
Forums › ProRealTime foro Español › Soporte ProBuilder › solo se dibuje en las ultimas 4 velas
- This topic has 5 replies, 2 voices, and was last updated 1 year ago by JC_Bywan.
-
-
08/24/2023 at 6:01 PM #219755
tengo un dibujo y lo uso con “defparam calculateonlastbars = 4” pero al iniciarlo me empieza bien solo dibujando 4 pero segun va pasando velas se quedan esas 4 y todas las siguientes, como podrias que solo se me dibujara solo en las 4 ultimas aunque pasen velas que se me vayan borrando en las antiguos y dibujando en los nuevos. Un saludo
08/24/2023 at 8:24 PM #219760Hola,
podemos usar un defparam drawonlastbaronly=true
y en lugar de “return” con drawsegment (y con otras instrucciones de dibujo) dibujar 4 veces en lugar de una en el código : una vez para la vela actual y 3 veces para las 3 velas anteriores, así en cada vela nueva siempre tendremos el dibujo solo para las 4 velas más recientes
08/25/2023 at 8:16 AM #219764No logro enternderlo muy bien, podrias hacerlo con este ejemplo, que solo se me pueda dibujar la flecha en las ultimas 4 velas. Un saludo
cruce12345678defparam drawonlastbaronly=trueema3= ExponentialAverage[3](close)ema9= ExponentialAverage[9](close)IF ema3 CROSSES OVER ema9 thenDRAWARROWUP(barindex, close) COLOURED(0,255,0)ENDIFRETURN08/27/2023 at 8:43 AM #219824Hola,
con este ejemplo, podemos dibujar las flechas en las ultimas 4 velas:
1234567891011121314151617181920defparam drawonlastbaronly=trueN=4 // number of candles (including current one) you want your arrows displayed onema3= ExponentialAverage[3](close)ema9= ExponentialAverage[9](close)crossup= ema3 CROSSES OVER ema9crossdown= ema3 CROSSES UNDER ema9for i=0 to N-1IF crossup[i] thenDRAWARROWUP(barindex[i], close[i]) COLOURED(0,255,0)ENDIFIF crossdown[i] thenDRAWARROWdown(barindex[i], close[i]) COLOURED(255,0,0)ENDIFnextreturn08/28/2023 at 11:40 AM #219937y como podría hacerlo en este código que siempre se dibujen las 4 ultimas?
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364psar = SAR[0.02,0.02,0.2]A = ABS(psar - psar[1])B= ABS(A-A[1])Distancia = psar - psar[1]IF psar > close thenif psar[1] < close[1]THENDistancia = 0ELSEIF (Distancia > Distancia[1]) AND (Distancia[1] <> 0) THENENDIFENDIFDrawText("#A#",BarIndex[0],Offset,dialog,bold,14)elsif psar < close thenif psar[1] > close[1]THENDistancia = 0ELSEIF (Distancia > Distancia[1]) AND (Distancia[1] <> 0) THENENDIFENDIFDrawText("#A#",BarIndex[0],Offset,dialog,bold,14)ENDIFOffset = psar - (average[100,0](range) / 3)IF close <= psar THENOffset = psar + (average[100,0](range) / 3)endifiF psar > close thenDRAWTEXT(psar, barindex,PSAR+16)elseDRAWTEXT(psar, barindex,PSAR-16)endifC1= CLOSE => PSARC2= CLOSE <= PSARCONTADOR = 0IF distancia => distancia[1] AND C1 THENCONTADOR = 1 + CONTADOR[1]PE = HIGHEST [CONTADOR+1](HIGH)DrawText("↓",BarIndex[0],Offset,dialog,bold,30) coloured("Red",255)ENDIFCUENTA = 0IF distancia <= distancia[1] AND C2 THENCUENTA = 1+ CUENTA [1]PE = LOWEST[CUENTA+1] (LOW)DrawText("↓",BarIndex[0],Offset,dialog,bold,30) coloured("Red",255)ENDIFIF C2 AND CLOSE > PSAR THENCUENTA = 1+ CUENTA [1]PE = LOWEST[CUENTA+1] (LOW)DrawText("↓",BarIndex[0],Offset,dialog,bold,30) coloured("Red",255)ENDIFRETURN a as "distancia"?
08/29/2023 at 7:59 AM #219977Para dibujar las flechas en las ultimas 4 velas (y los valores solo en la ultima), aqui esta:
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778defparam drawonlastbaronly=trueFL1=0FL2=0FL3=0N=4 // number of candles (including current one) you want your arrows displayed onpsar = SAR[0.02,0.02,0.2]A = ABS(psar - psar[1])B= ABS(A-A[1])Distancia = psar - psar[1]IF psar > close thenif psar[1] < close[1]THENDistancia = 0ELSEIF (Distancia > Distancia[1]) AND (Distancia[1] <> 0) THENENDIFENDIFDrawText("#A#",BarIndex[0],Offset,dialog,bold,14)elsif psar < close thenif psar[1] > close[1]THENDistancia = 0ELSEIF (Distancia > Distancia[1]) AND (Distancia[1] <> 0) THENENDIFENDIFDrawText("#A#",BarIndex[0],Offset,dialog,bold,14)ENDIFOffset = psar - (average[100,0](range) / 3)IF close <= psar THENOffset = psar + (average[100,0](range) / 3)endifiF psar > close thenDRAWTEXT(psar, barindex,PSAR+16)elseDRAWTEXT(psar, barindex,PSAR-16)endifC1= CLOSE => PSARC2= CLOSE <= PSARCONTADOR = 0IF distancia => distancia[1] AND C1 THENCONTADOR = 1 + CONTADOR[1]PE = HIGHEST [CONTADOR+1](HIGH)//DrawText("↓",BarIndex[0],Offset,dialog,bold,30) coloured("Red",255)FL1=1ENDIFCUENTA = 0IF distancia <= distancia[1] AND C2 THENCUENTA = 1+ CUENTA [1]PE = LOWEST[CUENTA+1] (LOW)//DrawText("↓",BarIndex[0],Offset,dialog,bold,30) coloured("Red",255)FL2=1ENDIFIF C2 AND CLOSE > PSAR THENCUENTA = 1+ CUENTA [1]PE = LOWEST[CUENTA+1] (LOW)//DrawText("↓",BarIndex[0],Offset,dialog,bold,30) coloured("Red",255)FL3=1ENDIFfor i=0 to N-1if FL1[i] or FL2[i] or FL3[i] thenDrawText("↓",BarIndex[i],Offset[i],dialog,bold,30) coloured("Red",255)endifnextRETURN a as "distancia" -
AuthorPosts
Find exclusive trading pro-tools on