Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 2251

 
Alex8888888888 #:

Большое спасибо за совет!

Если несложно, сориентируйте, пожалуйста.

По вашему совету - булевая функция профитной сделки: 

Каким образом делать сброс флага именного в конце дневной свечи? В участке выложенного когда, сброс  флага происходит на каждом проходе (на каждом тике), а как задать сброс именно по закрытию текущей дневной свечи...

Еще раз  - спасибо!

Закрытие текущей свечи, в данном случае, ни чем не отличается от открытия следующей свечи.

 
Alexey Viktorov #:

Закрытие текущей свечи, в данном случае, ни чем не отличается от открытия следующей свечи.

Да, спасибо.

Но как это реализовать ... Сброс флага не на каждом тике, а на закрытии текущей/открытии следующей свечи...

 
Alex8888888888 #:

Каким образом делать сброс флага именного в конце дневной свечи? 

 Сравнивайте время открытия дневной свечи  iTime(NULL,PERIOD_D1,0) с временем закрытия профитной сделки 

OrderCloseTime()
 
Ivan Butko #:
datetime position_time   = PositionGetInteger(POSITION_TIME); 
datetime position_time   = (datetime)PositionGetInteger(POSITION_TIME);       
 

коллеги - гляньте плз по моему запросу время будет. Сам справку по МТ5  IDE читаю. Там по МТ 4  - можно было  привязку  к дню   года сделать типа YearOfDay (), тут как то по-элегантнее может можно...

читаю справку кода со временем работы.

вот так мне понятно и суммировать дальше по СРЕДНЕЙ цене по каждому году суммируя день - года и примерно 31 илли 30 дней делать - выделять на графике снизу,

типа средняя цена за 5 лет, то например, 10 день каждого года его цена суммируется по каждому году из 5 лет, если она больше нуля и эта цифра выводится точкой на график, но хотелось бы как-нибудь по - элегантнее (и то пока мне не известно, как цену символа узнать в выбранный день года - для построения графика средних цен по годам):


и далее уже через iOpen()  или iClose() по аналогам в МТ5 - по - барно и по - годно - складывать соответствующие цены дней соответствующих  и делить на кол-во лет и рисовать в индикаторе - это возможное решение "в лоб" и то если получится...  хотелось бы решение по - элегантнее:


Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - Написал советника для ручной торговли, который собирает торговые сигналы с разных пользовательских индикаторов.
Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - Написал советника для ручной торговли, который собирает торговые сигналы с разных пользовательских индикаторов.
  • 2023.08.25
  • www.mql5.com
вернее отредактировал поставляемый с МТ5 торговый сигнал. суть которого сводится к следующему и соответственно подключил этот торговый сигнал к торговому советнику с помощью. Я же практически ничего не изменил в коде сигнала поставляемого с MT5
 
Ivan Butko #:
"RSI_gm%Lvl"

Дайте это индикатор - я посмотрю.

 
Alex8888888888 #:

Да, спасибо.

Но как это реализовать ... Сброс флага не на каждом тике, а на закрытии текущей/открытии следующей свечи...

//+------------------------------------------------------------------+
void OnTick()
  {
   if(TimeCurrent()>GetLastProfitDay())
     {
      ...Ваш код.
     }
  }
//+------------------------------------------------------------------+
datetime GetLastProfitDay() 
  {
   int i=OrdersTotal()-1;
   datetime t=0, last=0;
   double res=0;
   for(int pos=i;pos>=0;pos--)
     {
      if(OrderSelect(pos,SELECT_BY_POS,MODE_HISTORY))
        {
         if(OrderSymbol()==_Symbol&&OrderMagicNumber()==Magic)
           {
            res=OrderProfit()+OrderCommission()+OrderSwap();
            if(res>0&&OrderCloseTime()>t)
              {
               t=OrderCloseTime(); last=StringToTime(TimeToStr(TimeCurrent(),TIME_DATE))+PeriodSeconds(PERIOD_D1);
              } 
           }
        }
     }
   return(last);
  }
 
Tretyakov Rostyslav #:

Большое спасибо!

 
Ivan Butko #:

Извините, я не уточнил - это МТ4

вот индикаторы, на каждом тике, все работают нормально, кроме этого РСИ


Пробуйте этот

Файлы:
test.mq4  9 kb
 
Tretyakov Rostyslav #:

Пробуйте этот

Ростислав, Вы гений) Спасибо большое. 
Если не секрет, скажите пожалуйста, в чём было дело? Мне как маленькому кодеру интересно

Причина обращения: