Советник открывает как надо и выставляет правильно как надо тейк профит и стоп лосс, вот только как открывается один из двух отложенного стопового-ордера, другой пропадает( или удаляется.Желательно бы до конца дня чтоб оба ордера были.и потом, если открылся один из ордеров, второй удваивается до конца дня (на случаи ложного пробоя ), если не сработал, то удаляется.Простите что часто пишу! Заранее ОГРОМНОЕ СПАСИБО!!!
Благодарю Вас, огромное СПАСИБО!!!
Вроде бы всё хорошо а можно так сделать чтобы временно не выставлять лимитные ордера в советнике? или отключить их на какое-то время? протестировать хотелось просто со стоп-отложенными ордерами, а потом с лимит-отложенные ордерами вместе ( как лучше-буду смотреть )
Простите, не могу открыть формат не тот наверно, не у индикатора, ни у советника… Тип файла наверно другой (
не подскажите как открыть или поменять ваш тип файла ( RAR ) на ( MQL4 Source File )? или на тип файла ( qm4 )
Все открываются, а ваш нет, вот скрит формат другой
Советник выставляет в 8 ч стоповые-отложенные ордера по двум сторонам диапазона.Предположим, открылся стоповый-ордер вверх, отложенный ордер сработал. )Тейк профит советник выставляет половину от утреннего диапазона (50%).Стоп лосс стоит на нижней границе диапазона, если сработал тейк-хорошо, а если нет, значит сработал стоп лосс- нижний уровень, Тут же открывает сделку вниз и удваивает лот.Тейк профит так же 50 %.Стоп лосс выставляется на противоположной стороне диапазона.Если в сегодняшний день, не сработал ни тейк профит, и не стоп-лосс, советник удаляет отложенные стоповые ордера. в 00.00 по GMT
Есть индикатор MorningFlat_V3, хотелось бы такой советник
вот индикатор вернее код, не знаю нужен ли он вам.
//+-------------------------------------------------------------------------------------+
//| MorningFlat_V3.mq4 |
//| Scriptong |
//| |
//+-------------------------------------------------------------------------------------+
#property copyright «Scriptong»
#property link ""
// Во второй версии добавлено отображение ширины канала
// В третьей версии добавлена возможность указания минут
extern int StartHour=0;
extern int StartMinute=15;
extern int EndHour=8;
extern int EndMinute=45;
extern double TargetLevel=161.8;
extern color UpColor = Turquoise;
extern color DnColor = Red;
extern color TargetUpColor = Gold;
extern color TargetDnColor = Silver;
//---- buffers
double Up[];
double Down[];
double TargetUp[];
double TargetDn[];
bool Activate=False;
datetime LastDay;
//+-------------------------------------------------------------------------------------+
//| Custom indicator initialization function |
//+-------------------------------------------------------------------------------------+
int init()
{
//---- indicators
if(Period()>PERIOD_H1)
{
Comment(«Индикатор работает на таймфреймах меньше H4!»);
return(0);
}
if(StartHour<0 || EndHour<0 || StartHour>23 || EndHour>23 ||
StartHour>EndHour || (StartHour==EndHour && StartMinute>=EndMinute))
{
Comment(«Значения StartHour и EndHour должны лежать в диапазоне от 0 до 24 и »,
«StartHour < EndHour.»);
return(0);
}
if(StartMinute<0 || EndMinute<0 || StartMinute>59 || EndMinute>59)
{
Comment(«Значения StartHour и EndHour должны лежать в диапазоне от 0 до 24 и »,
«StartHour < EndHour.»);
return(0);
}
if(ObjectCreate(Name,OBJ_TEXT,0,TimeL,Price))
ObjectSetText(Name,St,10,«Arial»,Col);
}
//+-------------------------------------------------------------------------------------+
//| Custom indicator iteration function |
//+-------------------------------------------------------------------------------------+
int start()
{
//----
if(!Activate) return(0);
LastDay=0;
int counted_bars=IndicatorCounted();
if(counted_bars<0) return(-1);
if(counted_bars>0) counted_bars--;
int limit=Bars-counted_bars;
if(counted_bars==0) limit--;
for(int i=limit; i>=0; i--)
if(TimeHour(Time[i])>EndHour ||
(TimeMinute(Time[i])>EndMinute && TimeHour(Time[i])==EndHour))
{
datetime BeginDay=iTime(Symbol(),PERIOD_D1,// Расчет времени начала суток
iBarShift(Symbol(),PERIOD_D1,Time[i]));
datetime NextDay=BeginDay+86400; // Расчет времени начала следующих суток
if(LastDay>=BeginDay) // Если в этот день уже рисовали уровни, то
continue; // продолжаем основной цикл
// Бар, соответсвующий началу суток плюс смещение в часах и минутах
int StartBar=iBarShift(Symbol(),0,BeginDay+StartHour*3600+StartMinute*60);
// Бар, соответствующий последнему бару «утреннего флэта»
int FinishBar=iBarShift(Symbol(),0,BeginDay+EndHour*3600+EndMinute*60)+1;
int ind1=iLowest(Symbol(),0,MODE_LOW,StartBar-FinishBar+1,FinishBar);
int ind2=iHighest(Symbol(),0,MODE_HIGH,StartBar-FinishBar+1,FinishBar);
if(ind1>-1 && ind2>-1)
{
double LowV=Low[ind1]; // Нижняя граница канала
double HighV=High[ind2]; // Верхняя граница канала
double TargetU=(HighV-LowV)*(TargetLevel-100)/100+HighV; // Верхняя цель
double TargetD=LowV-(HighV-LowV)*(TargetLevel-100)/100; // Нижняя цель
// Рисуется канал «утреннего флэта»
for(int j=StartBar; j>=FinishBar; j--)
{
Up[j]=HighV;
Down[j]=LowV;
}
// — // Ожидаемые цели при пробое флэта
for(j=FinishBar; j>=0; j--)
{
if(!(Time[j]<NextDay)) break;
TargetUp[j] = TargetU;
TargetDn[j] = TargetD;
}
// —
datetime TB=Time[iBarShift(Symbol(),0,BeginDay+StartHour*3600+
StartMinute*60)];
DrawLabel(TB,HighV,True,UpColor,5); // Рисуем верхнюю ценовую метку канала
DrawLabel(TB,LowV,False,DnColor,5); // Рисуем нижнюю ценовую метку канала
// Рисуем верхнюю ценовую метку цели
DrawLabel(Time[FinishBar],TargetU,True,TargetUpColor,5);
// Рисуем нижнюю ценовую метку цели
DrawLabel(Time[FinishBar],TargetD,False,TargetDnColor,5);
DrawText((Time[FinishBar]-TB)/2+TB,HighV,// Отображение ширины канала
DoubleToStr(MathRound((HighV-LowV)/Point),0),Red);
LastDay=BeginDay; // Отмечаем, что в этот день уровни уже были нарисованы
}
}
Советник выставляет в 8 ч стоповые-отложенные ордера по двум сторонам диапазона.Предположим, открылся ордер вверх, отложенный ордер сработал. )Тейк профит советник выставляет половину от утреннего диапазона (50%).Стоп лосс стоит на нижней границе диапазона, если сработал тейк-хорошо, а если нет, значит сработал стоп лосс- нижний уровень, Тут же открывает сделку вниз и удваивает лот.Тейк профит так же 50 %.Стоп лосс выставляется на противоположной стороне диапазона.Если в сегодняшний день, не сработал ни тейк профит, и не стоплосс, советник не открывает новую сделку на след.день.
Благодарю Вас, огромное СПАСИБО!!!
Tatiana-3443