//+------------------------------------------------------------------+ //| All against all.v4 mg4 | //| vorese | //| vorese@yandex.ru | //+------------------------------------------------------------------+ #property indicator_chart_window extern string symbol="EUR";// любая валюта extern string note="Period_(0,M1,M5,M15,M30,H1,H4,D1,W1,MN)"; extern string period_="0";//M1,M5,M15,M30,H1,H4,D1,W1,MN . Если 0- период текущего графика. extern int X_DISTANCE=0; // располож. по горизонтали extern int Y_DISTANCE=0; // располож. по вертикали extern color border_color=Silver; // цвет рамки extern color text_color=Silver; // цвет верхней строки extern color CurrCol_up=Aqua; // цвет обозн.валюты и % растущего бара extern color CurrCol_down=Gold; // цвет обозн.валюты и % падающего бара extern bool colorRB_RG=true; //цвет гистограммы. true- красный синий.false- красный зеленый. extern bool invertColGist=false;//инверт. цвета гистограммы extern bool brightness_gradation=false;//градации яркости //========используемые вал.пары ======================================= // можно удалять и добавлять любые валютные пары , в любой последовательности . // В currency_pair[] и в count_curr должно быть указано // кол-во имеющихся в массиве валютных пар. string currency_pair[26]= {"EURUSD","GBPUSD","USDJPY","USDCHF","EURGBP","EURJPY","EURCHF", "EURAUD","GBPJPY","GBPCHF","AUDJPY","NZDJPY","NZDCHF","AUDNZD","CHFJPY","EURCAD", "AUDCAD","CADJPY","EURNZD","GBPAUD","GBPCAD","AUDCHF","CADCHF","AUDUSD","USDCAD","NZDUSD"}; int count_curr=26; // количество вал.пар //===================================================================== string mas_pair[7]; int mas_flags [7]; string mas_currency[7]; int total; //--------------------------------------------------------------------- int line_x[5]={3,13,23,67,80};// координаты горизонт.линий int TF; color color_currency,col_00; //===================================================================== int init() { //--------------валютные пары------------------------------------------ for(int i=0;iopen && high!=open && bid>0) { percent=(bid-open)/(high-open)*100; // проц.растущего бара flag=1; count=NormalizeDouble(percent/5,0); } else { if(bid0) { percent=(open-bid)/(open-low)*100; // проц.падающего бара flag=(-1); count=NormalizeDouble(percent/5,0); } } //-------------------------------------------------------------------- // при переключении ТФ// if(percent>100)percent=100; if(count>20)count=20; //------------------------------------------------------------------- // инверт.цвета гистограммы if(invertColGist) flag=flag*mas_flags[z]*(-1); else flag=flag*mas_flags[z]; //-------------------------------------------------------------------- //-- цвет валюты и процентов if(flag==1)color_currency=CurrCol_up; else { if(flag==(-1))color_currency=CurrCol_down; else { color_currency=text_color; }} //-------------------------------------------------------------------- if(bid>0) { //если вал. пара есть в терминале // проценты ObjectCreate(symbol+"perc"+z+period_, OBJ_LABEL, 0, 0, 0); ObjectSet(symbol+"perc"+z+period_, OBJPROP_CORNER, 3); ObjectSet(symbol+"perc"+z+period_, OBJPROP_XDISTANCE,X_DISTANCE+94-z*14); ObjectSet(symbol+"perc"+z+period_, OBJPROP_YDISTANCE, Y_DISTANCE+15); ObjectSetText(symbol+"perc"+z+period_,DoubleToStr(percent,0),5,"Verdana",color_currency); } //-------------------------------------------------------------------- // валюта ObjectCreate(symbol+"curr"+z+period_, OBJ_LABEL, 0, 0, 0); ObjectSet(symbol+"curr"+z+period_, OBJPROP_CORNER, 3); ObjectSet(symbol+"curr"+z+period_, OBJPROP_XDISTANCE,X_DISTANCE+94-z*14); ObjectSet(symbol+"curr"+z+period_, OBJPROP_YDISTANCE, Y_DISTANCE+5); ObjectSetText(symbol+"curr"+z+period_,mas_currency[z],4,"Verdana",color_currency); //--------------------------------------------------------------------- // гистограмма for( i=0;i<=count;i++) { ObjectCreate(i+symbol+"gist"+z+period_, OBJ_LABEL, 0, 0, 0); ObjectSet(i+symbol+"gist"+z+period_, OBJPROP_CORNER, 3); ObjectSet(i+symbol+"gist"+z+period_, OBJPROP_XDISTANCE,X_DISTANCE+91-z*14); ObjectSet(i+symbol+"gist"+z+period_, OBJPROP_YDISTANCE, Y_DISTANCE+3+i*2); ObjectSetText(i+symbol+"gist"+z+period_,"-",30,"Verdana",f_Color(i,flag)); } } //--------------------------------------------------------------------- return(0); } //===================================================================== //============ цвет синий красный зеленый============================== color f_Color (int num,int flag) { color col_R,col_B,col,col_G; if(!brightness_gradation ) { if(flag==1 && colorRB_RG)col=Blue; else { if(flag==1 && !colorRB_RG)col=Green; else { if(flag==(-1)) col=Red; else { col=text_color; }}} } else { switch(num) { case 0: col_B=C'0,0,255';col_R=C'255,0,0';col_G=C'0,90,0';break; case 1: col_B=C'0,10,255';col_R=C'255,10,0';col_G=C'0,100,0';break; case 2: col_B=C'0,20,255';col_R=C'255,20,0';col_G=C'0,110,0';break; case 3: col_B=C'0,30,255';col_R=C'255,30,0';col_G=C'0,120,0';break; case 4: col_B=C'0,40,255';col_R=C'255,40,0';col_G=C'0,130,0';break; case 5: col_B=C'0,50,255';col_R=C'255,50,0';col_G=C'0,140,0';break; case 6: col_B=C'0,60,255';col_R=C'255,60,0';col_G=C'0,150,0';break; case 7: col_B=C'0,70,255';col_R=C'255,70,0';col_G=C'0,155,0';break; case 8: col_B=C'0,80,255';col_R=C'255,80,0';col_G=C'0,160,0';break; case 9: col_B=C'0,90,255';col_R=C'255,90,0';col_G=C'0,165,0';break; case 10: col_B=C'0,100,255';col_R=C'255,100,0';col_G=C'0,170,0';break; case 11: col_B=C'0,110,255';col_R=C'255,110,0';col_G=C'0,175,0';break; case 12: col_B=C'0,120,255';col_R=C'255,120,0';col_G=C'0,180,0';break; case 13: col_B=C'0,130,255';col_R=C'255,130,0';col_G=C'0,185,0';break; case 14: col_B=C'0,140,255';col_R=C'255,140,0';col_G=C'0,190,0';break; case 15: col_B=C'0,150,255';col_R=C'255,150,0';col_G=C'0,195,0';break; case 16: col_B=C'0,160,255';col_R=C'255,160,0';col_G=C'0,200,0';break; case 17: col_B=C'0,170,255';col_R=C'255,170,0';col_G=C'0,205,0';break; case 18: col_B=C'0,180,255';col_R=C'255,180,0';col_G=C'0,210,0';break; case 19: col_B=C'0,190,255';col_R=C'255,190,0';col_G=C'0,215,0';break; case 20: col_B=C'0,200,255';col_R=C'255,200,0';col_G=C'0,220,0';break; } if(flag==1 && colorRB_RG)col=col_B; else { if(flag==1 && !colorRB_RG)col=col_G; else { if(flag==(-1)) col=col_R; else { col=text_color; }}} } return(col); } //------------------------------------------------------------------------