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

Подскажите, как определить количество разрядов в средней цене позиции (той, что отображается в поле Price в окне Toolbox)?

Экспериментально выяснено, что может быть до 8 разрядов. Но тот же инструмент может иметь и 5 разрядов и пр. Я имею в виду, как определить сколько именно отображается в GUI?

void OnInit() 
   { 
   string symb = _Symbol;
   int bars_win_1 = Bars(_Symbol, _Period);
   int bars_win_2 = Bars(symb,    _Period);
   int bars_win_3 = iBars(_Symbol, _Period);
   int bars_win_4 = iBars(symb,    _Period);
   Print("     bars_win_1 = ", bars_win_1,  "     bars_win_2 = ", bars_win_2, "     bars_win_3 = ", bars_win_3,  "     bars_win_4 = ", bars_win_4);
   }
int OnCalculate(  const int         rates_total, 
                  const int         prev_calculated,
                  const datetime   &time[],                   
                  const double     &open[],                     
                  const double     &high[],                     
                  const double     &low[],                      
                  const double     &close[],                    
                  const long       &tick_volume[],                
                  const long       &volume[],                     
                  const int        &spread[]   )       
   {
   return(0);
   }                              

Оставить индикатор в окне. Терминал выключить, включить. Результат такой.

   bars_win_1 = 250688     bars_win_2 = 0     bars_win_3 = 250688     bars_win_4 = 0

Дальше в моём реальном коде таймер 20 мс. Проходит около 8-12 итераций прежде, чем все значения становятся равными реальному количеству.

Кроме того, все они дают фактическое значение, больше настроечного параметра (это нормально, но не соответствует справке).

Это просто к сведению.

leonerd #:

Подскажите, как определить количество разрядов в средней цене позиции (той, что отображается в поле Price в окне Toolbox)?

Экспериментально выяснено, что может быть до 8 разрядов. Но тот же инструмент может иметь и 5 разрядов и пр. Я имею в виду, как определить сколько именно отображается в GUI?

Digits()

Добрый день!

Подскажите, скачал индикатор, в МЕТАEDITOR он есть в разделе индикаторс, а в терминале , в разделе пользовательские он не появился.. Что можно сделать? 

Mik45 #:

Добрый день!

Подскажите, скачал индикатор, в МЕТАEDITOR он есть в разделе индикаторс, а в терминале , в разделе пользовательские он не появился.. Что можно сделать? 

Нужно скомпилировать код в редакторе MetaEditor.

Mik45 #:

Добрый день!

Подскажите, скачал индикатор, в МЕТАEDITOR он есть в разделе индикаторс, а в терминале , в разделе пользовательские он не появился.. Что можно сделать? 

если это не .ex а .mq  файл, то его необходимо скомпилировать

Всем доброго времени суток.

пишу советник по системе Три экрана Элдера, 

нужно прописать установку короткого и длинного окна 

в зависимости от текущего.

не могу реализовать/

попробовал так не получется

Файлы:

Добрый день! 

Подскажите как сделать. Мне нужно из МТ5 скачать страницу из личного кабинета с сайта investing.com

Просто загрузить страницу (не из личного кабинета) у меня получилось через функцию  WebRequest.

Вопрос как пройти авторизацию на сайте? Может кто уже делал что-то подобное? Или знаете статью про это?

Kot #:

Добрый день! 

Подскажите как сделать. Мне нужно из МТ5 скачать страницу из личного кабинета с сайта investing.com

Просто загрузить страницу (не из личного кабинета) у меня получилось через функцию  WebRequest.

Вопрос как пройти авторизацию на сайте? Может кто уже делал что-то подобное? Или знаете статью про это?

На всякий случай - осторожно с запросами к инвестингу. Если их слишком активно дёргать - могут забанить по IP.

Подскажите пожалуйста:
Нужно получить прибыль по незавершенной сделке - с учетом прошедших клирингов.

Это возможно сделать классами CDealInfo или CPositionInfo? 

Конструкция:

   CPositionInfo Trading_position; 

   if(Trading_position.Select(_Symbol) == true)     {

      double Profit = Trading_position.Profit(); }

позволила получить только текущую, без учета прибыли полученной ранее.