Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Ticker = ["ALTR", "BCP", "BPI", "EDP", "GALP", "IPR", "JMT", "EGL", "NOS", "PTI", "PTC", "RENE", "SEM", "SON"];
- d1 = date(2010, 1, 1);
- d2 = date(2014, 12, 31);
- K = 0(#Ticker,3);
- PvKS = 0(#Ticker,3);
- for (t in 1:#Ticker) {
- V0 = loaddaily(d1,d2,Ticker(t)+".csv","Volume");
- I0 = loaddaily(d1,d2,Ticker(t)+".csv","Close");
- V = select (V0,(I0>0));
- I = select (I0,(I0>0));
- L = [0;100*dif(ln(I))];
- E = elaw(V);
- Q1 = E.invpl(1/3);
- Q2 = E.invpl(2/3);
- L1 = select (L,(V<=Q1));
- E1 = elaw(L1);
- L2 = select (L,(V>Q1 & V<=Q2));
- E2 = elaw(L2);
- L3 = select (L,(V>Q2));
- E3 = elaw(L3);
- x = [min(L):max(L):(max(L)-min(L))/100];
- K(t,1) = ((#L1*#L2/(#L1+#L2))^0.5)*(max(abs(E1.pl(x)-E2.pl(x)))); // К - статистика критерия Колмогорова-Смирнова
- K(t,2) = ((#L1*#L3/(#L1+#L3))^0.5)*(max(abs(E1.pl(x)-E3.pl(x))));
- K(t,3) = ((#L3*#L2/(#L3+#L2))^0.5)*(max(abs(E3.pl(x)-E2.pl(x))));
- PvKS(t,1) = pvKolm(K(t,1)); // Р-значения критерия Колмогорова-Смирнова
- PvKS(t,2) = pvKolm(K(t,2));
- PvKS(t,3) = pvKolm(K(t,3));}
- savetable(["Тикер", "Малый и средний", "Малый и большой", "Средний и большой"; 'Ticker,K],"Табл.9.Значения статистики критерия Колмогорова-Смирнова.csv");
- savetable(["Тикер", "Малый и средний", "Малый и большой", "Средний и большой"; 'Ticker,round(PvKS,4)],"Табл.10.P-значения критерия Колмогорова-Смирнова.csv");
- //Задаем интервал от нуля до единицы сшагом 0,01
- P=0:1:0.01;
- //Рассчитываем значение критерия Колмогорова для проверки гипотезы о равномерности распределения P-значений критерия Колмогорова-Смирнова
- d= maxabs(elaw(PvKS).pl(P) - ulaw(0,1).pl(P));
- u=d*(((#PvKS)^0.5));
- //Задаем условие, что если критерий Колмогорова < критического значения статистики для уровня значимости 0,05, то Р-значения распределены равномерно
- //А если условие не выполняется, то Р-значения не распределены равномерно
- //if (u<crKolm(0.05)) itog = "P-значения распределены равномерно";
- //else itog = "Р-значения распределены не равномерно";
- if (u<crKolm(0.01)) itog = "P-значения распределены равномерно";
- else itog = "Р-значения распределены не равномерно";
- //Построение гистограммы частот P-значений критерия Колмогорова-Смирнова
- wintitle(itog); hist(PvKS.intfrgel(0:1:0.1),blue);axes();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement