Автор Тема: Уровни по Ганну  (Прочитано 6900 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн subinandrei

  • Постоялец
  • ***
  • Сообщений: 182
  • Репутация: 219
Уровни по Ганну
« : 22 Май 2012, 11:23:27 »
Индикатор строит уровни по Ганну от того экстремума, который вы укажете.
Техника построения - корнирование, о котором писал Svoresh в теме Квадрат девяти.
Работать с индикатором так:
1. Устанавливаем на нужный экстремум, к примеру, стрелочку. Называем ее "1".
2. Бросаем индюк на чарт и получаем необходимые уровни. Если уровни строяться от лоу - то рисуются зеленые линии. Если от хая - красные. Каждому уровню соответсвуют две линии - толстая (рассчетный уровень) и пунктирная (округленный).

Настройки индикатора:
extern int Mn = 10000; // множитель для приведения цены
extern string prefix = "U_"; // Префикс имен объектов индикатора
extern bool showText = true; // подписывать уровни или нет
// уровни, которые будет отрисовывать индикатор (можно вбить любые, какие хочется):
extern double level1 = 0.25; // 45
extern double level2 = 0.5; // 90
extern double level3 = 0.75; // 135
extern double level4 = 1.0;   // 180
extern double level5 = 1.25; // 225
extern double level6 = 1.5;  // 270
extern double level7 = 1.75; // 315
extern double level8 = 2.0;  // 360

Изредка наблюдается пока один небольшой глюк - если индикатор вдруг после перемещения стрелочки не обновил уровни или подписи к уровням, - просто зайдите в настройки индикатора и нажмите "Ок".

Как выглядит индикатор и сам файл - в прикрепленных файлах.


Выглядит индикатор вот так
Ничто не ново под луной:
Что было, то и будет.
Я завершаю круг и - вновь
Готов бежать по кругу...

Оффлайн dst

  • Новичок
  • *
  • Сообщений: 1
  • Репутация: -1
Re: Уровни по Ганну
« Ответ #1 : 06 Март 2013, 14:44:08 »
Добрый день! А можно в индикатор добавить функцию оставлять линии на графике после удаления индикатора. Заранее благодарю.

Оффлайн subinandrei

  • Постоялец
  • ***
  • Сообщений: 182
  • Репутация: 219
Re: Уровни по Ганну
« Ответ #2 : 06 Март 2013, 16:34:29 »
Можно. Вставил)

lineDelete = true; // удалять ли линии, после удаления индикатора

только, если вы не удалите линии и захотите после снова повесить индикатор, а прежние линии чтобы сохранились, - измените prefix = "U_"; (Префикс имен объектов индикатора) на что-то другое.
Ничто не ново под луной:
Что было, то и будет.
Я завершаю круг и - вновь
Готов бежать по кругу...

Оффлайн lotos7

  • Постоялец
  • ***
  • Сообщений: 230
  • Репутация: -8
Re: Уровни по Ганну
« Ответ #3 : 10 Март 2013, 00:32:43 »
..приведи ,пожалуйста ,пример записи префикса в  коде... и значения множителя для 4 и 5 знаков...2 неизвестных...подбираю уже 30 мин... victory
благодарю..
"Внутри каждой проблемы лежит возможность"

Оффлайн subinandrei

  • Постоялец
  • ***
  • Сообщений: 182
  • Репутация: 219
Re: Уровни по Ганну
« Ответ #4 : 10 Март 2013, 13:54:03 »
Префикс по умолчанию ("U_") - extern string prefix = "U_"; // Префикс имен объектов индикатора
Это значит, что индикатор создает все объекты с именами, начинающимися на "U_"
Если вы хотите, чтобы объекты после удаления индикатора не удалялись, то переводите extern bool lineDelete в положение false.
Чтобы индикатор НЕ перерисовал оставшиеся на графике линии после того, как его снова поставили на график, надо изменить ПРЕФИКС.
То есть вместо  "U_" написать, к примеру, "Z_"...
Ничто не ново под луной:
Что было, то и будет.
Я завершаю круг и - вновь
Готов бежать по кругу...

Оффлайн subinandrei

  • Постоялец
  • ***
  • Сообщений: 182
  • Репутация: 219
Re: Уровни по Ганну
« Ответ #5 : 10 Март 2013, 14:07:00 »
Цитировать
и значения множителя для 4 и 5 знаков...
По умолчанию индикатор настроен на 5 знаков. За это отвечает переменная extern int Mn = 10000;
Если убрать один "0", то будет рассчитывать на 4 знаков :)
Ничто не ново под луной:
Что было, то и будет.
Я завершаю круг и - вновь
Готов бежать по кругу...

Оффлайн lotos7

  • Постоялец
  • ***
  • Сообщений: 230
  • Репутация: -8
Re: Уровни по Ганну
« Ответ #6 : 10 Март 2013, 15:04:24 »
"Внутри каждой проблемы лежит возможность"

Оффлайн subinandrei

  • Постоялец
  • ***
  • Сообщений: 182
  • Репутация: 219
Re: Уровни по Ганну
« Ответ #7 : 12 Март 2013, 18:07:14 »
До конца недели постараюсь выложить обновленную версию индикатора уровней, который автоматом будет учитывать кол-во знаков после запятой и возможно добавиться еще несколько интересностей :)
Ничто не ново под луной:
Что было, то и будет.
Я завершаю круг и - вновь
Готов бежать по кругу...

Оффлайн subinandrei

  • Постоялец
  • ***
  • Сообщений: 182
  • Репутация: 219
Re: Уровни по Ганну
« Ответ #8 : 16 Февраль 2015, 17:34:48 »
До конца недели постараюсь выложить обновленную версию индикатора уровней, который автоматом будет учитывать кол-во знаков после запятой и возможно добавиться еще несколько интересностей :)
 
Эхехех.. Время летит, однако  :o
Но обещания надо выполнять.
Одна из последних версий индикатора уровней по квадрату девяти. В новом билде МТ4 компилится и работает исправно.
Настройки:
Zpt = 5; // сколько знаков берем после запятой
Mn = 10000; // для 4 знаков убираем один нулик
prefix = "U_"; // Префикс имен объектов индикатора. Если хотите кинуть на тот же график индикатор по второму разу, напишите другой префикс и будет вам счастье :)
showText = true; // подписывать уровни или нет. НО обязательно в свойствах графика проставьте галочку "Показывать описание объектов"
lineDelete = true; // удалять ли линии, после удаления индикатора
levels = 4; // 4 или 3 или 5

если levels = 4, то отрисуются уровни:
level1 = 0.25; // 45
level2 = 0.5; // 90
level3 = 0.75; // 135
level4 = 1.0;   // 180
level5 = 1.25; // 225
level6 = 1.5;  // 270
level7 = 1.75; // 315
level8 = 2.0;  // 360

если levels = 3, то отрисуются уровни:
level1 = 0.3333; // 60
level2 = 0.5; // 90
level3 = 0.6667; // 120
level4 = 1.0;   // 180
level5 = 1.3333; // 240
level6 = 1.5;  // 270
level7 = 1.6667; // 300
level8 = 2.0;  // 360

если levels = 5, то отрисуются уровни:
level1 = 0.2; // 36
level2 = 0.4; // 72
level3 = 0.8; // 144
level4 = 1.0;   // 180
level5 = 1.4; // 252
level6 = 1.6;  // 288
level7 = 1.8; // 324
level8 = 2.0;  // 360
Ничто не ново под луной:
Что было, то и будет.
Я завершаю круг и - вновь
Готов бежать по кругу...

Оффлайн albert93

  • Новичок
  • *
  • Сообщений: 1
  • Репутация: -1
Re: Уровни по Ганну
« Ответ #9 : 16 Февраль 2015, 19:09:44 »
У меня на графике ничего нет почему то

Оффлайн subinandrei

  • Постоялец
  • ***
  • Сообщений: 182
  • Репутация: 219
Re: Уровни по Ганну
« Ответ #10 : 17 Февраль 2015, 09:18:21 »
У меня на графике ничего нет почему то
Смотрим внимательно самый первый пост, где написано:
"Работать с индикатором так:
1. Устанавливаем на нужный экстремум, к примеру, стрелочку. Называем ее "1".
2. Бросаем индюк на чарт и получаем необходимые уровни. Если уровни строяться от лоу - то рисуются зеленые линии. Если от хая - красные. Каждому уровню соответсвуют две линии - толстая (рассчетный уровень) и пунктирная (округленный)."

И будем вам  счастье! :)
Ничто не ново под луной:
Что было, то и будет.
Я завершаю круг и - вновь
Готов бежать по кругу...

Оффлайн osa

  • Пользователь
  • **
  • Сообщений: 63
  • Репутация: 22
Re: Уровни по Ганну
« Ответ #11 : 28 Октябрь 2015, 20:02:37 »
Благодарю автора! Если поставить lineDelete = false, все равно новый наброшенный индикатор (при удаленном старом) - стирает эти самые линии. Попробовал разбираться. Стрелочку называл иначе, чем "1" -линии не рисует совсем. Менял U_ на K_ , к примеру, - удаляет предыдущие линии все равно. Вот. Что я делаю не так? Пятизнак, билд 890.
« Последнее редактирование: 28 Октябрь 2015, 20:07:47 от osa »
Делай добро и бросай его в воду!