Оценка маржинальных требований в MQL5 - страница 2

 
Renat Akhtyamov:
https://www.mql5.com/ru/docs/constants/environment_state/accountinformation#enum_account_info_integer

И что там можно увидеть? Что плечо - свойство счета, а не символа и не момента времени, тогда как реально в приведенных фрагментах спецификаций контрактов двух ДЦ указывается, что это не так. Что Вы имели в виду?

 
Vladimir:

И что там можно увидеть? Что плечо - свойство счета, а не символа и не момента времени, тогда как реально в приведенных фрагментах спецификаций контрактов двух ДЦ указывается, что это не так. Что Вы имели в виду?

Тогда плечо придется посчитать.

Запросить у серевера информацию по марже и все будет

 
Alexander Laur:

Посмотрите вот это: https://www.mql5.com/ru/code/12076/131935#!tab=code

Может поможет.

Эта ссылка не существует, видимо там особо секретная информация была :)

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


P.S.  Может быть есть возможность, но я не нашел.

 
Alexander Laur:

А вот индикатор с расчетом залога в том числе

Не старайтесь, ваши ссылки не открываются.

Но это не важно, как можно рассчитать уровень маржи, если у вас нет плечо для данного символа ?

 
Petros Shatakhtsyan:

Эта ссылка не существует, видимо там особо секретная информация была :)

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


P.S.  Может быть есть возможность, но я не нашел.

да они все битые
 
Alexander Laur:

Тогда не знаю как помочь. Индикаторы загружал со своего компа.

Как это нет плеча?

А разве не понятно о чем речь.

Объясню по простому.  Допустим у нас есть много открытых позиций, на разных символах. И мы хотим открыть новую позицию, допустим на новом символе. А для этого нам нужно определить размер допустимого лота (объема).

Если нам не известно реальное (торговое) плечо данного символа, то как можно определить лот ?


 
Alexander Laur:

Разве плечо определяется для символа, а не для счета?


А я подумал, что после моих объяснений даже школьник поймет.

И удивительно то, что тут много хороших разработчиков, но почему-то на этом форме уже третий год, как я поднимаю этот вопрос и не один раз.

 
Alexander Laur:

Разве плечо определяется для символа, а не для счета?

Эта команда поможет Вам узнать действующее плечо для торгового счета:

PS: Я поправил ссылку на код, посмотрите там все расписано.

Здесь такое не поможет.

На разных симовлах у него плечо разное.

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

 
Alexander Laur:

Похоже, что Вы сами не понимаете, о чем говорите.

Плечо на разных счетах разное: 1:100, 1:200, 1:300 и т.д. Плечо НЕ ЗАВИСИТ от количества открытых позиций, оно ПОСТОЯННО для счета. Плечо влияет на маржинальные (залоговые) требования для счета, а не для символа. Что это значит? Это значит, что на счете Вы можете открывать позиции по РАЗНЫМ символам и разными объемами до тех пор, пока совокупная маржа открытых позиций не будет превышать общую, разрешенную маржу для счета, которая определяется плечом!

Есть команда в языке MQL5, которая показывает свободную маржу НА СЧЕТЕ, а не каком то символе:

В коде, ссылку на который я давал, есть расчет залога для открытия позиции по любому инструменту. Функция GetMarginForOpening() занимается именно расчетом залога. Не ленитесь, посмотрите.

Видимо с вами трудно что-то обсуждать.

Во первых я уже говорил, что ваши ссылки не открываются, а во вторых, как вы можете определить маржу, когда плечо меняется и каждый символ имеет свое плечо.

 
Vladimir:

Пример из спецификации контрактов одного ДЦ, где кредитное плечо является свойством символа, и, даже, как пишет ДЦ, его курса.


Возник вопрос:

    Как оценивать залоговое обеспечение сделки в этих условиях, точнее, учитываются ли в функциях OrderCheck() или OrderCalcMargin() указанные в спецификации особенности кредитного плеча, которое "указано приблизительно".

Встречал и такие торговые условия:

"Желтым цветом обозначены инструменты, по которым маржинальные требования увеличены.

...

В течение 15 минут до, а также 5 минут после публикации экономических новостей уровня <High>, маржинальные требования
для новых ордеров рассчитываются, исходя из максимального кредитного плеча 1:200. По истечении обозначенного периода
маржа по этим позициям пересчитывается, исходя из суммы средств на счете и установленного значения кредитного плеча.
С 19:00 GMT +0 пятницы по 23:00 GMT +0 воскресенья маржинальные требования для вновь открываемых позиций рассчитываются
исходя из максимального кредитного плеча 1:200."

Увеличены, это например, 0.5% для всех допустимых плеч вместо 1% для 1:200, 0.2% для 1:1000 и 0.1% для 1:2000.

Снова возникает тот же самый вопрос. Кто в курсе, подскажите, пожалуйста.

Надо просто проверить. Никто ведь не скрывает формулу расчёта маржи.

Lots*Contract_Size*price/Leverage

Отсюда Leverage = Lots*Contract_Size*price/Margin

А вот Margin можно получить из

 double Margin = 0;
 bool calcMargin = OrderCalcMargin(orderType, symbol, Lots, price, Margin);
Тогда и ясность будет учитывается или нет.
Причина обращения: