Некорректный расчет ГО (из-за новых изменений в риск-параметрах биржи) - страница 12
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Пока торгую у Финама, там расчет маржи у фьючерсов не такой как в Открытии. Пример для sell
Так их брокер для каждого символа прописывает сам. И функция SymbolInfoMarginRate их возвращает.
так тогда?
//---
double k_initial_margin, k_maintenance_margin,m_initial_margin,m_margin;
if(SymbolInfoMarginRate(_Symbol,ORDER_TYPE_BUY,k_initial_margin,k_maintenance_margin)==true)
{
SymbolInfoMarginRate(_Symbol, // символ
ORDER_TYPE_SELL, // тип ордера
k_initial_margin, // коэффициент взимания начальной маржи
k_maintenance_margin // коэффициент взимания поддерживающей маржи
);
m_initial_margin = SymbolInfoDouble(_Symbol,SYMBOL_MARGIN_INITIAL);
m_margin = m_initial_margin*k_initial_margin;
Print("ГО ",_Symbol,"=",m_margin);
}
но мне не внушают доверия полученные цифры
так тогда?
но мне не внушают доверия полученные цифры
В общем, собрал скрипт по итогам всех обсуждений. И для Финама и для Открытия. Показывает сколько должно быть средств на счете при открытии позиции, при условии, что открытых позиций нет.
По Финаму проверял - МТ5 учитывает и проверяет так же как в скрипте.
По Открытию постараюсь завтра проверить - там по фьючерсу есть различия между рыночными и лимитными ордерами. Видится, что МТ5 проверяет при открытии позиции средства по рыночному, а не по лимитному.
Вот эта картинка теперь у меня выглядит так:
Скрипт:
Добавлено:
Уже после того как выложил, наткнулся на раздел в справке:
Для акций
Для фьючерсов
Там подробно с примерами всё разжёвано, раньше не видел...
Проверил скрипт в Открытии на фьючерсе на реальном счете - открывал и закрывал позиции руками в терминале (через панель и стакан). Ниже выводы и логи.
в Открытии есть разница в количестве необходимых для открытия позиции средств в зависимости от того какой тип ордера используется при открытии позиции - лимитный или рыночный.
По логике расчета я могу купить 3 лота по рынку (29350.00/9296.91 = 3.16) или 5 лотов лимитным ордером (29350.00/5166.91 = 5.68). Проверяем:
1 Шаг - проверяем рыночный ордер.
Открываю панель быстрой торговли на графике (стандартную) - пытаюсь купить 4 лота. Вкладка журнал:
Денег не хватило.
2 Шаг - проверяем рыночный ордер.
Открываю панель быстрой торговли на графике (стандартную) - пытаюсь купить 3 лота. Вкладка журнал:
Денег хватило, позиция открыта.
3 Шаг - проверяем лимитный ордер.
Открываю стакан - выставляю лимитный ордер на покупку - пытаюсь купить 6 лотов. Вкладка журнал:
Денег не хватило.
4 Шаг - проверяем лимитный ордер.
Открываю стакан - выставляю лимитный ордер на покупку - пытаюсь купить 5 лотов. Вкладка журнал:
Денег хватило, ордер выставлен.
Вывод:
1. В Открытии выгоднее торговать лимитными ордерами :)
2. Скрипт показывает верную информацию - OrderCalcMargin() работает корректно.
Ну и собственно объяснение почему отличается маржа по рыночным и лимитным ордерам:
Коротко - рыночный ордер выставляется по максимальной/минимальной цене за данную сессию (выше в логах это видно). Получается, может быть интересная ситуация, когда ордер Stop Limit (отложка) выставляется успешно, но когда цена к ней подходит - не исполняется :)
Полностью из справки:
Проверил скрипт в Открытии на фьючерсе на реальном счете - открывал и закрывал позиции руками в терминале (через панель и стакан). Ниже выводы и логи.
в Открытии есть разница в количестве необходимых для открытия позиции средств в зависимости от того какой тип ордера используется при открытии позиции - лимитный или рыночный.
По логике расчета я могу купить 3 лота по рынку (29350.00/9296.91 = 3.16) или 5 лотов лимитным ордером (29350.00/5166.91 = 5.68).
Есть ещё пара моментов:
1. Как я понимаю, можно купить 3 лота по рынку сразу, а потом ещё один или два раза по одному лоту - тоже по рынку.
2. Похоже, текущая поза не всегда учитывается для каждого символа отдельно - у меня сейчас открыто
MIX-6.22 sell 4
RTS-6.22 buy 6
И MT5 мне рисует текущую маржу 280940.22, хотя там по каждому символу примерно по столько должно быть.
Есть ещё пара моментов:
1. Как я понимаю, можно купить 3 лота по рынку сразу, а потом ещё один или два раза по одному лоту - тоже по рынку.
2. Похоже, текущая поза не всегда учитывается для каждого символа отдельно - у меня сейчас открыто
MIX-6.22 sell 4
RTS-6.22 buy 6
И MT5 мне рисует текущую маржу 280940.22, хотя там по каждому символу примерно по столько должно быть.
1. Да. Я раньше не понимал почему. Теперь понимаю :)
2. Ваш случай - это спред:
Там где спред - берется большое значение маржи, я так понял:
Добавлено:
До меня, после прочтения справки по ссылкам выше, наконец дошло как всё считается. Хотя до этого читал много статей и форумы на эту тему. Но только после прочтения справки МТ5 именно дошло полностью :) Вообще разработчикам за документацию спасибо огромное - сделана очень понятно и доступно.
"Если ничего не помогает - прочтите наконец инструкцию!" :)
1. Да. Я раньше не понимал почему. Теперь понимаю :)
2. Ваш случай - это спред:
Там где спред - берется большое значение маржи, я так понял:
Добавлено:
До меня, после прочтения справки по ссылкам выше, наконец дошло как всё считается. Хотя до этого читал много статей и форумы на эту тему. Но только после прочтения справки МТ5 именно дошло полностью :) Вообще разработчикам за документацию спасибо огромное - сделана очень понятно и доступно.
"Если ничего не помогает - прочтите наконец инструкцию!" :)
До сих пор у Вас не верный расчет.
Вот реальные цифры:
кликаете по необходимому инструменту и смотрите ГО в спецификации
там же можно увидеть все остальные сборы - комиссии и прочее
// это и есть ответ на вопрос ветки, т.е. что должно получиться в итоге!
Расчет может не сходиться в силу оценки уровня квалификации брокером. Если брокер решит, что уровень квалификации трейдера далек от профессионального, то ГО будет другим.
https://www.moex.com/ru/derivatives/
До сих пор у Вас не верный расчет.
Вот реальные цифры:
кликаете по необходимому инструменту и смотрите ГО в спецификации
там же можно увидеть все остальные сборы - комиссии и прочее
// это и есть ответ на вопрос ветки, т.е. что должно получиться в итоге!
Расчет может не сходиться в силу оценки уровня квалификации брокером. Если брокер решит, что уровень квалификации трейдера далек от профессионального, то ГО будет другим.
https://www.moex.com/ru/derivatives/
Проведите эксперимент по аналогии с моим. Возьмите Ваш баланс на счете и разделите на значение ГО биржи из спецификации по любому контракту (ссылку Вы дали). Полученное число округлите до целого (вниз). Попробуйте в МТ5 открыть позицию по этому инструменту с размером лота, который получили (открывать через стандартную панель быстрой торговли). Не у Финама, ни у Открытия у Вас сделка не откроется - не хватит денег.
Чтобы понять, сколько лотов Вы можете открыть на свои средства - можно воспользоваться скриптом из 113 сообщения данной ветки.
Ваш код из 112 сообщения для Финама тоже подойдет.
Добавлено:
Во время эксперимента на счете не должно быть открытых позиций и выставленных ордеров.
вот исчо
https://www.moex.com/msn/module-margin