Блог им. OiLTrader

Вопрос к Гусеву Владимиру а также ко всем алготрейдерам.

В продолжении утренней серии топиков по сложности алготрейдинга, хочу всем задать вопрос — КАК ОПРЕДЕЛИТЬ ФЛЭТ ПРОГРАМНО?

Это насущьный и актуальный вопрос не имеющий однозначного ответа. Выскажите свои мнения пожалуйста.

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

Итак как бы Вы определили флэт? На основании каких вводных Вы сможете предположить что в данный момент времени цена торгуется во флэте?

Выведите на главную пожалуйста, думаю что будет интересно и полезно для многих трейдеров. 
    ★4
    62 комментария
    В свечном анализе есть модели типа башня, вершина которой и представляет собой флэт.
    А сама модель это яркий пример трех тенденций — вверх, флэт, вниз.
    есть модели которые говорят подсказывают о переходе ко флэту.
    Гусев Владимир, Да это понятно. Как это прописать програмно, чтобы машина поняла. Есть у Вас идеи? Свечной анализ мы все знаем.
    avatar
    OilтрейдиOil, свечной анализ вы не знаете, не делайте поспешных выводов. И не знаете вы именно те модели про которые я говорю.
    Гусев Владимир, Пусть даже не знаю. Суть то не в этом.
    avatar
    Путем нормирования числового ряда.
    avatar
    Евгений, Да для этого есть метод Херста, мы его уже используем.
    avatar
    «мы все понимаем что на рынке присутствуют только два состояния флэт и тренд.»

    *все кроме меня
    avatar
    CVS, А какие еще есть состояния на рынке?
    avatar
    OilтрейдиOil, рэндж
    avatar
    Yaroslav Shutov, Рэндж это и есть тот самый флэт и пила так называемая это тоже флэт и треугольники различные это тоже флэт
    avatar
    OilтрейдиOil, не соглашусь. Флэт — узкий диапозон движения цены. Рэндж — значительно более широкий. Например, флэт — 20 пунктов, рэндж — 100.
    В программировании не шарю, но, думаю, разница в их программном определение есть. Да и действия системы при этих двух состояниях должны разница. имхо
    avatar
    Yaroslav Shutov, один микро другой макро вот и вся разница но в обеих случаях это флЭт та самая пила которая и пилит большинство депозитов.
    avatar
    OilтрейдиOil, странно. Я думал депозиты наоборот растут при рэндже))))
    avatar
    Yaroslav Shutov, если Ваш стоп составляет большую часть Вашего депозита или стопа нет вообще то у Вас конечно есть огромный шанс увеличить свой депо во много раз. Но в этом случае Вы занимаетесь не трейдингом, а просто играете в казино.
    avatar
    OilтрейдиOil, хм) вы ошибаетесь. Рэндж с точными уровнями — просто идеальное состояние рынка для заработка.
    avatar
    Yaroslav Shutov, Мы с Вами говорим на разных языках. Вы игрок я трейдер.
    avatar
    сначала надо определить масштаб и требуемый диапазон определения, где мы определяем флэт, а потом уже определять, проще всего брать только закрытие, и скользящим окном требуемого диапазона проверять параметры.
    avatar
    AlexeyT, Ну это же ясно что мы рассматриваем один график (один таймфрейм) не принципиально какой. Везде будет одинаковые составляющие любого графика — флет и тренд. будет он микро или макро будет контр или тенденция. будет он расширяющийся(флэт) или сужающийся будет он с ложным пробоем или истиным. но всегда это только два состояния рынка на любом инструменте и любом таймфейме.
    avatar
    OilтрейдиOil, тогда определяем диапазон скользящего окна (каждый для себя) и на истории калибруем (считаем дисперсию или ст.отклон), опять же каждый для себя калибрует по своим понятиям тренда и флета.
    avatar
    AlexeyT, Хорошо. Но засада в том что флэт бывает микро, макро расширяющийся и тд. На истории мы его хорошо видим. А вот по каким текущим параметрам мы его можем описать?
    avatar
    OilтрейдиOil, я и говорю, берете историю, берете скользяющее окно, считаете все дисперсии, наносите их на графики и решаете для себя,
    ага дисперсия такая то (меньше чем M, но больше еще чего то) флет, не такая (больше M) не флет, мало этого? добавляете еще степень свободы — отношение цен (доходности, конец окна к началу например), получаются еще комбинации. Мало этого? добавляете еще степень свободы — например коэфф. вариации, получаются еще комбинации. Простор для творчества большой, и в целом, логично и работоспособно.
    И у Вас получается некая 3-х мерный массив комбинаций, каждому значению присваиваете тезис «флет, не флет, расширяющийся, безоткатный рост, еще что-то».
    И вот получается простая модель на истории, ну а потом смотрите ее на текущие значения комбинаций, можно даже это автоматизировать и система будет выдать один из тезисов.
    Просто, но работоспособно.
    P.S. А можно пойти от противного, придумать тезисы, и начать например с 1 парамтера, найти их все на истории (очень много), и сопоставляя параметры, перепроверяя их!, найти диапазоны изменений параметра. Не хватает одного, добавляем еще 1. Смотрим, делаем. Не хватает 2, берем третий и так далее. Но слишком усложнять нет смысла. На мой взгляд 3 вышеперечисленных достаточно, они логичны и имеют смысл. Даже если каждому из них задать 3 диапазона, это уже 27 комбинаций, более чем! Можно добавить и объем например, но это на любителя…
    avatar
    AlexeyT, Спасибо за Ваш пост. Все верно именно это я и написал в вопросе этого топика посмотрите — «программно заложить алгоритм флэта не так то просто, приходится строить нейронно обучаемые цепочки, состоящие из логико — математических следований. Для построения этих цепочек требуются начальные вводные от количества и качества которых зависит точность работы основного алгоритма.»

    Мне интересны другие точки зрения. Отличные от этой.
    avatar
    OilтрейдиOil, у Вас обучаемая система, а я предложил один раз посидеть за кучей графиков и исходных данных, и определить минимальное кол-во параметров и диапазон их измерения. И впоследствии жестко их задать для определения текущего состояния.
    Что касается других точек зрения, ну не знаю… если надо определять программно, то все равно придется опираться на какие-то статистические зависимости, не на эти, так на другие. Как иначе то?
    Аааа, ну еще можно анализ изображений делать;)), определять график, разбивать его на участки, определять тангенс угла наклона в каждом и делать выводы;))
    avatar
    Dmitriy, волатильность это одна из вводных для определения текущих шаблонов шаблонов. на основании которых с помощью фракталов и зиг зага мы можем начинать строить алгоритм)) это уже ближе к теме топика.
    avatar
    Образование ряда свечных моделей связано с быстрыми движениями на рынке, сопровождающимися высокими объемами. затем рынок переход к отдыху и флэту. ЭТо один из ориентиров.

    Image Hosted by PiXS.ru
    Гусев Владимир, Да это даже ежику в тумане понятно. когда идет выход из флэта идет объем. Суть топика не в том.
    avatar
    OilтрейдиOil, вы высказываете безапеляционные суждения, порой неправильны.
    Здесь высокий объем происходит при шортовых выносах, что лишь порождает дальнейшее стремительное движение.
    Гусев Владимир, чем же не правильные)) вынос на стопах шортистов при выходе из флэта. Именно на стопах и идет повышеный объем. Но еще раз, речь не о том. Речь не о моменте выхода из флэта а о том по каким признакам мы можем определить вероятность того что цена сейчас торгуется во флэте и заложить это в код
    .
    avatar
    OilтрейдиOil, я вам назвал признаки, похоже это вас не интересует.
    Гусев Владимир, Ну почему не интересует. Вы назвали два признака — объем и скорость.
    Рассмотрим то что касается объема. Как мы можем идентифицировать размер нашего шаблонного объема который мы примем за единицу измерения, для понимания того что он вырос по отношению к предыдущему объему? В разный период времени в течении дня торговая активность различна и тот объем который мы заложили в шаблон после выхода из флэта утром, будет отличатся от объема в американскую торговую сессию. Путь идентификации по объему ложный или не полный. Нужны еще вводные.
    Скорость наполнения объемом к примеру тиковых свечей привязываем к единице времени. Получаем тоже самое — свеча в зависимости от активности рыночной фазы может наполнятся по временному фактору одинаково как во флэте так и в тренде.
    Если мы рассмотрим временные графики то здесь мы время свечи должны привязать к волатильности свечи и опять у нас будут огромные отклонения от шаблонов в зависимости от многоих составляющих.
    Вобщем Владимир, на этих признаках мы не построим програмку!
    avatar
    OilтрейдиOil,

    Вы избрали не путь сотрудничества и взаимопонимания, а отрицания и противопоставления.

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

    Вот Олег Шагов спокойно переводил особенности свечных моделей в алгоритм. Я не учил его как делать алгоритм, он н учил особенностям свечных моделей. Мы просто обсуждали, в итоге получался результат.
    OilтрейдиOil, Вы не к тому человеку обратились. Гусев Владимир высказывает очень много безапеляционных суждений, порой неправильных, но с умным видом и с большими недоказанностями, которые должны говорить о «глубине ума». Но чаще всего Гусев Владимир сам не понимает о чём говорит, отсюда и недосказанности и пафос. Очень много глупостей пишет этот ваш Гусев Владимир. С умным видом. А Вы ведётесь. Он не торгует, он книгу свою пытается раскрутить, неужто не ясно?
    Мирошниченко Михаил, господин неуважаемый. На юридическом языке это называется клевета, или распространение недостоверных сведений. Я вам рекомендую изучить статью 128 УК России.
    Гусев Владимир, в последнем Вашем топике, в котором Вам были заданы конкретные вопросы, вы на них не ответили и просто удалили сам вопрос (комментарий), как и автора вопроса поместили в чёрный список. Вопрос был слишком неудобный?

    Вот этот топик: smart-lab.ru/blog/173926.php
    И вопрос Вам задали вполне корректный: Каковы причины выброса цены в вашем же примере с точки зрения манипуляций на рынке. Вы не ответили. Ответа у Вас нет и не будет. Одни голые слова.

    Так что статья о распространении недостоверных сведений к Вам применима в полной степени. Не пишите бред.
    Мирошниченко Михаил, Михаил давайте лучше по теме топика. А то уже на смарте и почитать вообще нечего кроме взаимных претензий и политики.
    avatar
    OilтрейдиOil, Разную фигню выводят на главную страницу. А то что касается реального трейдинга никому здесь не интересно))
    avatar
    OilтрейдиOil, по теме топика: не слушайте персонажа «Гусев Владимир», к которому Вы обратились за консультацией. Он Вам здесь что-то показал кроме расплывчатых фраз? Нет. И не покажет…
    Мирошниченко Михаил, Да я и не слушаю. Хочется получить диалог и не более того. А уж что из этого диалога будет полезно то каждый себе и заберет.
    avatar
    OilтрейдиOil, а диалог получается?))) По-моему, Вы тут больше говорите по теме, чем тот персонаж, к которому Вы обратились.
    OilтрейдиOil, это ваш топик. Вы можете спокойно удалить, клевету в мой адрес. Модератор сайта и владелец уже поставлены в известность по поводу распространения клеветнических сведений в мой адрес.
    Гусев Владимир, Пусть сам модератор и удаляет. Мне этим не интересно заниматься. Лучше напишите еще идеи по теме топика. Как описать флэт программно. Какие у Вас есть мысли по этому поводу?
    avatar
    OilтрейдиOil, года три назад у одного моего товарища из Канады была идея — найти чёткий алгоритм выявления тенденций типа флет-тренд. Он собрал команду, очень неплохую команду, в которой кроме практиков-трейдеров был ещё и доктор математических наук. Так вот, они до сих пор так и не создали разумную систему выявления этих тенденций. И это при том, что исследована была куча инструментов и практически все таймфреймы. Брались во внимание и свечные формации и все интересные для проверки паттерны — воз и ныне там. Нет чёткого алгоритма выявления. Они даже не достигли в выявлении по-моему 60%-й вероятности.
    OilтрейдиOil, я сожалею, я огорчен и не имею особой охоты продолжать обсуждение. В другой раз, когда обстановка будет более спокойной.
    Гусев Владимир, ох, батюшки, расстроился он до потери речи)) На вопрос ответите, наконец, всезнайка? Я бы никогда не влез в это обсуждение, если бы Вы сами относились к собеседнику с почтением. А Вы хамите постоянно. Вот пример из комментариев к этому топику: «вы высказываете безапеляционные суждения, порой неправильны.»

    Сами-то грешите безапелляционными суждениями, причём зачастую именно безграмотными. И боитесь в этом признаться. На вопрос ответьте.

    Вот топик: smart-lab.ru/blog/173926.php
    Вот вопрос: Каковы причины выброса цены в вашем же примере с точки зрения манипуляций на рынке. Вы не ответили.

    Не ответите — не лезьте в каждую дырку с дурацкими советами. Ответите — извинюсь.
    Гусев Владимир, а клевета присутствует, чтобы её удалять? Или всё, что Вам не нравится в свой адрес, Вы называете «клеветой», даже если это правда и она Вам неудобна? Вы ответьте на вопрос, который Вам задали, и я больше не буду Вам ничего писать и даже извинюсь.
    Гусев Владимир, Объем и идет по той причине что идет разгрузка стопов накопленых во флете.
    avatar
    Для всех кто использует или собирается стоить алгоритмы на базе свечных моделей.
    На сегодняшний момент в России Олег Шагов имеет наибольший опыт построения алгоритмов на базе свечей.
    Гусев Владимир, Кто это Олег Шагов и как его найти? Былобы очень занятно пообщаться с ним.
    avatar
    OilтрейдиOil, аналитик Промсвязьбанка. Просто наберите в поисковике. Во всех его комментариях есть его электронный адрес.
    Гусев Владимир, Спасибо сейчас посмотрю
    avatar
    quant_trader, Отличное предложение! Но вопрос в том что мы это все видим на истории. Мне интересны параметры по которым можно былобы судить что возможно сейчас цена начала торговатся во флэте. Тоесть к примеру если цена пересекла одну и туже точку 3 раза за выборку n то мы можем предположить что начался флэт. Теперь нам необходимо определить параметры на основе которых мы будем идентифицировать нашу выборку n.
    Как идея неплохо, есть над чем подумать!
    avatar
    OilтрейдиOil, так в том то все дело, что любой программный метод метод определения флэта определит его постфактум, когда деньги уже потеряны. Мало того, когда флэт алгоритмом будет идентифицирован, уже может начаться тренд.
    Опять же продолжительность флэта никак не определишь заранее, выход из него будет виден постфактум.
    Так что усилия в этом направлении смысла особого не имеют. Лучше попытаться сделать алгоритм, который будет не очень много терять на флэте, пусть в ущерб частичной потери доходности на тренде.
    Видел такую штуку: codebase.mql4.com/ru/4483
    Но тоже не панацея.
    avatar
    Vkt, а какже знаменитый TradeBOT который за последние 4 года не имел ни одного убыточного дня? Правда там по слухам более 80 000 строчек програмного кода)) но тем не менее, возмодно все!
    avatar
    OilтрейдиOil, что за зверь? Не знаю такого. Он точно тренд от флэта умеет отличать?
    avatar
    Vkt, Думаю что нет)) еслиб умел то вообще бы не было убыточных сделок. А у него только дни в плюс закрываются.
    avatar
    Время обеда)) Пойду я пообедаю.
    Ну а для алготрейдеров есть подсказка. Вот Вам небольшой кодик на описание флэта с помощью зигзагов, найдите в нем ошибки))
    Хочу сказать что код не мой) Свой я бы не выложил здесь)

    while (Pos >= PosEnd)
    {
            PriceHigh = HighBid[Pos] / Point + 0.1;
            PriceLow = LowAsk[Pos] / Point + 0.1;  

            if (FlagUP)
            {
                    if (PriceHigh > Max)
                    {
                            Max = PriceHigh;
                            ZZTime = Time[Pos];
                    }
                    else if (Max — PriceLow >= MinSize)
                    {
                            ZigZag[Count].Size = Max — Min;
                            ZigZag[Count].Time = ZZTime;

                            Count++;        
                            FlagUP = FALSE;

                            Min = PriceLow;
                            ZZTime = Time[Pos];
                    }
            }
            else
            {
                    if (PriceLow < Min)
                    {
                            Min = PriceLow;
                            ZZTime = Time[Pos];
                    }
                    else if (PriceHigh — Min >= MinSize)
                    {
                            ZigZag[Count].Size = Max — Min;
                            ZigZag[Count].Time = ZZTime;

                            Count++;
                       
                              FlagUP = TRUE;

                              Max = PriceHigh;
                              ZZTime = Time[Pos];
                    }
            }
            Pos--;
    }
    avatar
    общий подход такой. «плясать» от истории.Задать на большом временном промежутке важные «переменные» и пошаманить над ними. как-то так))
    avatar
    Определить флэт постфактум (когда он уже наступил) — это элементарно!
    И если кому-то нужен код — отпишу за деньгу.
    Но, не обольщайтесь, это не сделает вашего робота прибыльнее.
    Так как идентифицированный флэт может в любую минуту прекратиться и превратиться в тренд или во флэт со сдвигом.

    Результат может принести прогноз наступающего флэта. Для этого нужен сложный волновой анализ (предпочтительно) или паттерн-рекогнайзер (не очень надежный метод).
    avatar

    теги блога DIVER PROFIT

    ....все тэги



    UPDONW
    Новый дизайн