Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 6. - страница 909

 
halk2009:

Здравствуйте,

Подскажите пожалуйста, почему возникают предупреждения - implicit conversion from 'string' to 'number'  и implicit conversion from 'number' to 'string' в местах расположения переменных (после команды int и далее после message).  Это наверное одно и тоже предупреждение? я плохо разбираюсь в программировании.

И скажите ещё, если код работает, а есть только предупреждения это плохо? на что влияет?


Фрагмент кода:

А почитайте, чем отличается стринг и интегер, наверное всё-таки надо переменные типом стринг объявлять, раз уж на вывод идут

string sell1 = DoubleToStr( (Bid - Price_Line)/Point,0);
string sell2=DoubleToStr( (Bid - Price_Line2)/Point,0);
string rsi=DoubleToStr(ExtRSIBuffer[0] - Price_RSI_Line, 2);
 
evillive:

А почитайте, чем отличается стринг и интегер, наверное всё-таки надо переменные типом стринг объявлять, раз уж на вывод идут

Да!) это я уже понял, исправил, но ушла только часть предупреждений. Но там где в коде TimeCurrent()... ,sell1>0... , sell2>0... , rsi>0  - осталось предупреждение implicit conversion from 'number' to 'string'
 
 
halk2009:
Да!) это я уже понял, исправил, но ушла только часть предупреждений. Но там где в коде TimeCurrent()... ,sell1>0... , sell2>0... , rsi>0  - осталось предупреждение implicit conversion from 'number' to 'string'
 

Ну так приводите тип данных к типу переменных , в которые эти данные записываете.
 
Здравствуйте. Я не пойму, если объекту кнопка задать цвет фона (синий) и рамки (красный) то не видно нажата она или нет. В документации нет упоминания о смене цвета при нажатии.
 
evillive:
Ну так приводите тип данных к типу переменных , в которые эти данные записываете.

Нули заключил в двойные ковычки, а по выводу даты написал через переменную string MT_time = TimeToString(TimeCurrent());

Спасибо! Теперь всё работает!

 
Как узнать ограничения по символу (полный доступ, только закрытие и пр.)? Конечно программно, впрочем я не знаю и как глазками это сделать.
 
joo:
Как узнать ограничения по символу (полный доступ, только закрытие и пр.)? Конечно программно, впрочем я не знаю и как глазками это сделать.

Глазками - в списке символов смотреть на подсказку при наведении курсора на символ.


А ещё запрещённый к торговле символ часто закрашивают более бледно, но это от ДЦ зависит.

Программно:

if(SymbolInfoInteger(_Symbol,SYMBOL_TRADE_MODE)==SYMBOL_TRADE_MODE_DISABLED)
    Print("Торговать '",_Symbol,"' запрещено, только чтение");
 

Ребят , прошу помочь . Пишу свой первый советник который неимоверно прост , но и тут чето идет не так. 

1.Выдает 2 предупреждения

2.Не открывает ордеров . Там ошибка в данных стохастика, я ее исправил, все равно выдает теже ошибки

Прошу помочь. 

 

Добрый день, ниже часть кода, принты проходят - причем все, в независимости от существующего ордера, на Комменте значения запретов "Stop....." все постоянно 0. Что не правильно написано в цикле, подскажите пожалуйста. В тестере.  

for (index=0;index<total;index++)
{
if(OrderSelect(index,SELECT_BY_POS)==true && OrderSymbol()==Symbol())
{
if(OrderType()==OP_SELL||OrderType()==OP_SELLSTOP) StopOpenOrderSell=true;Print("Есть селл");
if(OrderType()!=OP_SELL||OrderType()!=OP_SELLSTOP) StopOpenOrderSell=false;Print("Нет селл");
if(OrderType()==OP_BUY||OrderType()==OP_BUYSTOP) StopOpenOrderBuy=true;Print("Есть бай");
if(OrderType()!=OP_BUY||OrderType()!=OP_BUYSTOP)StopOpenOrderBuy=false;Print("Нет бай");
}
}
 
Pokrov:

Добрый день, ниже часть кода, принты проходят - причем все, в независимости от существующего ордера, на Комменте значения запретов "Stop....." все постоянно 0. Что не правильно написано в цикле, подскажите пожалуйста. В тестере.  

 

Фигурных скобок не хватает.

for (index=0;index<total;index++)
{
if(OrderSelect(index,SELECT_BY_POS)==true && OrderSymbol()==Symbol())
{
if(OrderType()==OP_SELL||OrderType()==OP_SELLSTOP) {StopOpenOrderSell=true;Print("Есть селл");}
if(OrderType()!=OP_SELL||OrderType()!=OP_SELLSTOP) {StopOpenOrderSell=false;Print("Нет селл");}
if(OrderType()==OP_BUY||OrderType()==OP_BUYSTOP) {StopOpenOrderBuy=true;Print("Есть бай");}
if(OrderType()!=OP_BUY||OrderType()!=OP_BUYSTOP){StopOpenOrderBuy=false;Print("Нет бай");}
}
}