Проблема выбросов

В настоящее время уже известно (об этом говорят эксперименты), что значения ВРТ распределены не по нормальному закону. Но не смотря на этот неприятный факт, ВРТ о обладают двумя позитивными свойствами: 1) свойством стационарности и 2) свойством чередования знаков (выполняется правило чередования). Это облегчает логику рассуждений при построении МП. Однако имеется ещё одна проблема, которую нельзя обойти стороной – проблема выбросов в значениях ВРТ.

Выбросы – это слишком большие или слишком малые значения ВРТ среди других, умеренно различающихся значений ВРТ. Иными словами – это некоторые «аномальные» значения.

Выбросы объясняются многими причинами. И рассматривать здесь их не имеет смысла. Однако выбросы весьма вредны при исследовании ВРТ! Они мешают определить закон распределения ВРТ, портят статистические характеристики ВРТ, а самое главное – мешают построить адекватную МП!

Поэтому выбросы должны быть исключены из ВРТ, либо приняты какие-то меры по борьбе с ними.

На практике существует следующее правило: при симметричном произвольном распределении с одной вершиной (это касается ВРТ), интервал равный µ±4σ содержит 97% всех значений ВРТ. Обычно µ — заменяется на выборочное среднее значение, а σ – на выборочное стандартное отклонение.

Одним из приёмов по борьбе с большими выбросами является приём под названием «усечение». Так для ВРТ, все значения большие µ±4σ могут заменяться на значения равные µ±4σ.

Я предлагаю несколько иной алгоритм для определения выбросов:

1. Проводится сортировка модулей значений ВРТ по возрастанию. Назову такой ВР Q={q0,…,qn-1}.

2. Тогда значениями верхней h и нижней l границ для выбросов будут значения h=qe и l=-qe. Значение qe я назвал граничным значением.

Индекс e=trunc((1-β)·n). То есть индекс e равен целочисленной части от значения выражения (1-β)·n. Выбросами считаются все значения ВРТ, которые удовлетворяют условию: |si|≥qe. Значение β – это доля выбросов в нашем ВРТ. Его нужно подобрать эмпирически. В допустимых границах будут находиться все значения ВРТ с вероятностью 1- β.

3. Все найденные выбросы внутри ВРТ заменить на среднее значение Q с соответствующим выбросу знаком (+/-).

Прежде всего на мысль о том, что ВРТ содержат выбросы, «наводят» графики.

Вот три привычных графика EUR/USD, GBP/JPY, AUD/CAD. Значения, потенциально относящиеся к выбросам я обозначил красным (так, навскидку).

 acteutgjt

 А теперь попробуем определить, что будет являться выбросами, при β=0.05, то есть 99% значений ВРТ должны быть внутри допустимых границ!

На графиках рассчитанные границы для выбросов я обозначил красным цветом.

 aceeue

 Все, что лежит за верхней и нижней красной линией – это выбросы.

Вот функция на языке R для определения граничного значения qe для произвольной выборки V при заданном β=b:

#определение граничного значения
getlv<-function(V,b)
{
lenV<-length(V)
#Ограничения применимости
if (lenV==0) {return(0)}
V<-sort(abs(V))
lv<-V[trunc((1-b)*lenV)]
return (lv)
}

А теперь заменим выбросы на их среднее значение, согласно алгоритму.

И вот, что получим на графиках:

acfeufgjf

Визуально графики выглядят более «ровными». Каких-либо явных выбросов не бросается в глаза. Конечно, в некоторой степени статистические характеристики ВРТ изменились. Но эти изменения составляют всего β=0.05 или 5%. Поэтому повторно проверять нормальность и стационарность не имеет смысла. Выводы вряд ли изменяться.

Именно с такими данными, «очищенными» от выбросов, целесообразно работать в дальнейшем.

Вот скрипт, который «очищает» от выбросов:

fltV<-function(V,lv,b)
{
lenV<-length(V)
#Ограничения применимости
if (lenV==0) {return(0)}
d<-getd(V)
for(i in 1:lenV)
{
if(abs(V[i])>=lv) {V[i]<-sign(V[i])*d}
}
return(V)
}

На сегодня у меня все.

Похожие статьи:

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *