Здравствуйте. Как программно получить уровень маржи в процентах(то, что идет после "Свободная маржа" в терминале)? И сколько процентов останется после открытия сделки данным объемом?
Уровень маржи - это: средства, деленные на текущую маржу, т. е.:
AccountInfoDouble(ACCOUNT_EQUITY) / AccountInfoDouble(ACCOUNT_MARGIN);
Сразу после открытия ордера величина средств изменится всего лишь на величину спреда. В большинстве случаев это незначительное изменение. Значительно изменится величина маржи. Требуемую маржу можно узнать, использовав функцию SymbolInfoDouble() с идентификатором SYMBOL_MARGIN_INITIAL или MarketInfo() с идентификатором MODE_MARGINREQUIRED, в зависимости от того, что поддерживает брокер (нужно экспериментировать). Затем эту величину добавить к текущему размеру маржи и снова провести расчет уровня маржи.
P. S. Только не забудьте перед делением проверить знаменатель на 0.
Уровень маржи - это: средства, деленные на текущую маржу, т. е.:
Сразу после открытия ордера величина средств изменится всего лишь на величину спреда. В большинстве случаев это незначительное изменение. Значительно изменится величина маржи. Требуемую маржу можно узнать, использовав функцию SymbolInfoDouble() с идентификатором SYMBOL_MARGIN_INITIAL или MarketInfo() с идентификатором MODE_MARGINREQUIRED, в зависимости от того, что поддерживает брокер (нужно экспериментировать). Затем эту величину добавить к текущему размеру маржи и снова провести расчет уровня маржи.
P. S. Только не забудьте перед делением проверить знаменатель на 0.
Спасибо.
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования