1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/lei940324-Quantile

Клонировать/Скачать
README.md 18 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
Отправлено 06.06.2025 14:40 d72c200

Введение

Основные функции

  • Квантильный Granger-тест причинности: вычисление статистики Sup-Wald для каждого квантильного интервала.

  • Квантильная модель VAR: авторегрессионная модель с распределенным лагом

  • Вычисление функции импульсного отклика

  • Построение графиков импульсов для каждого квантильного уровня

Принципы реализации кода

  • Использование pyqt5 для создания графического интерфейса

  • Использование statsmodels для квантильной регрессии

  • Использование pandas для сохранения результатов в файл Excel

Отображение

Основное окно

Основные элементы:

  • Панель инструментов:

  • Панель данных: * Импорт данных: при нажатии кнопки выбирается путь для импорта данных, если данные не импортированы, по умолчанию импортируются тестовые данные

    • Начать выполнение: при нажатии выполняется квантильный Granger-тест причинности, вычисляется статистика Sup-Wald
    • Остановить выполнение: при нажатии останавливается выполнение программы
    • Просмотр данных: при нажатии отображаются импортированные данные
    • Инициализация: при нажатии инициализируются параметры
    • Оценка QVAR: при нажатии выполняется оценка параметров модели QVAR- Установка интервалов: установка начальной точки, средней точки, количества интервалов и кнопка создания интервалов

    Внимание: количество — это количество точек, например, если количество равно 17, то будут созданы 16 интервалов квантилей

    Пример:

    Начальная точка = 0.1, конечная точка = 0.9, количество = 2, будут созданы интервалы: [0.1, 0.9]

    Начальная точка = 0.1, конечная точка = 0.9, количество = 3, будут созданы интервалы: [0.1, 0.5], [0.5, 0.9]

  • Установка параметров

    • Дата: при выборе параметра первая колонка считается последовательностью дат, при вычислении статистики Wald она удаляется; при отмене выбора, первая колонка не удаляется

    • Модельная настройка: Представляет собой циклическую модель, по умолчанию используется однофакторная модель для каждого рынка

      Внимание: данные должны быть отсортированы в соответствии с моделью

      Предположим, что p=1, q=2, форма уравнения оценки будет следующей: Y=c1+c2Y-1+c3X-1+c4X-2 | Выбор модели | Описание содержания | Сортировка данных | Описание правил расчета | | :-----------------: | :----------------------------------------------------------: | :------------------------------------------------: | :----------------------------------------------------------: | | Однофакторная модель для каждого рынка | Исследование причинно-следственных связей одного фактора для каждого рынка, например, влияние цен на недвижимость на рынок акций или валютный рынок | data=[X,Y1,Y2,Y3] | X регрессия на Y1; X регрессия на Y2; X регрессия на Y3 | | Взаимное влияние | Исследование причинно-следственных связей двух факторов, например, влияние цен на недвижимость и акции на валютный рынок | data=[X,Y1,Y2,Y3] | X регрессия на Y1; X регрессия на Y2; X регрессия на Y3; Y1 регрессия на X; Y1 регрессия на Y2; Y1 регрессия на Y3;......... | | Многие факторы для одного рынка | Исследование причинно-следственных связей многих факторов для одного рынка, например, влияние различных эмоций на валютный рынок | data=[X1,X2,X3,Y] | X1 регрессия на Y; X2 регрессия на Y; X3 регрессия на Y | * Информационный критерий : Представляет собой критерий, используемый для определения оптимального числа задержек, включая критерий AIC или BIC

      AIC(p, q) = lnS(θ) + (p + q + 1) / T

      BIC(p, q) = lnS(θ) + (p + q + 1) × lnT / (2T)

      где S(θ) представляет собой сумму несимметричных абсолютных остатков, T - объем выборки, p и q - числа задержек.

    • Число оценок задержек : При расчете оптимального числа задержек необходимо вычислять значения AIC/BIC в каждом интервале, выбирать минимальное значение AIC/BIC в интервале и соответствующее ему число задержек, как оптимальное. Этот параметр представляет собой количество точек, выбранных для расчета в каждом интервале, по умолчанию выбирается 30 точек.

    • Максимальное число задержек : Представляет собой максимальное число задержек, выбираемое по умолчанию 5 задержек.

    • Wald оценка : количество вычисляемых квантилей в интервале квантилей при вычислении статистики Wald, по умолчанию выбирается 1000 точек.
    • Количество знаков после запятой : количество знаков после запятой, которые сохраняются, по умолчанию сохраняются три знака после запятой.
    • Вывод лог-файла : при выборе этого параметра выводит файл детали выполнения.txt, по умолчанию выбран Оценочная информация отображения : Отображение информации о выполнении.### Интерфейс оценки QVAR
  • Панель инструментов :

    • Начать выполнение : При нажатии начинается оценка модели QVAR

    • Построение графика импульсов : При нажатии строится график импульсов для различных квантилей

    • Импорт данных : Если необходимо добавить переменные-контроли, то следует нажать эту кнопку для импорта данных

  • Задержка порядка :

    • p : порядок задержки для объясняемой переменной y

    • q : порядок задержки для объясняющих переменных x

  • Квантиль : По умолчанию выбираются 5 квантилей [0.1, 0.25, 0.5, 0.75, 0.9]

    • √ : При нажатии добавляется квантиль

    • × : При нажатии удаляется квантиль

    Внимание : Максимальное количество квантилей для вычисления - 10

  • Переменные-контроли : Формула регрессии с переменными-контролями

  • Информация отображения : Отображение уведомлений

Использование

Шаг 1 : Введите следующую команду в командной строке в текущей директории:

python main.py

Подсказка : В текущей директории, щелкните правой кнопкой мыши на cmd или shell для открытия командной строки

Шаг 2 : Нажмите кнопку Импорт данных

Если импорт прошел успешно, будет отображено уведомление об успешном импорте

Шаг 3 : Установите параметрыШаг 4 : Нажмите кнопку Начать выполнение, дождитесь завершения выполнения программы, результат будет сохранен в файле Granger.xlsx в папке Результат выполнения

Структура проекта

|-- Quantile
    |-- beauty_UI.py             // Код для улучшения внешнего вида GUI
    |-- func.py                  // Основной функционал, определение вычислений квантильного Granger-эффекта
    |-- main.py                  // Основная программа
    |-- README.md                // Описание проекта
    |-- data                     // Папка для хранения данных
    |   |-- output.xlsx          // Файл результатов тестирования
    |   |-- Sup_wald_lag.xlsx    // Файл для проверки значимости Sup_wald
    |   |-- Тестовые данные.xlsx  // Файл для тестирования, просмотр результатов
    |   |-- Запись выполнения.txt // Лог выполнения
    |-- pyqt5_интерфейс          // Файлы, созданные с помощью Qt Creator
    |   |-- GUI                 // Основное окно
    |   |-- child_GUI           // Дочернее окно
    |-- Результат выполнения     // Папка для хранения результатов выполнения

Основные файлы проекта - main.py и func.py

Основные принципы оценки

Использование функций

Использование команд для квантильной регрессии с помощью библиотеки statsmodels:

  1. Использование формулы R-типа для построения модели:| formula | Описание | Пример | | ----------- | ------------------------------------------ | ---------------------- | | ~ | Разделитель, слева от него — откликающая переменная, справа — объясняющие переменные | y ~ x | | + | Добавление переменной | y ~ x1 + x2 | | - | Удаление переменной | y ~ x - 1 (удаление константы) |2) Параметры команд:
Атрибут Описание Метод Описание
res.params Получение оцененных параметров res.summary() Отображение оцененных результатов
res.bse Получение стандартных ошибок res.cov_params() Получение матрицы ковариаций
res.resid Получение остатков res.f_test("x2 = 0") Wald-тест

Реализация принципа квантильного теста Грейнджера на причинность

В связи с тем, что GitHub затрудняет отображение формул в LaTeX-формате, можно нажать здесь для просмотра.

Инструменты разработки

Название Функционал Иконка Официальный сайт
Qt Creator Визуализация GUI-интерфейса нажать
PyCharm Редактор кода нажать
Visual Studio Code Редактор кода нажать
  • 《Python Qt GUI与数据可视化编程》 → 《Python Qt GUI и визуализация данных программированием》

  • 《陈强高级计量经济学》 → 《Чень Цзянг Высшая метрическая экономика》

  • статьи:

    • Koenker & Machado1999 Inference QuantileReg → Koenker & Machado1999 Выводы по квантильному регрессу

    • Asymmetric Least Squares Estimation and Testing → Асимметричное наименьшее квадратичное оценивание и тестирование

    • Tests-for-Parameter-Instability-and-Structural-Change-With-Unknown-Change-Point → Тесты на нестабильность параметров и структурные изменения с неизвестной точкой изменения

    • Исследование взаимосвязи между ценами на недвижимость и валютными курсами на основе метода Granger-причинности для квантильных данных → Исследование взаимосвязи между ценами на недвижимость и валютными курсами на основе метода Granger-причинности для квантильных данных

    • Исследование взаимосвязи между сетевыми эмоциями и доходностью акций на основе метода Granger-причинности для квантильных данных → Исследование взаимосвязи между сетевыми эмоциями и доходностью акций на основе метода Granger-причинности для квантильных данных

  • другое:

    • Помощь Eviews 8 → Помощь Eviews 8

    • Лекции П. П. П. по квантильному регрессии → Лекции П. П. П. по квантильному регрессу

Лицензия

MIT © Добросердечный горожанин Стоун

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/lei940324-Quantile.git
git@api.gitlife.ru:oschina-mirror/lei940324-Quantile.git
oschina-mirror
lei940324-Quantile
lei940324-Quantile
master