215 похожих чатов

С нахождением конкретной точки - у меня есть мысль, что

можно рассмотреть каждую точку промежутка, в котором подозревается слом тренда, далее для каждой такой точки разбить ряд на промежуток до и после этой точки, затем проверить коинтеграцию полученных частей, с помощью любого теста (энгла-грейнджера, дарбина-уотсона, может что-то ещё), и у какой точки значение соответствующей статистики будет выше (и выше критических значений, само собой) - ту точку и следует отобрать для точки слома тренда. у меня правильная идея, так делают?

3 ответов

14 просмотров

Да, в целом брутфорсное направление мысли правильное) Только нужно критические значения брать с учётом множественности теста. Надо погуглить, что обычно делают, запрос типа "econometrics detection of structural break point". Вроде популярный какой-то тест Andrews, насколько я смог вспомнить с давних времён, когда занимался эконометрикой)

novicer- Автор вопроса
David Dalé
Да, в целом брутфорсное направление мысли правильн...

да, нашёл, спасибо. а как построить такую линию регрессии? (как будет выглядеть в общем случае такое уравнение: как логистическая регрессия, или как полиномиальная с указанием точки слома, и как найти коэффициенты такого уравнения? это я уже не могу найти...)

novicer
да, нашёл, спасибо. а как построить такую линию ре...

Обычно делают тупо кусочно-линейную. Вот например ответ на стэковервлоу, где питонячьи имплементации обсуждаются; точно должны быть имплементации и на R. Лично мне нравится брутфорсное решение вообще без всяких стат. тестов: накидать кучу возможных точек излома с запасом, и обучить на них лассо-регрессию (чтобы большая часть компонент занулились). Оно прикольно тем, что модель сама определяет количество необходимых ей точек излома.

Похожие вопросы

Обсуждают сегодня

Есть какой-нибудь для Delphi/FPC T*Compression(Decompression)Stream на базе LZ4/Zstd/любой другой быстрый(и хорошо сжимающий) алгоритм А ещё лучше в pure pascal А ещё лучше од...
notme
48
Такой вопросец - есть функция function MySuperDuperConcat(const a: array of AnsiString): AnsiString; Как мне в её теле сделать вот так? Result:=Concat(a); А не грустный вариан...
notme
15
type TObj = object procedure Init; virtual; end; TObj1 = object(TObj) procedure Init; override; end; procedure TObj1.Init; begin inherited; end; procedur...
Alexander 👋
29
А чем вам питонисты не угодили?😂
.
79
Всем привет. Поделитесь, пожалуйста, опытом. Есть форма, на которой имеется dbgrid и кнопки: добавить, редактировать, удалить. Если нет записей в dbgrid, то кнопки редактирова...
Евгений
4
Всем привет. Подскажите, почему не меняется значение поля при переключении сайта?
Alexander Peterikov
11
Всем привет, написал код ниже, но он выдает сегфолт, в чем причина? #include <stdio.h> #include <stdlib.h> #include <string.h> struct product { char *name; float price; };...
buzz базз
86
Вот смотрите у меня есть два стрима сейчас fs, cs: TStream; fs := TFileStream.Create('filename'); cs := TCompressionStream.Create(compression_level, fs); Я хочу сделать так: ...
notme
5
type TExtensions<GExtender>=class function GetExtension<GEntityExtenderType>:GEntityExtenderType; end; function TExtensions<GExtender>.GetExtension<GEntityExtenderType...
zamtmn
8
Всем здравствуйте! Я хотел узнать сколько стоит средняя месячная зарплата у Electron js разработчиков? Мне очень это важно и нужно, плиз помогите узнать эту инфу! Для Джунио...
U.K.
10
Карта сайта