Incrocio Vidya CMO con Vidya Weight che non restituisce incroci validi
Forums › ProRealTime forum Italiano › Supporto ProScreener › Incrocio Vidya CMO con Vidya Weight che non restituisce incroci validi
- This topic has 4 replies, 2 voices, and was last updated 1 year ago by Frenkys. 
- 
	
		
- 
		
			
				
04/26/2024 at 4:12 PM #231971Buongiorno, sono tornato sull’indicatore Vidya purtroppo come da precedente topic trovo spesso qualche problema, in questo caso sto cercando un incrocio fra tue tipi di Vidya una è la classica a 7 periodi: ONCE SC = 2/(7+1) 
 AbsCMO = (Abs(Chandle[7](Close)))/100
 IF BarIndex <= 100 THEN
 Vidya = close
 ELSE
 Vidya = (SC*AbsCMO*Close)+(1-(SC*AbsCMO))*Vidya
 ENDIF
 c2= Vidyal’altra è invece smussata con una media mobile weighted sempre a 7 periodi ONCE SC = 2/(7+1) 
 AbsCMO = (Abs(Chandle[7](Close)))/100
 IF BarIndex <= 100 THEN
 Vidya = close
 ELSE
 Vidya = (SC*AbsCMO*Close)+(1-(SC*AbsCMO))*Vidya
 ENDIF
 c1 = weightedaverage[7](Vidya)Il codice dello screener in teoria dovrebbe essere cosi: ONCE SC = 2/(7+1) 
 AbsCMO = (Abs(Chandle[7](Close)))/100
 IF BarIndex <= 100 THEN
 Vidya = close
 ELSE
 Vidya = (SC*AbsCMO*Close)+(1-(SC*AbsCMO))*Vidya
 ENDIF
 c1 = weightedaverage[7](Vidya)ONCE SC = 2/(7+1) 
 AbsCMO = (Abs(Chandle[7](Close)))/100
 IF BarIndex <= 100 THEN
 Vidya = close
 ELSE
 Vidya = (SC*AbsCMO*Close)+(1-(SC*AbsCMO))*Vidya
 ENDIF
 c2= Vidya
 c3= c1 – c2
 screener [c3]il problema è quello che la maggior parte dei risultati che escono dallo screener relativi all’incrocio non è corretta, vorrei risolvere questo problema in quanto questo tipo di indicatori li sto usando molto e ho in mente una strategia grazie 05/03/2024 at 7:51 AM #232230Ciao. Qui hai uno screener che individua i crossover rialzista/ribassista. Se vuoi cercarne solo uno devi solo cancellarlo nell'ultima riga. 1234567891011ONCE SC = 2/(7+1)AbsCMO = (Abs(Chandle[7](Close)))/100IF BarIndex <= 100 THENVidya = closeELSEVidya = (SC*AbsCMO*Close)+(1-(SC*AbsCMO))*VidyaENDIFVidya1= VidyaVidya2 = weightedaverage[7](Vidya)screener[Vidya1 crosses over Vidya2 or Vidya1 crosses under Vidya2]05/04/2024 at 7:35 PM #232328Ciao Ivan, Grazie per l’aiuto, hai scritto un codice che con poche righe funziona benissimo, ho visto che nell’ultima riga hai utilizzato il “crosses over” mentre io ho utilizzato “c3=c1-c2″ e poi hai utilizzato ” Vidya2 = weightedaverage[7](Vidya)” distinguendola (giustamente) dalla Vidya1, in questo modo ho riscritto il codice mio precedente filtrando anche un po di volume: MKC= Volume>100000 
 ONCE SC = 2/(7+1)
 AbsCMO = (Abs(Chandle[7](Close)))/100
 IF BarIndex <= 100 THEN
 Vidya = close
 ELSE
 Vidya = (SC*AbsCMO*Close)+(1-(SC*AbsCMO))*Vidya
 ENDIF
 c1 = weightedaverage[7](Vidya)ONCE SC = 2/(7+1) 
 AbsCMO = (Abs(Chandle[7](Close)))/100
 IF BarIndex <= 100 THEN
 Vidya2 = close
 ELSE
 Vidya2 = (SC*AbsCMO*Close)+(1-(SC*AbsCMO))*Vidya2
 ENDIF
 c2= Vidya2
 c3= c2 crosses over c1
 screener [MKC and c3]direi che funziona bene, ma dove era l’errore del primo codice scritto da me, l’utilizzo della differenza delle due Vidya “c3= c1 – c2” e non il crosses over? Te lo chiedo perche l’indicatore con i richiami che utilizza la differenza fra le due Vidya sembra che funzioni bene indicator1 = CALL “Vidya Weighted”[Periodi1]//periodi superiori a Vidya New altrimenti 
 //non tornano gli incroci
 indicator2 = CALL “Vidya New”[Periodi]c1 =-(indicator1-indicator2) return c1,0 05/06/2024 at 7:41 AM #232353Ciao, nel tuo codice iniziale, lo screener non filtrava nulla. Avevi affermato che c3 = c2-c1. Se non dici altro lo screener mostrerà tutti i valori (tranne c2=c1, il che è molto strano). Se volessi usare la tua espressione, dovrebbe essere qualcosa del genere: screener[c3>0 and c3[1]<0]per un crossover rialzistascreener[c3<0 and c3[1]>0]per un crossover ribassista05/06/2024 at 10:04 AM #232363
- 
		AuthorPosts
			Find exclusive trading pro-tools on 


 
		 
		 
		