Discussione: Indicatore Pidi_Trend
- 
	31-01-14, 23:08 #31Senior Member        
 - Data Registrazione
- Apr 2008
- Messaggi
- 4,076
 
 
- 
	11-03-14, 12:16 #32Senior Member      
 - Data Registrazione
- Nov 2009
- Messaggi
- 476
 
 
- 
	11-03-14, 17:34 #33Senior Member      
 - Data Registrazione
- Feb 2012
- Località
- Pisa
- Messaggi
- 351
 Ciao Pernotron, 
 
 non dovrebbe dipendere dal time frame (su certi sottostanti funziona e su altri no), mentre ho l'impressione che dipenda dalla volatilità delle barre che quando è troppo bassa crea dei problemi nel calcolo della deviazione standard.
 
 Cerco di modificarlo per vedere se riesco a farlo funzionare sempre ...
 
- 
	11-03-14, 17:46 #34Senior Member      
 - Data Registrazione
- Nov 2009
- Messaggi
- 476
 
 
- 
	12-03-14, 00:23 #35Senior Member      
 - Data Registrazione
- Feb 2012
- Località
- Pisa
- Messaggi
- 351
 Cambiamo la forzatura per evitare la divisione per zero: stavolta usiamo la funzione CHANGEIF, 
 tanto pur sempre di un artifizio si tratta!
 
 
 #Media dei prezzi a 20 periodi SET SMA20 = SMA(CLOSE, 20) #Media dei prezzi a 3 periodi SET SMA3 = SMA(CLOSE, 3) #Detraggo dalla più veloce la più lenta SET Differenza = SMA3 - SMA20 #Calcolo la deviazione standard dei prezzi da inizio giornata (a periodo variabile) SET ConditionDateChange = DATE > REF(DATE, 1) SET BarsOfDay = LASTIF(ConditionDateChange) SET Periods = BarsOfDay + 1 #Inibisco il calcolo della deviazione standard dei prezzi per le prime 4 barre di giornata SET DevStd = IF(Periods < 5, 0, StandardDeviations(CLOSE, Periods, 1, SIMPLE) ) #Modifica per evitare la divisione per zero SET DevStdModif = CHANGEIF(DevStd > 0, DevStd) #Divido la differenza per la deviazione standard ottenendo una percentuale #imponendo valore zero per le prime 4 barre di giornata (E' UNA SCELTA ARBITRARIA !!!) SET Percentuale = IF(Periods < 5, 0, Differenza / DevStdModif ) SET PLOT1 = Percentuale SET PLOT2 = 2 SET PLOT3 = 1 SET PLOT4 = -1 SET PLOT5 = -2 SET PLOTCOLOR1 = COLOR_YELLOW SET PLOTCOLOR2 = COLOR_LIGHT_GREEN SET PLOTCOLOR3 = COLOR_LIGHT_GREEN SET PLOTCOLOR4 = COLOR_LIGHT_RED SET PLOTCOLOR5 = COLOR_LIGHT_RED 
 Così mi sembra che funzioni !
 
- 
	12-03-14, 10:40 #36Senior Member      
 - Data Registrazione
- Nov 2009
- Messaggi
- 476
 
 
- 
	12-03-14, 11:12 #37Senior Member      
 - Data Registrazione
- Nov 2009
- Messaggi
- 476
 x SmashSalve Smash, 
 ho riscontrato lo stesso problema per le Fasce Pidi , non le plotta su grafici a 1 e 5 minuti, hai una gentile ed apprezzata soluzione anche per questo ?
 Grazie per la pazienza e la disponibilità
 
- 
	12-03-14, 12:31 #38Senior Member      
 - Data Registrazione
- Feb 2012
- Località
- Pisa
- Messaggi
- 351
 
 
- 
	12-03-14, 13:54 #39Senior Member      
 - Data Registrazione
- Nov 2009
- Messaggi
- 476
 
 
- 
	12-03-14, 16:32 #40Senior Member      
 - Data Registrazione
- Feb 2012
- Località
- Pisa
- Messaggi
- 351
 A me con l'ultima modifica fatta funziona anche il Cac40 a 1 minuto, mentre la versione precedente invece no. 
 
 Fai una prova:
 plotta questo
 
 #Calcolo la deviazione standard dei prezzi da inizio giornata (a periodo variabile) SET ConditionDateChange = DATE > REF(DATE, 1) SET BarsOfDay = LASTIF(ConditionDateChange) SET Periods = BarsOfDay + 1 #Inibisco il calcolo della deviazione standard dei prezzi per le prime 4 barre di giornata SET DevStd = IF(Periods < 5, 0, StandardDeviations(CLOSE, Periods, 1, SIMPLE) ) #Modifica per evitare la divisione per zero SET DevStdModif = CHANGEIF(DevStd > 0, DevStd) * 100000 SET PLOT1 = DevStdModif SET PLOTCOLOR1 = COLOR_YELLOWe magari verifica se l'indicatore plottato assume valore zero da qualche parte ....
 
 
 Altrimenti un'altra possibile causa di errore potrebbe essere quella di non richiedere una quantità di dati sufficientemente grande quando carichi un grafico a 1 minuto oppure a 5 minuti.
 Infatti per calcolare l'indicatore Pidi-Trend viene calcolata una deviazione standard a periodi variabili a partire dall'inizio di giornata, e se nel grafico non è presente almeno una barra del giorno prima beeTrader non sa mai a quanti periodi dovrebbe calcolarla.Ultima modifica di Smash; 12-03-14 alle 16:46 
 
 
								 Originariamente Scritto da Cagalli Tiziano
 Originariamente Scritto da Cagalli Tiziano
					

 
					
					
					
						 Rispondi Citando
  Rispondi Citando

