########################################################## # Calcolo prezzo giornalieri e analisi della volatilità # su dati infragiornalieri ########################################################## # Input: il file "intesa.csv" contiene i dati tick by tick # registrati in una giornata di borsa dal titolo INTESA # Variabili incluse nel file: # DATA ORA PREZ QUANT CTVL(controvalore=PREZ*QUANT) titolo<-read.csv("c:/intesa.csv",header=TRUE,dec=".",sep=",") # Inserire il percorso e il nome del file # Prezzo ufficiale: media ponderata dei prezzi della giornata p.uff<- sum(titolo$CTVL)/sum(titolo$QUANT) # Prezzo minimo p.min<-min(titolo$PREZ) # Prezzo massimo p.max<-max(titolo$PREZ) # Prezzo di riferimento: media ponderata dei prezzi dell'ultimo # 10% dei contratti conclusi titolo.rif<-titolo[floor(0.9*nrow(titolo)):nrow(titolo),] prif<-sum(titolo.rif$CTVL)/sum(titolo.rif$QUANT) # Volatilità intraday # Campo di variazione assoluto p.range<-p.max-p.min # Campo di variazione relativo p.range.r<-p.range/p.uff*100 # Differenza interquartilica p.di<-quantile(titolo$PREZ,probs=0.75)-quantile(titolo$PREZ,probs=0.25) # Differenza interquartilica relativa p.di.r<-p.di/p.uff*100 # scarto quadratico medio p.sqm<-sqrt(var(titolo$PREZ)) # Coefficiente di variazione p.cv<-p.sqm/p.uff*100