Оценка погрешности прогноза

 

Здравствуйте!

Я не специалист в тех.анализе, да и вообще в таких "страшных" словах как трейдинг, форекс, и т.п.
Просто как раз сейчас я занимаюсь одной похожей математической проблемой. Зашел в тупик и уверен, что никто лучше профессионалов тех.анализа не ответит на мой вопрос.

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

ВОПРОС: как оценить погрешность этой экстраполяции.

Первое что приходит на ум математику, это посчитать среднеквадратичное отклонение на известной выборке и считать его отклонением для экстраполяции. НО:

1. Очевидно, что чем данные выборки "старее", тем меньше их влияние на "свежие" данные. Иными словами, если в начале года расхождение было сильным, а под конец стало более-менее совпадать, то не правильно считать именно среднеквадратичное отклонение. Очевидно, нужно задаться отклонением на некотором интервале перед концом выборки. Как оперделить и обосновать на каком?

2. Очевидно, что величина отклонения для экстраполяции должна быть тем больше чем больше период экстраполяции. То есть если, например, можно взять среднеквадратичное отклонение в качестве отклонения для 1-го прогнозного значения, то, очевидно, что для 2-го погрешность должны быть уже больше. Следовательно, нужно задаться неким темпом роста этой погрешности. Как определить и обосновать этот темп?

Большое спасибо!
С уважением,
Никита

 

если Вы найдете ответы на свои вопросы, тогда Вы будете самым богатым человеком :)

погуглите с запросом: нейронные сети site:mql4.com

думаю найдете много интересного

 

http://www.economy-web.org/?p=289

может это поможет
 
IgorM:

если Вы найдете ответы на свои вопросы, тогда Вы будете самым богатым человеком :)

погуглите с запросом: нейронные сети site:mql4.com

думаю найдете много интересного


Спасибо, к богатству я не стремлюсь, на жизнь вполне хватает и слава Богу!

Посмотрел нейронные сети, интересного конечно много, но у меня немного иная задача.

Мне не нужно как можно точнее прогнозировать значение ряда. Нужно 1 - определить тренд (ну это понятно как) и 2 - оценить погрешность для этого тренда в будущем (вот тут то и есть моя проблема).

То есть нужно не точное значение точки Yi(факт)=Yi(прогноз), а такой парамент Di, чтобы можно было утверждать, что значение Yi(факт) обязательно попадет в интервал [Yi(прогноз) - Di, Yi(прогноз) + Di]

 
Prival:

https://www.mql4.com/go?http://www.economy-web.org/?p=289

может это поможет


Спасибо за ссылку.

Это как раз то, что предлагают математики. И что совершенно не устраивает меня из-за пунктов 1 и 2 в моем первом посте.

Просто математическая теория оказывается, в данном конкретном случае, существенно далека от практики.

 
Nimnul: Нужно 1 - определить тренд (ну это понятно как)

Как?
 
Nimnul:

Просто математическая теория оказывается, в данном конкретном случае, существенно далека от практики.

Да не очень. Ваша задача основана на предположении о стационарности временного ряда (пусть даже и с изменяющимся наклоном тренда.).

Здесь ряды нестационарные. Так что всё соответствует.

 
MetaDriver:

Да не очень. Ваша задача основана на предположении о стационарности временного ряда (пусть даже и с изменяющимся наклоном тренда.).

Здесь ряды нестационарные. Так что всё соответствует.

есть и другие модели...

снос и есть тренд. x(t)=v*t+...

 
Nimnul:

Здравствуйте!

Я не специалист в тех.анализе, да и вообще в таких "страшных" словах как трейдинг, форекс, и т.п.
Просто как раз сейчас я занимаюсь одной похожей математической проблемой. Зашел в тупик и уверен, что никто лучше профессионалов тех.анализа не ответит на мой вопрос.

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

ВОПРОС: как оценить погрешность этой экстраполяции.

Первое что приходит на ум математику, это посчитать среднеквадратичное отклонение на известной выборке и считать его отклонением для экстраполяции. НО:

1. Очевидно, что чем данные выборки "старее", тем меньше их влияние на "свежие" данные. Иными словами, если в начале года расхождение было сильным, а под конец стало более-менее совпадать, то не правильно считать именно среднеквадратичное отклонение. Очевидно, нужно задаться отклонением на некотором интервале перед концом выборки. Как оперделить и обосновать на каком?

2. Очевидно, что величина отклонения для экстраполяции должна быть тем больше чем больше период экстраполяции. То есть если, например, можно взять среднеквадратичное отклонение в качестве отклонения для 1-го прогнозного значения, то, очевидно, что для 2-го погрешность должны быть уже больше. Следовательно, нужно задаться неким темпом роста этой погрешности. Как определить и обосновать этот темп?

Большое спасибо!
С уважением,
Никита

Хоть я и не особо математик... )

Если говорить в целом - для решения поставленных задач вам необходимо записать уравнение Фоккера-Планка и вычислять уже по нему эволюцию дисперсии экстраполяции. Проблемы здесь в том, что вы не знаете характеристик процесса, а значит параметры УФП можете только оценить. Плюс к этому скорее всего, если вы работаете с валютными курсами, процесс в рассмотрении немарковский, и стохастическим ДУ Ито скорее всего не описывается, а значит и обычное ФПК будет неточным описанием, для точного потребцется уравнение в дробных производных. Придется идентифицировать параметр суб/супердиффузии, где-то в сети была статья с примером, как это делается (по-моему автор Лукащук). Однако и это, скорее всего, не поможет. Процесс на самом деле не только немарковский, но и еще негауссовский и не шибко стационарный. Так что все построенные указанным образом оценки будут конкретно плыть, и практической пользы в них не будет (следовательно весь мой предыдущий бред можно было и не читать:).

Короче, правильно вам сказали - вопросы ваши настолько фундаментальны, что их прояснение сделало бы вас весьма богатым человеком (даже против вашей воли, если, конечно, ваша фамилия не Перельман:)), но чтобы их решить одного лишь знания математики недостаточно. Скорее всего, тут необходимо еще и прозрение)). По крайней мере, того, кто это реально сделает, я бы без сомнения назвал гением.

 
Nimnul:

Здравствуйте!

Я не специалист в тех.анализе, да и вообще в таких "страшных" словах как трейдинг, форекс, и т.п.
Просто как раз сейчас я занимаюсь одной похожей математической проблемой. Зашел в тупик и уверен, что никто лучше профессионалов тех.анализа не ответит на мой вопрос.

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

ВОПРОС: как оценить погрешность этой экстраполяции.

Первое что приходит на ум математику, это посчитать среднеквадратичное отклонение на известной выборке и считать его отклонением для экстраполяции. НО:

1. Очевидно, что чем данные выборки "старее", тем меньше их влияние на "свежие" данные. Иными словами, если в начале года расхождение было сильным, а под конец стало более-менее совпадать, то не правильно считать именно среднеквадратичное отклонение. Очевидно, нужно задаться отклонением на некотором интервале перед концом выборки. Как оперделить и обосновать на каком?

2. Очевидно, что величина отклонения для экстраполяции должна быть тем больше чем больше период экстраполяции. То есть если, например, можно взять среднеквадратичное отклонение в качестве отклонения для 1-го прогнозного значения, то, очевидно, что для 2-го погрешность должны быть уже больше. Следовательно, нужно задаться неким темпом роста этой погрешности. Как определить и обосновать этот темп?

Большое спасибо!
С уважением,
Никита


Попробуйте обратиться к Юсуфу в его ветви "Индикатор..." - он точно знает КАК! При этом ознакомьтесь с его статьей. Во всяком случае, он, ИМХО, как настоящий доцент от математики, точно знает каким из вариантов рассчитать наиболее ПРАВИЛЬНО параметр Di, что, как я полагаю Вам и нужно: "То есть нужно не точное значение точки Yi(факт)=Yi(прогноз), а такой парамент Di, чтобы можно было утверждать, что значение Yi(факт) обязательно попадет в интервал [Yi(прогноз) - Di, Yi(прогноз) + Di]"
 
Nimnul: [...] перед концом выборки. Как оперделить и обосновать на каком?

Извините, не удержался. Поехидничать захотелось.

По делу:

1. Очевидно, что чем данные выборки "старее", тем меньше их влияние на "свежие" данные.

Неочевидно. Если Вы так считаете, то это тоже нужно доказывать той же статистикой.

Вы можете определить более-менее внятно, что такое "влияние" и как определяется, насколько "стары" данные? А почему бывает так, что какой-нибудь экстремум, достигнутый в далеком прошлом, все еще влияет на текущую ситуацию?

не правильно считать именно среднеквадратичное отклонение.

С.к.о. разумно считать только на нормальных данных. Покажите их мне. Если Вы говорите об отклонениях котировок от "тренда", то на гауссовы они не похожи.

Причина обращения: