[Архив!] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 2. - страница 250
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
А подумать над кодом функции? Найдите четыре отличия :) :
нашел ....отличия...))))) ух-ха...я просто в учебнике закапался по программированию говова не варит))
как закрыть ордер частично? просто изменить объем сделки с OrderModify?
как закрыть ордер частично? просто изменить объем сделки с OrderModify?
Открыть противоположный ордер лотом меньше. Разница - остаток, который должен продолжить существование.
Противоположный лот и часть существующего лота закрыть функцией OrderCloseBy().
Открыть противоположный ордер лотом меньше. Разница - остаток, который должен продолжить существование.
Противоположный лот и часть существующего лота закрыть функцией OrderCloseBy().
В пятёрке такой фокус не пройдёт. Не забывайте о реквотах и проскальзываниях тоже...
Простите, в какой пятёрке? )) Мы на MQL4.
Реквоты и проскальзывания не учитываю как естественный фактор. Суть не меняется.
Простите, в какой пятёрке? )) Мы на MQL4.
Реквоты и проскальзывания не учитываю как естественный фактор. Суть не меняется.
Делайте что хотите - ваш выбор сделать две операции вместо одной.
"две операции вместо одной" - поподробнее, пожалуйста. Может оказаться полезным.
Для частичного закрытия позиции лотом 1.0 можно сделать одну операцию, закрыв её меньшим лотом, например 0.5.
Стандартная функция:
__________________________________________________________________________________________________
bool OrderClose( int ticket, double lots, double price, int slippage, color Color=CLR_NONE)
Закрытие позиции. Возвращает TRUE при успешном завершении функции. Возвращает FALSE при неудачном завершении функции. Чтобы получить информацию об ошибке, необходимо вызвать функцию GetLastError().__________________________________________________________________________________________________
Вы же предлагаете сделать две операции:
1. Открыть противоположную позицию меньшим лотом;
2. Встречно их закрыть, чтобы осталась та позиция, лот которой был больше.
__________________________________________________________________________________________________
bool OrderCloseBy( int ticket, int opposite, color Color=CLR_NONE)
Закрытие одной открытой позиции другой позицией, открытой по тому же самому инструменту, но в противоположном направлении. Возвращает TRUE при успешном завершении функции. Возвращает FALSE при неудачном завершении функции. Чтобы получить информацию об ошибке, необходимо вызвать функцию GetLastError()._________________________________________________________________________________________________
Соответственно увеличивается и количество неблагоприятных факторов вдвое на одну позицию.
Зачем?
Для частичного закрытия позиции лотом 1.0 можно сделать одну операцию, закрыв её меньшим лотом, например 0.5.
Стандартная функция:
__________________________________________________________________________________________________
bool OrderClose( int ticket, double lots, double price, int slippage, color Color=CLR_NONE)
Закрытие позиции. Возвращает TRUE при успешном завершении функции. Возвращает FALSE при неудачном завершении функции. Чтобы получить информацию об ошибке, необходимо вызвать функцию GetLastError().__________________________________________________________________________________________________
Вы же предлагаете сделать две операции:
1. Открыть противоположную позицию меньшим лотом;
2. Встречно их закрыть, чтобы осталась та позиция, лот которой был больше.
__________________________________________________________________________________________________
bool OrderCloseBy( int ticket, int opposite, color Color=CLR_NONE)
Закрытие одной открытой позиции другой позицией, открытой по тому же самому инструменту, но в противоположном направлении. Возвращает TRUE при успешном завершении функции. Возвращает FALSE при неудачном завершении функции. Чтобы получить информацию об ошибке, необходимо вызвать функцию GetLastError()._________________________________________________________________________________________________
Соответственно увеличивается и количество неблагоприятных факторов вдвое на одну позицию.
Зачем?
Да, Вы написали исчерпывающе подробно, но, тем не менее, я не увидел разницы.
А именно: отправить запрос на открытие лота (мой вариант) или команду на закрытие части лота (Ваш вариант) подвергаются одному и тому же риску реквоты и проскальзывания.
А закрытие по OrderCloseBy() не несет никакого риска, так как реквоты и проскальзывания теперь уже не имеют значения, ибо после открытия лота (мой вариант), де факто они не существуют, т.е взаимно исключают друг друга.