Вопросы от начинающих MQL5 MT5 MetaTrader 5 - страница 1542

 
Проблема: и на демо- и нареальном счете не показывается ни Volume для Real Volume (показывает только для ticks) ни Open Interest.
Проверял в Debbuger, на event OnCalculate серия volume приходит с нулевыми значениями, а функция
   double interest=SymbolInfoDouble(Symbol(),SYMBOL_SESSION_INTEREST);
выдает 0.

Пытался початить с онлайн-суппортом, но там сидят полудебилы (на двух брокерах: ProForex и Libertex) и отвечают "ничем не можем помочь! сóри!".

Кто знает, что делать?!
Спасибо заранее!!!
 
wgomer #:
Кто знает, что делать?!

Торговать на бирже - открытый интерес и реальные объёмы неизвестны децентрализованному рынку.

 
maxvoronin74 #:

Компилятор в следующем коде:

видит ошибку "array out of range".

Получается, программа соглашается, что переменные существуют, что они подпадают под условие if, но выражения из этих переменных не создают элементов массива.

Что я не так делаю?

Прошу прощения за невнимательность. Конечно, не компилятор, а терминал выдает ошибку.
Файлы:
 

Как рассчитать маржу на демо-счете MT5?

Я заключил сделку на USD против золота с объемом = 1 (сбоку написано 100 XAUUSD, но я не уверен, что это означает лоты или микролоты и т.д.), цена = 2422 с кредитным плечом 1:30, и вдруг маржа появилась на открытой позиции, а затем исчезла, когда я закрыл позицию с TP $101 (хотя у меня все еще есть свободная маржа, равная моему балансу и капиталу). Он говорит, что маржа составляет ~12k, но не уверен, как она туда попала...

 
maxvoronin74 #:
Прошу прощения за невнимательность. Конечно, не компилятор, а терминал выдает ошибку.

Смог найти, что IndMax в коде

if(VolatilitiLow1==0&&VolatilitiLow2>0&&VolatilitiLow3==0&&VolatilitiLow4>0&&VolatilitiLow5==0&&VolatilitiLow6>0)
{
   double Array42[]={VolatilitiUp1,VolatilitiLow2,VolatilitiUp3,VolatilitiLow4,VolatilitiUp5,VolatilitiLow6};
   int IndMax=ArrayMaximum(Array42,WHOLE_ARRAY,0);
   Volatiliti=Array42[IndMax];
}
имеет значение -1. Чего, как я понимаю, не может быть. Проверка показала, что массив имеет положительное количество элементов, с положительными значениями. Отсюда уточняющий вопрос, как правильно поставить задачу на определение индекса наибольшего элемента массива?
Файлы:
 
maxvoronin74 #:

Смог найти, что IndMax в коде

имеет значение -1. Чего, как я понимаю, не может быть.
Могу ошибаться, но проверьте порядок аргументов у функции ArrayMaximum(). Кажется, 0 должен идти перед WHOLE_ARRAY
 
Yuriy Bykov #:
Могу ошибаться, но проверьте порядок аргументов у функции ArrayMaximum(). Кажется, 0 должен идти перед WHOLE_ARRAY
Правда. Заработало. Благодарю. Не подумал сразу это проверить.
 

Вместо значения согласно формулы переменная Volatiliti принимает значение цены. Не вижу, где ошибка.

В лог файле первые 2 строчки - составные части, из которых по формуле расчитывается эта переменная. По итогу явно получается цена с рынка, а не результат вычисления.

Благодарю за помощь.

Файлы:
 
Здравствуйте! Подскажите пожалуйста, как исправить это предупреждение:
implicit conversion from 'string' to 'string'

Выдает это предупреждение здесь:
double SL = edit7.Text();


 
Igor168 #:
Здравствуйте! Подскажите пожалуйста, как исправить это предупреждение:
implicit conversion from 'string' to 'string'

Выдает это предупреждение здесь:
double SL = (double)edit7.Text();