Вычисление волатильности

#excel #vba #finance

#excel #vba #финансы

Вопрос:

У меня есть вопрос относительно расчета волатильности в Excel. Моя таблица состоит из трех столбцов: один идентификатор (столбец A), одна дата (столбец B) и значение, для которого я хочу рассчитать волатильность (столбец C). Идентификатор указан более одного раза, поэтому он не уникален в таблице.

Теперь я хочу создать другую таблицу. В столбце А указаны идентификаторы первой таблицы, но теперь они уникальны. В столбце b (где находится проблема) я хочу вычислить волатильность каждого значения первой таблицы, где идентификатор равен теперь уникальному идентификатору в таблице 2. В лучшем случае, если это просто функция рабочей книги, написанная на VBA. —> Он должен функционировать аналогично «Group by» в SQL, но также вычисляет волатильность.

введите описание изображения здесь

Заранее спасибо за вашу помощь!

Ответ №1:

Самый простой способ сгруппировать значения в Excel — это использовать Group функцию:

введите описание изображения здесь

Как только они сгруппированы, вы можете рассчитать волатильность с помощью DEV.ST / AVERAGE by:

  • Использование Формулы Excel =DEV.ST(Range) / AVERAGE(Range)
  • Использование кода VBA с использованием Application.WorksheetFunction методов.

Если вы выбрали способ VBA, вы можете сделать что-то вроде этого:

 Range("Result").VALUE = Application.WorksheetFunction.StDev(Range("YourData")) _
    / Application.WorksheetFunction.Average(Range("YourData"))