Вопрос для mql4 или mql5?
Alexey Viktorov:
Вопрос для MQL4.
Вопрос для mql4 или mql5?
Подходит ли такой способ проверки?
if(AccountFreeMargin()<(1000*Lot)) { Print("We have no money. Free Margin = ",AccountFreeMargin()); return(0); }
про AccountFreeMarginCheck() справку почитайте, может это оно и есть?
Tatiana Zyrianova:
Tatiana Zyrianova:Подходит ли такой способ проверки?
Подходит ли такой способ проверки?
Что такое 1000, это со стены взято?
if(Lot*MarketInfo(Symbol(),MODE_MARGINREQUIRED) <= AccountFreeMargin()) { // тут условие }
Vitaly Muzichenko:
Спасибо, то что нужно!!!
Что такое 1000, это со стены взято?
if(Lot*MarketInfo(Symbol(),MODE_MARGINREQUIRED) <= AccountFreeMargin()) { // тут условие }
Tatiana Zyrianova:
Спасибо, то что нужно!!!
Спасибо, то что нужно!!!
Выше указывали на AccountFreeMarginCheck - это самый простой и надежный способ. Ведь в примере от MVS не сделана проверка результата, который возвращает MarketInfo. С AccountFreeMarginCheck() делается так:
if (AccountFreeMarginCheck(Symbol(), orderType, volume) <= 0.0 || GetLastError() == ERR_NOT_ENOUGH_MONEY) { // Средств недостаточно }
где orderType - OP_BUY или OP_SELL,
volume - объем ордера.
Поставь индикатор который будет показывать объем лота который можно приобрести исходя из средств на счету...
Пиши в личку могу поделиться. Очень удобно...
Файлы:
Для МТ5 можно использовать такое :
double GetMargin(const string symbol, const double volume, const string end = "") { long leverage = AccountInfoInteger(ACCOUNT_LEVERAGE); double contract = SymbolInfoDouble(symbol, SYMBOL_TRADE_CONTRACT_SIZE) * volume; string currency = StringSubstr(symbol, 0, 3) + AccountInfoString(ACCOUNT_CURRENCY) + end; return(SymbolInfoDouble(currency, SYMBOL_LAST) * contract / leverage); } if (AccountInfoInteger(ACCOUNT_BALANCE) > GetMargin("EURUSD", 2.0)) { // we have enough money to open position of 2 lots }
Огромное спасибо за помощь!!!
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Подскажите, пожалуйста, как перед отправкой торгового приказа всегда проверять, достаточно ли на моем счете свободной маржи для открытия позиции.