| Алерт в индикатор. Как вставить Alert и Arrow в индикатор? |
#property indicator_buffers 1IndicatorBuffers(7);SetIndexBuffer(0,SarBuffer);SetIndexBuffer(0,SarBuffer);
SarBuffer[shift+1]>=0 && SarBuffer[shift]<0SarBuffer[shift+1]>=Close[shift] && SarBuffer[shift]<Close[shift]SarBuffer[shift+1]<=75 && SarBuffer[shift]>75
SarBuffer[shift+1]>=25 && SarBuffer[shift]<25DnTrend[1]!=EMPTY_VALUE && DnTrend[1]!=0&& UpTrend[2]!=EMPTY_VALUE//+======================================================================================+
//+================================ www.expforex.com edit AlertArrow ====================+
//+======================================================================================+
extern string Alerts="Алерты и стрелки от www.expforex.com";
extern bool AlerT=true; // Выдавать алерт на экран
extern bool Mail=true; // Посылать сообщение
extern bool Push=true; // Посылать ПУШ на телефон
extern bool Arrow=true; // Ставить стрелки на сигналах
extern int shift=1; // На каком баре считать сигнал 0 - на текущем 1 - на закрытом
int timeee; // Внутренняя переменная
string nameInd;
void SetArrow(int cd, color cl,
string nm="", datetime t1=0, double p1=0, int sz=3) {
if (nm=="") nm=DoubleToStr(Time[0], 0);
if (t1<=0) t1=Time[0];
if (p1<=0) p1=Bid;
nameInd=WindowExpertName( );
int wind=WindowFind(nameInd);
if (wind==-1)wind=0;
if (ObjectFind(nm)<0) ObjectCreate(nm, OBJ_ARROW, wind, 0,0);
ObjectSet(nm, OBJPROP_TIME1 , t1);
ObjectSet(nm, OBJPROP_PRICE1 , p1);
ObjectSet(nm, OBJPROP_ARROWCODE, cd);
ObjectSet(nm, OBJPROP_COLOR , cl);
ObjectSet(nm, OBJPROP_WIDTH , sz);
}
void Expforex_AlertArrow(string text="",int arrowdir=0)
{
nameInd=WindowExpertName( );
int wind=WindowFind(nameInd);
if (wind==-1)wind=0;
ObjectCreate("Originalalert",OBJ_LABEL,wind,0,0);
ObjectSetText("Originalalert","Модификация AlertArrow www.expforex.com",10,"Arial Bold",Red);
ObjectSet("Originalalert",OBJPROP_CORNER,2);
ObjectSet("Originalalert",OBJPROP_XDISTANCE,200);
ObjectSet("Originalalert",OBJPROP_YDISTANCE,10);
if(AlerT) Alert(text);
if(Arrow) if (arrowdir==1) SetArrow(241,Blue,nameInd+DoubleToStr(Time[shift],0),Time[shift],Low[shift]);
if(Arrow) if (arrowdir==2) SetArrow(242,Red,nameInd+DoubleToStr(Time[shift],0),Time[shift],High[shift]);
if (!IsTesting())if(Mail) SendMail(text, text);
if (!IsTesting())if(Push) SendNotification(text);
}
//+======================================================================================+
//+================================ www.expforex.com edit AlertArrow ====================+
//+======================================================================================+
return(0);
}//+======================================================================================+
//+================================ www.expforex.com edit AlertArrow ====================+
//+======================================================================================+
nameInd=WindowExpertName( );
if(timeee!=Time[0] && SarBuffer[shift+1]<=75 && SarBuffer[shift]>75)
{
Expforex_AlertArrow(Symbol()+" "+Period()+nameInd+" UP",1);
timeee=Time[0];
}
if(timeee!=Time[0] && SarBuffer[shift+1]>=25 && SarBuffer[shift]<25)
{
Expforex_AlertArrow(Symbol()+" "+Period()+nameInd+" DN",2);
timeee=Time[0];
}
//+======================================================================================+
//+================================ www.expforex.com edit AlertArrow ====================+
//+======================================================================================+
SarBuffer[shift+1]>=0 && SarBuffer[shift]<0SarBuffer[shift+1]>=Close[shift] && SarBuffer[shift]<Close[shift]SarBuffer[shift+1]<=75 && SarBuffer[shift]>75
SarBuffer[shift+1]>=25 && SarBuffer[shift]<25
04 декабря 2014
|
10 мая 2015
|
Комментарии (4)
18 Andrju81 Сообщений: 245 - Андрей
Чёт не вышел каменный цветок…
В результате получил
Дальше уже косячить не стал.
Помогите пожалуйста понять, что и где я не догнал?
В конечном результате хотелось бы получить отключаемые:
звуковой алерт,
визуальный, вида: пара, таймфрейм, направление, время, цена,
пуш и майл сообщения, такого же вида.
20 Anatoly74 Сообщений: 3710 - Анатолий
2 Niceman84 Сообщений: 2
2 Niceman84 Сообщений: 2
Зарегистрируйтесь или авторизуйтесь, чтобы оставить комментарий