Трендо-флэтовая стратегия. - страница 11

pako:

где это нужное место?

где и как правильно ? 

линия строится по флэту, по отбитому или не отбитому
JLY:
линия строится по флэту, по отбитому или не отбитому

Как вы сами-то не запутались в трендах флета, флетах  тренда, флетах флета, трендов тренда???

Подкину ещё вам парочку, пригодятся: терминал терминала, профит слива... ну ещё один: слив профита... хотя ещё есть: слив слива, профит профита...

Короче - потеря потерь, подстава подстав...

Как в том видео: перекупленная перепроданность. Смешно все это.

Переписываю индикатор под 5, помогите какие то непонятности пишет при компилировании. Спасибо. 

Файлы:
TimeEnd.mq5  11 kb
artmedia70:

Как вы сами-то не запутались в трендах флета, флетах  тренда, флетах флета, трендов тренда???

Подкину ещё вам парочку, пригодятся: терминал терминала, профит слива... ну ещё один: слив профита... хотя ещё есть: слив слива, профит профита...

Короче - потеря потерь, подстава подстав...

Нет, сейчас есть только флэт, и совокупность флэтов, трендов нет получается...
[Удален]
JLY:

Переписываю индикатор под 5, помогите какие то непонятности пишет при компилировании. Спасибо. 

string name;
long time1NEW,time2NEW,time3,time3OBRAT;
double   price1NEW,price2NEW,price3,price3OBRAT;
//---------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
   for(int i=0;i < ObjectsTotal(0,0,-1);i++)
      {
        if(ObjectGetInteger(0,ObjectName(0,i,0,-1),OBJPROP_TYPE,0)==OBJ_TREND)
          {
            name = ObjectName(0,i,0,-1);
            price1NEW = ObjectGetDouble(0,name,OBJPROP_PRICE,0);
            price2NEW = ObjectGetDouble(0,name,OBJPROP_PRICE,1);
            price3=price2NEW-(price1NEW-price2NEW);
            time1NEW  = ObjectGetInteger(0,name,OBJPROP_TIME,0);
            time2NEW  = ObjectGetInteger(0,name,OBJPROP_TIME,1);
            time3=time2NEW+(time2NEW-time1NEW);
            
            price3OBRAT=price1NEW+(price1NEW-price2NEW);
            time3OBRAT=time1NEW-(time2NEW-time1NEW);
                     
            ObjectCreate(0,name,OBJ_TREND,0,time1NEW,price1NEW,time2NEW,price2NEW);
            ObjectSetInteger(0,name,OBJPROP_COLOR,Lime);
            ObjectSetInteger(0,name,OBJPROP_WIDTH,1);
            ObjectSetInteger(0,name,OBJPROP_RAY_RIGHT,true);
          }
      }
и т д
pako:
и т д

Расчет времени нужен в барах. В 4-й считать нужно было в барах из за разрывов выходных, т.е. не учитывать их. Если такая проблема есть и в 5-й то тут тоже нужно время конца по барам выводить.

Идет ошибка, при компилировании, как раз в этом месте. 

Седелал что рисует по секундам, разрывы в выходных есть, значит нужно все таки считать по барам.

И как удалить значки если линии уже нет? 

 

Файлы:
[Удален]
JLY:

И как удалить значки если линии уже нет?

ObjectDelete(0,"имя значка"+name);
если у значка нет имени, то в данном случае
ObjectDelete(0,name);

Расчет времени нужен в барах

сделайте в барах

время у вас известно, т.е в Time[9] был 9 бар

я там только начало написал,

дальше как вам будет угодно 

pako:

Расчет времени нужен в барах

сделайте в барах

время у вас известно, т.е в Time[9] был 9 бар

я там только начало написал,

дальше как вам будет угодно 

Спасибо, только там линию создавать не нунжно было (просто задавать параметры), а так все работает. 

В 4-й время в барах через iBarShift считалось. Вот по такой формуле:

datetime time01=time1NEW;datetime time02=time2NEW;
int shift01=iBarShift(0,0,time01);int shift02=iBarShift(0,0,time02);//перевод из скунд в бары
int timeCHANGE=shift01-shift02;//разница между 1-й и 2-й точкой линии
int timeBAR=(shift02-timeCHANGE);//прибавить разницу ко 2-й точке
int timeBARc=Time[timeBAR];//Перевод из баров в секунды

 В пятой этой функции нет, а сфункцией Copy* пока не знаю как...