Старт распродаж! Черная пятница - 50%


Новые сообщения · Участники · Правила форума · Поиск · RSS · Вход · Регистрация ·

Страница 1 из 212»
Форум трейдеров » Скрипты Советники Индикаторы для Metatrader4/Metatrader5 » MT 4 MQL программирование, помощь. » Пересечение заданной линии (Как при описании условий для торговли описать пересечение не)
Пересечение заданной линии

AndreCoДата: Четверг, 10.10.2013, 13:49 | Сообщение # 1
Трейдер - Рядовой
Группа: Пользователи
Сообщений: 6
Награды: 0
Статус: Offline


[Бонусы за сообщения ]

Как при описании условий для торговли описать пересечение некой заданой линии (как сигнал) собственным индикатором?

Прикрепления: 5360277.png(17Kb)
 
СообщениеКак при описании условий для торговли описать пересечение некой заданой линии (как сигнал) собственным индикатором?


Автор - AndreCo
Дата добавления - 10.10.2013 в 13:49

expforexДата: Четверг, 10.10.2013, 14:03 | Сообщение # 2
Главный Администартор
Группа: Администраторы
Сообщений: 8951
Награды: 29
Статус: Offline


[Бонусы за сообщения ]

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

для этого в внешние настройки советника например выставляем внешние переменные индикатора: 

Код
extern double    k1=1.0;
extern double    k2=1.0;
extern double    k3=1.0;


далее, там где у Вас должны быть сделки, получаем значения индикатора как минимум на двух барах:

Код
double Indicator1 = iCustom(Symbol(),0,"AndreCo",k1,k2,k3,0,shift);


буфер у нас 1, т.е. его порядковый номер 0.

Далее второй бар индикатора:
Код
double Indicator2 = iCustom(Symbol(),0,"AndreCo",k1,k2,k3,0,shift+1);


shift в данном случае определяет стартовый бар расчета, если поставить 0 - то будет считаться текущее пересечение, я не рекомендую так делать, потому что на текущем баре индикатор только формирует значение линии поэтому shift=1 

Далее пересечение в данном случае будет выглядеть так,
например пересечение 0 снизу вверх:
 
Код
if(Indicator2 <=0 && Indicator1 >0)Открываем бай например


например пересечение 0 сверху вниз:
 
Код
if(Indicator2 >=0 && Indicator1 <0)Открываем селл например



Программирование на заказ || Наши Разработки

 
СообщениеПриветствую, 
для начала нам в советник нужно получить значение индикатора. 

для этого в внешние настройки советника например выставляем внешние переменные индикатора: 

Код
extern double    k1=1.0;
extern double    k2=1.0;
extern double    k3=1.0;


далее, там где у Вас должны быть сделки, получаем значения индикатора как минимум на двух барах:

Код
double Indicator1 = iCustom(Symbol(),0,"AndreCo",k1,k2,k3,0,shift);


буфер у нас 1, т.е. его порядковый номер 0.

Далее второй бар индикатора:
Код
double Indicator2 = iCustom(Symbol(),0,"AndreCo",k1,k2,k3,0,shift+1);


shift в данном случае определяет стартовый бар расчета, если поставить 0 - то будет считаться текущее пересечение, я не рекомендую так делать, потому что на текущем баре индикатор только формирует значение линии поэтому shift=1 

Далее пересечение в данном случае будет выглядеть так,
например пересечение 0 снизу вверх:
 
Код
if(Indicator2 <=0 && Indicator1 >0)Открываем бай например


например пересечение 0 сверху вниз:
 
Код
if(Indicator2 >=0 && Indicator1 <0)Открываем селл например

Автор - expforex
Дата добавления - 10.10.2013 в 14:03

AndreCoДата: Четверг, 10.10.2013, 17:43 | Сообщение # 3
Трейдер - Рядовой
Группа: Пользователи
Сообщений: 6
Награды: 0
Статус: Offline


[Бонусы за сообщения ]

Для понятия принципа написал "солянку" взяв за основу стандартный советник МА, прицепив простой индикатор. Сделал как написано выше - ордера не открывает. Посмотрите, пожалуйста, где косяк. Спасибо.

Прикрепления: What_System.mq4(5Kb)
 
СообщениеДля понятия принципа написал "солянку" взяв за основу стандартный советник МА, прицепив простой индикатор. Сделал как написано выше - ордера не открывает. Посмотрите, пожалуйста, где косяк. Спасибо.

Автор - AndreCo
Дата добавления - 10.10.2013 в 17:43

expforexДата: Четверг, 10.10.2013, 17:45 | Сообщение # 4
Главный Администартор
Группа: Администраторы
Сообщений: 8951
Награды: 29
Статус: Offline


[Бонусы за сообщения ]

AndreCo, хз, причин может быть много
например что за индикатор indicatorWhat не видел такого. что пишет в логах эксперта в журнале в терминале.



Программирование на заказ || Наши Разработки

 
СообщениеAndreCo, хз, причин может быть много
например что за индикатор indicatorWhat не видел такого. что пишет в логах эксперта в журнале в терминале.

Автор - expforex
Дата добавления - 10.10.2013 в 17:45

AndreCoДата: Четверг, 10.10.2013, 17:49 | Сообщение # 5
Трейдер - Рядовой
Группа: Пользователи
Сообщений: 6
Награды: 0
Статус: Offline


[Бонусы за сообщения ]

загружено успешно (loaded successfully)
При компиляции ошибок нет

 
Сообщениезагружено успешно (loaded successfully)
При компиляции ошибок нет

Автор - AndreCo
Дата добавления - 10.10.2013 в 17:49

expforexДата: Четверг, 10.10.2013, 17:54 | Сообщение # 6
Главный Администартор
Группа: Администраторы
Сообщений: 8951
Награды: 29
Статус: Offline


[Бонусы за сообщения ]

AndreCo, ок, тогда смотрите на индюк, у меня его нет поэтому посмотреть ен могу.



Программирование на заказ || Наши Разработки

 
СообщениеAndreCo, ок, тогда смотрите на индюк, у меня его нет поэтому посмотреть ен могу.

Автор - expforex
Дата добавления - 10.10.2013 в 17:54

AndreCoДата: Четверг, 10.10.2013, 18:01 | Сообщение # 7
Трейдер - Рядовой
Группа: Пользователи
Сообщений: 6
Награды: 0
Статус: Offline


[Бонусы за сообщения ]

Вот:
ТФ М5

Прикрепления: What.mq4(2Kb)
 
СообщениеВот:
ТФ М5

Автор - AndreCo
Дата добавления - 10.10.2013 в 18:01

expforexДата: Четверг, 10.10.2013, 18:11 | Сообщение # 8
Главный Администартор
Группа: Администраторы
Сообщений: 8951
Награды: 29
Статус: Offline


[Бонусы за сообщения ]

полностью не разбирался с советником и индикатором ибо данный код никуда не годиться но даже он у меня открыл сделку 

может  название индикатора неправильное? в самом советнике 
может надо так 

   double indi1=iCustom(Symbol(),0,"What",0,shift);
   double indi2=iCustom(Symbol(),0,"What",0,shift+1);

Прикрепления: 8832259.png(139Kb)


Программирование на заказ || Наши Разработки

 
Сообщениеполностью не разбирался с советником и индикатором ибо данный код никуда не годиться но даже он у меня открыл сделку 

может  название индикатора неправильное? в самом советнике 
может надо так 

   double indi1=iCustom(Symbol(),0,"What",0,shift);
   double indi2=iCustom(Symbol(),0,"What",0,shift+1);

Автор - expforex
Дата добавления - 10.10.2013 в 18:11

AndreCoДата: Четверг, 10.10.2013, 21:50 | Сообщение # 9
Трейдер - Рядовой
Группа: Пользователи
Сообщений: 6
Награды: 0
Статус: Offline


[Бонусы за сообщения ]

Спасибо за помощь, с этим вопросом разобрался

 
СообщениеСпасибо за помощь, с этим вопросом разобрался

Автор - AndreCo
Дата добавления - 10.10.2013 в 21:50

expforexДата: Четверг, 10.10.2013, 22:27 | Сообщение # 10
Главный Администартор
Группа: Администраторы
Сообщений: 8951
Награды: 29
Статус: Offline


[Бонусы за сообщения ]

AndreCo, все таки неправильно был назван индикатор?



Программирование на заказ || Наши Разработки

 
СообщениеAndreCo, все таки неправильно был назван индикатор?

Автор - expforex
Дата добавления - 10.10.2013 в 22:27
Форум трейдеров » Скрипты Советники Индикаторы для Metatrader4/Metatrader5 » MT 4 MQL программирование, помощь. » Пересечение заданной линии (Как при описании условий для торговли описать пересечение не)
Страница 1 из 212»
Поиск:


WebMoney Яндекс цитирования.