Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Привет про-кодеры,
Я получаю предупреждение: "проверьте старшинство операторов на возможную ошибку; используйте круглые скобки для уточнения старшинства".
if ((STC115)||(STC185)&&(Ask>emaFilter && ADXmain>25))
{
OpenBuy();
}
Похоже, что оператор ..AND (Ask>emaFilter) также игнорируется MT4.
Не мог бы кто-нибудь подсказать?
Заранее спасибо!Возможно, вам следует написать это следующим образом:
if (((STC115) || (STC185)) && (Ask>emaFilter && ADXmain>25) )
Но в основном это зависит от того, что именно вы хотите проверить. Предупреждение появляется потому, что раньше приоритет && (и) и || (или) был разным - они его изменили, и теперь все эти логические сравнения должны быть проверены.
Возможно, вам следует написать так :
if (((STC115) || (STC185)) && (Ask>emaFilter && ADXmain>25)) )
Но это в основном зависит от того, что именно вы хотите протестировать. Предупреждение появляется потому, что раньше приоритет && (и) и || (или) был другим - они его изменили, и теперь все эти логические сравнения должны быть проверены.Привет, Младен,
большое спасибо за ваше предложение. Я обязательно попробую! Вы всегда очень полезны!
Если говорить простыми словами, то все три скобки должны стать истинными до того, как советник откроет сделку.
Думаю, ваш код обеспечит эту функциональность.
С уважением,
T.
Кодеры,
Не мог бы кто-нибудь помочь мне со следующим?
Я использую скрипт волны Эллиота для ручной маркировки волн. Скрипт размещает на графике 8 различных объектов (i,ii,iii,iv,v,a,b,c).
Все работает хорошо, но удаление объектов требует много работы. Потому что мне приходится нажимать на каждый объект (i,ii,iii,iv,v,a,b,c), чтобы удалить их. Я хотел бы добавить что-то в код, что позволит мне выделить все объекты (i,ii,iii,iv,v,a,b,c) одним щелчком мыши. Я уже искал, но не смог найти нужную мне функцию.
(Я не ищу скрипт, который удаляет все объекты на графике).
Заранее спасибо
//+------------------------------------------------------------------+
#property version "1.00"
#property strict
#include
//+------------------------------------------------------------------+
//| Script program start function |
//+------------------------------------------------------------------+
extern string Text1 = "(i)"; // Enter Text to place on screen
extern string Text2 = "(ii)"; // Enter Text to place on screen
extern string Text3 = "(iii)"; // Enter Text to place on screen
extern string Text4 = "(iv)"; // Enter Text to place on screen
extern string Text5 = "(v)"; // Enter Text to place on screen
extern string Text6 = "(a)"; // Enter Text to place on screen
extern string Text7 = "(b)"; // Enter Text to place on screen
extern string Text8 = "(c)"; // Enter Text to place on screen
extern string Text_font="Arial Bold"; // font of text
extern int Text_fontsize = 14; // size of text
extern color Text_color = Red; // color of text
int TextBarsAhead2 = 7; // # bars to space 2nd letter from first
int TextBarsAhead3 = 14; // # bars to space 3rd letter from first
int TextBarsAhead4 = 21; // # bars to space 4th letter from first
int TextBarsAhead5 = 28; // # bars to space 5th letter from first
int TextBarsAhead6 = 35; // # bars to space 6th letter from first
int TextBarsAhead7 = 42; // # bars to space 7th letter from first
int TextBarsAhead8 = 49; // # bars to space 8th letter from first
//+------------------------------------------------------------------+
//+-----------------------------SCRIPT CODE--------------------------+
int OnStart(){
double price = WindowPriceOnDropped(); // find the price point where dropped
datetime Time1 = WindowTimeOnDropped(); // find the time point where dropped
datetime TimeNow = TimeCurrent(); // get the current time ( makes name unique)
datetime Time2 = (int)Time1+TextBarsAhead2*(int)Period()*60;
datetime Time3 = (int)Time1+TextBarsAhead3*(int)Period()*60;
datetime Time4 = (int)Time1+TextBarsAhead4*(int)Period()*60;
datetime Time5 = (int)Time1+TextBarsAhead5*(int)Period()*60;
datetime Time6 = (int)Time1+TextBarsAhead6*(int)Period()*60;
datetime Time7 = (int)Time1+TextBarsAhead7*(int)Period()*60;
datetime Time8 = (int)Time1+TextBarsAhead8*(int)Period()*60;
string gap=" "; // spacing between text characters
string text=Text1+gap+Text2+gap+Text3+gap+Text4+gap+Text5; // put the text in a line
TextToPrint ("Wave labels 1 " + (string)TimeNow, Text1, Text_fontsize, Text_font, Text_color, Time1, price); //print 1st letter
TextToPrint ("Wave labels 2 " + (string)TimeNow, Text2, Text_fontsize, Text_font, Text_color, Time2, price); //print 1st letter
TextToPrint ("Wave labels 3 " + (string)TimeNow, Text3, Text_fontsize, Text_font, Text_color, Time3, price); //print 1st letter
TextToPrint ("Wave labels 4 " + (string)TimeNow, Text4, Text_fontsize, Text_font, Text_color, Time4, price); //print 1st letter
TextToPrint ("Wave labels 5 " + (string)TimeNow, Text5, Text_fontsize, Text_font, Text_color, Time5, price); //print 1st letter
TextToPrint ("Wave labels 6 " + (string)TimeNow, Text6, Text_fontsize, Text_font, Text_color, Time6, price); //print 1st letter
TextToPrint ("Wave labels 7 " + (string)TimeNow, Text7, Text_fontsize, Text_font, Text_color, Time7, price); //print 1st letter
TextToPrint ("Wave labels 8 " + (string)TimeNow, Text8, Text_fontsize, Text_font, Text_color, Time8, price); //print 1st letter
return(0);
}
//+------------------------------------------------------------------+
void TextToPrint(string TextName,string LabelText,int FontSize,string FontName,color TextColor,datetime Time0,double Price0)
{
if(StringLen(LabelText)>1){
ObjectCreate(TextName,OBJ_TEXT,0,Time0,Price0);
ObjectSetText(TextName,LabelText,FontSize,FontName,TextColor);
}
}
//+------------------------------------------------------------------+Кодеры,
Не мог бы кто-нибудь помочь мне со следующим?
Я использую скрипт волны Эллиота для ручной маркировки волн. Скрипт размещает на графике 8 различных объектов (i,ii,iii,iv,v,a,b,c).
Все работает хорошо, но удаление объектов требует много работы. Потому что мне приходится нажимать на каждый объект (i,ii,iii,iv,v,a,b,c), чтобы удалить их. Я хотел бы добавить что-то в код, что позволит мне выделить все объекты (i,ii,iii,iv,v,a,b,c) одним щелчком мыши. Я уже искал, но не смог найти нужную мне функцию.
(Я не ищу скрипт, который удаляет все объекты на графике).
Заранее спасибо
//+------------------------------------------------------------------+
#property version "1.00"
#property strict
#include
//+------------------------------------------------------------------+
//| Script program start function |
//+------------------------------------------------------------------+
extern string Text1 = "(i)"; // Enter Text to place on screen
extern string Text2 = "(ii)"; // Enter Text to place on screen
extern string Text3 = "(iii)"; // Enter Text to place on screen
extern string Text4 = "(iv)"; // Enter Text to place on screen
extern string Text5 = "(v)"; // Enter Text to place on screen
extern string Text6 = "(a)"; // Enter Text to place on screen
extern string Text7 = "(b)"; // Enter Text to place on screen
extern string Text8 = "(c)"; // Enter Text to place on screen
extern string Text_font="Arial Bold"; // font of text
extern int Text_fontsize = 14; // size of text
extern color Text_color = Red; // color of text
int TextBarsAhead2 = 7; // # bars to space 2nd letter from first
int TextBarsAhead3 = 14; // # bars to space 3rd letter from first
int TextBarsAhead4 = 21; // # bars to space 4th letter from first
int TextBarsAhead5 = 28; // # bars to space 5th letter from first
int TextBarsAhead6 = 35; // # bars to space 6th letter from first
int TextBarsAhead7 = 42; // # bars to space 7th letter from first
int TextBarsAhead8 = 49; // # bars to space 8th letter from first
//+------------------------------------------------------------------+
//+-----------------------------SCRIPT CODE--------------------------+
int OnStart(){
double price = WindowPriceOnDropped(); // find the price point where dropped
datetime Time1 = WindowTimeOnDropped(); // find the time point where dropped
datetime TimeNow = TimeCurrent(); // get the current time ( makes name unique)
datetime Time2 = (int)Time1+TextBarsAhead2*(int)Period()*60;
datetime Time3 = (int)Time1+TextBarsAhead3*(int)Period()*60;
datetime Time4 = (int)Time1+TextBarsAhead4*(int)Period()*60;
datetime Time5 = (int)Time1+TextBarsAhead5*(int)Period()*60;
datetime Time6 = (int)Time1+TextBarsAhead6*(int)Period()*60;
datetime Time7 = (int)Time1+TextBarsAhead7*(int)Period()*60;
datetime Time8 = (int)Time1+TextBarsAhead8*(int)Period()*60;
string gap=" "; // spacing between text characters
string text=Text1+gap+Text2+gap+Text3+gap+Text4+gap+Text5; // put the text in a line
TextToPrint ("Wave labels 1 " + (string)TimeNow, Text1, Text_fontsize, Text_font, Text_color, Time1, price); //print 1st letter
TextToPrint ("Wave labels 2 " + (string)TimeNow, Text2, Text_fontsize, Text_font, Text_color, Time2, price); //print 1st letter
TextToPrint ("Wave labels 3 " + (string)TimeNow, Text3, Text_fontsize, Text_font, Text_color, Time3, price); //print 1st letter
TextToPrint ("Wave labels 4 " + (string)TimeNow, Text4, Text_fontsize, Text_font, Text_color, Time4, price); //print 1st letter
TextToPrint ("Wave labels 5 " + (string)TimeNow, Text5, Text_fontsize, Text_font, Text_color, Time5, price); //print 1st letter
TextToPrint ("Wave labels 6 " + (string)TimeNow, Text6, Text_fontsize, Text_font, Text_color, Time6, price); //print 1st letter
TextToPrint ("Wave labels 7 " + (string)TimeNow, Text7, Text_fontsize, Text_font, Text_color, Time7, price); //print 1st letter
TextToPrint ("Wave labels 8 " + (string)TimeNow, Text8, Text_fontsize, Text_font, Text_color, Time8, price); //print 1st letter
return(0);
}
//+------------------------------------------------------------------+
void TextToPrint(string TextName,string LabelText,int FontSize,string FontName,color TextColor,datetime Time0,double Price0)
{
if(StringLen(LabelText)>1){
ObjectCreate(TextName,OBJ_TEXT,0,Time0,Price0);
ObjectSetText(TextName,LabelText,FontSize,FontName,TextColor);
}
}
//+------------------------------------------------------------------+xtractalpha
В процедуре deinit() добавьте часть очистки.
В вашем случае это будет ObjectDelete(objectName) для каждого объекта, который создал ваш код.
Здравствуйте Младен
Не могли бы вы помочь с ошибками компиляции в следующих случаях
Здравствуйте, Младен Не могли бы вы помочь с ошибками компиляции в следующих случаях
Проверьте сейчас: genie_stoch_rsittt_1.mq4
Дорогой Младен
Спасибо за этот замечательный инди.
Возможна ли версия с гистограммой???
Уважаемый Младен
Спасибо за эту замечательную инди
Возможна ли версия гистограммы?Это возможно купить, тогда две сигнальные линии должны быть полностью проигнорированы и вырезаны
Можно купить, тогда две сигнальные линии должны быть полностью проигнорированы и вырезаны
Нет проблем.... мне нужна только эта красно-зеленая линия
(красно-зеленая линия как гистограмма)
Заранее спасибо
Здравствуйте, Младен,
Я добавил в советник код для трейлинг стопа. Я получаю две ошибки компиляции. Инструкции по добавлению кода были:
Как использовать?
Очень просто. Поместите приведенный ниже код в любую часть программы советника и вызовите функциюtrail2(#ticket) в функции Start().ticket = это билет вашего ордера, это может быть ордер на покупку или продажу. Но это должен быть живой ордер, а не отложенный.
Например.
{...(ваш код)
ticket=ordersend(...)
...
}
..
trail2(ticket)
или trail2(ticket, 300, 40, 250, 100)
..