Форум » Скрипты » Расчет 3 бара » Ответить

Расчет 3 бара

Genry: [quote]День добрый, Скриптонг! И у меня к Вам просьба , может в Вашем архиве есть довольно простой скрипт, который делает вот что: мышкой задаются две произвольные точки на графике T1 и Т2 (на рисунке точки поставлены вне бара, но в реальной ситуации это будет существующий бар), затем вычисляется разница между ними, значение которой умножается на задаваемый коэффициент. Результат умножения прибавляется (отнимается) к/от значению второй точки и получается точка Т3. Если вторая точка ближе к нулевому бару, чем первая, то результат умножения к ней прибавляется с округлением дробной части в меньшую сторону: T3+ = T2 + коэф * (T2 -T1). Если значение Т3+ выходит за нулевой бар, то Т3+ выставляется там. При попадании Т3+ на выходные дни (сб, вск) точка переносится дальше - прибавлением к значению Т3+ времени выходного дня. Если вторая точка дальше от нулевого бара, чем первая, то результат умножения отнимается: T3- = T2 - коэф * (T2 -T1) С выходными днями поступам как выше, с Т3+. В рассчитанном месте Т3 рисуется вертикальная линия, а в поле комментария к линии записывается со знаком и дробной частью та величина, которая прибавлялась (или отнималась) ко второму бару, например: (T2= +30.95 или T2= -15.05, и время \дата бара Т1=16:00 12-02-2013), чтобы можно было потом понять от какой пары ценовых бар она строилась. Может Вы такую делали для себя, по сути подсчитываются именно бары. Сейчас я пользуюсь инструментом "Перекрестие" на графической панели ;(, измеряю им расстояние между барами и считаю ручками - тяжкий труд для зрения. Да и двигать окно в будующее тоже веселое занятие. Вот такая программка потребовалась для сбора статистики к ТЗ эксперта по Вуди С уважением! Сообщение от Genry 1. выбираю визуально на графике 2 нужных бара, 2. навожу перекрестие на Т1, кликаю мышь и тяну курсор к Т2. Сбоку от курсора идет информация о расстоянии в барах между Т1 и Т2. 3. умножаю расстояние между Т1 и Т2 на коэффициент и прибавляю, или отнимаю, к\от Т2 целую часть результата рассчета - получаю расстояние до Т3. 4. с помощью перекрестия откладываю от Т2 это расстояние до Т3 и ставлю там вертикальную линию Выбираю свойства линии, ввожу туда описание бара- время-дата/расстояние до Т2 и время-дата Т1. По сути мне надо время Т3, но при расчете оперирую индексами- так проще, нет зависимости от ТФ и сложностей с учетом времени. Время появляется, когда Т3 попадает на выходные, тогда приходится оперировать временем бара для переноса на рабочие дни. Цену пока не учитываю, нужны время-дата/расстояние до Т2 и вертикальная линия в этом месте на графике, время-дата Т1 И еще одно уточнение, ввести 2 переменные для коэффициента: koef_bck-при рассчете назад и koef_frw - вперед (или что-то более благозвучное). С уважением![/quote] Понятно, работаем с индексами. Изначально выходные учесть достаточно просто (если таймфрейм не минутный). Ну и в любом случае при появлении каждого нового бара время расчетного бара Т3 будет корректироваться с учетом полученных дыр в графике. Так сделано в индикаторе CurrentExpansionRectangle.

Ответов - 9

Scriptong: Ага, помню

Genry: Игорь, день добрый! А возможно для скрипта выбирать в каком окне рисовать линии? Например в главное и указанное индикаторное, или только в индикаторное (скажем окно индикатора CCI)?

Scriptong: Genry пишет: А возможно для скрипта выбирать в каком окне рисовать линии? Например в главное и указанное индикаторное, или только в индикаторное (скажем окно индикатора CCI)? Программно это, конечно, возможно. Если знать точное короткое имя индикатора (главное условие - чтобы не было повторяющихся имен), то можно получить индекс его подокна. Имея этот индекс, можно работать с объектами именно этого окна. Второй способ - пользователь сам задает индекс подокна, лично контролируя ситуацию с присоединенными индикаторами.


Genry: Ясно. У меня получается либо на графике, либо в окошке Вашаго индикатора ВудиCCI или в оба окна. По номеру тоже можно, т.к. это будет окно №1 с тем-же Вуди

Scriptong: Начал было делать описанный Вами скрипт, но по мере продвижения работы все сильнее становилось чувство изобретения велосипеда. Остановился и стал искать. И, действительно, в МТ4 уже есть такой инструмент: временные зоны Фибоначчи (Вставка - Фибоначчи - Временные зоны). Они работают именно так, как Вы описали. есть возможность задания своих множителей плюс рассчитывается большее количество уровней, чем 1. Единственный минус - в будущем они не учитывают выходные.

Genry: День добрый, Игорь! Насчет велосипеда - это правда , я тоже, читая недавно какой-то форум, встретил аналогичную информацию. Для ручной работы мне это подошло значительно лучше, чем самому пипы считать на калькуляторе , когда надо набросить сетку Правда скрипт все-равно ждал, чтобы был код для автоматизированного расчета по алгоритму, который мы обсудили, его наблюдение может приведет к ТЗ, которое можно реализовать в виде советника ;) Это как говорится планы на будующее ... Спасибо, что помните о просьбе!

Genry: Genry пишет: Правда скрипт все-равно ждал, чтобы был код для автоматизированного расчета по алгоритму, который мы обсудили, Поясню, что имел ввиду - между расчетом временных зон как это делает МТ и алгоритмом, который мы выше обсудили существует большая разница, покажу ее на скрине ниже: желтыми линиями обозначена стандартная сетка - в окошке настройки ее параметры , синими линиями отмечен расчет по алгоритму. Между двумя исходными вершинами 22 бара или 1.0 по алгоритму МТ (и по нашему тоже), далее МТ рисует две заданные в таблице линии с нашими множителями Правее две линии отрисованные по нашему алгоритму: 22 х 1.2306 = 27.08 и 22 х 1.5 = 33 Вот такое различие в расчете. Может для временных зон МТ можно как-то иначе задавать параметры множителя? У меня получается только такой вариант. Игорь, если приступите к написанию скрипта, просьба проектировать в Вашем новом стиле - библиотечном варианте с возможностью дальнейшей модификацией под индикатор. Вдруг идея Вам понравится, чтобы потом меньше было времменных затрат на внесение изменений. Инградиентами индикаторного супа будут: 1. Ваш зигзаг 2. пары вершин - HH, LL, HL, LH 3. фильтр вершин по высоте 4. ширина окна, для выбора пар вершин от нулевого бара влево. 5. таблица множителей для каждого из 4 вариантов вершин Возможно дополнение 6. количество бар, формирующих вершину 7. фильтр вершин по ускорению цены, с которым формировались вершины. Количество вершин у которых измеряем ускорение задано п.6 Если про ускорение я пока раздумываю - наблюдая индикаторы по данной теме, то количество вершин в п.6 очень вероятный фильтр.

Sergey: Genry пишет: Может для временных зон МТ можно как-то иначе задавать параметры множителя? Genry, временные зоны 2,236 и 2,5.

Genry: Sergey пишет: Genry, временные зоны 2,236 и 2,5. Спасибо, Sergey! Теперь все - ок! А то я забил значения по привычке, когда увидел, что результаты не совпали, решил, что есть расхождения в расчетах



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