Версия для печати темы
Fx-VladMih _ Тусовка программистов и их гостей _ Скрипт-переключатель ЗигЗага
Автор: Nikolas 23.7.2013, 1:27
Цитата(VladMih @ 21.7.2013, 22:12)
Скрипт-переключатель ЗигЗага
Скриптов должно быть два одинаковых, вешаем их на две горячих клавиши.
При вызове скрипта Зиг-3
1. Проверяет нет ли на чарте зигзагов
2. Если нет - устанавливает зиг-3
3. Если есть зиг-3 - ничего не делает (в идеале выдает сообщение, что отработал)
4. Если есть зиг-6 - удаляет его и устанавливает зиг-3
Есть сомнения можно ли удалять скриптом индикатор, но хотелось бы.
Второй скрипт делает то же самое для установки зиг-6.
Индикатор ZigZag_color умеющий менять цвет и параметр "ExtDepth" соответственно переданному параметру из скрипта ZZ3 или ZZ6. смотрите вложение... положить:
Индикатор ZigZag_color в папку "МТ4\experts\indicators\"
Скрипты "ZZ3" и "ZZ6" - в папку "МТ4\experts\scripts\"
Скрипт ZZ3 и ZZ6 при запуске на графике ищет объект с именем "ExtDepth", если не находит его - создает с датой "1970.01.01 00:00" и устанавливает значение price1 соответственно равным 3 или 6.
Индикатор ZigZag_color при обработке тика ищет объект с именем "ExtDepth", если находит - получает значение price1 и проверяет отличается ли оно с параметром индикатора ExtDepth. Если отличается - то изменяет его и удаляет объект на графике созданный скриптом ZZ3 или ZZ6.
а так же изменяет цвет индикатора на соответствующие параметрам:
colorZZ3 - для значение 3.
colorZZ6 - для значение 6.
colorZZX - для любого другого значения.
Версию 2.0, рекомендованную для использования в Школе, см. в посте 3Версию 2.3, рекомендованную для использования в Школе, см. в посте 11 2.3 полностью повторяет функционал последних версий, но намного удобней
Автор: VladMih 24.7.2013, 13:34
Николай, СПАСИБО! Сутки прошли - полет нормальный.
Очень удобно. У меня и раньше зиг был на горячей клавише, но были лишние телодвижения с удалением старого и настройкой устанавливаемого нового. Сейчас же просто добавилась одна горячая клава и пропал весь остальной геморрой.
Когда нет тиков (в т.ч. в выходные дни) пользоваться всё равно можно - достаточно после вызова скрипта перещелкнуть туда-назад таймфреймы. Передернуть затвор.
Набор скриптов ФР, Вика и Зигзага - это просто кайф!
Автор: Nikolas 27.7.2013, 12:37
Переключаемый ZigZag улучшенная версия.
ExtDepth=6; -изменяется текстовой меткой или скриптом.
ExtDeviation=5;
ExtBackstep=3;
Цвет = Magenta;
Стиль линии =2 (мелкий штрих).
- Исправлены выявленные ошибки, добавлены новый функционал и удобный интерфейс.
- Информация о параметре ZigZag выводится текстовой меткой правее верхнего левого угла окна графика ("zz3" или "zz6").
- Параметр ExtDepth может переключатся двумя спосабами:
- перемещением текстовой метки. Сместили -> "zz3", еще раз -> "zz6", еще раз -> "zz3"
- Скриптами ""!ZZ3" и "!ZZ6"
- При переключении таймфреймов из диапазона младших таймов (м1-Н4) на старший диапазон (D1-Mn), ZigZag автоматически переключается на "zz3". Соответственно из диапазона старших на младшие на "zz6". При переключении в одном диапазоне, младших или старших, параметр выбранный пользователем не меняется.
Алгоритм расчета индикатора ZigZag не менялся и соответствует стандартному индикатору в поставке МТ4.Состав:
!ZigZagVM - сам индикатор, положить в %МТ4\experts\indicators\
!ZZ3 - скрипт для переключения !ZigZagVM параметра ExtDepth=3. положить в %МТ4\experts\scripts\
!ZZ6 - скрипт для переключения !ZigZagVM параметра ExtDepth=6. положить в %МТ4\experts\scripts\
ZigZagVM_2.0.rar ( 3,96 килобайт )
: 370
Автор: VladMih 27.7.2013, 13:23
Цитата(Nikolas @ 27.7.2013, 12:37)
Переключаемый ZigZag улучшенная версия.
Это рекомендованная версия. Применяем в Школе.
Я охарактеризовал бы эту версию как "вылизанная во всех смыслах" - воплощены все мои задумки в разрезе минимальной достаточности и удобства.
Николаю ОГРОМНОЕ спасибо и за то, что прислушался к моим пожеланиям, и за то, что смог их воплотить!
Пользоваться этой троицей невероятно удобно и приятно.
Маркер зигзага выглядит так:
Его можно выделить двойным кликом и сместить - это будет равносильно запуску скрипта переключения на вторую настройку (с 3 на 6 и наоборот).
При получении команды на изменение настройки маркер меняет цвет на красный -
это сигнал о том, что команда принята, но зигзаг еще не получил тика и потому на графике не перестроился.
Для использования новой настройки нужно
- либо дождаться прихода тика и "посинения" маркера
(при сдвиге маркера мышью нужно дождаться когда он вернется на место)
- либо переключить тайм туда-назад в рамках той группы таймфреймов, внутри которой вы находитесь (младшая группа от м1 до Н4, старшая - от Д1 выше).
На активном рынке
это происходит само и мгновенно, а на вялом и в выходные... Всё равно
даже это намного проще, чем лезть в свойства индикатора для его переключения.
Автор: Сатори 27.7.2013, 16:41
Цитата(Nikolas @ 27.7.2013, 12:37)
Переключаемый ZigZag улучшенная версия.
Неплохо. Оригинально.
Я все думал, как ты обработку события сдвига сделал... Оказалось - все просто.
Надо бы только метаквотовские ссылки в начале скрипта заменить на свои.
Автор: КОнгломераТ 28.7.2013, 0:25
Цитата(Сатори @ 27.7.2013, 16:41)
Цитата(Nikolas @ 27.7.2013, 12:37)
Переключаемый ZigZag улучшенная версия.
Неплохо. Оригинально.
А я не буду скромничать. ОТЛИЧНО!
И "оригинально", и работает как часики, и даже симпатично.
Nikolas, большое спасибо!
Автор: VladMih 29.7.2013, 23:29
Цитата(VladMih @ 27.7.2013, 13:23)
Его можно выделить двойным кликом и сместить - это будет равносильно запуску скрипта переключения на вторую настройку (с 3 на 6 и наоборот).
При получении команды на изменение настройки (независимо - скриптом или маркером), маркер меняет цвет на красный - это сигнал о том, что команда принята, но зигзаг еще не получил тика и потому на графике не перестроился.
В посте, из которого цитировал, внёс поправку.
При сдвиге маркера цвет на красный не меняется, так как для смены цвета требуется приход тика, а как только тик пришел, маркер становится на место и показывает новое значение УЖЕ ПЕРЕСТРОЕННОГО зигзага.
Т.е. смена цвета и не требуется - в данном случае своего рода аналогом смены цвета является сдвинутое положение маркера.
Автор: Сатори 5.8.2013, 18:53
Переключаемый ZigZag - дополненная версия (!ZigZagVM_2.1).
Что нового:
1) добавлена метка "треугольник", находящаяся рядом с меткой zz3(zz6); "треугольник" сделан для возможности доработки скрипта, рисующего Вика (для переключения возможности рисовать или линии треугольников или нормальные Вики):
- "треугольник" отображается только на таймах D1 - MN1
- "треугольник" разукрашивается в зеленый (разрешающий рисовать треугольники) или красный (запрещающий рисовать треугольники) цвета
- переключение "треугольника" происходит по тому же принципу, что и у метки zz - сдвигаем "треугольник" в любую сторону: если был красный - станет зеленый, если был зеленый - станет красный
- на выходных, когда нет тиков, для активации переключения необходимо переключить туда-сюда тайм на графике
- "треугольник" реализован объектом label(текстовая метка), а само изображение треугольника - один из символов шрифта "Wingdings 3", поэтому для корректного отображения данный шрифт должен присутствовать в системе
2) логику индикатора ZigZag и zz-метки не трогал, только добавил треугольник и немного причесал код Nikolas'a для возможности быстро менять имя и координаты меток.
Собственно сам индикатор:
_ZigZagVM_2.1.zip ( 2,6 килобайт )
: 193
Автор: Сатори 3.3.2014, 12:34
Переключаемый ZigZag - дополненная версия (!ZigZagVM_2.2).
Что нового:
1) Для желающих различать zz6 и zz3 по цветам добавлена возможность изменять цвета. Для этого во внешние параметры индикатора вынесены 2 параметра: ZZ3Color и ZZ6Color. По умолчанию оба цвета - Magenta, т.е. цветовых различий нет, но желающие могут поставить разные цвета.
2) Внесены изменения для возможности использовать индикатор при расчете зигзага в скриптах
Собственно сам индикатор:
_ZigZagVM_2.2.zip ( 3,35 килобайт )
: 405
Автор: Сатори 12.12.2016, 18:43
Переключаемый ZigZag - дополненная версия (!ZigZagVM_2.3).
Что нового:
1) Переключение зигзага не сдвигом метки (что в конечном счете не очень удобно), а простым кликом по метке. Плюс к этому - для переключения не нужны живые котировки. Переключение мгновенное и даже при полном отсутствии тиков (например на выходных). Переключение режима отрисовки треугольников на таймах от Д1 и выше по тому же принципу - просто кликом по треугольнику.
2) Цвет метки с 3-м зигзагом сделал другим, чтобы бросалось в глаза, что Зиг не 6-й.
Собственно сам индикатор:
_ZigZagVM_2.3.zip ( 3,52 килобайт )
: 308
Автор: VladMih 12.12.2016, 21:48
Цитата(Сатори @ 12.12.2016, 18:43)
Переключаемый ZigZag - дополненная версия (!ZigZagVM_2.3).
Саша, огромное спасибо!
Удобняшка стала еще удобней! НАМНОГО!
PS: ты наверно уже решил - следующими будут смещаемые объекты ВикАлерта? (из ВНЕплановых!)
Автор: Сатори 13.12.2016, 10:09
Цитата(VladMih @ 12.12.2016, 21:48)
PS: ты наверно уже решил - следующими будут смещаемые объекты ВикАлерта? (из ВНЕплановых!)
Автор: КОнгломераТ 14.12.2016, 20:50
Цитата(VladMih @ 12.12.2016, 21:48)
Цитата(Сатори @ 12.12.2016, 18:43)
Переключаемый ZigZag - дополненная версия (!ZigZagVM_2.3).
Саша, огромное спасибо!
Удобняшка стала еще удобней! НАМНОГО!
Капец, как клёво!
Спасибо, Александр!
Автор: Сатори 15.12.2016, 0:49
Цитата(КОнгломераТ @ 14.12.2016, 20:50)
Капец, как клёво!
Спасибо, Александр!
Ну раз старшему таможеннику понравилось, значит таможня не зря работала
Форум Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)