Форум » Инструменты трейдера » Тиковые объемы. Кластерный анализ » Ответить

Тиковые объемы. Кластерный анализ

Scriptong: О том, что являет собой кластерный анализ. На сегодняшний день инструментарий кластерного анализа состоит из инструментов: Вертикальное сечение рынка Горизонтальное сечение рынка Диагональное сечение рынка Плотность тиков

Ответов - 48, стр: 1 2 3 4 All

Evgeny: Перенес из другой темы: Прежде чем перейти к уровням, вернемся к статичным и динамичным крупным игрокам. 1. Построение уровней. Уровни появляются из-за срабатывания лимитных заявок выставляемых в плотном ценовом диапазоне. Необходимо учитывать фактор времени. Уровень может завершить формирование за 4-5 часов, потому что ликвидность невысокая, а может и за 1 час - потому что ликвидность высокая и позволила скупить быстро. 2. Пробитие уровней. Чтобы получить прибыль, нужно запустить фазу распределения объемов, а для этого требуется сломать чье-то сопротивление/поддержку. Это событие заметно по направленному импульсному движению цены. Цена как будто срывается с цепи. Думаю все такое наблюдали. Пример есть на скрине USDJPY. Что предлагаю по п.1. Предлагаю ввести и анализировать такой параметр как концентрация объема на условную единицу времени. У нас теперь есть матрица объемов, создается индикатором ClusterBox. По горизонтали сетка ценовых уровней с шагом 10 п. (получаем 4-х знак как на биржах), по вертикали - время. Условная единица времени - это 1 бар (5 минут, 15 минут, 60 минут и т.д.). Зачем это всё нужно? \ Я предлагаю по концентрации объема на 1 бар находить и строить верхние и нижние границы зон стоимости, которые соответственно нужно искать выше и ниже профиля. Логика здесь такая. Если профиль - это ценовой уровень где валюта находится наибольшее время и по этой цене совершается наибольшее количество сделок, то границы зоны стоимости - это те ценовые уровни за которые крупный игрок, формирующий свою позицию в несколько тысяч контрактов, не выпускает блуждание цены из подконтрольной зоны. Как это можно понять и увидеть? Это видно когда цена, например, вследствие покупок толпы, начинает уползать выше зоны стоимости и вдруг упирается в крупный лимитник. Этот лимитник срабатывает в моменте, останавливает рост и возвращает цену в зону стоимости. Такое событие происходит быстро в сравнении с временем формирования зоны стоимости. Проявляется верхняя граница. С другой стороны, есть нижняя граница, которую цена пока не может преодолеть из-за наличия массы ордеров в рынке на покупку. Чтобы началось распределение их надо "высадить". Срабатывание защитных лимитников дает объем в моменте, а если сложить объемы на данном ценовом уровне и поделить на количество баров, из которых складывался данный уровень, то концентрация объема в расчете на 1 бар получится выше, чем у других цен во всей зоне стоимости. Вот пример расчетов на EURUSD М15 за 26.06. http://shot.qip.ru/00qbwT-6LHJwjoTb/ http://shot.qip.ru/00qbwT-6LHJwjoTc/ По п.2. Пробой и выход из зоны стоимости можно считать состоявшимся, когда мы увидели и зафиксировали появление импульсной свечи. Как это формализовать пока не думал. Можно к примеру импульсную свечу находить по длине её тела не менее 40-50 пунктов. Если свеча имеет тело 40--50 пунктов и закрытие ниже нижней границы зоны стоимости - получаем пробой и выход из зоны стоимости. А это ничто иное как начало фазы распределения объемов. Дальше остается только ждать формирования новой зоны стоимости, которая превысит по объему предыдущую в течение торговых суток, а также находить и регистрировать уровни с высокой концентрацией объемов на 1 бар. Это по пути движения цена будет натыкаться на препятствия в виде стопов и желающих поймать разворот.

Evgeny: Evgeny пишет: цитата: PS: Игорь! Огромная просьба по индиактору ClusterBox. Очень нужно, чтобы на график была выведена кнопка включения/выключения отображения кластеров. Это позволит в одном окне анализировать графические формации и уровни без загромождения цифрами. Вроде бы и нужный функционал... Не могу так сразу сказать. Давайте начнем с того, каким образом это должно выглядеть. Дизайн на ваше усмотрение.

Scriptong: Обновлена страница "Горизонтальное сечение рынка". Добавлен индикатор ClusterBox_DayHistogramm, отображающий раскладку профиля рынка по дням без возможности указания произвольного периода сбора информации. Описание особенностей работы индикатора приведено в конце материала (раздел "Фиксированный период отображения гистограммы").


Scriptong: Обновлена страница "Вертикальное сечение рынка". Расширен функционал индикатора ClusterBox. Описание нового функционала добавлено в конец материала, раздел "Интерактивное включение/выключение показаний индикатора".

Evgeny: Спасибо!

Scriptong: Обновлен индикатор ClusterBox_DayHistogramm. 1. Индикатор не пытается отображать данные на таймфреймах D1 и выше, о чем пишет в журнале при переключении на такие таймфреймы. 2. В несколько раз увеличена скорость инициализации индикатора. Ранее на таймфрейме Н1 при наличии тиковой истории и количестве баров для отображения 10000 (раскладка с точностью до пункта) загрузка индикатора могла занимать более двух минут. Сейчас это время сокращено до ~30 сек.

Genry: Scriptong пишет: Сейчас это время сокращено до ~30 сек.

Evgeny: Привет Игорь! Прошу в индикаторе ClusterBox_DayHistogramm сделать расчет концентрации объема на 1 бар, выводить эти цифры справа и в настройках добавить включение/выключение этой функции. Вот сегодня отработка сценариев развития по eurusd. http://shot.qip.ru/00r2w9-6fkHpT8qp/ Вход на продажу в 9.15 - в хвосте на м15 крупные объемы после теста на 1.3647 http://shot.qip.ru/00r2w9-6fkHpT8qt/

Scriptong: Evgeny пишет: Прошу в индикаторе ClusterBox_DayHistogramm сделать расчет концентрации объема на 1 бар, выводить эти цифры справа и в настройках добавить включение/выключение этой функции. Поясните, пожалуйста, как рассчитывается такая концентрация. Пока мне кажется, что это стандартный Volume.

Evgeny: Scriptong пишет: Поясните, пожалуйста, как рассчитывается такая концентрация. Пока мне кажется, что это стандартный Volume. http://shot.qip.ru/00qbwT-6LHJwjoTb/ Предлагаю ввести и анализировать такой параметр как концентрация объема на условную единицу времени. У нас теперь есть матрица объемов, создается индикатором ClusterBox. По горизонтали сетка ценовых уровней с шагом 10 п. (получаем 4-х знак как на биржах), по вертикали - время. Условная единица времени - это 1 бар (5 минут, 15 минут). Концентрация объема = сумма всех объемов на одном ценовом уровне с начала суток и до последнего закрытого бара (текущий бар пока не закрылся - в расчете не участвует) поделенная на количество. К примеру, на уровень 1.363 цена заходила с начала суток 3 раза. То есть у нас будет попадать 3 бара на этом уровне. Кластеры показывают, к примеру, объемы 30, 50 и 130 на 1.363. Тогда концентрация будет равна 30+50+130/3 = 70 Отработка евро сегодня http://shot.qip.ru/00r2w9-5fkHpT8s8/

Scriptong: Evgeny пишет: Концентрация объема = сумма всех объемов на одном ценовом уровне с начала суток и до последнего закрытого бара (текущий бар пока не закрылся - в расчете не участвует) поделенная на количество. К примеру, на уровень 1.363 цена заходила с начала суток 3 раза. То есть у нас будет попадать 3 бара на этом уровне. Кластеры показывают, к примеру, объемы 30, 50 и 130 на 1.363. Тогда концентрация будет равна 30+50+130/3 = 70 Вот теперь понятно. Таким образом: где n - количество баров, имеющих одинаковый кластер в течение дня, Vi - объем кластера соответствующего бара. Подумаем над этим.

Scriptong: В материале "Горизонтальное сечение рынка" добавлена еще одна версия индикатора - ClusterBox_NullDayHistogramm. Эта версия специально оптимизирована для отображения профиля рынка с единичной высотой кластера. Это позволило существенно увеличить скорость работы индикатора по сравнению с индикатором ClusterBox_DayHistogramm, который для таких вещей слишком универсален.

Scriptong: To Evgeny: так что насчет концентрации? Я правильно Вас понял - формула верна?

Evgeny: Scriptong пишет: To Evgeny: так что насчет концентрации? Я правильно Вас понял - формула верна? Да. Вот так. Идея следующая: если на ценовом уровне резко возрастет текущая концентрация объема и это произойдет выше максимального объема в профиле, значит нарвались на крупный лимитник в sell, если ниже то в buy. При этом, также нужно смотреть на реакцию - если выше/ниже этого уровня пошли хвосты, значит мы правы. Так можно попытаться определять границы зоны стоимости (наторговки) из которых не выпускают цену, пока не выкупят все встречные заявки и не сформируют дисбаланс в свою пользу.

Sergey: Возможно более наглядно будет смотреться дополнительная гистограмма, слева от цифр.

Scriptong: Sergey пишет: Возможно более наглядно будет смотреться дополнительная гистограмма, слева от цифр. Попробую отобразить и то, и другое с параметрами визуализации. Со временем наиболее удобный вариант покажет себя. Evgeny пишет: Да. Вот так. ОК.

Scriptong: Индикатор концентрации получил название - индикатор плотности тиков. Публикация уже доступна на сайте Avance Tools.

Genry: Scriptong пишет: Индикатор концентрации получил название - индикатор плотности тиков. Всем, откликнувшимся выше: "Пожалуйста". Ну и не забываем про автора идеи (Evgeny). Спасибо, Игорю - за реализацию, Евгению - за идею! Полезный инструмент

Sergey: Отлично! Интересный инструмент получился. Буду тестить...

Evgeny: Спасибо. Круто.

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

Scriptong: Sergey пишет: В связи с этим, неплохо было бы иметь нечто подобное на истории. Да, это в развитии. Не все сразу

Scriptong: Всем, откликнувшимся выше: "Пожалуйста". Ну и не забываем про автора идеи (Evgeny).

Evgeny: Сигналы входа в сделки, которые я показывал раньше вот на такой картинке, работают. http://shot.qip.ru/00rdkF-5T5tGtKZv/ Однако, далеко не всегда всё так видно четко и красиво, как на картинке. Надеюсь, отслеживание концентрации объемов на ценовых уровнях позволит более уверенно распознавать и подтверждать то, что в действительности имеет место. Вот сегодня ситуация на евродолларе м15. Это "площадка", только она не идеально ровная как на картинке. Эта площадка получилась немного "разманной" на 30 пипсов. По концентрации в текущем режиме виден всплеск, а над этим всем только хвосты от свеч. Что это такое? Трудно будет пытаться убедить себя и доказать кому-либо, что в выделенном круге пара покупалась. Да и стали бы вы покупать здесь над профилем? Под профилем, чтобы это было выгодно и для запуска фазы распределения это да, более логично. Также радует то, что стоп приближается к размеру спреда.

Andrey: Добрый день. Предлагаю посмотреть возможность/целесообразность получения из значений индикатора плотности тикового потока показателя изменения (увеличения/уменьшения) за единицу времени (скорость изменения тикового потока). Нанести можно в отдельном окне или прямо на графике, на месте объемов. В сочетании с плотностью тикового потока этот показатель (особенно в момент выхода новостей) покажет намерения ММ в текущий момент в свете предыдущего развития событий, ведь эти самые намерения могли и поменяться в течении дня, так же как уровень поддержки становится уровнем сопротивления... Так же предлагаю посмотреть целесообразность определения плотности тикового потока не с начала дня, а в течение некоторого настраиваемого скользящего промежутка. Например, смотрим гистограмму распределения плотности за последний час - эти значения будут очищены от предыдущих манипуляций ММ. С уважением.

Scriptong: Добрый день. Как-то уж слишком размыто, нет конкретики. Покажите, как Вы это видите. Ну и не забывайте о текущей разработке.

Andrey: Добрый день. В течение дня значение индикатора, которые были в разы больше остальных, понемногу размываются, и даже если и остаются больше соседних, разница эта не настолько видна, чтобы однозначно диагностировать уровень сопротивления. А самое главное, за счет большой накопленной "массы" даже сильное изменение тикового объема в моменте размазывается на большое количество периодов, в течение которых шла торговля на этом уровне (если только цена не выходит за границы дневного диапазона), и может остаться не замеченным. Кроме того, при различном количестве пунктов в кластере профиль меняется очень сильно - при небольших значениях картина достаточно дискретная, хорошо диагностируемая (?), а при увеличении количества пунктов в кластере пики, видные ранее пропадают, зато появляются там, где не было. Плюс ко всему на разных таймфреймах картина очень сильно отличается... Все это навело меня на мысль, что нужно плотность тикового потока рассчитывать не за весь день (собственно почему день, а не неделя, месяц?), а за некоторый период, в течение которого, как мы считаем, торговые условия (объемы, волатильность) примерно постоянны. Так, если мы меряем нарастающим итогом с начала дня, мы к азиатской сессии добавляем европейскую, а затем еще и американскую. Вроде не совсем логично, в каждую сессию свои приоритеты, уровни вроде как должны сохраняться, только почему то в азиатскую сессию рынок идет совсем не в ту сторону, когда происходят основные движения, и даже если там и были подсказки о намереньях ММ, которые отыгрываются позже, после обеда уже ничего не видно. А может даст хороший результат построение начиная с американской сессии - ведь сильные уровни переходят на следующий день, да и дальше. Я стал отмечать на графике значимые экстремумы индикатора по мере появления. К концу дня чаще всего их уже и не заметно, а уровни то работают! Как то раз включил терминал после обеда - и все экстремумы вечером были еще видны. Отсюда и предложение - нужно иметь возможность выбирать интервал, в течение которого проводим анализ. Либо фиксированно - с.... по ... , по сути как сейчас, но время начала и окончания настраиваемые, в том числе должно быть возможность перехода через ночь, либо в виде скользящего интервала - мы постоянно видим картину только за некоторый последний отрезок времени. В первом случае, при повторяющихся небольших временных интервалах (до М5?) можно построить график плотности тикивого потока в течение дня (а при приведении к единичному временному отрезку вроде как это будет СКОРОСТЬ изменения плотности тикового потока). И моменты вливания больших объемов мы будем видеть в момент вливания, а не после того, как они состоялись. В текущей версии было бы полезным иметь возможность видеть плотность потока не только за сегодняшний день, а за несколько прошедших (с разбивкой по дням) Что касается "текущей разработки", поток сознания пока иссяк, вроде с технической точки зрения сделали все, пока не могу формализовать применение, периодически пользуюсь, как вспомогательными индикаторами, но есть чувство что что-то не так, позже отпишусь. Опять же мысли настояться должны... С уважением.

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

Mirostoses: Добрый день! Мне очень понравился ваш индикатор - тиковый профиль рынка! Потрясающая вещь! По профилю рынка я торгую уже не первый год. В данный момент данные беру из ресурса clusterdelta на сайте http://clusterdelta.com/main . Тут данные берутся с фьючерсов CME из программы Thinkorswim. Варианты профиля следующие: профиль контракта (меняется 1 раз в 3 месяца - уровни поддержки с сопротивления, ядро контракта), недельный профиль и дневной. Я попробовал наложить тиковый профиль на профиль clusterdelta : Проблемы clusterdelta следующие: -Сильно грузит терминал. -Платное удовольствие. 4 usd / месяц. -При экспирации фьючерсного контракта нацинаются проблемы отображения и приходится прописывать контракт в ручную (6E 12-15 к примеру). -Переход на летнее/зимнее время в европе и америке - это путаница у нас. -Фьючерсный контракт не всегда совпадает со спот рынком и приходится прописывать Forex shift (смещение), который постоянно меняется. -Возможность просмотра профиля рынка только по основным парам с долларом. Полюсы: -Возможность отображения профиля контракта, недели и дня на одном графике. Просто запуском 1 индикатора. -Зоны VA - 15%VAH и 15%VAL + ядро контракта (профиля) - сосредоточение 90% объёма по данной цене. ТС 80% rule : http://clusterdelta.com/marketprofile/3 Основа системы - не способность закрепиться выше VAH/VAL недели / контракта или расширение зоны VA. Отсюда к сути: можно-и использовать сильные стороны ClusterDelta и отобразить их в вашем тиковом индикаторе? Профиль контракта:

Scriptong: Mirostoses пишет: Отсюда к сути: можно-и использовать сильные стороны ClusterDelta и отобразить их в вашем тиковом индикаторе? К сожалению, нет. Суть функционирования индикаторов ClusterDelta - использование данных CME. Тиковые индикаторы, со своей стороны, не имеют доступа к данным CME. Их (тиковых индикаторов) область действия - сбор тиков, пришедших в терминал МТ4. Поэтому реальные объемы тиковые индикаторы никак не могут отобразить, только тиковые объемы.

Mirostoses: Scriptong пишет: К сожалению, нет. Суть функционирования индикаторов ClusterDelta - использование данных CME. Тиковые индикаторы, со своей стороны, не имеют доступа к данным CME. Их (тиковых индикаторов) область действия - сбор тиков, пришедших в терминал МТ4. Поэтому реальные объемы тиковые индикаторы никак не могут отобразить, только тиковые объемы. Видимо я не правильно объяснил. Ваш индикатор от ClusterDelta практически не отличается отображением профиля. Просто нужно добавить расчёт объёмов в % и поставить кнопочки: VAH - верхние 15% от общего 100% объёма. VAL - нижние 15% от общего 100% объёма. Ядро - Центральные 90% от общего объёма (хотя ядро можно и не включать). И получится отличный индикатор.

Scriptong: Mirostoses пишет: Просто нужно добавить расчёт объёмов в % и поставить кнопочки: VAH - верхние 15% от общего 100% объёма. VAL - нижние 15% от общего 100% объёма. Ядро - Центральные 90% от общего объёма (хотя ядро можно и не включать). И получится отличный индикатор. Если у Вас есть понимание того, как это должно выглядеть, то прошу к обсуждению (желательно, с рисунками). Я пока совершенно не понимаю, что требуется.

Mirostoses: Берём 100% прошедших объёмов, начиная с начала контракта 15 сентября, верхние 15% и нижние 15% (от максимального и минимального значения цены) - подкрашиваем цветом Gray, остальное цветом LightGray.

Scriptong: Mirostoses пишет: Берём 100% прошедших объёмов, начиная с начала контракта 15 сентября В том то и проблема: нужно определиться с "прошедшими объемами". На Форекс, к сожалению, нет понятия "начало контракта". Mirostoses пишет: верхние 15% и нижние 15% (от максимального и минимального значения цены) - подкрашиваем цветом Gray, остальное цветом LightGray А это просто другой тип раскраски диаграммы, что не несет каких-либо изменений алгоритма индикатора. Косметические изменения под желания конкретного человека. И еще один момент. Вначале указано, что берем 100% от объемов, а далее указывается вычисление 15% от цены. Какая-то путаница выходит.

Novan: Огромное спасибо, Игорь, за ваши индикаторы! Пытаюсь попилить их под своё понятие удобства и появляются вопросы, т. к. не программист. Дикий поток тиков от GKFX подвешивает терминал, если на 3-х ТФ стоят 2-3 индикатора. Уже пару раз слетал комп на праздниках (впервые за последние 2 года - Win8.1) - оставлял на сутки не трогая МТ и, садясь за комп, пытался обновить лист Хрома с новостями - бац - слетел! )) Разница в фильтах ClusterBox_AD.mq4 между OANDA и GKFX в 10 раз! Поэтому решил поставить делитель тиков: void ProcessOneTick(int limit, double& lowPrice, int& arraySize) { // input int Del = 10; // Del - делитель - величина вводимая из меню // int cikl = 1; //- в блок инициализации if(cikl < Del) { cikl++; return; } else { cikl = 1; TickStruct tick; tick.time = TimeCurrent(); tick.ask = Ask; tick.bid = Bid; ...... // остальное тело проги } Может так работать? Хочу ещё в ClusterBox_HVN_LVN_AD.mq4 . В блоке void UpdateData()? Может я не все учёл?

Scriptong: Novan пишет: Дикий поток тиков от GKFX подвешивает терминал, если на 3-х ТФ стоят 2-3 индикатора. Проблема тиковых индикаторов в их взаимодействии. Об этом есть отдельная статья "Совместное использование тиковых индикаторов". Да, там все не так уж и просто. Поэтому, если что-то непонятно в статье, спрашивайте отдельно для Вашего конкретного случая. Вкратце, проблема в том, что тиковые индикаторы должны оперировать собранными тиками, а тики собираются в файл. Если в один и тот же файл будут писать данные разные индикаторы, то получится дублирование тиков. Поэтому нужно заранее продумать, какой из индикаторов будет записывать тики в файл, а какой - только читать. В любом случае на одном символе не должно быть более одного индикатора Сборщик тиков. Проверить это программно, к сожалению, невозможно. Поэтому только пользователь может определить, какой индикатор подключен, а какой - нет. Еще один момент - насколько часто тики сбрасываются в файл. При мощных тиковых потоках следует осуществлять сброс как можно реже. Для этого параметр "Сброс каждые N тиков" должен быть побольше. Никак не 10, конечно. Для GKFX его можно установить и 1000, и 10 000. P. S. Сборщик тиков для GKFX у меня используется на VPS для 24-х символов. VPS, хоть и слабенько, с пропусками, но тянет. По крайней мере, никаких крешей не наблюдал.

Novan: Спасибо, Игорь, за ответ!Да, конечно, я просматривал ваши статьи с описаниями работ индюков и проблемами... немного не понятна ситуация с невозможностью отключить в индикаторах возможность собирать инфу и забивать оперативку или входить в такие непонятные ситуации, когда не знаешь какой индикатор первым сбросит свою инфу при случайном выключении или переключении ТФ, но как грится дарёному коню... Я уточню - речь идет о двух тяжелых индикаторах - ClusterBox и ClusterBox_HVN_LVN - причем последний стоит в 2-3-х вариантах для поиска торг. оптимума этого ТФ ( напр 5 мин.) + еще варианты с более высоких ТФ (напр. 30 мин. + 4 час.), что бы часто не переключаться по вкладкам - лень - она такая - заставит многое сделать . Плюс на тех же ТФ 30 мин. и 4 час. свой набор ClusterBox и 2 Х ClusterBox_HVN_LVN. Вот и все, этот набор под GKFX не проходит, а под Инсту и Оанду с головой. А сборщик тиков - это супер лайт нагрузка (как я понимаю). Да, тиковый сборщик стоял некоторое время, но я и первым его снес, поскольку мог взять историю у Вас, но, как уже писал - это слабая нагрузка. А когда уже присмотрелся к ClusterBox_HVN_LVN - то вспомнил, что где-то год назад переделывал ТРО ( теперь VP ) , что бы оставалась история изменений линий - Максимум, Медианы и VWAP в виде точек побарно, и там тоже тяжеленный код, и тоже несколько копий на разных ТФ еле тянулись. Так что для меня только один выход - поделить входной поток - все равно места скоплений почти одинаковы.

Novan: Игорь, хелп, плиз!!! Вставлял я свой делитель и в блок ProcessOneTick и в ProcessGlobalTick, а последнее на чём остановился - OnCalculate - и везде вылазит одна и таже картина - на текущем баре прорисовываются данные с предыдущего с добавлением текущих тиков и так от бара к бару с наростанием. Иногда по резкому выходу за пределы наторговки нескольких баров картинка сбрасывается и процесс начинается с начала. Так огромными кусками (суперкластеров) оно и висит на чарте. Спасает только одно - нажатие на кнопку "Кластера вкл/выкл". Не поленился, даже блок-схему разрисовал, но не помогло - для меня очень и очень... Помогите, покажите плиз, где еще зависимость, почему не сбрасывается графика побарно.

Scriptong: Novan пишет: Игорь, хелп, плиз!!! Вставлял я свой делитель и в блок ProcessOneTick и в ProcessGlobalTick, а последнее на чём остановился - OnCalculate - и везде вылазит одна и таже картина - на текущем баре прорисовываются данные с предыдущего с добавлением текущих тиков и так от бара к бару с наростанием. Иногда по резкому выходу за пределы наторговки нескольких баров картинка сбрасывается и процесс начинается с начала. Так огромными кусками (суперкластеров) оно и висит на чарте. Спасает только одно - нажатие на кнопку "Кластера вкл/выкл". Не поленился, даже блок-схему разрисовал, но не помогло - для меня очень и очень... Помогите, покажите плиз, где еще зависимость, почему не сбрасывается графика побарно. Чтобы ответить на этот вопрос, нужно видеть код, с которым Вы работаете. Приведите код в разделе Консультации по программированию, заведя новую тему.

Novan: Всем привет. Разобрался я с проблемкой с помощью дедуктивного метода. Проблема состояла в том, что во время прихода тика приходит и дополнительная инфа такая как формирование новой свечи, а этот тик с этой инфой как раз и терялся в делителе, вот и тянулась графика с предыдущих свечей на новые с накоплением. Поэтому делитель был дополнен кодом, пропускающим тик во время появления новой свечи: в раздел ввода переменных (в самое начало): input int DelPoTick = 10; // Делитель потока тиков сразу после раздела ввода переменных – объявление глобальных переменных: int cikl; datetime newbar, oldbar; и в раздел Custom indicator initialization function где то после int OnInit() { но перед return INIT_SUCCEEDED; } вставить: cikl = 0; а раздел Custom indicator iteration function выглядит так: int OnCalculate(const int rates_total, const int prev_calculated, const datetime& time[], const double& open[], const double& high[], const double& low[], const double& close[], const long& tick_volume[], const long& volume[], const int& spread[]) { if (!g_activate) // Если индикатор не прошел инициализацию, то работать он не должен return rates_total; newbar = iTime(NULL, 0, 0); // для прохождения тика с информацией про новый бар if(((cikl > 0) && (cikl < DelPoTick)) && (newbar == oldbar)) // делитель потока { cikl++; oldbar = newbar; return rates_total; } // для прохождения истории - в инициализации cikl=0 else { cikl = 1; oldbar = newbar; ProcessGlobalTick(rates_total, prev_calculated); return rates_total; } } Всем пока!

Novan: Доброго дня, Игорь! На днях заинтересовался Вашим индикатором "Диагональное сечение рьінка" - ДСР, но вьілез непонятньій момент - индикатор насчитьівает и показьівает большее кол-во тиков, чем считьівает с файла. При переинициализации, без изменения основньіх параметров (кол-во пунктов в одном кластере - КПВОК) - меняются цифрьі в квдратах, ну и цвет тоже, примерно в 1,7 - 2,1 раза. Индикатор стоит на двух реал Инстах на разньіх парах по одному, с параметрами КПВОК - 5, 6, 10, 12, 25 пунктов и везде одна и таже картина - при переинициализации все цифрьі с момента последней переинициализации меняются. Как-то можно решить сию проблему? Пока додумался, что ежеминутно делать переинициализацию, правда пока не знаю как .

Scriptong: Novan пишет: Доброго дня, Игорь! На днях заинтересовался Вашим индикатором "Диагональное сечение рьінка" - ДСР, но вьілез непонятньій момент - индикатор насчитьівает и показьівает большее кол-во тиков, чем считьівает с файла. При переинициализации, без изменения основньіх параметров (кол-во пунктов в одном кластере - КПВОК) - меняются цифрьі в квдратах, ну и цвет тоже, примерно в 1,7 - 2,1 раза. Индикатор стоит на двух реал Инстах на разньіх парах по одному, с параметрами КПВОК - 5, 6, 10, 12, 25 пунктов и везде одна и таже картина - при переинициализации все цифрьі с момента последней переинициализации меняются. Как-то можно решить сию проблему? Пока додумался, что ежеминутно делать переинициализацию, правда пока не знаю как . Добрый день. Спасибо за сообщение. Ошибка исправлена. Новая версия индикатора доступна к скачиванию. Проблема проявлялась только в момент формирования новой свечи - показания индикатора удваивались на ней.

Novan: Доброго вечера, Игорь! Я опять хочу вас побеспокоить - индикатором TicksCollector. Как я понял из описания и значения стоящего по умолчанию, он может делать ТФ меньше минуктьі, но у меня не вьішло. Две минутьі - да, даже две с половиной - запросто, а меньше минутьі - нет. Проверял на двух МТ на Инсте на евро/доларе. Тики собираю с начала года 5 х 24 - проблем нет! Рейнж-барами на той неделе баловался до 2-х пипсов - вроде нормально. Равнообьемньіе - там другой баг, небольшой, на скорость не влияет, но все-таки... По умолчанию - 10 тиков на бар - здесь я сразу ничего не заметил, начал вьіставлять вертикали начала дня, сессий, потом решил проверить /сравнить - поставил 5 тиков на бар, обновил чарт, продолжил вьставлять начало дня - их нет на автономном графике, только недели и прикидьіваю - что-то много дней в неделе, больше пяти. Потом заинтересовало место перехода с пятницьі на понедельник - там на автономном графике появилось время суббот! Хотя очертания с минутньім сжатьм совпадают с пятницой. Какое-то непопадание по времени получилось. И, простите за нескромность, еще вопрос - как получить два - три автономньіх графика одной валютьі, но с разньіми значениями - бросать на разньіе графики минуток еще сборщики тиков, но запрещать собирать или можно так на одном сделать и не обязательно минуток? Ничего не "свалится"? Програмо будет сложнее закодить и возможно ли (типа тупо скопипастить строки ввода и обращения к функциям), что б не путаться с кучей индикаторов? И еще вопрос, не раскрьітьій в статье "Сборщик тиков" - все три допфункции можно запускать одновременно или в комбинации? Я не жадньій , просто набор позьі ММ-ом внутри дня отличается от недельной и т.д. именно шириной набора. Вот еще, извините, один вопрос вспомнил - хотел бьло изменить/поставить коефициент: "пока цена не поднимется выше кластера или не опустится ниже него более чем на один кластерный уровень" , но там сложная системная завязка, могли бьі Вьі чем-то помочь преодолеть ограничение, что бьі индикатор продолжал считать общее поле тиков и после "ложного пробоя", которьій бьівает и поболее чем ширина заданного кластерного уровня? (Для дейтрейдинга 3-4 пипса - набор ММ, ложньій пробой - в среднем до 15 пипс). Огромное спасибо.

Scriptong: Novan пишет: И, простите за нескромность, еще вопрос - как получить два - три автономньіх графика одной валютьі, но с разньіми значениями - бросать на разньіе графики минуток еще сборщики тиков, но запрещать собирать или можно так на одном сделать и не обязательно минуток? Ничего не "свалится"? Да, правильно. Нужно открыть несколько графиков одного и того же символа, к каждому из которых присоединить Сборщик тиков. При этом сбор тиков можно разрешить только одному из них. Остальные должны быть отключены от сбора тиков. Иначе получится дублирование тиков в тиковом файле. Novan пишет: Програмо будет сложнее закодить и возможно ли (типа тупо скопипастить строки ввода и обращения к функциям), что б не путаться с кучей индикаторов? Сделать возможно. Лишь универсализма нет (ко мне уже обращались с подобными вопросами), т. к. каждого пользователя интересует свой набор возможностей. Поэтому в общем доступе такой версии не будет.

Scriptong: Novan пишет: И еще вопрос, не раскрьітьій в статье "Сборщик тиков" - все три допфункции можно запускать одновременно или в комбинации? Я не жадньій , просто набор позьі ММ-ом внутри дня отличается от недельной и т.д. именно шириной набора. Можно, конечно. Иначе бы их там не было. Главное, чтобы параметры "Наименование ТФ в минутах" имели разные значения.

Scriptong: Novan пишет: Вот еще, извините, один вопрос вспомнил - хотел бьло изменить/поставить коефициент: "пока цена не поднимется выше кластера или не опустится ниже него более чем на один кластерный уровень" , но там сложная системная завязка, могли бьі Вьі чем-то помочь преодолеть ограничение, что бьі индикатор продолжал считать общее поле тиков и после "ложного пробоя", которьій бьівает и поболее чем ширина заданного кластерного уровня? (Для дейтрейдинга 3-4 пипса - набор ММ, ложньій пробой - в среднем до 15 пипс). А если пробой оказался не ложный, то как тогда - вычитать потом эти тики из одного кластера и переносить в другой кластер? Получим неимоверно перерисовывающийся индикатор, от которого вообще никакого толка не будет.

Novan: Пардон, последний вопрос по индикатору - Диагональное сечение рынка. Жаль править нельзя, пропустил уточнение, пока формировал полчаса мьісль .

Scriptong: Novan пишет: ак я понял из описания и значения стоящего по умолчанию, он может делать ТФ меньше минуктьі, но у меня не вьішло. Две минутьі - да, даже две с половиной - запросто, а меньше минутьі - нет. Проверял на двух МТ на Инсте на евро/доларе. Тики собираю с начала года 5 х 24 - проблем нет! Рейнж-барами на той неделе баловался до 2-х пипсов - вроде нормально. Равнообьемньіе - там другой баг, небольшой, на скорость не влияет, но все-таки... По умолчанию - 10 тиков на бар - здесь я сразу ничего не заметил, начал вьіставлять вертикали начала дня, сессий, потом решил проверить /сравнить - поставил 5 тиков на бар, обновил чарт, продолжил вьставлять начало дня - их нет на автономном графике, только недели и прикидьіваю - что-то много дней в неделе, больше пяти. Потом заинтересовало место перехода с пятницьі на понедельник - там на автономном графике появилось время суббот! Хотя очертания с минутньім сжатьм совпадают с пятницой. Какое-то непопадание по времени получилось. Общая проблема автономных графиков - неумение МТ4 отображать два и более баров в течение одной минуты. При записи в историю таких баров он отображает ошибку. Таким образом, стоит признать ошибочным мое утверждение о том, что Сборщик тиков может строить равновременные графики с периодом менее 1-ой минуты. Для равновысоких и эквиобъемных графиков решение было найдено - сдвигать бары, которые приходятся на одну и ту же минуту, в будущее. Поэтому при достаточно глубокой тиковой истории можно наблюдать на графике даты, не соответствующие реальному времени. К примеру, нужно отобразить три бара: 18:01:10, 18:01:15 и 18:01:35. Все они относятся к минуте 18:01. Первый бар отображается на нужном времени, а второй приходится сдвигать уже на минуту 18:02. Соответственно, третий бар получит время 18:03. Затем приходят еще тики и нужно отобразить бар 18:02:15. Так как бар 18:02 уже отображен, то сдвигаем отображение на 18:03. Но и тот бар уже отображен. Значит сдвигаем еще дальше. Получаем 18:04. При малом размере равновысокого бара или объема эквиобъемного бара таких случаев получается много, что провоцирует убегание графика в будущее.



полная версия страницы