суббота, 16 июня 2007 г.

Вид обратного относительного сглаживания


синим - ряд исходных данных
красным - обратное сглаживание
зеленым - обратное относительное сглаживание

Вид прямого относительного сглаживания




синим - ряд исходных данных
красным - прямое сглаживание
зеленым - прямое относительное сглаживание

Вид обратного сглаживания



Красным представлен результат сглаживания.

Вид прямого сглаживания



Сглаживание на графиках представлено красным, исходный ряд синим.

четверг, 14 июня 2007 г.

Метод поиска оптимальной модели

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

У элементарной модели прогнозирования на одном шаге имеются подбираемые параметры верхнего и нижнего уровня. Параметры нижнего уровня расчитываются на каждом шаге при движении вдоль ряда. Параметры верхнего уровня должны подбираться на этапе оптимизации модели описываемом в данной статье.

Весь ряд данных разбивается на три выборки: разгонную, отборочную и тестовую.
Выборки располагаются именно в указанной последовательности. Размеры этих выборок - предмет дальнейшего обсуждения.

Модель отрабатывает на всем ряде.
Разгонная выборка для нас не важна.
На отборочной выборке будем будем оценивать модель.
На тестовой выборке просто будем смотреть как хорошо модель работает.

Поиск лучшей модели будем осуществлять генетическим алгоритмом.

В результате можно получить хорошую модель.

Метод пошагового моделирования биржевой игры

Если предположить, что изменение параметров модели минимально на некотором диаппазоне ряда, то можно смоделировать биржевую игру на длительном ряде пошагово расчитывая модель, производя прогноз по модели и переходя к новому шагу.
Детально процедура выглядит следующим образом:
1. Переходим к новому элементу ряда;
2. Берем обучающую выборку из ряда отложенную от текущего элемента назад некоторое количество элементов (на глубину обучающей выборки);
3. На этой обучающей выборке расчитываем модель;
4. По расчитанной модели строим прогноз для текущего дня;
5. Переходим к началу цикла.
В результате получаем прогнозы для всего ряда.

Массивная модель рынка

Представим жизнь инструмента в виде двух грузов разных масс сцепленных пружиной и находящихся в вязкой среде. Тогда,


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



среда, 13 июня 2007 г.

О сглаженных входах и выходах к прогнозной модели

Входы:
Прямое относительное сглаживание.

Выход:
Обратное относительное сглаживание.

Прямое сглаживание:
C(t) - ряд данных
S(t) - прямое сглаживание
S(1) = C(1)
S(t) = alpha * C(t) + ( 1 - alpha ) * S(t-1)
alpha - коэффициент сглаживания (0...1).

Чем больше alpha, тем сглаживание больше похоже на ряд данных. Чем меньше alpha, тем сглаживание больше тяготеет к старым данным ряда.

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

Прямое относительное сглаживание:
dS(t) - прямое относительное сглаживание.

dS(t) = ( C(t) - S(t) ) / S(t)

Обратное сглаживание:
O(t) - обратное сглаживание

O(end) = C(end)
O(t) = alpha * C(t) + ( 1 - alpha ) * O(t+1)

alpha - коэффициент сглаживания (0...1).

Чем больше alpha, тем сглаживание больше похоже на текишие данные ряда. Чем меньше alpha, тем сглаживание больше похоже на будущие значения ряда.

Расчет необходимо производить от конца к началу ряда.

Обратное относительное сглаживание:
dO(t) - обратное относительное сглаживание.

dO(t) = ( O(t) - C(t) ) / C(t)

понедельник, 11 июня 2007 г.

Бинарный поиск зависимостей

Проблема:

Есть большое количество входов и один выход. Необходимо найти наиболее значимые входы для добавления в модель.

На сегодняшний день одним из самых мощных методов для оценки значимости входов являетсы метод boxcounting.

Предложение 1:

Если представлять все входы и выходы в виде рядов со значениями +1 и -1, то скалярные произведения между отдельными рядами дадут по числа по модулю соответсвующие корреляции рядов. Чем больше абсолютное значение этой оценки, тем больше связанность рядов. Если оценка положительна, то ряды работают в одном направлении. Если число отрицательно, то ряды работают в противоположных направлениях. Можно отбирать такие входные ряды, где модуль оценки максимален. Таким образом можно подобрать хорошие входы. Процедуру можно реализовать простым векторным умножением матрицы входов на вектор выхода с взятием абсолютных значений. В полученой строке оценок отбираем максимальные.

Предложение 2:

Предложеным методом можно находить наиболее связанные между собой входы. Матричным перемножением двух матриц входов вычисляем модернизированную матрицу корреляций входов. Эту матрицу можно использовать для сжатия пространства входов.