View Full Version : Un'interessante analisi su ENI
Nei giorni scorsi in Spa c'è stata una discussione accesa sull'andamento di ENI.
Per provare a dipanare la questione, ho porvato a scrivere del codice per studiare il suo comportamento:
function [mem kvec matperc] = nbehaviourtest ( matfeed )
[n m]=size (matfeed);
% n = number of stocks we are considering
% m = number of days we are considering
% this program in order to run needs to have in the stack a matrix called matfeed
% with different stocks columnwise and set of time row-wise. The smaller
% the set of time is, the better.
% mem is a ratio between number of times in tails and total days, a smaller ratio
% means a more perturbated behaviour
% kvec(i) is the number of times in the tails, at a given time i
for i = 1:n
for j =1:m
matvar(i, j)=matfeed(i,m+1-j);
end;
end;
for i=1:n
for j =m-1:-1:1
a=matvar(i,j+1);
b=matvar(i,j);
matperc(i,j)=100*(a-b)/b;
end;
end;
vecperc=reshape(matperc', 1, (m-1)*n);
[mu sigma]=normfit(vecperc);
disp('Trivial likelihood test: the smaller the better');
normlike([mu sigma], vecperc)
a=norminv([0.2 0.8], mu, sigma);
clear mem kvec;
k=0;
mem =[];
kvec=[];
for i=1:m-1
if ( vecperc(i) < a(1) || vecperc(i)>a(2) ) k=k+1;
end;
mem=[mem 1-k/i];
kvec=[kvec k];
end;
x=-200:.1:200;
figure('Name','Distribution of percentile asset prices variation, over time','NumberTitle','off')
plot(x, normpdf(x, mu, sigma*sigma));
grid on
figure('Name','Skewness index','NumberTitle','off')
area (1:length(mem), mem);
grid on
end
i dati presi da yahoo finance sono
matfeed = [17.760 17.910 15.240 15.280 15.410 16.330 15.880 16.380 16.550 16 13.970 15.150 16.090 15.470 13.760 14.850 ] ; [1.40 1.370 1.30 1.370 1.410 1.40 1.40 1.410 1.380 1.370 1.40 1.390 1.440 1.530 1.320 1.40 ] ; [5.20 4.950 4.640 4.70 4.640 4.80 5.080 5.210 5.240 5.050 5.010 5.250 5.520 5.330 4.820 5.150 ] ; [14.350 14.710 14.510 14.460 14.650 14.580 14.350 14.550 14.620 13.370 13.040 13.250 13.860 13.470 13.220 13.110 ] ; [3.660 3.680 3.490 3.40 3.430 3.610 3.680 3.890 4.030 4 3.950 4.20 4.380 3.810 3.030 3.40 ] ; [1.440 1.410 1.30 1.280 1.340 1.420 1.410 1.470 1.50 1.460 1.530 1.550 1.590 1.580 1.50 1.650 ] ; [1.790 1.710 1.530 1.760 1.860 2.020 2.090 2.240 2.270 2.330 2.160 2.480 2.710 2.580 2.320 2.670 ] ; [5.270 5.290 4.940 4.820 5.080 5.30 5.080 5.230 5.490 5.20 5.010 5.310 5.860 5.450 4.60 5.030 ] ; [10.260 9.750 8.970 9.340 9.110 9.340 9.920 10.80 10.820 10.150 9.420 9.150 9.760 9.640 8.70 9.620 ] ; [5.970 5.660 5.290 5.360 5.850 6.450 6.540 6.670 7.20 7.280 7.350 7.720 8.10 7.70 6.680 6.880 ] ; [9.490 9.490 8.820 8.770 9.110 9.010 9.570 10.760 11.510 12.680 12.790 13.980 14.490 14.580 13.750 14.610 ] ; [19 19.170 18.170 18.890 19.670 20.90 20.950 21.60 21.80 21.090 20.970 21.680 21.840 21.60 20.650 21.080 ] ; [2.790 2.550 2.170 2.370 2.630 2.950 3.010 3.110 3.070 3.010 2.860 3.270 3.460 3.360 2.90 3.050 ] ; [16.710 16.720 16.530 16.090 16.290 16.550 15.50 16.180 16.550 15.70 15.450 15.950 16.830 16.190 15.690 16.150 ] ; [15.030 14.990 14.240 14.550 14.250 15.60 15.850 15.960 15.470 14.950 14.50 14.930 15.140 15.150 13.60 13.810 ] ; [8.760 8.620 8.510 8.60 8.730 8.80 8.750 8.820 8.870 8.820 8.810 8.850 8.940 8.80 8.510 8.690 ] ; [3.050 3.160 3.10 3.020 3.030 3.270 3.210 3.310 3.330 3.20 3.30 3.320 3.330 3.190 2.890 3.110 ] ; [4.250 4.020 3.840 4 3.890 4.110 4.260 4.270 4.180 3.960 3.820 3.990 4.20 4.110 3.80 3.880 ] ; [1.30 1.330 1.280 1.240 1.270 1.30 1.280 1.260 1.590 1.630 1.60 1.560 1.540 1.490 1.370 1.410 ] ; [4.340 4.160 4.030 4.160 4.630 4.610 4.840 4.930 4.820 4.70 4.680 4.60 4.80 4.480 3.660 3.990 ] ; [14.420 15.410 13.030 12.340 12.130 12.550 13.060 13.970 13 12.490 12.80 14.60 15.620 15.40 13.20 14.040 ] ; [6.220 6.470 6.230 6.060 6.20 6.250 6.30 6.350 6.540 6.170 5.950 6.240 6.880 6.930 6.470 6.730 ] ; [7.60 7.550 6.370 6.390 6.970 7.590 7.650 8.970 9.160 8.820 8.220 9.130 10.350 10.190 8.840 10.560 ] ; [0.880 0.870 0.820 0.840 0.860 0.90 0.890 0.930 0.950 0.880 0.830 0.860 0.90 0.860 0.750 0.830 ] ; [2.490 2.50 2.40 2.270 2.430 2.530 2.430 2.360 2.360 2.390 2.180 2.270 2.320 2.330 2.170 2.280 ] ; [1.790 1.710 1.530 1.760 1.860 2.020 2.090 2.240 2.270 2.330 2.160 2.480 2.710 2.580 2.320 2.670 ] ;
Considerando 15 giorni dopo il 10 ottobre il vettore rappresentante il numero di giorni in coda è:
1 2 2 3 4 5 5 5 5 5 6 6 6 7 7
qualcuno potrebbe far girare il programma con un set di dati un po piu grande (piu che su piu giorni, io lo farei su intervalli di tempo piu densi, tipo 1 minuto invece che 1 giorno)?
con quale motivazione si giustifica l'ipotesi che l'andamento azionario di un titolo debba seguire un andamento "normale"??
con quale motivazione si giustifica l'ipotesi che l'andamento azionario di un titolo debba seguire un andamento "normale"??
cfr. "The art of asset allocation"
http://books.google.com/books?id=6_VGA493x74C&pg=PA57&lpg=PA57&dq=normal+bell+price+asset&source=web&ots=IHhyPrBoC4&sig=hGEexHHOwRqsbVUAMIp1AxngIMM&hl=en&sa=X&oi=book_result&resnum=6&ct=result#PPA50,M1
cfr. "The art of asset allocation"
http://books.google.com/books?id=6_VGA493x74C&pg=PA57&lpg=PA57&dq=normal+bell+price+asset&source=web&ots=IHhyPrBoC4&sig=hGEexHHOwRqsbVUAMIp1AxngIMM&hl=en&sa=X&oi=book_result&resnum=6&ct=result#PPA50,M1
non vedo nessuna pertinenza tra l'analisi di portfolio e un calcolo basato su solamente un titolo azionario.
anzi son cose proprio opposte.
con quale motivazione si giustifica l'ipotesi che l'andamento azionario di un titolo debba seguire un andamento "normale"??
lascialo andare avanti, su. che forse alla fine si accorge che l'andamento dei rendimenti non segue propriamente una distribuzione normale :asd:
lascialo andare avanti, su. che forse alla fine si accorge che l'andamento dei rendimenti non segue propriamente una distribuzione normale :asd:
con sta analisi risulterebbe che il 100% dei titoli azionari "sta in coda". :asd:
con sta analisi risulterebbe che il 100% dei titoli azionari "sta in coda". :asd:
Perchè non la provi e non vedi che non è cosi?
ho leggermente modificato il codice per fare il test di skewness su tutte la azioni invece che su una sola, ecco i risultati:
kvec =
1 2 2 2 2 2 2 2 2 2 2 2 3 3 4
0 0 0 0 0 0 0 1 1 1 1 2 2 2 2
0 0 0 1 1 1 1 1 1 1 1 1 2 3 4
1 1 1 1 1 1 1 1 1 2 2 3 4 4 4
0 0 0 0 0 1 1 1 2 2 3 4 4 5 6
0 0 0 0 0 0 1 1 2 3 3 4 4 5 6
1 2 2 2 2 3 4 4 5 5 5 5 5 5 6
0 0 0 1 1 1 1 1 1 1 1 1 1 1 1
0 0 1 1 1 2 2 3 4 5 5 5 5 5 6
1 2 3 3 3 3 3 3 3 4 4 4 5 5 5
0 0 0 1 1 1 1 1 1 1 1 1 2 2 2
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
1 2 2 2 2 2 2 2 2 2 3 3 3 3 3
come potete ben vedere le altre azioni si comportano benissimo (piu o meno)
mi spiegate come si calcolano gli scarti? io uso la formula (a=prezzo all'istante t, b=prezzo all'istante t+1)
100*(b-a)/b
ma evidentemente è sbagliata. Che formula dovrei usare invece?
mi spiegate come si calcolano gli scarti? io uso la formula (a=prezzo all'istante t, b=prezzo all'istante t+1)
100*(b-a)/b
ma evidentemente è sbagliata. Che formula dovrei usare invece?
le comiche
le comiche
Rappresenta comunque un incremento, oppure no?
tu con cosa la sostituiresti?
p.s.: (a:b=x:100 non va bene)
guarda, io di statistica purtroppo (essendo passati diversi anni) non me ne ricordo moltissimo, anzi.
pero' ti suggerisco di iniziare a considerare una curtosi positiva tra le altre cose... :)
e siccome suppongo che i tuoi studi di finanza siano alquanto carenti, ti consiglio altresi' di iniziare a valutare modelli che vadano a tener conto dell'inefficenza dei mercati...
ps: per fare uno studio un po' piu' interessante dovresti ampliare decisamente il campione. il mib30 o spmib e' abbastanza riduttivo.
ps2: non chiedermi dati, non ho ne tempo ne voglia di cimentarmici :D
Rappresenta comunque un incremento, oppure no?
tu con cosa la sostituiresti?
p.s.: (a:b=x:100 non va bene)
%(b-a)/a
ma calcolare una variazione percentuale é una cosa che dovrebbe essere alla portata di chiunque ha fatto le frazioni.
Mi stupisce che i manuali che ci hai graziosamente linkato non ne parlassero :asd:
e siccome suppongo che i tuoi studi di finanza siano alquanto carenti, ti consiglio altresi' di iniziare a valutare modelli che vadano a tener conto dell'inefficenza dei mercati...
sono corsi che si fanno all'ultimo anno di specialistica purtroppo
ps2: non chiedermi dati, non ho ne tempo ne voglia di cimentarmici :D
il prototipo di funzione c'è, basta trovare solo qualcuno che lo faccia andare
sono corsi che si fanno all'ultimo anno di specialistica purtroppo
ma di cui non puoi non tener conto se vuoi continuare a supportare la tua tesi.
Mi stupisce che i manuali che ci hai graziosamente linkato non ne parlassero :asd:
purtroppo spendono paroloni per cose come test di ipotesi o algebre di borel e lasciano l'aspetto pratico un po in secondo piano.
ma di cui non puoi non tener conto se vuoi continuare a supportare la tua tesi.
beh se mi spieghi a grande linee come implementarli potrei provarci
http://img201.imageshack.us/img201/1918/45487268ck8.th.jpg (http://img201.imageshack.us/my.php?image=45487268ck8.jpg)
comunque ecco la distribuzione della variazione dei prezzi, sfido io chiunque a dire che non è una normale
beh se mi spieghi a grande linee come implementarli potrei provarci
non so na sega di matlab e programmazione, per cui non so come potrei esserti d'aiuto :D
http://img201.imageshack.us/img201/1918/45487268ck8.th.jpg (http://img201.imageshack.us/my.php?image=45487268ck8.jpg)
comunque ecco la distribuzione della variazione dei prezzi, sfido io chiunque a dire che non è una normale
e ti sfido a dire che non si nota una curtosi (cosi' come un andamento leggermente asimmetrico verso sx -cosa abbastanza frequente tra l'altro-), anche se torno a ribadire che il campione e' piccolo...
http://img201.imageshack.us/img201/1918/45487268ck8.th.jpg (http://img201.imageshack.us/my.php?image=45487268ck8.jpg)
comunque ecco la distribuzione della variazione dei prezzi, sfido io chiunque a dire che non è una normale
prezzi di cosa?
variazione rispetto a che cosa?
se quella é la distribuzione degli scarti delle variazioni giornaliere di ENI rispetto all'indice mib 30 si tratta di un grafico che esprime un 'ovvietà, visto che eni determina in una misura intorno al 16% l'indice mib30
Che poi é quello che diceva Dave e che si vedeva benissimo nel suo foglio excel
non so na sega di matlab e programmazione, per cui non so come potrei esserti d'aiuto :D
no no intendevo se mi dai un link ad un libro o ad una pubblicazione che lo spieghi dal punto di vista teorico mi occuperò io di implementare il codice
e ti sfido a dire che non si nota una curtosi (cosi' come un andamento leggermente asimmetrico verso sx -cosa abbastanza frequente tra l'altro-), anche se torno a ribadire che il campione e' piccolo...
beh facendo il test già impelementato in matlab:
kurtosis(a)
mi viene
4.4638
Non ti sembra un ottimo risultato?
Comunque quoto anche io la parte in grassetto. Mi piacerebbe che qualcun'altro facesse andare il programma su un pool piu ampio di dati.
prezzi di cosa?
variazione rispetto a che cosa?
se quella é la distribuzione degli scarti delle variazioni giornaliere di ENI rispetto all'indice mib 30 si tratta di un grafico che esprime un 'ovvietà, visto che eni determina in una misura intorno al 16% l'indice mib30
:)
basterebbe che tu facessi andare il codice per rispondere alle tue domande :) ho messo pure i titolini alle immagini :p
comunque ho preso la variabile:
http://www.codecogs.com/eq.latex?%20\frac{price_{t}-price_{t-1}}{price_{t-1}}
ho creato 50 intervalli equispaziati nell'intervallo [min, max] della variabile e ho contato quanti valori cadevano in ogni singolo "cestino"
:)
basterebbe che tu facessi andare il codice per rispondere alle tue domande :) ho messo pure i titolini alle immagini :p
comunque ho preso la variabile:
http://www.codecogs.com/eq.latex?%20\frac{price_{t}-price_{t-1}}{price_{t-1}}
ho creato 50 intervalli equispaziati nell'intervallo [min, max] della variabile e ho contato quanti valori cadevano in ogni singolo "cestino"
e cosa ci sarebbe di interesante in questa analisi?
A parte le code (che ho scoperto chiamarsi curtosi, e quindi ringrazio Froze per avermi fatto imparare qualcosa) che potrebbero essere interessanti per determinare la volatilità del titolo, ma visto che il periodo é di 20 giorni l'analisi é troppo ristretta.
Di economicamente interessante in quella analisi che c'è, a prescindere dall'uso di matlab?
e cosa ci sarebbe di interesante in questa analisi?
A parte le code (che ho scoperto chiamarsi curtosi, e quindi ringrazio Froze per avermi fatto imparare qualcosa) che potrebbero essere interessanti per determinare la volatilità del titolo, ma visto che il periodo é di 20 giorni l'analisi é troppo ristretta.
Di economicamente interessante in quella analisi che c'è, a prescindere dall'uso di matlab?
dave l'analisi l'ha fatta su un periodo di un mese e mezzo invece che di un mese come me.
Mi spieghi come mai la sua è migliore della mia?
Ovviamente la cosa interessante è che nei primi giorni dopo il 10 ottobre ENI assuma un comportamento molto diverso dalle altre azioni, per poi piano piano ristabilizzarsi nei giorni a venire
dave l'analisi l'ha fatta su un periodo di un mese e mezzo invece che di un mese come me.
Mi spieghi come mai la sua è migliore della mia?
Ovviamente la cosa interessante è che nei primi giorni dopo il 10 ottobre ENI assuma un comportamento molto diverso dalle altre azioni, per poi piano piano ristabilizzarsi nei giorni a venire
Perché l'analisi di Dave serviva a rispondere a una domanda, quella se l'andamento del titolo ENI avesse uno scostamento rispetto agli altri titoli dello SP nel periodo successivo alle dichiarazioni di berlusconi.
La tua analisi non ho ancora capito a quale domanda risponda. E mi sfugge pure la rilevanza economica nelle andare a guardare la distribuzione delle variazioni percentuali giornaliere del titolo ENI.
Anche perché secondo me giocando un po' con gli intervalli, quel tuo grafico lo si può trasformare in una curva che ha ben poco di distribuzione normale, puoi provare, anziche dividere in 50 a dividere in 100 o in 10 l'intervallo di variazione.
magari cambia radicalmente. O magari no.
In entrambi i casi non vedo quale significato economico tu possa trarne.
Perché l'analisi di Dave serviva a rispondere a una domanda, quella se l'andamento del titolo ENI avesse uno scostamento rispetto agli altri titoli dello SP nel periodo successivo alle dichiarazioni di berlusconi.
Esatto: Io ho messo in un array tutte le variazioni di tutti i titoli del mib 30 nel mese di ottobre, ho stimato la normale che li interpolava, ho fatto una verifica di ipotesi sulla normale generata, e poi mi sono chiesto: dove si posizionano le variazioni di ENI nella distribuzione di probabilità generata?
A questo punto ho definito come criterio (ma si può variare) che una azione si comporta diversamente dalle altre, cioè è in coda, se è diversa dall'80% delle altre azioni, cioè se si trova in una delle due code la cui area rappresenta il 10% del totale (cioè si è comportata in effetti diversamente dal 90% delle altre azioni).
E questo me lo chiedo giorno per giorno, e quindi disegno un grafico che rappresenta l'indice di skewness, ovvero quanto sta in coda:
I primi 2 giorni si trova saldamente in coda, per poi spostarsi nel 78% dell'area (quindi saltando il parametro di solo 2 punti percentuali), e quindi ritornare di nuovo in coda.
Nei giorni successivi poi piano piano si riporta vicino alla media, senza mai però raggiungerla.
La tua analisi non ho ancora capito a quale domanda risponda. E mi sfugge pure la rilevanza economica nelle andare a guardare la distribuzione delle variazioni percentuali giornaliere del titolo ENI.
Ma non guardo solo ENI, ma quasi tutte le azioni del mib 30: dico quasi perchè ne mancano due o tre: prendendo le valutazioni da
http://finance.yahoo.com/q/cp?s=^MIB30
mancano:
bpmps.mi bpu.mi
e un paio di altre azioni relative al mese di ottobre 2008... tu sai come mai?
comunque è esattamente la stessa identica cosa che fa dave nel suo spreadsheet, l'unica cosa che non capisco è perchè lui ha nello sheet dei dati diversi da quelli riportati da yahoo finance... ho provato a mandargli un PM chiedendogli spiegazioni ma lui mi ha risposto insultandomi.
Provo a fare le stesse domande a te:
tu sai perchè i dati di dave e quelli di yahoo non combaciano? e poi quando prendo i prezzi di chiusura devo scegliere Close price o Adjusted close price? cosa cambia?
Anche perché secondo me giocando un po' con gli intervalli, quel tuo grafico lo si può trasformare in una curva che ha ben poco di distribuzione normale, puoi provare, anziche dividere in 50 a dividere in 100 o in 10 l'intervallo di variazione.
sicuro!! ecco i grafici:
10 intervalli:
http://img262.imageshack.us/img262/3586/51012207ax1.jpg (http://img262.imageshack.us/my.php?image=51012207ax1.jpg)
http://img262.imageshack.us/img262/51012207ax1.jpg/1/w560.png (http://g.imageshack.us/img262/51012207ax1.jpg/1/)
100 intervalli:http://img152.imageshack.us/img152/2130/100uw6.jpg (http://img152.imageshack.us/my.php?image=100uw6.jpg)
http://img152.imageshack.us/img152/100uw6.jpg/1/w560.png (http://g.imageshack.us/img152/100uw6.jpg/1/)
comunque ti ripeto l'invito a provare tu stesso il codice, sicchè tu possa fare tutte le modifiche che vuoi!! Se per caso non hai matlab e non vuoi piratarlo, posso modificare leggermente il codice in modo tale che vada anche su Scilab/Octave, dato che è gratuito e credo esista anche per windows.
In entrambi i casi non vedo quale significato economico tu possa trarne.
non è la stessa analisi che dave fa nel suo spreadsheet, o che il volume di statistica comportamentale fa su intervalli di 7 giorni del dow jones?
nessuno ha da dire nulla? tutti d'accordo???
:D:D:D incredibile che possa esistere un economista che dica di non aver mai sentito parlare di normale :D:D:D
Dave la laurea quanti punti dell'esselunga ti è costata? :D:D:D:D
StefAno Giammarco
02-02-2009, 00:34
Dave la laurea quanti punti dell'esselunga ti è costata? :D:D:D:D
wlog fai il bravo, vi era stato chiesto di non "mordervi", magari tu scherzi ma potrebbe essere letto come flame. Se proprio ci tieni mandagli un pvt, ovviamente pacato ed educato, e se non interviene vuol dire che non gli interessa.
dave mi sembravi tanto ansioso nell'altro thread.... all'improvviso ti si è asciugata la bocca?
attendo tue notizie con ansia....
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.