Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Это гораздо лучший метод. Я возился с if (Ask == OrderTakeProfit()) {...}, перебирая каждый открытый ордер, который, как мне кажется, был немного неадекватным при обратном тестировании. Спасибо!
Как закомментировать число, которое закомментирует строку?
string 2;
2="EURUSD";
КАК МНЕ СОЗДАТЬ КОММЕНТАРИЙ, ГДЕ 2 БУДЕТ КОММЕНТИРОВАТЬСЯ КАК EURUSD НА ГРАФИКЕ?
ПОЖАЛУЙСТА, ПОМОГИТЕ - ЗАПУТАЛСЯ!
ДЭЙВ
Вы не можете сделать это в mql.
В mql имя переменной не может быть числом и не может начинаться с числа, поэтому единственное решение - добавить перед "2" букву, знак подчеркивания или другой разрешенный символ
строка 2;
2="EURUSD";
КАК МНЕ СОЗДАТЬ КОММЕНТАРИЙ, ГДЕ 2 БУДЕТ КОММЕНТИРОВАТЬСЯ КАК EURUSD НА ГРАФИКЕ?
ПОЖАЛУЙСТА, ПОМОГИТЕ - ЗАПУТАЛСЯ!
ДЭЙВКак сделать массив в порядке убывания на следующем:
double D0=0,D1=0,D2=0,D3=0,D4=0,D5=0,D6=0,D7=0);
D0=iCustom(NULL,0, "XYZ",0,0);
D1=iCustom(NULL,0, "XYZ",1,0);
D2=iCustom(NULL,0, "XYZ",2,0);
D3=iCustom(NULL,0, "XYZ",3,0);
D4=iCustom(NULL,0, "XYZ",4,0);
D5=iCustom(NULL,0, "XYZ",5,0);
D6=iCustom(NULL,0, "XYZ",6,0);
D7=iCustom(NULL,0, "XYZ",7,0);
КАК МНЕ ИНИЦИАЛИЗИРОВАТЬ УБЫВАЮЩИЙ МАССИВ ЗНАЧЕНИЙ (D0,D1,D2,D3,D4,D5,D6,D7)???? КАК МНЕ ОБРАТИТЬСЯ К РЕЗУЛЬТАТАМ МАССИВА В МОЕЙ EA?
СПАСИБО ЗА ПОМОЩЬ - Я БУДУ ОЧЕНЬ РАД, ЕСЛИ СМОГУ ПРЕОДОЛЕТЬ ЭТУ ПРОБЛЕМУ!
Дэйв
Если вам нужны только отсортированные значения, вы можете сделать что-то вроде этого :
array[0]=iCustom(NULL,0,"XYZ",0,0);
array[1]=iCustom(NULL,0,"XYZ",1,0);
array[2]=iCustom(NULL,0,"XYZ",2,0);
array[3]=iCustom(NULL,0,"XYZ",3,0);
array[4]=iCustom(NULL,0,"XYZ",4,0);
array[5]=iCustom(NULL,0,"XYZ",5,0);
array[6]=iCustom(NULL,0,"XYZ",6,0);
array[7]=iCustom(NULL,0,"XYZ",7,0);
ArraySort(array,WHOLE_ARRAY,0,MODE_ASCEND);
и тогда отсортированные значения будут находиться в массиве "array"
double D0=0,D1=0,D2=0,D3=0,D4=0,D5=0,D6=0,D7=0);
D0=iCustom(NULL,0, "XYZ",0,0);
D1=iCustom(NULL,0, "XYZ",1,0);
D2=iCustom(NULL,0, "XYZ",2,0);
D3=iCustom(NULL,0, "XYZ",3,0);
D4=iCustom(NULL,0, "XYZ",4,0);
D5=iCustom(NULL,0, "XYZ",5,0);
D6=iCustom(NULL,0, "XYZ",6,0);
D7=iCustom(NULL,0, "XYZ",7,0);
КАК МНЕ ИНИЦИАЛИЗИРОВАТЬ УБЫВАЮЩИЙ МАССИВ ЗНАЧЕНИЙ (D0,D1,D2,D3,D4,D5,D6,D7)???? КАК МНЕ ОБРАТИТЬСЯ К РЕЗУЛЬТАТАМ МАССИВА В МОЕЙ EA?
СПАСИБО ЗА ПОМОЩЬ - Я БУДУ ОЧЕНЬ РАД, ЕСЛИ МНЕ УДАСТСЯ ПРЕОДОЛЕТЬ ЭТО "БУТЫЛОЧНОЕ ГОРЛЫШКО"!
ДэйвЕсли вам нужны только отсортированные значения, вы можете сделать что-то вроде этого :
array[0]=iCustom(NULL,0,"XYZ",0,0);
array[1]=iCustom(NULL,0,"XYZ",1,0);
array[2]=iCustom(NULL,0,"XYZ",2,0);
array[3]=iCustom(NULL,0,"XYZ",3,0);
array[4]=iCustom(NULL,0,"XYZ",4,0);
array[5]=iCustom(NULL,0,"XYZ",5,0);
array[6]=iCustom(NULL,0,"XYZ",6,0);
array[7]=iCustom(NULL,0,"XYZ",7,0);
ArraySort(array,WHOLE_ARRAY,0,MODE_ASCEND);
WOW!!!!!!!!!!!! Я бы никогда не догадался об этом - спасибо большое!!!
Пожалуйста, помогите заставить этот массив работать - озадачен!!!
GBP=(iMA("GBPUSD",0,PerAvr,0,MODE_LWMA,PRICE_CLOSE,i)-iMA("GBPUSD",0,PerAvr,0,MODE_LWMA,PRICE_CLOSE,i+Delta)); //LIME
double array[7];
array[0]=iCustom(NULL,0,"EURUSD",0,0);
array[1]=iCustom(NULL,0,"GBPUSD",1,0);
array[2]=iCustom(NULL,0,"AUDUSD",2,0);
array[3]=iCustom(NULL,0,"USDCHF",3,0);
array[4]=iCustom(NULL,0,"USDJPY",4,0);
array[5]=iCustom(NULL,0,"NZDUSD",5,0);
array[6]=iCustom(NULL,0,"USDCAD",6,0);
ArraySort(array,WHOLE_ARRAY,0,MODE_ASCEND);
a=array[0];b=array[1];c=array[2];d=array[3];e=array[4];f=array[5];g=array[6];
{
ObjectCreate("DISPLAY10", OBJ_LABEL, 1, 0, 0);
ObjectSetText("DISPLAY10", DoubleToStr(a,0), 10, "ArialBold", Red);//"EURUSD =" ,
ObjectSet("DISPLAY10", OBJPROP_CORNER, 1);
ObjectSet("DISPLAY10", OBJPROP_XDISTANCE, 80);
ObjectSet("DISPLAY10", OBJPROP_YDISTANCE, 20);
//return(0);
}
{
ObjectCreate("DISPLAY20", OBJ_LABEL, 1, 0, 0);
ObjectSetText("DISPLAY20", DoubleToStr(b,0), 10, "ArialBold", Lime);//"GBPUSD =" ,
ObjectSet("DISPLAY20", OBJPROP_CORNER, 1);
ObjectSet("DISPLAY20", OBJPROP_XDISTANCE, 80);
ObjectSet("DISPLAY20", OBJPROP_YDISTANCE, 40);
//return(0);
}
[PHP]Я пытался получить значение для a,b и отобразить его, но отображается только 0 для a, 0 для b и все остальные значения c-f. Я надеялся получить порядок возрастания валют. Не могли бы вы помочь разобраться, почему это не работает?
Хотел бы я купить вам пиво за вашу помощь!
Проверьте строки, которые выглядят следующим образом:
Эта строка означает, что у вас есть индикатор с именем "EURUSD", и что вы вызываете его, чтобы получить некоторое значение и присвоить его первому элементу "массива". Если его не существует (индикатора с таким названием, что, как я предполагаю, верно), то элементу массива будет присвоено значение 0. Что именно вы пытаетесь получить с помощью этой строки?
EUR=(iMA("EURUSD",0,PerAvr,0,MODE_LWMA,PRICE_CLOSE,i)-iMA("EURUSD",0,PerAvr,0,MODE_LWMA,PRICE_CLOSE,i+Delta)); //RED
GBP=(iMA("GBPUSD",0,PerAvr,0,MODE_LWMA,PRICE_CLOSE,i)-iMA("GBPUSD",0,PerAvr,0,MODE_LWMA,PRICE_CLOSE,i+Delta)); //LIME
двойной массив[7];
array[0]=iCustom(NULL,0, "EURUSD",0,0);
array[1]=iCustom(NULL,0, "GBPUSD",1,0);
array[2]=iCustom(NULL,0, "AUDUSD",2,0);
array[3]=iCustom(NULL,0, "USDCHF",3,0);
array[4]=iCustom(NULL,0, "USDJPY",4,0);
array[5]=iCustom(NULL,0, "NZDUSD",5,0);
array[6]=iCustom(NULL,0, "USDCAD",6,0);
ArraySort(array,WHOLE_ARRAY,0,MODE_ASCEND);
a=array[0];b=array[1];c=array[2];d=array[3];e=array[4];f=array[5];g=array[6];
{
ObjectCreate("DISPLAY10", OBJ_LABEL, 1, 0, 0);
ObjectSetText("DISPLAY10", DoubleToStr(a,0), 10, "ArialBold", Red);//"EURUSD =" ,
ObjectSet("DISPLAY10", OBJPROP_CORNER, 1);
ObjectSet("DISPLAY10", OBJPROP_XDISTANCE, 80);
ObjectSet("DISPLAY10", OBJPROP_YDISTANCE, 20);
//return(0);
}
{
ObjectCreate("DISPLAY20", OBJ_LABEL, 1, 0, 0);
ObjectSetText("DISPLAY20", DoubleToStr(b,0), 10, "ArialBold", Lime);//"GBPUSD =" ,
ObjectSet("DISPLAY20", OBJPROP_CORNER, 1);
ObjectSet("DISPLAY20", OBJPROP_XDISTANCE, 80);
ObjectSet("DISPLAY20", OBJPROP_YDISTANCE, 40);
//return(0);
}
Я пытался получить значение для a,b и отобразить его, но отображается только 0 для a, 0 для b и все остальные значения c-f. Я надеялся получить порядок возрастания валют. Не могли бы вы помочь разобраться, почему это не работает?
Хотел бы я угостить вас пивом за вашу помощь!Проверьте строки, которые идут вот так:
Массив должен получить значение из "EURUSD", затем сделать восходящий порядок от низкого к высокому по сравнению с другими валютами, а затем вывести рейтинг низких значений на экран. EURUSD, как и другие валюты, просто дает мне 0.00(?). Что я делаю не так???
Сделайте это следующим образом:
and so on. That way array will be filled with close prices for symbols you select. If you are using a custom indicator then the form is the following :
[PHP]array[0]=iCustom("EURUSD",0,"indicator name",0,0);Массив должен получить значение из "EURUSD", затем сделать восходящий порядок от низкого к высокому по сравнению с другими валютами, а затем вывести рейтинг низких значений на экран. EURUSD, как и другие валюты, просто дает мне 0.00(???). Что я делаю не так???