Скачать MetaTrader 5
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Ищешь единомышленников? На форуме их много!
Oksana Berenko
2505
Oksana Berenko 2016.06.20 13:23 

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

Написала скрипт (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
16323
Yurij Izyumov 2016.06.20 23:05  
Та же самая байда, они даже не стали ничего объяснять =) сказали просто что типа маркетинфо выдает не верную информацию и всё 
Alexey Kozitsyn
6218
Alexey Kozitsyn 2016.06.21 08:56  
Oksana Berenko:

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

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

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

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

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

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

А если через SymbolInfo...()?
Alexey Volchanskiy
16218
Alexey Volchanskiy 2016.06.21 11:12  
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
3500
Alexey Oreshkin 2016.06.21 12:01  
Поднимал эту тему ещё год назад кажется. Где то у меня в профиле можно её поискать и насколько помню на 4 странице приводил формулу как считать плечо по каждом инструменту не используя AccountLeverage
Oksana Berenko
2505
Oksana Berenko 2016.06.21 15:42  
Alexey Oreshkin:
Поднимал эту тему ещё год назад кажется. Где то у меня в профиле можно её поискать и насколько помню на 4 странице приводил формулу как считать плечо по каждом инструменту не используя AccountLeverage
AccountLeverage у меня только для информации, в расчетах его не использую
/
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий