Устанавливаю 1 отложенный ордер на продажу SBRF-9.19 в Квик по цене 22030, резервируются средства 3838,04 руб.
Проделываю все тоже самое в MT5, резервируется 3820,94 руб.
Какой терминал не правильно считает?
Устанавливаю 1 отложенный ордер на продажу SBRF-9.19 в Квик по цене 22030, резервируются средства 3838,04 руб.
Проделываю все тоже самое в MT5, резервируется 3820,94 руб.
Какой терминал не правильно считает?
походу в mt5 выгодней торговать)
походу в mt5 выгодней торговать)
Суть вопроса какова? Что, спрашивали где выгодней торговать?
Нечего сказать по сути - нефиг встревать!
Суть вопроса какова? Что, спрашивали где выгодней торговать?
Нечего сказать по сути - нефиг встревать!
Скажите вы по сути
Устанавливаю 1 отложенный ордер на продажу SBRF-9.19 в Квик по цене 22030, резервируются средства 3838,04 руб.
Проделываю все тоже самое в MT5, резервируется 3820,94 руб.
Какой терминал не правильно считает?
Брокер открытие уже не раз сообщало, что ГО считается не верно в MT5, с этим и коррекции связывают на клиринге - видимо это все из одной темы.
Тип ордера правильно поставь ORDER_TYPE_SELL_LIMIT
2020.03.05 01:06:15.704 CheckMargin (GOLD-3.20,H1) ГО = 7691.09000000
для рыночного ордера берется минимальная цена, получается маржа * 1.5
Тип ордера правильно поставь ORDER_TYPE_SELL_LIMIT
для рыночного ордера берется минимальная цена, получается маржа * 1.5
Да, но после сделки маржа не 1,5, а 1!
Т.е 50% денег не используется!
Добавлено
Если я поставлю ORDER_TYPE_SELL_LIMIT,
то посчитается меньше, НО если свободные средства "на грани",
то МТ5 не пропустит ордер, будет реджект.
Я как раз "наступил" на эти грабли.
Это архиважно при парном трейдинге!
Да, но после сделки маржа не 1,5, а 1!
Т.е 50% денег не используется!
Добавлено
Если я поставлю ORDER_TYPE_SELL_LIMIT,
то посчитается меньше, НО если свободные средства "на грани",
то МТ5 не пропустит ордер, будет реджект.
Я как раз "наступил" на эти грабли.
Это архиважно при парном трейдинге!
если ставить SELL_LIMIT то маржи требует столько сколько нужно для ордера по указанной цене, не больше,
но запас тоже немного надо иметь ))
для просто SELL берется в расчет минимально возможная цена, поэтому и маржы требует для открытия в 1.5 раза больше, после открытия уже берется фактическая цена открытия позиции,
можно еще использовать OrderCheck,
а вообще в открывашке последнее время глюки и на квике тоже
такой скрипт еще нашел у себя, может пригодится:
//+------------------------------------------------------------------+ //| Check Margin.mq5 | //| Copyright 2016, Serj_Che | //| https://www.mql5.com/ru/users/serj_che | //+------------------------------------------------------------------+ #property copyright "Copyright 2016, Serj_Che" #property link "https://www.mql5.com/ru/users/serj_che" #property version "1.00" #property script_show_inputs input ENUM_ORDER_TYPE typ = ORDER_TYPE_BUY_LIMIT; input double volum = 1.0; input double price = 0.0; // price (если=0.0 то по цене Ask) //+------------------------------------------------------------------+ //| Script program start function | //+------------------------------------------------------------------+ void OnStart() { //--- MqlTick tick; SymbolInfoTick(_Symbol,tick); double iprice=price; if(price==0.0) iprice=tick.ask; bool res; double margin=0.0; res=OrderCalcMargin(typ,_Symbol,volum,iprice,margin); MqlTradeRequest request={0}; MqlTradeCheckResult result={0}; request.action=TRADE_ACTION_PENDING; request.symbol=_Symbol; request.volume=volum; request.price=iprice; request.type=typ; request.type_filling=ORDER_FILLING_RETURN; request.type_time=ORDER_TIME_DAY; ResetLastError(); res=OrderCheck(request,result); Comment( "\n OrderCalcMargin margin = ",margin, "\n Размер маржи (средства) необходимый для требуемой торговой операции = ",result.margin, "\n Размер свободных собственных средств, которые останутся после выполнения требуемой торговой операции = ",result.margin_free, "\n res=",res, "\n retcod=",GetRetCode(result.retcode), "\n retcod comment=",result.comment, "\n error=",GetLastError(), "\n SYMBOL_MARGIN_INITIAL=",SymbolInfoDouble(Symbol(), SYMBOL_MARGIN_INITIAL), "\n SYMBOL_MARGIN_MAINTENANCE=",SymbolInfoDouble(Symbol(), SYMBOL_MARGIN_MAINTENANCE), "\n SYMBOL_MARGIN_LIMIT=",SymbolInfoDouble(Symbol(), SYMBOL_MARGIN_LIMIT), "\n SYMBOL_MARGIN_LONG=",SymbolInfoDouble(Symbol(), SYMBOL_MARGIN_LONG), "\n SYMBOL_MARGIN_STOP=",SymbolInfoDouble(Symbol(), SYMBOL_MARGIN_STOP), "\n SYMBOL_MARGIN_STOP=",SymbolInfoDouble(Symbol(), SYMBOL_MARGIN_STOPLIMIT), ""); } //+------------------------------------------------------------------+ //+------------------------------------------------------------------+ string GetRetCode( const uint code ) { string retcode; switch( code ) { case 10004: retcode = "Реквота"; break; case 10006: retcode = "Запрос отвергнут"; break; case 10007: retcode = "Запрос отменен трейдером"; break; case 10008: retcode = "Ордер размещен"; break; case 10009: retcode = "Заявка выполнена"; break; case 10010: retcode = "Заявка выполнена частично"; break; case 10011: retcode = "Ошибка обработки запроса"; break; case 10012: retcode = "Запрос отменен по истечению времени"; break; case 10013: retcode = "Неправильный запрос"; break; case 10014: retcode = "Неправильный объем в запросе"; break; case 10015: retcode = "Неправильная цена в запросе"; break; case 10016: retcode = "Неправильные стопы в запросе"; break; case 10017: retcode = "Торговля запрещена"; break; case 10018: retcode = "Рынок закрыт"; break; case 10019: retcode = "Нет достаточных денежных средств для выполнения запроса"; break; case 10020: retcode = "Цены изменились"; break; case 10021: retcode = "Отсутствуют котировки для обработки запроса"; break; case 10022: retcode = "Неверная дата истечения ордера в запросе"; break; case 10023: retcode = "Состояние ордера изменилось"; break; case 10024: retcode = "Слишком частые запросы"; break; case 10025: retcode = "В запросе нет изменений"; break; case 10026: retcode = "Автотрейдинг запрещен сервером"; break; case 10027: retcode = "Автотрейдинг запрещен клиентским терминалом"; break; case 10028: retcode = "Запрос заблокирован для обработки"; break; case 10029: retcode = "Ордер или позиция заморожены"; break; case 10030: retcode = "Указан неподдерживаемый тип исполнения ордера по остатку"; break; case 10031: retcode = "Нет соединения с торговым сервером"; break; case 10032: retcode = "Операция разрешена только для реальных счетов"; break; case 10033: retcode = "Достигнут лимит на количество отложенных ордеров"; break; case 10034: retcode = "Достигнут лимит на объем ордеров и позиций для данного символа"; break; case 10035: retcode = "Неверный или запрещённый тип ордера"; break; case 10036: retcode = "Позиция с указанным POSITION_IDENTIFIER уже закрыта"; break; default: retcode = "Нет кода возврата!"; break; } return( retcode ); } //+------------------------------------------------------------------+
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Привет!
Эта функция на ФОРТС правильно работает?