Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Потому что нумерация начинается с нуля.
Сергей, поясните, пожалуйста.
В этом случае нужно писать так - for(int i=0; i<=OrdersTotal(); i++)
а в обратном порядке так - for(int i=OrdersTotal()-1; i>=0; i--) и в обоих случаях будут перебраны все ордера.
Я правильно понял?
Сергей, поясните, пожалуйста.
В этом случае нужно писать так - for(int i=0; i<=OrdersTotal(); i++)
а в обратном порядке так - for(int i=OrdersTotal()-1; i>=0; i--) и в обоих случаях будут перебраны все ордера.
Я правильно понял?
for(int i=0; i<OrdersTotal(); i++)
Сергей, поясните, пожалуйста.
В этом случае нужно писать так - for(int i=0; i<=OrdersTotal(); i++)
а в обратном порядке так - for(int i=OrdersTotal()-1; i>=0; i--) и в обоих случаях будут перебраны все ордера.
Я правильно понял?
Судя по всему я не совсем корректно написал код:
if(ObjectGet(name,OBJPROP_COLOR)==clrYellow && (int)ObjectGet(name,OBJPROP_STYLE)==0 && ObjectGet(name,OBJPROP_TYPE)==2) {
nameNew=StringSubstr(ObjectName(i), 0, 6); //Print(" Обрезали имя найденного объекта - ",nameNew);
nameNew=StrToDouble(DoubleToStr(nameNew,0)+1); //Print(" Получили новое имя - ",nameNew);
После компиляции мне было сказано, что я троечник вот такими словами - implicit conversion from 'string' to 'number'.
Что сделать, чтобы перейти в отличники?
P.S.
Изначально имя объекта состоит только из цифр без каких либо символов.
Судя по всему я не совсем корректно написал код:
if(ObjectGet(name,OBJPROP_COLOR)==clrYellow && (int)ObjectGet(name,OBJPROP_STYLE)==0 && ObjectGet(name,OBJPROP_TYPE)==2) {
nameNew=StringSubstr(ObjectName(i), 0, 6); //Print(" Обрезали имя найденного объекта - ",nameNew);
nameNew=StrToDouble(DoubleToStr(nameNew,0)+1); //Print(" Получили новое имя - ",nameNew);
После компиляции мне было сказано, что я троечник вот такими словами - implicit conversion from 'string' to 'number'.
Что сделать, чтобы перейти в отличники?
Во-первых, научиться пользоваться переводчиком.
implicit conversion from 'string' to 'number' = неявное преобразование из "строки" в "число".
Во-вторых, взглянуть на строку для которой это сообщение и понять, где же происходит это "преобразование" (а в программировании оно называется - приведение типов).
Подсказка: посмотрите в помоще параметры каких типов ожидает получить функция DoubleToStr.
Во-первых, научиться пользоваться переводчиком.
implicit conversion from 'string' to 'number' = неявное преобразование из "строки" в "число".
Во-вторых, взлянуть на строку для которой это сообщение и понять, где же происходит это "преобразование" (а в программировании оно называется - приведение типов).
Подсказка: посмотрите в помоще параметры каких типов ожидает получить функция DoubleToStr.
Оооо, да я двоечник, оказывается!
Спасибо, PapaYozh, разобрался.
Вот что я навоял. Цель: найти объект на другом графике с таймфреймом М1.
for(long chart_id = ChartFirst(); chart_id != -1; chart_id = ChartNext(chart_id))
{
ENUM_TIMEFRAMES period = ChartPeriod(chart_id);
if(period == PERIOD_M1)
Print(" Нашли chart_id - ",chart_id);
int obj_total = ObjectsTotal(chart_id, 0, OBJ_HLINE);
string name;
for(int i=0; i<obj_total; i++)
{
name = ObjectName(i);
if(ObjectGet(name,OBJPROP_COLOR)==clrWhite && ObjectGet(name,OBJPROP_TYPE)==OBJ_HLINE)
{
Print(" Нашли объект", name);
}
}
}
В итоге работает только до нахождения chart_id нужного графика, а объект не ищет.
Подскажите в чем ошибка, пожалуйста.
Вот что я навоял. Цель: найти объект на другом графике с таймфреймом М1.
В итоге работает только до нахождения chart_id нужного графика, а объект не ищет.
Подскажите в чем ошибка, пожалуйста.
1. Научитесь вставлять код.
2. Привыкайте использовать функции языка MQL5.
Вот так работает
3. Если в ObjectsTotal указываете тип объекта, то обязательно надо указывать тип объекта в функциях получения свойств объекта.
1. Научитесь вставлять код.
2. Привыкайте использовать функции языка MQL5.
Вот так работает
3. Если в ObjectsTotal указываете тип объекта, то обязательно надо указывать тип объекта в функциях получения свойств объекта.
Алексей, спасибо! В документации этого нюанса нет.
Обожаю писать код - ломаешь голову целый день, потом добавил два слова и счастлив как ребенок:)