Добавить в корзинуПозвонить
Найти в Дзене

Считаем реальную цену квартир

В прошлом видео я рассказал, почему «средняя цена» из новостей — это иллюзия из-за перекоса структуры. Сегодня переходим к практике.
Этот макрос за секунду посчитает тренд рынка двумя методами: квантильным и моим «Индексом Ядра».
Инструкция:
Подготовь данные: колонка A — цена за кв.м, колонка B — месяц (1 или 2).

В прошлом видео я рассказал, почему «средняя цена» из новостей — это иллюзия из-за перекоса структуры. Сегодня переходим к практике.

Этот макрос за секунду посчитает тренд рынка двумя методами: квантильным и моим «Индексом Ядра».

Инструкция:

  Подготовь данные: колонка A — цена за кв.м, колонка B — месяц (1 или 2).

  Нажми ALT + F11 -> Insert -> Module.

  Вставь код ниже и жми F5.

Sub RealTrend()

  L = Cells(Rows.Count, 1).End(xlUp).Row

  Range("A1:B" & L).Sort Key1:=Range("A1"), Order1:=xlAscending, Header:=xlNo

  For i = 1 To L

    If Cells(i, 2) = 1 Then N1 = N1 + 1

    If Cells(i, 2) = 2 Then N2 = N2 + 1

  Next

  P = 1

  For d = 1 To 10

    I1 = Application.Round(N1 * d / 10, 0)

    I2 = Application.Round(N2 * d / 10, 0)

    C1 = 0: C2 = 0

    For i = 1 To L

      If Cells(i, 2) = 1 Then

        C1 = C1 + 1: If C1 = I1 Then D1 = Cells(i, 1)

      ElseIf Cells(i, 2) = 2 Then

        C2 = C2 + 1: If C2 = I2 Then D2 = Cells(i, 1)

      End If

    Next i

    P = P * (D2 / D1)

  Next d

  TQ = (P ^ (1 / 10) - 1) * 100

  S1 = Application.Round(N1 * 0.4, 0): E1 = Application.Round(N1 * 0.6, 0)

  S2 = Application.Round(N2 * 0.4, 0): E2 = Application.Round(N2 * 0.6, 0)

  C1 = 0: C2 = 0

  For i = 1 To L

    If Cells(i, 2) = 1 Then

      C1 = C1 + 1: If C1 >= S1 And C1 <= E1 Then Y1 = Y1 + Cells(i, 1): K1 = K1 + 1

    ElseIf Cells(i, 2) = 2 Then

      C2 = C2 + 1: If C2 >= S2 And C2 <= E2 Then Y2 = Y2 + Cells(i, 1): K2 = K2 + 1

    End If

  Next i

  TC = ((Y2 / K2) / (Y1 / K1) - 1) * 100

  MsgBox "Квантили: " & Format(TQ, "0.0") & "%" & vbCrLf & "Индекс Ядра: " & Format(TC, "0.0") & "%"

End Sub

В чем разница результатов?

  Квантильный метод разбивает рынок на 10 слоев, считает изменение в каждом и склеивает их через среднее геометрическое. Метод нормальный, но включает обработку замусоренных краев выборки.

  Мой Индекс Ядра — оптимален. Скрипт отрезал по 40% крайних объектов и посчитал среднее строго по 20% центрального «ядра» рынка. Никаких фейков и элитки, только чистый тренд цен.

Сохраняй код в закладки и тестируй на своих базах. Вопросы по коду жду в комментариях