Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Комиссия в МТ5 начисляется всегда при открытии позиции и потом при закрытии?
Или бывает, что при открытии позиции сразу вся сумма комиссии начисляется, а при закрытии позиции нету комиссии?
Или наоборот бывает, что при закрытии позиции вся сумма комиссии начисляется, а при открытии позиции нету комиссии?
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Бета-версия платформы MetaTrader 5 build 2155: Области видимости в MQL5, глобальное обновление тестера стратегий и встроенного хостинга
MetaQuotes Software Corp., 2019.09.20 16:36
Комиссия
Здесь отображается информация о комисcиях, взимаемых брокером при совершении сделок по инструменту. Показываются все подробности расчета:
Например, следующая запись означает, что комиссия начисляется немедленно при совершении сделок входа и выхода. При объеме сделки от 0 до 10 лотов комиссия взимается в размере 1.2 USD за операцию. При объеме сделки от 11 до 20 лотов комиссия будет взиматься в размере 1.1 USD за каждый лот сделки.
0 - 10 | 1.2 USD за сделку
11 - 20 | 1.1 USD за лот
перебираешь сделки, которые относятся к позиции и получаешь суммарно всю комиссию по позиции. При закрытии тоже будут начислены комиссии( это тоже следует учитывать если расчеты используют их.
Результат для расчетов например точки бу, я умножаю на 2. Исходя из того, что комиссия берется одинаковая при открытии и закрытии.Это что за функция? - в документации такой не нашел. Хотя упоминания о ней встречаются, может это библиотека какая-то? И по коду видно что это для МТ4.
Я сейчас решаю вопрос на МТ5, но в случае удачного робота буду переписывать на МТ4, так что поиск комиссии для МТ4 тоже нужен...
ACCOUNT_COMMISSION_BLOCKED из МТ5 - видимо что-то близкое к вашей функции, но на демо-счете она возвращает 0. А реального нету, для проверки.
это мт5, это моя функция расчетов комиссии по номеру позиции. У меня созданы мои универсальные библиотеки где мт4 и мт5 выглядят одинаково по коду. По понятным причинам всю библиотеку разместить тут не могу.
перебираешь сделки, которые относятся к позиции и получаешь суммарно всю комиссию по позиции. При закрытии тоже будут начислены комиссии( это тоже следует учитывать если расчеты используют их.
Результат для расчетов например точки бу, я умножаю на 2. Исходя из того, что комиссия берется одинаковая при открытии и закрытии.Вот я тоже так работал всегда.
что комиссия берется и при открытии и при закрытии сделки (ведь в мт5 каждый чих это сделка)
перебираешь сделки, которые относятся к позиции и получаешь суммарно всю комиссию по позиции. При закрытии тоже будут начислены комиссии( это тоже следует учитывать если расчеты используют их.
Результат для расчетов например точки бу, я умножаю на 2. Исходя из того, что комиссия берется одинаковая при открытии и закрытии.Спасибо за решение. Это конечно ужасно, так грузить терминал лишним циклом.
PositionGetDouble(POSITION_PROFIT)+PositionGetDouble(POSITION_SWAP)+ PositionGetDouble(POSITION_COMMISSION);
уже работает?
уже работает?
Небыло и не будет. Это наверное смесь mql и СБ, а там по любому цикл. Комиссия берётся за сделку, а не за позицию.
PositionGetDouble(POSITION_PROFIT)+PositionGetDouble(POSITION_SWAP)+PositionGetDouble(POSITION_COMMISSION);
Не работает, выдаёт ноль.
В общем, способ выше не плох, сильно терминал не грузит. Но, к сожалению, способ не дает точного результата.
" Результат для расчетов например точки бу, я умножаю на 2."
Я сразу не сообразил и не внимательно прочитал. Если позиция открывается и закрывается полным объёмом, проблем нет, схема рабочая. Но так как комиссия суммируется за уже закрытые части позиции, то умножать на 2 не корректно, получим неадекватные цифры комиссии, если нам нужно рассчитать комиссию заранее полностью за оборот. Умножать на 2 можно, если позиция открыта первично в полном объёме, а если её уже откусывали несколько раз и от, допустим, 1 лота осталось 0.1 лот, то умножая на 2 сумму комиссий за закрытые части, получим завышенную цифру. Пока думаю, как решить проблему.