Эксперт выдает ошибку 1 при выполнении кода модификации как
её убрать
lovova:
Эксперт выдает ошибку 1 при выполнении кода модификации как её убрать
Эксперт выдает ошибку 1 при выполнении кода модификации как её убрать
//+----------------------------------------------------------------------------+ //| Перенос уровня StopLoss | //| Параметры: | //| ldStop - уровень StopLoss | //| lcColor - цвет модификации | //+----------------------------------------------------------------------------+ void ModifyStopLoss(double ldStop, color lcColor=CLR_NONE) { double ldOpen=OrderOpenPrice(); double ldTake=OrderTakeProfit(); if (OrderStopLoss()!=ldStop) OrderModify(OrderTicket(), ldOpen, ldStop, ldTake, 0, lcColor); }
Типа того. Важно не пытаться ставиь стоп на том же самом уровне, где он уже стоит.
Vita:
Типа того. Важно не пытаться ставиь стоп на том же самом уровне, где он уже стоит.
да
lovova:
Эксперт выдает ошибку 1 при выполнении кода модификации как её убрать
Эксперт выдает ошибку 1 при выполнении кода модификации как её убрать
//+----------------------------------------------------------------------------+ //| Перенос уровня StopLoss | //| Параметры: | //| ldStop - уровень StopLoss | //| lcColor - цвет модификации | //+----------------------------------------------------------------------------+ void ModifyStopLoss(double ldStop, color lcColor=CLR_NONE) { double ldOpen=OrderOpenPrice(); double ldTake=OrderTakeProfit(); if (OrderStopLoss()!=ldStop) OrderModify(OrderTicket(), ldOpen, ldStop, ldTake, 0, lcColor); }
Типа того. Важно не пытаться ставиь стоп на том же самом уровне, где он уже стоит.
Озадачен, что обозначает ваше "да". :)
На всякий случай повторю вставьте проверку на недопустимость
OrderModify если новый уровень стопа не отличается от старого. К примеру
так
if (OrderStopLoss()!=ldStop) OrderModify(OrderTicket(), ldOpen, ldStop, ldTake,
0, lcColor);
Vita:
Озадачен, что обозначает ваше "да". :)
На всякий случай повторю вставьте проверку на недопустимость
OrderModify если новый уровень стопа не отличается от старого. К примеру
так
if (OrderStopLoss()!=ldStop) OrderModify(OrderTicket(), ldOpen, ldStop, ldTake,
0, lcColor);
Я просто не сразу обратил внимание на осправление вами ошибки спасибо
lovova:
Все таки надежней проверять на разность в один пункт (при условии,
что все остальные проверки проведены):Vita:
Типа того. Важно не пытаться ставиь стоп на том же самом уровне, где он уже стоит.
даlovova:
Эксперт выдает ошибку 1 при выполнении кода модификации как её убрать
Эксперт выдает ошибку 1 при выполнении кода модификации как её убрать
//+----------------------------------------------------------------------------+ //| Перенос уровня StopLoss | //| Параметры: | //| ldStop - уровень StopLoss | //| lcColor - цвет модификации | //+----------------------------------------------------------------------------+ void ModifyStopLoss(double ldStop, color lcColor=CLR_NONE) { double ldOpen=OrderOpenPrice(); double ldTake=OrderTakeProfit(); if (OrderStopLoss()!=ldStop) OrderModify(OrderTicket(), ldOpen, ldStop, ldTake, 0, lcColor); }
Типа того. Важно не пытаться ставиь стоп на том же самом уровне, где он уже стоит.
//+----------------------------------------------------------------------------+ //| Перенос уровня StopLoss | //| Параметры: | //| ldStop - уровень StopLoss | //| lcColor - цвет модификации | //+----------------------------------------------------------------------------+ void ModifyStopLoss(double ldStop, color lcColor=CLR_NONE) { double ldOpen=OrderOpenPrice(); double ldTake=OrderTakeProfit(); if (MathAbs(OrderStopLoss()-ldStop)>MarketInfo(OrderSymbol(),MODE_POINT)) OrderModify(OrderTicket(), ldOpen, ldStop, ldTake, 0, lcColor); }
Предполагается, что OrderSymbol() вернет правильное значение.
Rosh:
Предполагается, что OrderSymbol() вернет правильное значение.
lovova:
Все таки надежней проверять на разность в один пункт (при условии,
что все остальные проверки проведены):Vita:
Типа того. Важно не пытаться ставиь стоп на том же самом уровне, где он уже стоит.
даlovova:
Эксперт выдает ошибку 1 при выполнении кода модификации как её убрать
Эксперт выдает ошибку 1 при выполнении кода модификации как её убрать
//+----------------------------------------------------------------------------+ //| Перенос уровня StopLoss | //| Параметры: | //| ldStop - уровень StopLoss | //| lcColor - цвет модификации | //+----------------------------------------------------------------------------+ void ModifyStopLoss(double ldStop, color lcColor=CLR_NONE) { double ldOpen=OrderOpenPrice(); double ldTake=OrderTakeProfit(); if (OrderStopLoss()!=ldStop) OrderModify(OrderTicket(), ldOpen, ldStop, ldTake, 0, lcColor); }
Типа того. Важно не пытаться ставиь стоп на том же самом уровне, где он уже стоит.
//+----------------------------------------------------------------------------+ //| Перенос уровня StopLoss | //| Параметры: | //| ldStop - уровень StopLoss | //| lcColor - цвет модификации | //+----------------------------------------------------------------------------+ void ModifyStopLoss(double ldStop, color lcColor=CLR_NONE) { double ldOpen=OrderOpenPrice(); double ldTake=OrderTakeProfit(); if (MathAbs(OrderStopLoss()-ldStop)>MarketInfo(OrderSymbol(),MODE_POINT)) OrderModify(OrderTicket(), ldOpen, ldStop, ldTake, 0, lcColor); }
Предполагается, что OrderSymbol() вернет правильное значение.
Спасибо исправил
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь