Индикаторы: PriceSound_trendline - страница 2

 
ars9:
Roll:
ars9:
Можно ли такое сделать для линий канала?

Конечно, можно...


Это очень интересно. Сложно ли встроить код в канал?
Смотрите --> PriceSound_channel.
 
Roll:
Kostay:
... у меня только горизонтальная появляется.
1. Из руководства пользователя терминала МТ4:
"Горизонтальная линия - ... Для нанесения объекта необходимо задать одну точку.
Трендовая линия - ...следует определить две точки, через которые пройдёт линия".
2. В индикаторе "PriceSound_trendline" горизонтальных линий нет!
 
Roll:
Kostay:
... у меня только горизонтальная появляется.
1. Из руководства пользователя терминала МТ4:
"Горизонтальная линия - ... Для нанесения объекта необходимо задать одну точку.
Трендовая линия - ...следует определить две точки, через которые пройдёт линия".
2. В индикаторе "PriceSound_trendline" горизонтальных линий нет!

Прежде чем обвинять парня в безграмотности сам лучше проверяй что сливаешь на сайт

Думаю что если ты писал код сам то эта строка тебе знакома и то что я выделил понятно

А вот для тех кто не знает поясню это координаты цены для прорисовки тренда

Так вот они равны и поэтому кроме горизонтали индюк ни чего не нарисует

ObjectCreate(UniqueName,OBJ_TREND,0,Time[20],cp,Time[0],cp);

 
laam:
Roll:
Kostay:
... у меня только горизонтальная появляется.
1. Из руководства пользователя терминала МТ4:
"Горизонтальная линия - ... Для нанесения объекта необходимо задать одну точку.
Трендовая линия - ...следует определить две точки, через которые пройдёт линия".
2. В индикаторе "PriceSound_trendline" горизонтальных линий нет!

Прежде чем обвинять парня в безграмотности сам лучше проверяй что сливаешь на сайт

Думаю что если ты писал код сам то эта строка тебе знакома и то что я выделил понятно

А вот для тех кто не знает поясню это координаты цены для прорисовки тренда

Так вот они равны и поэтому кроме горизонтали индюк ни чего не нарисует

ObjectCreate(UniqueName,OBJ_TREND,0,Time[20],cp,Time[0],cp);


1. Спасибо за "внимательное" отношение к моей работе, - читайте описания к индикаторам: подается звуковой сигнал. Нигде, включая индикатор PriceAlert (v.1.1) от api, не обещано "красивых картинок" - линий поддержки и сопротивления, которые пользователь выставляет( рисует) сам с помощью объекта индикатора.

2. Пытливость ума предполагает возможность делать логические выводы, для этого надо уметь ставить логические посылки: например, из высказывания А (факта, вопроса, явления и т.д.) следует утверждение В.
В нашем случае:
а) Q: для кого написаны данные коды - MQL4программистов или для тех, кто ничего не понимает в MQL4 кодах, или для всех, потому как для употребления кодов знание MQL4-программирования и не требуется?
А: Для всех!
б) Q:Почему у сотен людей коды работают, а у единиц нет?
А: Потому, что не хватает.. (опыта, знания, умения, терпения разобраться самому).
3. Конкретно по данной работе, конкретно для Вас:
- " ObjectCreate(UniqueName,OBJ_TREND,0,Time[20],cp,Time[0],cp);"
объясняю (хоть обучением и не занимаюсь): это выражение означает создание объекта "трендовая прямая" с именем UniqueName (так называемая "первоначальная установка объекта").
Об этом знают многие пользователи данного индикатора и, в основном те, кто даже не знает и не понимает за ненадобностью, что означает данная строчка. Далее они выделяют объект( щелкают по нему) и перемещают в нужное им место, т.е. многие пользователи обладают логикой без знания MQL4-программирования - умеют ставить перед собой цели, задачи и решать их без посторонней помощи, набираясь самостоятельного опыта.
Данный код работает также на терминале в режиме "тестер", об этом сообщено в описании к индикатору.
4. Сообщения в неопределенном смысле, в грубой форме и т.п. в мой адрес будут оставаться без ответа!

 
Здравствуйте, спасибо за индикатор, очень нравится. Было бы здорово применить его к МА (пересечение ценой МА) к сожалению, совсем не владею программированием, возможно ли применить его для МА, буду благодарен за подсказку
 
zdesya:
Здравствуйте, спасибо за индикатор, очень нравится. Было бы здорово применить его к МА (пересечение ценой МА) к сожалению, совсем не владею программированием, возможно ли применить его для МА, буду благодарен за подсказку

Смотрите --> PriceSound_MA_Shift_Y.
 

Здравствуйте, Roll. Заметил такую нехорошую вещь. При смене профиля или после перезагрузки терминала индикатор сбивается, т.е. он остаётся на граффике, но в положение первоночальное - горизонтальное, можно ли это доработать?

Можно ли как то изменить настройки по умолчанию, например убрать луч, толщину линии, размер цифр (раст. цены от канала)? или скажите где в коде изменить, я сам поюзаю.

И ещё вопрос, я заметил что если нанести индюк на мелком тф, и переключиться на старший, то на старшем он может дать сигнал, а на мелкий если переключить и посмотреть, то нет пересечения. Из-за чего это? Это недоработка мт4?

Можно ли сделать, чтобы сигнал (и по какому инструменту) записывался в журнал, сигнал хотябы первый, чтобы не забивать журнал. Когда много граффиков и на нескольких установлен индикатор, тяжело искать по какому именно из инструментов сработал сигнал

Спасибо

 
Espace:

Здравствуйте, Roll. Заметил такую нехорошую вещь. При смене профиля или после перезагрузки терминала индикатор сбивается, т.е. он остаётся на граффике, но в положение первоночальное - горизонтальное, можно ли это доработать?

Можно ли как то изменить настройки по умолчанию, например убрать луч, толщину линии, размер цифр (раст. цены от канала)? или скажите где в коде изменить, я сам поюзаю.

И ещё вопрос, я заметил что если нанести индюк на мелком тф, и переключиться на старший, то на старшем он может дать сигнал, а на мелкий если переключить и посмотреть, то нет пересечения. Из-за чего это? Это недоработка мт4?

Можно ли сделать, чтобы сигнал (и по какому инструменту) записывался в журнал, сигнал хотябы первый, чтобы не забивать журнал. Когда много граффиков и на нескольких установлен индикатор, тяжело искать по какому именно из инструментов сработал сигнал

Спасибо

Здравствуйте, Сергей!

Отвечаю на ваши вопросы:

1)Q: Заметил такую нехорошую вещь. При смене профиля или после перезагрузки терминала индикатор сбивается, т.е. он остаётся на граффике, но в положение первоночальное - горизонтальное, можно ли это доработать?

A: Индикатор не сбивается -- для того, чтобы пользователю не искать объекты индикатора (трендовую линию и текстовую метку "пипсы") по всему графику, мною было задумана первоначальная установка их (трендовой линии и текстовой метки "пипсы"). Это решение использовано мною в последующих опубликованных работах.
Для своего пожелания удалите деинициализацию. Удаление объектов (трендовой линии и текстовой метки "пипсы") тогда вручную (за пользователем):

/*
int deinit()
{int reason=UninitializeReason();
if(UninitializeReason() == REASON_REMOVE)ObjectDelete(UniqueName);
ObjectDelete(PipsTextName); return(0);}
*/
2) Q: Можно ли как то изменить настройки по умолчанию, например убрать луч, толщину линии, размер цифр (раст. цены от канала)? или скажите где в коде изменить, я сам поюзаю.

A: Попробую ответить на ваше желание "убрать луч".Во-первых, оно неопределенно (неоднозначно):
-- если удалить с графика трендовую линию, то зачем этот индикатор? На трендовой линии находится нужный уровень, и построена логика и смысл индикатора, т.е. вопрос нелогичный ;
-- если хотите трендовую линию в виде "луча" преобразовать в "отрезок" программно, то это задается в свойствах трендовой линии, как объекта. Однако считаю, требуемого эффекта можно достичь и не программно, а просто "развернув луч на 180 градусов";

-- есть еще одно свойство у объектов -- видимость на выбранных таймфреймах (OBJPROP_TIMEFRAMES).

Толщина линии -- программно задается в свойствах трендовой линии, как объекта. Определена в списке внешних переменных, как extern int LineWidth=2, читайте описание индикатора.
"Размер цифр (раст. цены от канала)"-- программно задается в свойствах текстовой метки, как объекта, (размер шрифта). //ObjectSetText()

3) Q: И ещё вопрос, я заметил что если нанести индюк на мелком тф, и переключиться на старший, то на старшем он может дать сигнал, а на мелкий если переключить и посмотреть, то нет пересечения. Из-за чего это? Это недоработка мт4?

A: Однако, решите сначала вопрос 1).
Возможно это связано с расчетами получения значений прямой ObjectGetValueByShift( string name, int shift) на нулевом (незавершенном, менее точном) баре старшего таймфрейма.

4) Q: Можно ли сделать, чтобы сигнал (и по какому инструменту) записывался в журнал, сигнал хотя бы первый, чтобы не забивать журнал. Когда много граффиков и на нескольких установлен индикатор, тяжело искать по какому именно из инструментов сработал сигнал

A: функция Print() всегда к вашим услугам.

вставьте:
if(Sound_Play){Print(Symbol()+" "+Period()+" minutes/ PriceSound_trendline  level = " +DoubleToStr(LastLevel,Digits)+";  UniqueName = "+UniqueName);PlaySound(Sound);}
вместо
if(Sound_Play){PlaySound(Sound);}
 
if(Active && LastPrice!=0 && ((LastPrice<LastLevel && Close[0]>=LastLevel) || 
      (LastPrice>LastLevel && Close[0]<=LastLevel)))
     {
      if(Sound_Play){PlaySound(Sound);}//Закрыто if(Sound_Play)
      else Active=false;
      ObjectSetText(PipsTextName,"",14,"Terminal",LineColor);
      ObjectSetText(UniqueName,"Price sound level - Inactive",0);
      ObjectSet(UniqueName,OBJPROP_COLOR,Blue);
      if(LastPrice<=LastLevel)Print("Цена пересекла линию ВВЕРХ");
      else Print("Цена пересекла линию ВНИЗ");//Отчёт
     }//Закрыто if(Active && ...

Трудно ориентироваться когда цена топчет trend. Думаю, полезно разделить сигналы "Пересечение вверх" и "Пересечение вниз".

Интересная разработка. Непонятно, почему ошибка в журнале?

2013.11.27 13:28:30 PriceSound_trendline EURUSD,M1: uninit reason 3
2013.11.27 13:28:30 PriceSound_trendline EURUSD,M1: deinitialized
2013.11.27 13:28:30 PriceSound_trendline EURUSD,M1: object name passed to ObjectDelete function cannot be an uninitialized or empty string

 
Здравствуйте. Можно ли настроить индикатор таким образом, чтобы сигнал подавался только один раз по цене закрытия свечи выше/ниже линий?
Причина обращения: