Финансовая лаборатория

Биржевая торговля и торговые роботы


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

Итак, человека, которого Вы видите немного левее (и(или) выше), зовут… Константин Никольский. Эта фотография вырезана мной с обложки его второго сольного альбома «Один взгляд назад». Альбом назван по одной из песен, входящих в него. «Один взгляд назад» - одна из наиболее известных песен Никольского, записанных им после его ухода из Воскресенья (поклонники его таланта, прошу Вас, если Вы не согласны - не спорьте громко, я всего лишь говорю то, что знаю о нем, и, конечно же, могу ошибаться). Сама песня получила название из последних строк:

«…Может быть, один взгляд назад

Мне откроет в будущее глаза…»

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

Суть проблемы: есть набор изменений цены какого-либо инструмента (например, как на рисунке ниже – фьючерса на индекс РТС) за какой-либо период времени. Как по этим данным можно предсказать стоимость цены этого инструмента в недалеком будущем?

Ежу понятно, что на картинке картина грустная – все падает, и если тенденция сохранится, то цена дойдет до отметки 142070, а может, и пробьет ее и пойдет дальше вниз (забегая вперед, скажу, что так и случилось). Но как объяснить это программе, которая может все делать за Вас? Есть предложения?

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

Любую непериодическую функцию на некотором интервале можно представить в виде прямой линии с определенной степенью  точности.

Это называется аппроксимацией. На степени точности я остановлюсь позднее, а пока рассмотрим те результаты, которые дает нам линейная аппроксимация (из всех видов мной была выбрана классическая аппроксимация о методу наименьших квадратов). Физический смысл линейной аппроксимации состоит в том, чтобы получить уравнение прямой, которая максимально близко проходит к точкам реальной фигуры.

В результате:

Имея уравнение такой прямой можно сделать предположение о том, куда и с какой вероятностью пойдет цена в следующий момент времени, и использовать это в своей механической торговой системе.

Это не очередной Грааль, а всего лишь попытка привнести порядок в ценовой хаос. Точность подобных ухищрений напрямую зависит от интервала наблюдения, количества точек внутри интервала, и что более важно, от «временной жадности» или от удаления будущего, в которое мы хотим заглянуть от настоящего времени. Мерой точности строящегося прогноза я бы выбрал коэффициент корреляции между реальной кривой и нашей «линией жизни». Чем лучше цена следует за нашим указателем, тем этот коэффициент больше, и наоборот, если цена поворачивается к нам спиной, то корреляция будет осыпаться в 0. На представленном рисунке коэффициент корреляции равен 0.846665904.

Все описанные вычисления я производил в MS Excel,  по желанию могу прикрепить к статье. К тому же, в скором времени я смогу выложить код стратегии для FinLab.MTS.

У меня только один к Вам вопрос: что Вы сделаете, узнав будущее? Слабо продавать, если прямая устремлена вверх?

Рубрики: Идеи

Комментариев: 11

  1. Kostin Andrey пишет:

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

    Эконометрия может показать тенедцию того периода который вы рассматриваете, но, в связи с исменчивостью этих тенденций, прогноз не оправдывает себя.

    • Kostin Andrey пишет:

      Перечитал свой текст, прошу прощение за плохую орфографию.

      “что Вы сделаете, узнав будущее?” Это одновременно сложный и простой вопрос. Все бы сказали, что закупились или продали акций в направлении этого будущего. Это логично. Но, зная себя, я бы просто не поверил:) Возможно вложил бы в это немного денег, но чисто ради интереса.

      • gorky пишет:

        Андрей, у меня нет причин спорить с Вами, ибо я, во-первых, не стремлюсь оказаться истиной в первой инстанции, а во-вторых, абсолютно точно знаю, что любая тенденция на рынке склонна к изменению. Поэтому я и спросил (возможно, именно Вас) в конце, не слабо ли продавать, когда наблюдается тенденция к росту. Что если отслеживать те моменты, когда разница между ценой и прогнозом выходит за рамки обычного “белого шума” в сторону прорыва тенденции?
        Кроме того, выкладывать расчет показателя Херста и описание моделей Полиа лично я считаю необдуманно преждевременным.
        Андрей, Ваше мнение лично мне очень интересно! Прошу Вас, давайте продолжим нашу беседу.

  2. Kostin Andrey пишет:

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

    • gorky пишет:

      Как бы аппроксимация плохо не предсказывала, скользящие средние предсказывают еще хуже)))
      И, кстати, речь идет о таймфреймах, сравнимых с единицами минут. На графиках вообще показаны наблюдения за 20 секунд. График реальный, но не совсем тиковый. Применен очень простой и незамысловатый фильтр “белого шума” для тикового графика.

      • Kostin Andrey пишет:

        Про скользящие средние это точно:)

        На основании графика за 20 секунд я бы точно не входил в позицию:))
        Хоть аппроксимация сдвигает мат. ожидание, но комиссия брокера его тоже сдвигает, и чем меньше тайм фрейм, тем сильнее.
        Поэтому я привык работать на более больших временных участках.

        А фильтр у тебя хороший:)

  3. Kostin Andrey пишет:

    Хотел спросить, вы то сами верите в возмозности эконометрического прогноза на фондовом рынке? На каком тайм фрейме?
    Просто может я не там пробовал:)

    Может быть такие методы работают при высокочастотной торговле…
    Тут много всего интересного:)

  4. gorky пишет:

    Информации, которая влияет на движение рынка слишком много, да и 80% ее (если не больше) нам не известна, поэтому говорить о достоверном эконометрическом прогнозе на интервал больше 10 секунд я бы не решился и другим бы не советовал. Да и слово “достоверный прогноз” едва ли применим к рынку. Все, с чем мы работаем – это вероятность. Кто-то считает вероятность выиграть, а кто-то вероятность слить. что Вам подсказывает интуиция, кто из них дольше продержится на рынке?…
    А дальше – все по законам логики. Чем меньше прогнозируемый интервал, тем ближе к нему нужно искать тенденцию. Точные пропорции едва ли кому-то известны, а если и известны, то, наверняка, хранятся в строгой тайне…
    Кроме того, распределение приращений цен – не есть Гауссово распределение. Дерганый график цены РТСа позволяет предположить (подчеркиваю: предположить), что показатель Херста для него меньше 0,5, а значит, и вероятностные оценки прибыли/убытка должны считаться по другим формулам….

  5. Михаил пишет:

    “Гауссово распределение” “показатель Херста”-ребята расслабтись!Все намного проще.70% успеха-психология остальное интуиция и чуть- чуть понимание теханализа.

    • gorky пишет:

      Видимо, не совсем верно понято, о чем идет речь.
      А речь идет об автоматизированном трейдинге. Может ли человек в реальном времени аппроксимировать быстро изменяющиеся ряды данных? С большой долей вероятности – нет. А значит, для этого нужны программы. А раз программы и так нужны – почему бы не заставить их ставить заявки? Вот и получается, что вся психология робо-трейдинга – это умение не нажимать кнопку “стоп” до конца торговой сессии, интуиция…хм…я, конечно, понимаю, что современные процессоры содержат блок под названием “предсказатель ветвлений”, но эта штука далека от привычного понятия интуиции, и, наконец, теханализ – без комментариев…

  6. MENYA пишет:

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

Оставить комментарий