Скачать MetaTrader 5

Маржа у брокера изменилась, а вот код эти изменения не видит

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Oksana Berenko
2791
Oksana Berenko  

В связи с предстоящим референдумом, некоторые брокеры снизили плечо.

Написала скрипт (mql4), чтобы перед открытием сделки проверить, коснулись ли эти изменения моего счета или нет.

double Lot = 0.01; // Лот

double _buyM   = AccountFreeMargin()-AccountFreeMarginCheck(Symbol(), OP_SELL, Lot);
double _sellM  = AccountFreeMargin()-AccountFreeMarginCheck(Symbol(), OP_BUY, Lot);
double _marga  = AccountMargin();
double _SbuyM  = _marga+_buyM;
double _SsellM = _marga+_sellM;
Alert("----------------------------------------------------------------------------------------------");
Alert("SELL лот = ", Lot," маржа: ", NormalizeDouble(_buyM, 3), "   Итого маржа составит: ", NormalizeDouble(_SbuyM, 3));    
Alert("BUY лот = ", Lot," маржа: ", NormalizeDouble(_sellM, 3), "   Итого маржа составит: ", NormalizeDouble(_SsellM, 3));
Alert("Текущая маржа: ", NormalizeDouble(_marga, 3));
Alert("Плечо: ", AccountInfoInteger(ACCOUNT_LEVERAGE)); 

Но скрипт как выводит прежние значения, так и выводит:

алерт

Хотя реальные значения уже другие:

маржа

Ладно с плечом, оно могло измениться именно на конкретных валютных парах. Но вот почему не работает функция?:

AccountFreeMarginCheck(Symbol(), OP_SELL, Lot)

Ведь она конкретно на паре, на которой запущен скрипт, должна определить сколько свободных средств останется после открытия позиции. Вот она не увидела изменений!

Yurij Izyumov
31218
Yurij Izyumov  
Та же самая байда, они даже не стали ничего объяснять =) сказали просто что типа маркетинфо выдает не верную информацию и всё 
Alexey Kozitsyn
7774
Alexey Kozitsyn  
Oksana Berenko:

В связи с предстоящим референдумом, некоторые брокеры снизили плечо.

Написала скрипт (mql4), чтобы перед открытием сделки проверить, коснулись ли эти изменения моего счета или нет.

Но скрипт как выводит прежние значения, так и выводит:

Хотя реальные значения уже другие:

Ладно с плечом, оно могло измениться именно на конкретных валютных парах. Но вот почему не работает функция?:

Ведь она конкретно на паре, на которой запущен скрипт, должна определить сколько свободных средств останется после открытия позиции. Вот она не увидела изменений!

А если через SymbolInfo...()?
Alexey Volchanskiy
23021
Alexey Volchanskiy  
Alexey Kozitsyn:
А если через SymbolInfo...()?

А там в МТ4 вообще нифига не работает, я вчера пост писал, тоже, как Оксана, сделал себе индикатор на период референдума.

https://www.mql5.com/ru/forum/88960#comment_2588419 

Почему не работают функции определения margin для символа?
Почему не работают функции определения margin для символа?
  • www.mql5.com
МТ4, билд 971. Следующий код печатает нули, где я неправ? Вывод: 2016.06.20 16:35:48.473 ShowImportantParams EURUSD.e,M1: 0.00 0.00 0.00 no error...
Alexey Oreshkin
6634
Alexey Oreshkin  
Поднимал эту тему ещё год назад кажется. Где то у меня в профиле можно её поискать и насколько помню на 4 странице приводил формулу как считать плечо по каждом инструменту не используя AccountLeverage
Oksana Berenko
2791
Oksana Berenko  
Alexey Oreshkin:
Поднимал эту тему ещё год назад кажется. Где то у меня в профиле можно её поискать и насколько помню на 4 странице приводил формулу как считать плечо по каждом инструменту не используя AccountLeverage
AccountLeverage у меня только для информации, в расчетах его не использую
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий