Все верно. Спасибо за подсказку. Но что мне делать, например, если другой советник работает на том же символе, открывает позицию в 0,5 лота и стоп-лосс 100 пунктов, мой советник открывает "внутреннюю позицию советника" в 0,5 и стоп-лосс 150 пунктов, т.е. увеличивает существующую позицию до 1 лота, а затем я закрываю "внутреннюю позицию советника", т.е. уменьшаю существующую позицию до 0,5 лота. Какой стоп-лосс тогда будет у оставшихся 0,5 лота? 100 пунктов или 150 пунктов? Или в таком случае в режиме неттинга невозможно установить независимый стоп-лосс для "моих" 0,5 лотов через SendRequest?
То есть, я не хочу просто менять хорошо продуманные стоп-лоссы других советников, но и не хочу просто отказываться от своих собственных. Есть ли эффективное решение моей "проблемы", кроме открытия "внутренней позиции советника" в режиме неттинга только при отсутствии открытой позиции по инструменту?
Benjamin Fotteler символе, открывает позицию в 0,5 лота и стоп-лосс 100 пунктов, мой советник открывает "внутреннюю позицию советника" в 0,5 и стоп-лосс 150 пунктов, т.е. увеличивает существующую позицию до 1 лота, а затем я закрываю "внутреннюю позицию советника", т.е. уменьшаю существующую позицию до 0,5 лота. Какой стоп-лосс тогда будет у оставшихся 0,5 лота? 100 пунктов или 150 пунктов? Или в таком случае в режиме неттинга невозможно установить независимый стоп-лосс для "моих" 0,5 лотов через SendRequest?
То есть, я не хочу просто менять хорошо продуманные стоп-лоссы других советников, но и не хочу просто отказываться от своих собственных. Есть ли эффективное решение моей "проблемы", кроме открытия "внутренней позиции советника" в режиме неттинга только при отсутствии открытой позиции по инструменту?
Если на нетто-счете(!) первый советник, например, по EURUSD покупает 0,01 лота (buy), а второй советник продает 0,05 лота (sell), то на счете снова остается только одна позиция, теперь уже 0,04 sell. Номера билетов здесь пока совершенно не важны. И если второй ордер на единственную позицию в EURUSD устанавливает новые (свои= SL и TP, то те, что были у первого ордера, перезаписываются.
Есть только одна позиция с одним SL и одним TP, если они указаны.
Я могу это понять, спасибо. Но я все еще не понимаю, какой стоп-лосс применяется, если первый советник покупает 0,01 лота, а второй - 0,05 лота. Тогда открывается позиция в 0,06 лота, верно? И какой стоп-лосс применяется к этой позиции? Первый, второй или агрегированный?
Benjamin Fotteler #: Я могу это понять, спасибо. Но я все еще не понимаю, какой стоп-лосс применяется, если первый советник покупает 0,01 лота, а второй - 0,05 лота. Тогда открывается позиция в 0,06 лота, верно? И какой стоп-лосс применяется к этой позиции? Первый, второй или агрегированный?
Хорошо, если это так, тогда я наконец-то понял основной принцип работы неттингового счета: Существует только одна позиция, которая является совокупностью всех предыдущих сделок; и тот, кто последним установил SL и TP - через метод OrderSend, через PositionModify или иным способом - установил SL и TP для всей позиции, независимо от того, устраивает это других советников или нет.
Это означает, что при использовании нескольких советников на одном и том же символе с неттинговым счетом пользователь должен знать, что он должен установить SL и TP для разных советников одинаково, чтобы они не работали не так, как планировалось изначально - если только они не выполняют защитную функцию и открывают "внутреннюю" позицию только в том случае, если на соответствующем символе не открыто ни одной позиции. И упомянутый вами PositionSelect() очень полезен для этого.
Benjamin Fotteler метод OrderSend, через PositionModify или иным способом - установил SL и TP для всей позиции, независимо от того, устраивает это других советников или нет.
Это означает, что при использовании нескольких советников на одном и том же символе с неттинговым счетом пользователь должен знать, что он должен установить SL и TP для разных советников одинаково, чтобы они не работали не так, как планировалось изначально - если только они не выполняют защитную функцию и открывают "внутреннюю" позицию только в том случае, если на соответствующем символе не открыто ни одной позиции. И упомянутый вами PositionSelect() очень полезен для этого.
Однако, чтобы подстраховаться, я бы попробовал это еще раз, чтобы посмотреть, принимаются ли SL и TP для другого ордера или лучше потом изменить SL и TP отдельно - у меня нет опыта в этом!
Здравствуйте добрый день, кто нибудь может мне помочь, я не могу скачать ни один индикатор mql5 для mt5, я даю скачать индикатор в mql5 у меня появляется окно с вопросом есть ли у меня mt5 я даю ему да, затем автоматически открывается mt5 в разделе разметка или рынок и ничего не скачивает.
Я попробовал ввести пользователя и пароль mql5 в mt5 в разделе инструменты, сообщество, чтобы загрузить их непосредственно mt5 непосредственно и ничего не загружается, просто делает тот же звук, когда операция не вводится или есть ошибка lotaje....
На моем ПК стоит windows 8.1 32 bit, не знаю, может операционная система как-то влияет.
Да, вам обязательно нужно все опробовать. Что касается неттингового счета, то я еще не делал этого, но я сделал это со значением tradeResult.deal, которое я сохранил как positionTicket.
Я понял, что если я запускаю советник и между рыночными ордерами, которые я использую только в нем (кроме SL и TP), посылаю лимитные ордера и т.п., то тикет открытой позиции совпадает не с tradeResult.deal, а с tradeResult.order. И как описано на странице свойств позиции, тикет позиции может просто меняться, а POSITION_IDENTIFIER не меняется, а остается идентичным тикету ордера, открывшего позицию, т.е. tradeResult.order входной сделки.
Я только что попробовал это с неттинговым счетом. Если вы разместите рыночный ордер на продажу объемом 1 лот со стоп-лоссом на 1,1 EURUSD, а затем разместите рыночный ордер на продажу объемом 1 лот со стоп-лоссом на 1,05 EURUSD, то вся позиция неттинга объемом 2 лота будет иметь стоп-лосс на 1,05 EURUSD. Это означает, что если вы запустите на одном инструменте два конкурирующих советника, которые по-разному управляют или обрабатывают StopLoss и TakeProfit, это может привести к хаосу. Я лучше проверю в своем советнике с помощью функции PositionSelect(), не открыта ли уже позиция, и позволю своему советнику подождать, пока больше не будет позиций, прежде чем они запутаются.
Все верно. Спасибо за подсказку. Но что мне делать, например, если другой советник работает на том же символе, открывает позицию в 0,5 лота и стоп-лосс 100 пунктов, мой советник открывает "внутреннюю позицию советника" в 0,5 и стоп-лосс 150 пунктов, т.е. увеличивает существующую позицию до 1 лота, а затем я закрываю "внутреннюю позицию советника", т.е. уменьшаю существующую позицию до 0,5 лота. Какой стоп-лосс тогда будет у оставшихся 0,5 лота? 100 пунктов или 150 пунктов? Или в таком случае в режиме неттинга невозможно установить независимый стоп-лосс для "моих" 0,5 лотов через SendRequest?
То есть, я не хочу просто менять хорошо продуманные стоп-лоссы других советников, но и не хочу просто отказываться от своих собственных. Есть ли эффективное решение моей "проблемы", кроме открытия "внутренней позиции советника" в режиме неттинга только при отсутствии открытой позиции по инструменту?
То есть, я не хочу просто менять хорошо продуманные стоп-лоссы других советников, но и не хочу просто отказываться от своих собственных. Есть ли эффективное решение моей "проблемы", кроме открытия "внутренней позиции советника" в режиме неттинга только при отсутствии открытой позиции по инструменту?
Если на нетто-счете(!) первый советник, например, по EURUSD покупает 0,01 лота (buy), а второй советник продает 0,05 лота (sell), то на счете снова остается только одна позиция, теперь уже 0,04 sell. Номера билетов здесь пока совершенно не важны. И если второй ордер на единственную позицию в EURUSD устанавливает новые (свои= SL и TP, то те, что были у первого ордера, перезаписываются.
Есть только одна позиция с одним SL и одним TP, если они указаны.
Я могу это понять, спасибо. Но я все еще не понимаю, какой стоп-лосс применяется, если первый советник покупает 0,01 лота, а второй - 0,05 лота. Тогда открывается позиция в 0,06 лота, верно? И какой стоп-лосс применяется к этой позиции? Первый, второй или агрегированный?
Хорошо, если это так, тогда я наконец-то понял основной принцип работы неттингового счета: Существует только одна позиция, которая является совокупностью всех предыдущих сделок; и тот, кто последним установил SL и TP - через метод OrderSend, через PositionModify или иным способом - установил SL и TP для всей позиции, независимо от того, устраивает это других советников или нет.
Это означает, что при использовании нескольких советников на одном и том же символе с неттинговым счетом пользователь должен знать, что он должен установить SL и TP для разных советников одинаково, чтобы они не работали не так, как планировалось изначально - если только они не выполняют защитную функцию и открывают "внутреннюю" позицию только в том случае, если на соответствующем символе не открыто ни одной позиции. И упомянутый вами PositionSelect() очень полезен для этого.
Это означает, что при использовании нескольких советников на одном и том же символе с неттинговым счетом пользователь должен знать, что он должен установить SL и TP для разных советников одинаково, чтобы они не работали не так, как планировалось изначально - если только они не выполняют защитную функцию и открывают "внутреннюю" позицию только в том случае, если на соответствующем символе не открыто ни одной позиции. И упомянутый вами PositionSelect() очень полезен для этого.
Однако, чтобы подстраховаться, я бы попробовал это еще раз, чтобы посмотреть, принимаются ли SL и TP для другого ордера или лучше потом изменить SL и TP отдельно - у меня нет опыта в этом!
Да, вам обязательно нужно все опробовать. Что касается неттингового счета, то я еще не делал этого, но я сделал это со значением tradeResult.deal, которое я сохранил как positionTicket.
Я понял, что если я запускаю советник и между рыночными ордерами, которые я использую только в нем (кроме SL и TP), посылаю лимитные ордера и т.п., то тикет открытой позиции совпадает не с tradeResult.deal, а с tradeResult.order. И как описано на странице свойств позиции, тикет позиции может просто меняться, а POSITION_IDENTIFIER не меняется, а остается идентичным тикету ордера, открывшего позицию, т.е. tradeResult.order входной сделки.
подскажите пожалуйста, кто знает где можно торговать пару USDKZT ?