Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Нужна помощь для оповещения
привет,
Во-первых: извините за мой английский. Я действительно плохо говорю по-английски.
Итак, мой вопрос заключается в следующем: как я могу запрограммировать сигнал алерт, если Тенкан и Сенкоу пересекаются друг с другом? Длинный и короткий.
кто-нибудь может мне помочь, пожалуйста!!!
Большое спасибо,
пока Бенджамин
Небольшая проблема...
Может ли кто-нибудь помочь мне сделать так, чтобы функция действовала по принципу fallowing-.
У меня есть: A=0
Когда индикатор достигает определенной точки nr1: A=1.
А когда индикатор вышел из этой точки: A=1 (A все еще сохраняет свое значение).
Когда индикатор попадает в определенную точку nr2: A=0.
Любые идеи очень приветствуются!
Спасибо.
Может ли кто-нибудь помочь мне сделать функцию, чтобы действовать падающей...
У меня есть: A=0
Когда индикатор попадает в определенную точку nr1: A=1.
А когда индикатор покинул эту точку: A=1 (A все еще сохраняет свое значение).
Когда индикатор попадает в определенную точку nr2: A=0.
Любые идеи очень приветствуются!
Спасибо.Трудно понять, чего именно вы хотите, имея так мало информации.
Как насчет
A=0;
if (Bid >= nr1 && Bid < nr2) A=1;
if (Bid >= nr2) A=0;
Замените Bid на O,H,L,C или любую другую переменную, которую вы хотите.
Но вы также должны подумать о том, что произойдет, если цена достигнет nr1, а затем упадет вместо того, чтобы перейти к nr2.
Просто помните, что я только предполагаю, чего вы хотите.
Надеюсь, это была помощь
Как получить доступ к файлу на жестком диске, который не находится в папке /experts/files?
btw, можно ли в mql4 выполнять команды windows (например, копировать)? может быть с помощью dll файла?
Заранее спасибо :-)
Re swgman1
Спасибо, swgman1!
... но для меня это все еще проблема.
Что я пытаюсь сказать...
Начало
Значение индикатора1 равно 0
Значение индикатора2 равно 0
A=0
Шаг1
Значение индикатора1 равно 1
Значение индикатора2 равно 0
A=1
Шаг2
Значение индикатора1 равно 0
Значение индикатора2 равно 0
A=1
Шаг3
Значение индикатора1 равно 0
Значение индикатора2 равно 1
A=0
Надеюсь, это более понятно.
Спасибо.
Странный цикл...
Я сделал странный цикл в своей тестовой программе:
int A=1
for(A=0, A=1; A==(условие покупки); A++)
Купить if(A=1)
Close if(Bid>0)
Он торгует после исчезновения условия... НО, она не закрывает сделки сразу после открытия (как должна - Bid>0). Теперь моя программа закрывает все сделки только при появлении условия покупки.
Что на самом деле делает этот цикл?
Я сделал какой-то странный цикл в своей тестовой программе:
int A=1
for(A=0, A=1; A==(условие покупки); A++)
Купить if(A=1)
Закрыть, если(Bid>0)
Он торгует после исчезновения условия... НО, она не закрывает сделки сразу после открытия (как должна - Bid>0). Теперь моя программа закрывает все сделки только при появлении условия покупки.
Что на самом деле делает этот цикл?Привет, Охир,
Я никогда не изучал написание советников, я занимался только индикаторами, так что я не лучший человек, чтобы спросить.
Однако в цикле for вы указываете начальную точку (номер бара), затем условие для продолжения цикла, затем увеличиваете начальную точку для следующего цикла.
for (x=bars-1;x>0;x--) здесь будут перебираться все бары на графике от первого до последнего.
for (x=0;x<bars-1;x++) зацикливается в обратном направлении.
x - это просто счетчик цикла
Ваш цикл начинается с бара 0 или 1 (не уверен, как он работает с запятой), затем, пока ваш счетчик равен условию покупки (невозможно, я думаю), продолжайте цикл, затем увеличивайте счетчик.
Попробуйте что-нибудь вроде
for (x=0;x<=bars-1;x++)
{
if (A[x]==1) OrderSend(blah,blah,blah)
if (Bid[x]>0) OrderClose(blah,.....)
}
Я не знаю, поможет ли что-нибудь из этого, но это лучшее, что я могу сделать. Возможно, кто-то с большими знаниями сможет помочь больше.
Удачи
Swagman
Помогите пожалуйста
Понял - отмените это сообщение
Metatrader и отрицательные числа
Кто-нибудь знает лучший способ закодировать это????. Не могу заставить metatrader считать точные числа, некоторые из них положительные, а другие отрицательные.
if (Use_Entry_Delay == true) {
//if (trendis == 0 || trendis == -0) {
//EntryAllowed = True;
//Print ("Вход разрешен");
//}
if (trendis == 0.0010){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == 0.0011){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == 0.0012){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == 0.0013){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == 0.0014){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == 0.0015){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == 0.0016){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == 0.0017){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == 0.0018){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == 0.0019){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == 0.0020){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == 0.0021){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == 0.0022){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == 0.0023){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == 0.0024){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == 0.0025){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == 0.0026){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == -0.0010){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == -0.0011){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == -0.0012){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == -0.0013){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == -0.0014){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == -0.0015){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == -0.0016){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == -0.0017){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == -0.0018){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == -0.0019){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == -0.0020){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == -0.0021){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == -0.0022){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == -0.0023){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == -0.0024){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == -0.0025){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == -0.0026){ EntryAllowed= true; Print ("Вход разрешен"); }
}else{
EntryAllowed = false;
Print ("Вход запрещен");
}
}
-----------------------------------------
Итак, если значение -0.0010 или ниже, не делайте этого.
если он выше 0.0026 или выше -0.0026, не делайте этого.
Перепробовал много всего, не могу заставить его сделать это.
Помогите, пожалуйста, пожалуйста, пожалуйста.
Кто-нибудь знает лучший способ закодировать это? Не могу заставить metatrader считать точные числа, некоторые из них положительные, а другие отрицательные.
if (Use_Entry_Delay == true) {
//if (trendis == 0 || trendis == -0) {
//EntryAllowed = True;
//Print ("Вход разрешен");
//}
if (trendis == 0.0010){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == 0.0011){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == 0.0012){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == 0.0013){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == 0.0014){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == 0.0015){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == 0.0016){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == 0.0017){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == 0.0018){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == 0.0019){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == 0.0020){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == 0.0021){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == 0.0022){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == 0.0023){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == 0.0024){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == 0.0025){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == 0.0026){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == -0.0010){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == -0.0011){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == -0.0012){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == -0.0013){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == -0.0014){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == -0.0015){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == -0.0016){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == -0.0017){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == -0.0018){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == -0.0019){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == -0.0020){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == -0.0021){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == -0.0022){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == -0.0023){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == -0.0024){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == -0.0025){ EntryAllowed= true; Print ("Вход разрешен"); }
if (trendis == -0.0026){ EntryAllowed= true; Print ("Вход разрешен"); }
}else{
EntryAllowed = false;
Print ("Вход запрещен");
}
}
-----------------------------------------
Итак, если значение -0.0010 или ниже, не делайте этого.
если он выше 0.0026 или выше -0.0026, не делайте этого.
Пробовал много чего, не могу добиться этого.
Любая помощь, пожалуйста, пожалуйста, пожалуйста.