фриланс вам в помощь, это делается просто скриптом.. При желании можно потом назначить ему hot-key
Здесь смешаны две разные вещи: удобный инструмент закрытия корзины и опасная торговая логика усреднения.
Сам общий расчёт результата корзины может быть полезен. Но пример с тремя убыточными позициями и четвёртой позицией увеличенного объёма не устраняет убыток. Он только переносит среднюю цену ближе к рынку за счёт резкого увеличения общей экспозиции.
Допустим, куплен 1 лот по 100, а цена упала до 90. Убыток равен 10. Если добавить 2 лота по 90, средняя цена станет 93,33. Кажется, что выйти теперь проще. Но если рынок продолжит движение до 80, общий убыток станет уже 40 вместо 20 без усреднения. То есть точка безубыточности приблизилась, однако риск каждого следующего пункта вырос в три раза.
Предыдущий убыток сам по себе не является новым торговым сигналом. Если дополнительная сделка открывается только потому, что старые позиции находятся в минусе, это мартингейл-подобное увеличение риска после ошибки. Часто такая схема показывает много небольших выходов в ноль, но один продолжительный тренд способен уничтожить накопленный результат и привести к Stop Out.
Есть и техническая проблема. В хеджинговой корзине один уровень нельзя установить как Take Profit одновременно для Buy и Sell: уровень, являющийся TP для покупки, будет Stop Loss для продажи. А при равных объёмах Buy и Sell чистый объём равен нулю, поэтому цена вообще не способна изменить совокупный результат корзины и расчёт «точной цены безубытка» может не иметь решения.
Правильнее было бы реализовать виртуальный Basket Profit Target, который только отображает общий результат и закрывает выбранные позиции при достижении заданной денежной прибыли или убытка. Но позиционировать это как преимущество стратегии усреднения неправильно. Инструмент управления не превращает отрицательное математическое ожидание и неконтролируемое увеличение объёма в безопасную торговую систему.
mixail38 #:
Скрипт конечно можно поставить, но это неудобно.
конечно можно. И будет конечно удобнее
но для этого надо:
- просмотреть аналоги у всех прочих терминалов (не только упомянутая OAnda, у каких есть подобное),
- также продукты со схожим функционалом в code-base и маркете, их таких полно
- всё это дело погонять покрутить, отметить что хорошо/удобно а что ни к чёрту
- по результату расписать и продумать UI/UX , основные варианты использования
то есть лично самому проделать значительную РАБОТУ.
PS и кстати "когда у трейдера открыто несколько позиций по одному и тому же инструменту с разными размерами лотов и ценами входа, нет быстрого способа закрыть всю корзину безубыточно" - в кодебейз и маркете 100% есть индикаторы которые показывают уровни безубытка/нужной_прибыли и объёмы на них. Вот просто ставите туда встречную лимитку и всё. Вечером, по расписанию или при сработке проводите самостоятельный клиринг (CloseBy по всему залоченному). Опять-же такие звери есть.
PPS/ И более чем уверен что есть советники которые сразу объединяют эти функции, вы просто плохо искали. Всякие торговые комбайны
У нас есть в контекстном меню Bulk operations -> Close all positions.
Эта функция достаточно умная и оптимизирует закрытие по Close By цепочки открытых позиций, что позволяет эффективно схлопывать локи.
Попробуйте на демо-счете.Честно говоря не хочется лезть в какие-то дебри с советниками и пр. инструментом, если есть уже готовое решение на других платформах, которое реализовано очень просто одной правой кнопкой мыши. Думаю разработчикам MT5 не составило бы большого труда сделать такую функцию, но по какой-то причине они это не делают. Еще в 2008 в OANDE понравилась эта функция и их интерфейс, но к сожалению больше нигде такого не встречалось.
У нас есть в контекстном меню Bulk operations -> Close all positions.
Эта функция достаточно умная и оптимизирует закрытие по Close By цепочки открытых позиций, что позволяет эффективно схлопывать локи.
Попробуйте на демо-счете.Но Bulk operations → Close all positions , насколько я понимаю, решает немного другую задачу.
Она закрывает выбранные позиции по текущей рыночной цене. В исходном предложении речь идёт о позициях одного направления и о другой операции: терминал должен рассчитать общий уровень безубыточности корзины с учётом объёмов и цен входа и установить этот уровень как общий TP для всех выбранных позиций.
Например, если открыто несколько Buy разными объёмами и по разным ценам, хотелось бы одним действием получить их volume-weighted break-even с учётом торговых издержек и установить соответствующий TP, а не закрывать корзину немедленно.
Поэтому Close all positions — полезная Bulk Operation, но функционально это всё же не эквивалент Set Group TP at Break-Even .
При этом я бы отдельно не связывал такую функцию именно с усреднением убыточных позиций. Это просто инструмент управления корзиной; стратегия формирования самой корзины и контроль риска — уже отдельный вопрос.
Если речь исключительно об однонаправленной корзине Buy или Sell, то технически функция действительно элементарная и как штатный инструмент управления позициями могла бы быть удобной.
Но я бы всё же разделял две вещи.
Первое — интерфейс.
Кнопка «рассчитать общий break-even и поставить общий TP» действительно может экономить время. Здесь советник или скрипт функционально решают задачу, но это не то же самое, что штатная операция терминала в два клика.
Второе — сама причина появления такой корзины.
Если несколько позиций набраны по независимым торговым сигналам — вопросов нет. Но если логика выглядит как «три сделки уже в минусе, поэтому открою четвёртую большим объёмом и приблизю точку безубытка», удобная кнопка никак не делает такую схему менее рискованной.
То есть я бы поддержал такую функцию именно как Basket Management Tool, но не как инструмент, который должен стимулировать усреднение убытков.
И, пожалуй, оптимальный вариант для MT5 был бы даже шире:
Bulk operations → Set basket break-even / basket profit target
с возможностью выбрать:
— безубыток;
— +N денег;
— +N пунктов;
— закрытие всей выбранной корзины при достижении цели.
Тогда это был бы действительно универсальный штатный инструмент, а не функция только для усредняющих стратегий.
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Спасибо, что рассмотрели этот запрос.
Hello MetaQuotes Development Team,
I would like to suggest a quality-of-life feature that is present on the OANDA trading platform and is heavily used by manual traders managing baskets of trades.
1. The Problem: Currently, in MT5 Hedging mode, when a trader has several open positions on the same symbol with different lot sizes and entry prices, there is no quick way to close the entire basket at break-even. For example: I have 3 losing positions opened earlier and just opened a 4th position with a larger lot size that is currently in profit. To exit the whole group at zero loss, I have to manually calculate the weighted average entry price using an external calculator, convert it into pips relative to the current spread, and then set the TP for each position individually or via script. This process is slow and prone to calculation errors during volatile market conditions.
2. Suggested Solution: Please add a native function to the Terminal window ("Trade" tab). When a user right-clicks on a group of selected positions (or uses a common button if all positions for the symbol are highlighted), there should be an option called:
3. How it should work: When this command is triggered, the terminal should automatically:
4. Benefits: This will significantly improve trade management efficiency for retail traders who use averaging strategies or scale into positions. It brings MT5's manual trading interface up to par with modern broker platforms like OANDA regarding basket management tools.
Thank you for considering this request.