Вопросы по MQL5

  • Автор темы Автор темы chocolate
  • Дата начала Дата начала
Здравствуйте. На сайте bybit кредитное плечо у GBPUSD+ указано 500. А если проверить, какое кредитное плечо у GBPUSD+ в mt5, то показывает 100. Чему верить, или я неправильно проверяю?
Код:
AccountInfoInteger(ACCOUNT_LEVERAGE); // показывает 100
 
Здравствуйте. На сайте bybit кредитное плечо у GBPUSD+ указано 500. А если проверить, какое кредитное плечо у GBPUSD+ в mt5, то показывает 100. Чему верить, или я неправильно проверяю?
Код:
AccountInfoInteger(ACCOUNT_LEVERAGE); // показывает 100
Терминал сайты брокеров не читает. Может разница быть на разных типах счетов.
 
Здравствуйте , подскажите пожалуйста : Мне нужно в первый рабочий день месяца открывать сделку ка запрограммировать это в MQL5
 
Здравствуйте , подскажите пожалуйста : Мне нужно в первый рабочий день месяца открывать сделку ка запрограммировать это в MQL5
Вам нужно проверять торговую сессию символа, режим торгов.
Далее - начинать отсчет дней с 0 при начале нового месяца(просто проверка на новую месячную свечу через iTime(Symbol(),PERIOD_MN1,0)), как только разрешение на торговлю появится - открывать позицию.

Эта инфа есть в документации.
Кроме рабочего символа, передаваемого в параметре symbol, функция isTradeOnSymbolEnabled принимает текущее время (now) и требуемый режим торгов (mode). Значение по умолчанию SYMBOL_TRADE_MODE_FULL дает максимальную свободу (разрешены все торговые операции).
static bool isTradeOnSymbolEnabled(string symbol, const datetime now = 0,
const ENUM_SYMBOL_TRADE_MODE mode = SYMBOL_TRADE_MODE_FULL)
{
// проверка сессий
bool found = now == 0;
if(!found)
{
const static ulong day = 60 * 60 * 24;
const ulong time = (ulong)now % day;
datetime from, to;
int i = 0;

ENUM_DAY_OF_WEEK d = TimeDayOfWeek(now);

while(!found && SymbolInfoSessionTrade(symbol, d, i++, from, to))
{
found = time >= (ulong)from && time < (ulong)to;
}
}
// проверка режима торговли для символа
return found && (SymbolInfoInteger(symbol, SYMBOL_TRADE_MODE) == mode);
}
 
Назад
Верх