Search ENUM_SYMBOL_CALC_MODE

- www.mql5.com
https://www.mql5.com/en/docs/constants/environment_state/marketinfoconstants
Search ENUM_SYMBOL_CALC_MODE
Я получаю некоторые расчеты. Но это не работает, когда я пытаюсь использовать формулы. Нет никакой разницы. Подскажите, пожалуйста, что я могу сделать? Я использую хедж-счет. И когда я это делаю, для одной сделки используется полная маржа, тогда как для противоположной сделки используется половина маржи и т. Д. Как я, вероятно, могу узнать, что я могу сделать? Поэтому я просто хочу знать, как рассчитывается маржа ToolBox. Можете ли вы предложить мне функцию для этого, кроме OrderCalcMargin (), это бесполезно.
Я получаю некоторые расчеты. Но это не работает, когда я пытаюсь использовать формулы. Нет никакой разницы. Подскажите, пожалуйста, что я могу сделать? Я использую хедж-счет. И когда я это делаю, для одной сделки используется полная маржа, тогда как для противоположной сделки используется половина маржи и т. Д. Как я, вероятно, могу узнать, что я могу сделать? Поэтому я просто хочу знать, как рассчитывается маржа ToolBox. Можете ли вы предложить мне функцию для этого, кроме OrderCalcMargin (), это бесполезно.
https://www.mql5.com/en/docs/marketinformation/symbolinfomarginrate

- www.mql5.com
https://www.mql5.com/en/docs/marketinformation/symbolinfomarginrate
Не могли бы вы однажды продемонстрировать, как я могу их использовать?
В документации есть опечатка.
initial_margin_rate [in]
Должно быть
initial_margin_rate [out]
И как это понимать? Вы вроде поняли как счтать и вдруг опять забыли?
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
jaffer wilson, 2020.09.01 16:02
Спасибо за помощь. Вы решили мою самую большую проблему.
И как это понимать? Вы вроде поняли как счтать и вдруг опять забыли?
Я запутался в расчетах. Следовательно, я подумал, может ли мне помочь тот, кто уже пробовал. Но я думаю, я должен делать это по-своему.
Я запутался в расчетах. Следовательно, я подумал, может ли мне помочь тот, кто уже пробовал. Но я думаю, я должен делать это по-своему.
Я это делал, но если хотите попробуйте по-своему. Только вот формула одна и как ни крути считать надо по этой формуле.
Тут совсем просто. Например: Есть открытые позиции по одному символу. Считаем средневзвешенную цену позиций BUY и количество лотов. Так-же считаем для позиций SELL средневзвешенную цену и количество лотов. Если позиций только по одной, то средневзвешенная цена равна цене открытия позиции. Например получилось, что открыто BUY 2.75 лотов, а позиций SELL 1.15 лотов. Функцией OrderCalcMargin() получаем маржу для лота 1.15, как для SELL так-же и для BUY считаем для лота 1.15. Если получились разные значения маржи, то берём бо́льшее значение и умножаем на коэффициент, полученный как отношение
(SymbolInfoDouble(_Symbol, SYMBOL_MARGIN_HEDGED)/SymbolInfoDouble(_Symbol, SYMBOL_TRADE_CONTRACT_SIZE))
В вашем случае SYMBOL_MARGIN_HEDGED в спецификации равно 50, а SYMBOL_TRADE_CONTRACT_SIZE = 100 получается 50/100=0.5
И для оставшегося объёма 2.75-1.15=1.6 получаем маржу так-же функцией OrderCalcMargin() и плюсуем к предыдущему результату.
Вы получили маржу 3.94 для каждой позиции. И если 3.94*0.5 то получим значение маржи показанное на вашем скрине 1.97

- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Я хочу знать, как я могу рассчитать маржу счета, которая показана здесь:
Я знаю, что могу получить это значение с помощью функции: AccountInfoDouble (ACCOUNT_MARGIN)
Но я не хочу этим пользоваться. Я просто хочу написать свою функцию, чтобы получить это значение.
Пожалуйста, дайте мне знать, что я могу сделать