Закрытие позиции

 

Добрый вечер!

Я когда-то спрашивал на счет закрытия сделки советником,  и понял чтобы закрыть сделку надо открыть встречную тем же объемом. 

Равнозначна ли эта команда интерактивному закрытию(на сделке пр. кн. Закрыть позицию) ?

Не получится ли что не хватит средств на открытие встречной позиции и не закроется текущая?

 
snik_666:

Добрый вечер!

Я когда-то спрашивал на счет закрытия сделки советником,  и понял чтобы закрыть сделку надо открыть встречную тем же объемом. 

Равнозначна ли эта команда интерактивному закрытию(на сделке пр. кн. Закрыть позицию) ?

Не получится ли что не хватит средств на открытие встречной позиции и не закроется текущая?

По идеи равнозначна, только по разному сервер получит приказ на закрытие сделки.

Если в математике нет ошибки то должно все закрыться нормально (в противном случае это явный баг)...

 
snik_666:

Добрый вечер!

Я когда-то спрашивал на счет закрытия сделки советником,  и понял чтобы закрыть сделку надо открыть встречную тем же объемом. 

Равнозначна ли эта команда интерактивному закрытию(на сделке пр. кн. Закрыть позицию) ?

Не получится ли что не хватит средств на открытие встречной позиции и не закроется текущая?

пока что при закритии встречной сделкой AccountInfoDouble(ACCOUNT_FREEMARGIN) не влияет. тоесть маржи осталось к примеру -100$, а нужно закрыться встречной на все 5000. позволяет , почему так, не знаю)
 
maryan.dirtyn:
пока что при закритии встречной сделкой AccountInfoDouble(ACCOUNT_FREEMARGIN) не влияет. тоесть маржи осталось к примеру -100$, а нужно закрыться встречной на все 5000. позволяет , почему так, не знаю)
А причем тут ACCOUNT_FREEMARGIN если идет закрытие встречной?
 
Interesting:
А причем тут ACCOUNT_FREEMARGIN если идет закрытие встречной?

ну у меня нету специальной функции для закрытия позиций, пользуюсь функцией открытия ордера. тоесть, если стою в селл, а нужно закрыть, просто открываю бай с лотом PositionGetDouble(POSITION_VOLUME).

а при открытии  проверяю на доступность средства.

 
maryan.dirtyn:

ну у меня нету специальной функции для закрытия позиций, пользуюсь функцией открытия ордера. тоесть, если стою в селл, а нужно закрыть, просто открываю бай с лотом PositionGetDouble(POSITION_VOLUME).

а при открытии  проверяю на доступность средства.

Вроде 2+2 пока 4, или со вчерашнего дня что-то изменилось и я ошибаюсь?


Ну это же не MT4, тут локов нет. Проверять маржинальные требования в МТ5 (насколько я понимаю) стоит только при открытии позиции, усреднении и перевороте.

Все остальное к маржинальным требованиям вроде отношении не имеют.

PS

А специальные вещи иметь стоит, по крайней мере задумываться над этим (хотя кому как)...

 
задумивался наде етим.. логика подсказивает, что в одной функции ошибиться шансов меньше чем в двух похожих..  "Проверять маржинальные требования в МТ5 (насколько я понимаю) стоит только при открытии позиции, усреднении и перевороте" так вот я о том же.. что маржинальние требования игнорируються (проверка AccountInfoDouble(ACCOUNT_FREEMARGIN) допускает), и можно открить сделку даже имея маржу в минусе (чтобы закрыть сделку надо открыть встречную тем же объемом).
 
maryan.dirtyn:
"Проверять маржинальные требования в МТ5 (насколько я понимаю) стоит только при открытии позиции, усреднении и перевороте" так вот я о том же.. что маржинальние требования игнорируються (проверка AccountInfoDouble(ACCOUNT_FREEMARGIN) допускает), и можно открить сделку даже имея маржу в минусе (чтобы закрыть сделку надо открыть встречную тем же объемом).

Не открыть в минуса, а закрыть встречным (если речь об этом).

maryan.dirtyn:
задумивался наде етим.. логика подсказивает, что в одной функции ошибиться шансов меньше чем в двух похожих..

Логика может и подсказывает, а вот опыт доказывает - если все делить на более мелкие блоки (функции и модули) ошибок будет меньше. Да и если при этом использовать ООП еще удобней и проще все становится. Просто нужно все тщательно спланировать.

Открытую позицию можно: закрыть, долить (усреднить), перевернуть, перевести в БУ и тд. Если все это делать в в одном месте можно с "дуба рухнуть"...