Ваши вопросы по языку MQL4

vaverin

Прохожий
Как запретить "сдвиг графика"?
Поясню:
-- autoscroll выключен.
-- если выбрать "перекрестие" (Crosshair, Ctrl+F) то когда при нажатой левой кнопке мыши ее (мышь) перемещаешь по графику видимая часть графика НЕ СДВИГАЕТСЯ (по шкале времени).
-- если без "перекрестия" - то при зажатой левой кнопке мыши график СДВИГАЕТСЯ (по шкале времени) в зависимости от направления движения мыши (вправо/влево).
Собственно вопрос: как добиться неподвижного положения графика при перемещении мыши с нажатой левой кнопкой (как в случае с включенным перекрестием, но только без включения режима "перекрестия") ?

Буду рад любым рекомендациям.
 

Fillelin

Элитный участник
Как запретить "сдвиг графика"?
Поясню:
-- autoscroll выключен.
-- если выбрать "перекрестие" (Crosshair, Ctrl+F) то когда при нажатой левой кнопке мыши ее (мышь) перемещаешь по графику видимая часть графика НЕ СДВИГАЕТСЯ (по шкале времени).
-- если без "перекрестия" - то при зажатой левой кнопке мыши график СДВИГАЕТСЯ (по шкале времени) в зависимости от направления движения мыши (вправо/влево).
Собственно вопрос: как добиться неподвижного положения графика при перемещении мыши с нажатой левой кнопкой (как в случае с включенным перекрестием, но только без включения режима "перекрестия") ?

Буду рад любым рекомендациям.

Код:
   ChartSetInteger(0,CHART_MOUSE_SCROLL,0,false);
 

shaman755

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

AlexeNP

Гуру форума
Помогите новичку. Есть желание написать советника, по индикатору. Проблема в том, что индикатор рисует стрелки на покупку и продажу, но эти стрелки не буферные, а графические. Как программно определить появление следующей стрелки на графике и ее свойства (цвет или направление)?
если доступа к коду индикатора нет, то ... стрелкам даются какие-то имена и с помощью
int ObjectFind(
string object_name // имя объекта
);
можно отследить их появление
 

mobidik

-----
Помогите новичку. Есть желание написать советника, по индикатору. Проблема в том, что индикатор рисует стрелки на покупку и продажу, но эти стрелки не буферные, а графические. Как программно определить появление следующей стрелки на графике и ее свойства (цвет или направление)?
Привязываться к именам, как советует AlexeNP, я бы не стал - как правило, в таких случаях к имени добавляется еще значение текущего времени, поэтому нужно в имени отбрасывать это время.., а может быть и номер бара как идентификатор стрелки. В таком варианте, поиске по имени, работаем со стринговой переменной, а она долго обрабатывается, вообщем, подход не эффективный, как по мне. Сама стрелка, по мимо имени, имеет код. Да, может быть, что код стрелки на бай такой же как и на селл, например: ромбик или круг..., тогда фильтруем еще и по цвету. Но, первым делом нужно выяснить: на каком баре появляются стрелки индикатора, например, на первом и уже не пропадает. Тогда,перебираем все объекты (ObjectsTotal()), что есть на графике и сравниваем их время (ObjectGet(ObjectName(i),OBJPROP_TIME1)) с временем 1-го бара - если не соответствует - берем следующий объект. Если время соответствует - проверяем на тип объекта, нам же нужна стрелка, а не трендовая или прямоугольник (ObjectGet(ObjectName(i),OBJPROP_ARROWCODE)) - должен соответствовать коду искомых стрелок и можем, но не обязательно, по ситуации, организовать проверку по цвету на соответствие заданному. Вот и все, пробуйте.
 

Elvis Burunduk

Элитный участник
Тогда,перебираем все объекты (ObjectsTotal()), что есть на графике и сравниваем их время (ObjectGet(ObjectName(i),OBJPROP_TIME1)) с временем 1-го бара - если не соответствует - берем следующий объект. Если время соответствует - проверяем на тип объекта, нам же нужна стрелка, а не трендовая или прямоугольник (ObjectGet(ObjectName(i),OBJPROP_ARROWCODE)) - должен соответствовать коду искомых стрелок и можем, но не обязательно, по ситуации, организовать проверку по цвету на соответствие заданному. Вот и все, пробуйте.
Привет, я этот поиск даже реализовывал в коде, на случай закрытых индюков ... ( и в настройки вынесено и номер бара, и код стрелки, и цвет) лень искать...

Кстати, по именам тоже можно искать, только вырезать конкатенацией неизменяемую часть и искать по ней ...
 
Последнее редактирование:

shaman755

Прохожий
Привязываться к именам, как советует AlexeNP, я бы не стал - как правило, в таких случаях к имени добавляется еще значение текущего времени, поэтому нужно в имени отбрасывать это время.., а может быть и номер бара как идентификатор стрелки. В таком варианте, поиске по имени, работаем со стринговой переменной, а она долго обрабатывается, вообщем, подход не эффективный, как по мне. Сама стрелка, по мимо имени, имеет код. Да, может быть, что код стрелки на бай такой же как и на селл, например: ромбик или круг..., тогда фильтруем еще и по цвету. Но, первым делом нужно выяснить: на каком баре появляются стрелки индикатора, например, на первом и уже не пропадает. Тогда,перебираем все объекты (ObjectsTotal()), что есть на графике и сравниваем их время (ObjectGet(ObjectName(i),OBJPROP_TIME1)) с временем 1-го бара - если не соответствует - берем следующий объект. Если время соответствует - проверяем на тип объекта, нам же нужна стрелка, а не трендовая или прямоугольник (ObjectGet(ObjectName(i),OBJPROP_ARROWCODE)) - должен соответствовать коду искомых стрелок и можем, но не обязательно, по ситуации, организовать проверку по цвету на соответствие заданному. Вот и все, пробуйте.
Спасибо всем за оперативную поддержку. Еще один вопрос: в настройках индикатора есть возможность менять цвет этих стрелок, соответствуют ли имена стрелок в настройках именам переменных в коде индикатора?
 

shaman755

Прохожий
[/QUOTE]
Привет, я этот поиск даже реализовывал в коде, на случай закрытых индюков ... ( и в настройки вынесено и номер бара, и код стрелки, и цвет) лень искать...

Кстати, по именам тоже можно искать, только вырезать конкатенацией неизменяемую часть и искать по ней ...
Если вдруг найдете этот код буду очень благодарен.
 

mobidik

-----
Спасибо всем за оперативную поддержку. Еще один вопрос: в настройках индикатора есть возможность менять цвет этих стрелок, соответствуют ли имена стрелок в настройках именам переменных в коде индикатора?
Так с какими параметрами установишь - по тем и нужно искать.
Обычно, при наведении мышки на объект - всплывет окошко с именем объекта, если имена скрыты - правой клавишей мыши клац - список объектов, показать все и там найдешь имена всех своих стрелок.
 

shaman755

Прохожий
Так с какими параметрами установишь - по тем и нужно искать.
Обычно, при наведении мышки на объект - всплывет окошко с именем объекта, если имена скрыты - правой клавишей мыши клац - список объектов, показать все и там найдешь имена всех своих стрелок.
Благодарю за помощь
 

marattmb

Гуру форума
Добрый день!
Вопрос к опытным специалистам.
Речь идет об индикаторе Bollinger Bands. Все мы знаем, что Bollinger Bands – индикатор, соединивший 2 эффективных средства технического анализа:
  1. Скользящую среднюю, как идентификатор тренда и фильтр рыночного шума.
  2. Стандартное отклонение, как измеритель волатильности.
Идея заключается в том, что мы будем входить в сделку при пробитии ценой границ Боллинджера при относительно максимальной волатильности. Насколько реально создать модифицированный Bollinger Bands, который бы показывал эту самую волатильность в пунктах( диапазон от нижней до верхней границ индикатора) ?
Я смотрел на истории на нескольких инструментах таймфрейма Н4 максимальную волатильность. Везде на предполагаемом входе мы бы имели внушительный профит. Возможна небольшая просадка. Но усредняя ее, мы увеличиваем свой профит.

Хотелось бы услышать мнение специалистов.

На скриншоте примерный вход на sell. В примере на скриншоте диапазон волатильности 1.24953 - 1.21666 = 3287
 

Вложения

  • Пример входа на sell.png
    Пример входа на sell.png
    34,6 КБ · Просмотры: 40

Slava78

Элитный участник
Добрый день!
Вопрос к опытным специалистам.
Речь идет об индикаторе Bollinger Bands. Все мы знаем, что Bollinger Bands – индикатор, соединивший 2 эффективных средства технического анализа:
  1. Скользящую среднюю, как идентификатор тренда и фильтр рыночного шума.
  2. Стандартное отклонение, как измеритель волатильности.
Идея заключается в том, что мы будем входить в сделку при пробитии ценой границ Боллинджера при относительно максимальной волатильности. Насколько реально создать модифицированный Bollinger Bands, который бы показывал эту самую волатильность в пунктах( диапазон от нижней до верхней границ индикатора) ?
Я смотрел на истории на нескольких инструментах таймфрейма Н4 максимальную волатильность. Везде на предполагаемом входе мы бы имели внушительный профит. Возможна небольшая просадка. Но усредняя ее, мы увеличиваем свой профит.

Хотелось бы услышать мнение специалистов.

На скриншоте примерный вход на sell. В примере на скриншоте диапазон волатильности 1.24953 - 1.21666 = 3287
Вопрос теперь в другом, как прописать это в советнике?
 

marattmb

Гуру форума
Сначала я хочу озвучить выложенный индикатор и проверить в ручном режиме.
Загружать специалистов без проверки нельзя. Нужно убедиться, что это работает. Должно работать.
 

Elvis Burunduk

Элитный участник
Сначала я хочу озвучить выложенный индикатор и проверить в ручном режиме.
Загружать специалистов без проверки нельзя. Нужно убедиться, что это работает. Должно работать.
Ну.... Как бы да .... Это работает и неплохо и воплощено уже в советниках.... Правда не с голым TMA .... Если помнишь мои работы (Ты же старый тут) ...... Abi new TMA Flet+Trend v1 - обсуждение - Страница 22 на форекс форуме .... Упс.... походу уже потерли из за старости темы ......
 

marattmb

Гуру форума
Индикатор успешно озвучен на другом форуме.
Ну.... Как бы да .... Это работает и неплохо и воплощено уже в советниках.... Правда не с голым TMA .... Если помнишь мои работы (Ты же старый тут) ...... Abi new TMA Flet+Trend v1 - обсуждение - Страница 22 на форекс форуме .... Упс.... походу уже потерли из за старости темы ......
Хотел посмотреть, но ссылка не работает. Все-равно, спасибо.
 

Elvis Burunduk

Элитный участник
Индикатор успешно озвучен на другом форуме.
Хотел посмотреть, но ссылка не работает. Все-равно, спасибо.
МаратТМБ ... Ты тут уже старый ... К тебе доверие есть, как никак.... (y)
Напиши свой майл в личке... я тебе просто так дам своих сов на пробу......
У меня этих сов по ТМА .... куча....
Ну Просто Дядя работает на Гуталиновой Фабрике ... вот и шлет кому не попадя Гуталин .... то есть сов....
 

AlexeyVik

Программист mql4 mql5

sub72

Новичок форума
Ребят привет. Уважаемые программисты. Подскажите команду, как прикрутить к советнику выставление стоп лосса в пунктах и в размере от депозита. Заранее спасибо.
 
Верх