request.magic заполняется в CTrade::PositionModify. Даже в примерах MQL5 документации по OrderSend заполняется.
Для чего это нужно при изменении стопов?
Может, что б не менять стопы "чужой" позиции?
request.magic заполняется в CTrade::PositionModify. Даже в примерах MQL5 документации по OrderSend заполняется.
Для чего это нужно при изменении стопов?
А Вы не подумали о том, что на одном инструменте может работать не один робот?
А Вы не подумали о том, что на одном инструменте может работать не один робот?
Разверните вашу мысль.
Magic в данной ситуации не работает внутри OrderSend как фильтр. Magic самой позиции тоже не меняется.
Такое впечатление - что Magic просто игнорируется.Не знаю логику стандартного класса, использую свой торговый класс. Написал для чего это нужно, а работает или нет - другой вопрос.
Удалось найти только одно место, куда прилетает этот Magic. В OnTradeTransaction его можно найти в request.
Получается - если не используешь OnTradeTransaction, то Magic перед модификацией можно не задавать.Зачем задавать magic туда где используется тикет или символ если счёт netting
Согласно документации magic не используется.
SL & TP Modification
Торговый приказ на модификацию уровней StopLoss и/или TakeProfit. Требуется указание 4 полей:
- action
- symbol
- sl
- tp
- position
Зачем задавать magic туда где используется тикет или символ если счёт netting
Согласно документации magic не используется.
И там-же в документации пример на изменение позиции:
request.action =TRADE_ACTION_SLTP; // тип торговой операции request.position=position_ticket; // тикет позиции request.symbol=position_symbol; // символ request.sl =sl; // Stop Loss позиции request.tp =tp; // Take Profit позиции request.magic=EXPERT_MAGIC; // MagicNumber позиции
Видимо примеры пишут программисты не самого высокого уровня. И так-же как и мы имеют право на ошибки. Я редко читаю примеры.
Плюс к этому, документация писалась когда МТ5 не поддерживал hadge счета. А когда их ввели, то срочно стали править документацию. Соответственно возможны как недокументированные изменения, так и излишества вызывающие такие вот вопросы. А в целом документация достойна похвалы. Лично я при изучении mql5 пользовался исключительно документацией.
Даже вот в этой части документации есть, на первый взгляд ошибка
SL & TP Modification
Торговый приказ на модификацию уровней StopLoss и/или TakeProfit. Требуется указание 4 полей:
- action
- symbol
- sl
- tp
- position
Говорится, что достаточно указать 4 поля, а перечислено 5. Но если хорошо подумать, то всё верно сказано, достаточно 4 поля заполнить.
Для hadge счетов
- action
- position
- sl
- tp
Для netting
- action
- symbol
- sl
- tp
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
request.magic заполняется в CTrade::PositionModify. Даже в примерах MQL5 документации по OrderSend заполняется.
Для чего это нужно при изменении стопов?