//+------------------------------------------------------------------+ //| Hamyar Panel.mq4 | //| Copyright © 2010,Farshad Saremifar | //| www.4xline.com | //+------------------------------------------------------------------+ #property copyright "Copyright © 2010,Farshad Saremifar" #property link "www.4xline.com" #property indicator_chart_window //----------------------------- //---- Indicators parameters extern string Copyright="Copyright © 2010,Farshad Saremifar,www.4xline.com"; extern string Help="!!!Attach HamyarZone Indicator Before Attaching this to chart!!!"; extern bool BackTesting = false; extern color VUmeter_Back=Black; extern color VUmeter_Border=Gray; extern color VUmeter_RightDegree=Lime; extern color VUmeter_LeftDegree=Red; extern color MainPanel=Chocolate; extern color MainFontColor=Black; extern color UpFontColor=Chartreuse; extern color DnFontColor=Indigo; extern color PinColor=Yellow; extern color AlertBox=White; extern color AlertBox_Font=Black; datetime BackTest_Time; datetime LastAlert; double s1[]; double powerup,powerdn; int NumberOfDays=5; int ATR_Period=25; int StartHour=9; int StartMinute=0; int Quarter=0; int LondonTZ = 0; int Tehran = 210; int TokyoTZ = 540; int NewYorkTZ = -300; datetime localTime; //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int init() { //---- indicators IndicatorShortName("Hamyar Panel"); ObjectDelete("BacktestTime"); if(BackTesting) { ObjectCreate("BacktestTime",OBJ_VLINE,0,Time[5],0); ObjectSet("BacktestTime",OBJPROP_COLOR,Green); ObjectSet("BacktestTime",OBJPROP_STYLE, STYLE_DASH); } LastAlert=Time[2]; //---- return(0); } //+------------------------------------------------------------------+ //| Custom indicator deinitialization function | //+------------------------------------------------------------------+ int deinit() { //---- for(int i=ObjectsTotal()-1;i>=0;i--) if(StringFind(ObjectName(i),"Hamyar",0)>=0||StringFind(ObjectName(i),"VU",0)>=0) { ObjectDelete(ObjectName(i)); } //---- return(0); } //+------------------------------------------------------------------+ //| Custom indicator iteration function | //+------------------------------------------------------------------+ int start() { int dst; int GMT_SHIFT=GlobalVariableGet("GMT_SHIFT"+WindowHandle(Symbol(),Period())+Symbol()+Period()); bool DayLightSaving=GlobalVariableGet("DayLightSaving"+WindowHandle(Symbol(),Period())+Symbol()+Period()); if (DayLightSaving==true)dst=2; else dst=1; datetime GMT = TimeLocal() - GMT_SHIFT * 60; //Print(GMT_SHIFT); datetime london = GMT + (LondonTZ + (dst*60 - 1*60)) * 60; datetime tokyo = GMT + (TokyoTZ) * 60; datetime newyork = GMT + (NewYorkTZ + (dst*60 - 1*60)) * 60; datetime tehran=TimeLocal(); //-------------------------------- datetime barshift; int shift; if( BackTesting == true ) {BackTest_Time=ObjectGet("BacktestTime",OBJPROP_TIME1);shift=iBarShift(NULL,0,BackTest_Time,false);barshift=BackTest_Time;} else {shift=0;barshift=Time[0];} //---- StartHour=GlobalVariableGet("StartHour"+WindowHandle(Symbol(),Period())+Symbol()+Period()); StartMinute=GlobalVariableGet("StartMinute"+WindowHandle(Symbol(),Period())+Symbol()+Period()); ATR_Period= GlobalVariableGet("ATR_Period"+WindowHandle(Symbol(),Period())+Symbol()+Period()); Quarter=GlobalVariableGet("Quarter"+WindowHandle(Symbol(),Period())+Symbol()+Period()); NumberOfDays=GlobalVariableGet("NumberOfDays"+WindowHandle(Symbol(),Period())+Symbol()+Period()); //------------- Createobject(); powerup=Powers("Up",Time[shift]); powerdn=Powers("Dn",Time[shift]); paintBearsNeedle(powerdn); paintBullsNeedle(powerup); paintCentreNeedle(powerdn); objectCreate("HamyarBull", 33, 114,1, "Bull",8,"Arial", VUmeter_RightDegree); objectCreate("HamyarBear", 126, 114,1, "Bear",8,"Arial", VUmeter_LeftDegree); objectCreate("HamyarBullpercent", 18, 104,1, DoubleToStr(powerup,0)+"%",9,"Digiface", VUmeter_RightDegree); objectCreate("HamyarBearpercent", 136, 104,1,DoubleToStr(powerdn,0)+"%",9,"Digiface", VUmeter_LeftDegree); objectCreate("Hamyarpanel1", 4, 101,1, "*",130,"Webdings", MainPanel); ObjectSet ("Hamyarpanel1",OBJPROP_BACK , true ); objectCreate("Hamyarpanel2", 15, 221,1, "*",130,"Webdings", MainPanel); ObjectSet ("Hamyarpanel2",OBJPROP_ANGLE , 10); objectCreate("Hamyarpanel22", 15, 360,1, "*",100,"Webdings", MainPanel); objectCreate("Hamyargire22", 1, 332,1, "\'",50,"Webdings", PinColor); ObjectSet ("Hamyarpanel22",OBJPROP_BACK , true ); objectCreate("Hamyargire", 1, 202,1, "\'",50,"Webdings", PinColor); double BuyZone=iCustom(NULL,0,"Hamyar Zones","",NumberOfDays,ATR_Period,StartHour,Quarter,2,shift); double SellZone=iCustom(NULL,0,"Hamyar Zones","",NumberOfDays,ATR_Period,StartHour,Quarter,1,shift); double Buytp1=iCustom(NULL,0,"Hamyar Zones","",NumberOfDays,ATR_Period,StartHour,Quarter,4,shift); double Selltp1=iCustom(NULL,0,"Hamyar Zones","",NumberOfDays,ATR_Period,StartHour,Quarter,3,shift); objectCreate("HamyarBuylabel", 50, 150,1, "Buy @" +DoubleToStr(BuyZone,Digits),9,"Arial Bold", MainFontColor); objectCreate("HamyarBuyTp1", 70, 165,1, "Buy TP1:" +DoubleToStr(Buytp1,Digits),8,"Arial Bold", MainFontColor); objectCreate("HamyarBuyTp2", 70, 175,1, "Buy TP2:" +DoubleToStr(iCustom(NULL,0,"Hamyar Zones","",NumberOfDays,ATR_Period,StartHour,Quarter,6,shift),Digits),8,"Arial Bold", MainFontColor); objectCreate("HamyarBuyTp3", 70, 185,1, "Buy TP3:" +DoubleToStr(iCustom(NULL,0,"HamyarTP\'s",4,shift),Digits),8,"Arial Bold", MainFontColor); objectCreate("HamyarBuySL", 43, 195,1, "Buy StopLoss:" +DoubleToStr(iCustom(NULL,0,"Hamyar Zones","",NumberOfDays,ATR_Period,StartHour,Quarter,1,shift),Digits),8,"Arial Bold", MainFontColor); objectCreate("HamyarBuyBreak", 62, 205,1, "BE TP3 @:" +DoubleToStr(iCustom(NULL,0,"HamyarTP\'s",2,shift),Digits),8,"Arial Bold", MainFontColor); objectCreate("HamyarSelllabel", 50, 280,1, "Sell @" +DoubleToStr(SellZone,Digits),9,"Arial Bold", MainFontColor); objectCreate("HamyarSellTp1", 70, 295,1, "Sell TP1:" +DoubleToStr(Selltp1,Digits),8,"Arial Bold", MainFontColor); objectCreate("HamyarSellTp2", 70, 305,1, "Sell TP2:" +DoubleToStr(iCustom(NULL,0,"Hamyar Zones","",NumberOfDays,ATR_Period,StartHour,Quarter,5,shift),Digits),8,"Arial Bold", MainFontColor); objectCreate("HamyarSellTp3", 70, 315,1, "Sell TP3:" +DoubleToStr(iCustom(NULL,0,"HamyarTP\'s",3,shift),Digits),8,"Arial Bold", MainFontColor); objectCreate("HamyarSellSL", 43, 325,1, "Sell StopLoss:" +DoubleToStr(iCustom(NULL,0,"Hamyar Zones","",NumberOfDays,ATR_Period,StartHour,Quarter,2,shift),Digits),8,"Arial Bold", MainFontColor); objectCreate("HamyarSellBreak", 62, 335,1, "BE TP3 @:" +DoubleToStr(iCustom(NULL,0,"HamyarTP\'s",1,shift),Digits),8,"Arial Bold", MainFontColor); objectCreate("Hamyarpanel3", 11, 1,0, "*",110,"Webdings", MainPanel); ObjectSet ("Hamyarpanel3",OBJPROP_ANGLE , 350); double i; int m,s,k; m=Time[0]+Period()*60-CurTime(); i=m/60.0; s=m%60; m=(m-m%60)/60; objectCreate("HamyarSpread", 35, 394,1, "Spread:" +DoubleToStr(MarketInfo(Symbol(),MODE_SPREAD),0)+" Points",9,"Arial Bold", MainFontColor); objectCreate("Hamyarleverage", 45, 408,1, "Leverage:" +AccountLeverage(),9,"Arial Bold", MainFontColor); objectCreate("HamyarTimer", 32, 427,1, "Timer:("+m+":"+s+") Left",9,"Arial Bold", MainFontColor); objectCreate("Hamyargire2", 5, 0,0, "\'",30,"Webdings", PinColor); objectCreate("Hamyarworldclock", 29, 48,0, "World Clock",9,"Arial Bold", MainFontColor); if (TimeHour(london)>=0&&TimeHour(london)<=8) objectCreate("Hamyarworldclocktokyo", 20, 62,0, "Tokyo:"+TimeToStr(tokyo,TIME_MINUTES),9,"Arial Bold", UpFontColor); else objectCreate("Hamyarworldclocktokyo", 20, 62,0, "Tokyo:"+TimeToStr(tokyo,TIME_MINUTES),9,"Arial Bold", MainFontColor); if (TimeHour(london)>=6&&TimeHour(london)<=15) objectCreate("HamyarworldclockLonon", 20, 75,0, "London:"+TimeToStr(london,TIME_MINUTES),9,"Arial Bold", UpFontColor); else objectCreate("HamyarworldclockLonon", 20, 75,0, "London:"+TimeToStr(london,TIME_MINUTES),9,"Arial Bold", MainFontColor); if (TimeHour(london)>=12&&TimeHour(london)<=21) objectCreate("Hamyarworldclockny", 26, 89,0, "NewYork:"+TimeToStr(newyork,TIME_MINUTES),9,"Arial Bold", UpFontColor); else objectCreate("Hamyarworldclockny", 26, 89,0, "NewYork:"+TimeToStr(newyork,TIME_MINUTES),9,"Arial Bold", MainFontColor); objectCreate("HamyarworldclockTehran",31, 103,0, "Local:"+TimeToStr(tehran,TIME_MINUTES),9,"Arial Bold", MainFontColor); objectCreate("Hamyargire3", 0, 100,0, "\'",30,"Webdings", PinColor); objectCreate("Hamyarpanel4", 1, 105,0, "*",110,"Webdings", MainPanel); ObjectSet ("Hamyarpanel4",OBJPROP_ANGLE , 355); objectCreate("HamyarworldRSI", 30, 141,0, "RSI - Signal",9,"Arial Bold", MainFontColor); double rsilevel=iRSI(NULL,0,8,0,shift); double rsilevel3=iRSI(NULL,0,8,0,shift+2); double rsilevelfast=iRSI(NULL,0,3,0,shift); double rsilevel3fast=iRSI(NULL,0,3,0,shift+2); bool rsicrossup,rsicrossdn; if (rsilevel>50&&rsilevel<=70) objectCreate("HamyarworldRSIlelev", 25, 160,0, "Current Level:"+DoubleToStr(rsilevel,0),9,"Arial Bold",UpFontColor ); else if (rsilevel<=50&&rsilevel>=30) objectCreate("HamyarworldRSIlelev", 25, 160,0, "Current Level:"+DoubleToStr(rsilevel,0),9,"Arial Bold",DnFontColor ); else if (rsilevel>70||rsilevel<30) objectCreate("HamyarworldRSIlelev", 25, 160,0, "Current Level:"+DoubleToStr(rsilevel,0),9,"Arial Bold",MainFontColor ); if (rsilevel>rsilevel3) objectCreate("HamyarworldRSIlelev2",15, 175,0, "Heading: Up",9,"Arial Bold",UpFontColor ); else if (rsilevelrsilevel&&rsilevel3fastrsilevel3){rsicrossdn=true; objectCreate("HamyarrsiCross", 25, 195,0,"Cross: Down",9,"Arial Bold", DnFontColor);} objectCreate("Hamyarpanel5", 0, 220,0, "*",110,"Webdings", MainPanel); objectCreate("Hamyargire4",5, 205,0, "\'",30,"Webdings", PinColor); objectCreate("Hamyargire5", 100, 216,0, "\'",30,"Webdings", PinColor); objectCreate("Hamyarworldsto", 25, 253,0, "Stochastic-Signal",9,"Arial Bold", MainFontColor); double stolevel= iStochastic( NULL, 0, 10,3, 3, 0,0, MODE_MAIN,shift); double stolevel2=iStochastic( NULL, 0, 10,3, 3, 0,0, MODE_MAIN,shift+1); double stolevel3=iStochastic( NULL, 0, 10,3, 3, 0,0, MODE_MAIN,shift+2); double stolevelsignal= iStochastic( NULL, 0, 10,3, 3, 0,0, MODE_SIGNAL,shift); double stolevel2signal=iStochastic( NULL, 0, 10,3, 3, 0,0, MODE_SIGNAL,shift+1); if (stolevel>50&&stolevel<=70) objectCreate("Hamyarstolevel", 30, 265,0, "Current Level:"+DoubleToStr(stolevel,0),9,"Arial Bold", UpFontColor); else if (stolevel<=50&&stolevel>=30) objectCreate("Hamyarstolevel", 30, 265,0, "Current Level:"+DoubleToStr(stolevel,0),9,"Arial Bold", DnFontColor); else if (stolevel>70||stolevel<30) objectCreate("Hamyarstolevel", 30, 265,0, "Current Level:"+DoubleToStr(stolevel,0),9,"Arial Bold", MainFontColor); if (stolevel>stolevel3) objectCreate("Hamyarstohead", 30, 280,0, "Heading: Up",9,"Arial Bold", UpFontColor); else if (stolevelstolevel&&stolevel2signalstolevel2) objectCreate("HamyarstoCross", 30, 295,0,"Cross: Up",9,"Arial Bold", UpFontColor); bool stocrossup,stocrossdn; if (stolevelsignal>stolevel&&stolevel2signalstolevel2){stocrossdn=false;stocrossup=true;} objectCreate("Hamyarpanel6", 0, 1,2, "Q",115,"HamyarFont", White); objectCreate("Hamyarpanel7", 3, 1,2, "Q",110,"HamyarFont", Black); ObjectSet ("Hamyarpanel6",OBJPROP_BACK , true ); ObjectSet ("Hamyarpanel7",OBJPROP_BACK , true ); objectCreate("HamyarCopyright", 36, 23,2, "Hamyar V 3.0",9,"Arial Bold", White); objectCreate("HamyarCopyrigh2t", 33, 2,2, "Farshad Saremifar",8,"Arial", White); objectCreate("HamyarCopyrigh3t", 33, 12,2, "www.4xline.com",9,"Arial", Yellow); double Predict=Analysis("get",shift); string analysisdn=DoubleToStr(Analysis("ValueDn",shift),0); string analysisup=DoubleToStr(Analysis("ValueUp",shift),0); if (Predict==1&&StrToDouble(analysisup)>=40) { objectCreate("HamyarAlertBox", 126, 70,2, ")",120,"Webdings", AlertBox); objectCreate("HamyarAlertBoxinfo", 150, 158,2, "Im Looking For Buy",9,"Arial Bold", AlertBox_Font); objectCreate("HamyarAlertBoxinfo2", 155, 140,2, "My Analysis:%"+analysisup,9,"Arial Bold", AlertBox_Font); LastAlert=TimeCurrent(); } else if (Predict==2&&StrToDouble(analysisdn)>=40) { objectCreate("HamyarAlertBox", 126, 70,2, ")",120,"Webdings", AlertBox); objectCreate("HamyarAlertBoxinfo", 150, 158,2, "Im Looking For Sell",9,"Arial Bold", AlertBox_Font); objectCreate("HamyarAlertBoxinfo2", 155, 140,2, "My Analysis:%"+analysisdn,9,"Arial Bold", AlertBox_Font); LastAlert=TimeCurrent(); } else if (Predict==3&&StrToDouble(analysisup)>=40) { objectCreate("HamyarAlertBox", 126, 70,2, ")",120,"Webdings", AlertBox); objectCreate("HamyarAlertBoxinfo", 145, 158,2, "Up Range!!(Buy @ OS)",8,"Arial Bold", AlertBox_Font); objectCreate("HamyarAlertBoxinfo2", 155, 140,2, "My Analysis%:"+analysisup,9,"Arial Bold", AlertBox_Font); LastAlert=TimeCurrent(); } else if (Predict==4&&StrToDouble(analysisdn)>=40) { objectCreate("HamyarAlertBox", 126, 70,2, ")",120,"Webdings", AlertBox); objectCreate("HamyarAlertBoxinfo", 145, 158,2, "Down Range!!(Sell @ OB) ",8,"Arial Bold", AlertBox_Font); objectCreate("HamyarAlertBoxinfo2", 155, 140,2, "My Analysis%:"+analysisdn,9,"Arial Bold", AlertBox_Font); LastAlert=TimeCurrent(); } else { objectCreate("HamyarAlertBox", 126, 70,2, ")",8,"Webdings", AlertBox); ObjectDelete("HamyarAlertBoxinfo"); ObjectDelete("HamyarAlertBoxinfo2"); } objectCreate("Hamyarpanel11", 157, 1,2, "\"",120,"HamyarFont", MainPanel); double powerup_pre=Powers("Up",Time[shift+1]); double powerdn_pre=Powers("Dn",Time[shift+1]); double powerup_pre2=Powers("Up",Time[shift+2]); double powerdn_pre2=Powers("Dn",Time[shift+2]); double powerup_pre3=Powers("Up",Time[shift+3]); double powerdn_pre3=Powers("Dn",Time[shift+3]); datetime PivotDayStartTime=GlobalVariableGet("PivotDayStartTime"+WindowHandle(Symbol(),Period())+Symbol()+Period()); int bar=iBarShift(NULL,0,PivotDayStartTime,false); bool Condition; if (High[bar]SellZone) { if (powerup>65&&(rsilevel>50||(rsilevel<50&&stocrossup==true))&&StrToDouble(analysisup)>65.0) objectCreate("HamyarType2", 180, 55,2, "Type#1 Signal:Buy",9,"Arial Bold", UpFontColor); if (powerdn>65&&(rsilevel<50||(rsilevel>50&&stocrossdn==true))&&StrToDouble(analysisdn)>65.0) objectCreate("HamyarType2", 180, 55,2, "Type#1 Signal:Sell",9,"Arial Bold", DnFontColor); } else if ((Close[shift]>=BuyZone&&Close[shift]Selltp1&&Close[shift]<=SellZone)) { if (powerup>70&&((stocrossup==true&&rsilevel<60)||(rsilevel>rsilevel3&&rsilevel>45))&&StrToDouble(analysisup)>70.0) objectCreate("HamyarType3", 180, 40,2, "Type#2 Signal:Buy",9,"Arial Bold", UpFontColor); if (powerdn>70&&((rsilevel60&&stocrossdn==true))&&StrToDouble(analysisdn)>70.0) objectCreate("HamyarType3", 180, 40,2, "Type#2 Signal:Sell",9,"Arial Bold", DnFontColor); } if(powerup_pre>=85||powerup_pre2>=85||powerup_pre3>=85){if(powerup<=85&&(Predict==4||Predict==2)&&StrToDouble(analysisdn)>=50)objectCreate("HamyarType4", 180, 25,2, "Type#3 Signal:Sell",9,"Arial Bold", DnFontColor);} if (powerdn_pre>=85||powerdn_pre2>=85||powerup_pre3>=85){if(powerdn<=85&&(Predict==3||Predict==1)&&StrToDouble(analysisup)>=50)objectCreate("HamyarType4", 180, 25,2, "Type#3 Signal:Buy",9,"Arial Bold", UpFontColor);} return(0); } //+------------------------------------------------------------------+ void paintBearsNeedle(double value) { if (value == 100) objectCreateVUPos(120, 10, 55, VUmeter_LeftDegree); if (value >= 95 && value < 100) objectCreateVUPos(110, 9, 50, VUmeter_LeftDegree); if (value >= 90 && value < 95) objectCreateVUPos(100, 8, 45, VUmeter_LeftDegree); if (value >= 85 && value < 90) objectCreateVUPos(90, 9, 40, VUmeter_LeftDegree); if (value >= 80 && value < 85) objectCreateVUPos(84, 11, 35, VUmeter_LeftDegree); if (value >= 75 && value < 80) objectCreateVUPos(74, 13, 30, VUmeter_LeftDegree); if (value >= 70 && value < 75) objectCreateVUPos(66, 16, 25, VUmeter_LeftDegree); if (value >= 65 && value < 70) objectCreateVUPos(57, 18, 20, VUmeter_LeftDegree); if (value >= 60 && value < 65) objectCreateVUPos(49, 17, 15, VUmeter_LeftDegree); if (value >= 55 && value < 60) objectCreateVUPos(47, 25, 10, VUmeter_LeftDegree); } void paintCentreNeedle(double value) { if (value >= 45 && value <= 55) objectCreateVUPos(33, 36, 0, Yellow); } void paintBullsNeedle(double value) { if (value == 100) objectCreateVUPos(1, 112, 305, VUmeter_RightDegree); if (value >= 95 && value < 100) objectCreateVUPos(1, 106, 310, VUmeter_RightDegree); if (value >= 90 && value < 95) objectCreateVUPos(1, 100, 315, VUmeter_RightDegree); if (value >= 85 && value < 90) objectCreateVUPos(3, 91, 320, VUmeter_RightDegree); if (value >= 80 && value < 85) objectCreateVUPos(5, 82, 325, VUmeter_RightDegree); if (value >= 75 && value < 80) objectCreateVUPos(7, 73, 330, VUmeter_RightDegree); if (value >= 70 && value < 75) objectCreateVUPos(9, 64, 335, VUmeter_RightDegree); if (value >= 65 && value < 70) objectCreateVUPos(12, 58, 340, VUmeter_RightDegree); if (value >= 60 && value < 65) objectCreateVUPos(18, 55, 345, VUmeter_RightDegree); if (value >= 55 && value < 60) objectCreateVUPos(23, 46, 350, VUmeter_RightDegree); } void Createobject() { // Bulls/Bears VU Meter ------------------------------------- objectCreate("VUMainPanel", 5, 0,1, "B",130,"HamyarFont", VUmeter_Border); objectCreate("VUMainPanel1", 19, 18,1, "B",110,"HamyarFont", VUmeter_Back); objectCreate("VUMainPanelNumberLeft", 18, 8,1, "C",115,"HamyarFont", VUmeter_LeftDegree); objectCreate("VUMainPanelNumberRight", 14, 9,1, "D",115,"HamyarFont", VUmeter_RightDegree); objectCreate("VUMainBear100", 172, 35,1, "100",9,"Digiface", VUmeter_LeftDegree); objectCreate("VUMainBull100", 2, 35,1, "100",9,"Digiface", VUmeter_RightDegree); objectCreate("VUMain50", 90, 2,1, "50",9,"Digiface", Yellow); objectCreate("VUMainBull75", 39, 9,1, "75",9,"Digiface", VUmeter_RightDegree); objectCreate("VUMainBear75", 137, 9,1, "75",9,"Digiface", VUmeter_LeftDegree); } void objectCreate(string lblname, int xOffset, int yOffset,int iCorner, string Text, int FontSize, string FontName,color txtcolor) { if (ObjectFind( lblname)>0) ObjectDelete(lblname); ObjectCreate(lblname,OBJ_LABEL , 0, 0, 0 ); ObjectSet (lblname,OBJPROP_CORNER , iCorner); ObjectSet (lblname,OBJPROP_XDISTANCE , xOffset); ObjectSet (lblname,OBJPROP_YDISTANCE , yOffset); ObjectSet (lblname,OBJPROP_BACK , false ); ObjectSetText( lblname, Text, FontSize, FontName, txtcolor ); } void objectCreateVUPos(int xOffset, int yOffset,double angle ,color txtcolor) { if (ObjectFind( "VUPos")>0) ObjectDelete("VUPos"); ObjectCreate("VUPos",OBJ_LABEL , 0, 0, 0 ); ObjectSet ("VUPos",OBJPROP_CORNER , 1); ObjectSet ("VUPos",OBJPROP_XDISTANCE , xOffset); ObjectSet ("VUPos",OBJPROP_YDISTANCE , yOffset); ObjectSet ("VUPos",OBJPROP_BACK , false ); ObjectSet ("VUPos",OBJPROP_ANGLE , angle); ObjectSetText( "VUPos", "T", 75, "HamyarFont", txtcolor ); } //+------------------------------------------------------------------+ string FormatDateTime(int nYear,int nMonth,int nDay,int nHour,int nMin,int nSec) { string sMonth,sDay,sHour,sMin,sSec; //---- sMonth=100+nMonth; sMonth=StringSubstr(sMonth,1); sDay=100+nDay; sDay=StringSubstr(sDay,1); sHour=100+nHour; sHour=StringSubstr(sHour,1); sMin=100+nMin; sMin=StringSubstr(sMin,1); sSec=100+nSec; sSec=StringSubstr(sSec,1); //---- return(StringConcatenate(nYear,".",sMonth,".",sDay," ",sHour,":",sMin,":",sSec)); } //-------------------- double Powers(string cmd,datetime bar) { int FastMAPeriod = 14; int MediumMAPeriod = 50; int SlowMAPeriod = 100; int MAMethod = MODE_EMA; int MAPrice = PRICE_CLOSE; int CCIPeriod = 14; int CCIPrice = PRICE_CLOSE; int MACDFast = 12; int MACDSlow = 26; int MACDSignal = 9; int ADXPeriod = 14; int ADXPrice = PRICE_CLOSE; int BULLSPeriod = 13; int BULLSPrice = PRICE_CLOSE; int BEARSPeriod = 13; int BEARSPrice = PRICE_CLOSE; int STOKPeriod = 5; int STODPeriod = 3; int STOSlowing = 3; int RSIPeriod = 14; int FIPeriod = 14; int FIMethod = MODE_SMA; int FIPrice = PRICE_CLOSE; int MOMPeriod = 14; int MOMPrice = PRICE_CLOSE; int DEMPeriod = 14; double shift_indicators = 0; double UP_1, UP_2, UP_3, UP_4, UP_5, UP_6, UP_7, UP_8, UP_9, UP_10; double UP_11, UP_12, UP_13, UP_14, UP_15, UP_16, UP_17, UP_18, UP_19, UP_20; double UP_21, UP_22, UP_23, UP_24, UP_25, UP_26, UP_27, UP_28, UP_29, UP_30; double UP_31, UP_32, UP_33, UP_34, UP_35, UP_36, UP_37, UP_38, UP_39, UP_40; double UP_41, UP_42, UP_43, UP_44, UP_45, UP_46, UP_47, UP_48, UP_49, UP_50; double UP_51, UP_52, UP_53, UP_54, UP_55, UP_56, UP_57, UP_58, UP_59, UP_60; double UP_61, UP_62, UP_63, UP_64; double DOWN_1, DOWN_2, DOWN_3, DOWN_4, DOWN_5, DOWN_6, DOWN_7, DOWN_8, DOWN_9, DOWN_10; double DOWN_11, DOWN_12, DOWN_13, DOWN_14, DOWN_15, DOWN_16, DOWN_17, DOWN_18, DOWN_19, DOWN_20; double DOWN_21, DOWN_22, DOWN_23, DOWN_24, DOWN_25, DOWN_26, DOWN_27, DOWN_28, DOWN_29, DOWN_30; double DOWN_31, DOWN_32, DOWN_33, DOWN_34, DOWN_35, DOWN_36, DOWN_37, DOWN_38, DOWN_39, DOWN_40; double DOWN_41, DOWN_42, DOWN_43, DOWN_44, DOWN_45, DOWN_46, DOWN_47, DOWN_48, DOWN_49, DOWN_50; double DOWN_51, DOWN_52, DOWN_53, DOWN_54, DOWN_55, DOWN_56, DOWN_57, DOWN_58, DOWN_59, DOWN_60; double DOWN_61, DOWN_62, DOWN_63, DOWN_64; double UP_65, UP_66, UP_67, UP_68, UP_69, UP_70; double UP_71, UP_72, UP_73, UP_74, UP_75, UP_76, UP_77, UP_78, UP_79, UP_80; double UP_81, UP_82, UP_83, UP_84, UP_85, UP_86, UP_87, UP_88, UP_89, UP_90; double UP_91, UP_92, UP_93, UP_94, UP_95, UP_96, UP_97, UP_98, UP_99, UP_100; double UP_101, UP_102, UP_103, UP_104, UP_105, UP_106, UP_107, UP_108, UP_109, UP_110; double UP_111, UP_112; double DOWN_65, DOWN_66, DOWN_67, DOWN_68, DOWN_69, DOWN_70; double DOWN_71, DOWN_72, DOWN_73, DOWN_74, DOWN_75, DOWN_76, DOWN_77, DOWN_78, DOWN_79, DOWN_80; double DOWN_81, DOWN_82, DOWN_83, DOWN_84, DOWN_85, DOWN_86, DOWN_87, DOWN_88, DOWN_89, DOWN_90; double DOWN_91, DOWN_92, DOWN_93, DOWN_94, DOWN_95, DOWN_96, DOWN_97, DOWN_98, DOWN_99, DOWN_100; double DOWN_101, DOWN_102, DOWN_103, DOWN_104, DOWN_105, DOWN_106, DOWN_107, DOWN_108, DOWN_109, DOWN_110; double DOWN_111, DOWN_112; double count_m1, count_m5, count_m15, count_m30, count_h1, count_h4, count_d1; count_m1 = 1; count_m5 = 1; count_m15 = 1; count_m30 = 1; count_h1 = 1; count_h4 = 1; count_d1 = 1; double count_tf = count_m1 + count_m5 + count_m15 + count_m30 + count_h1 + count_h4 + count_d1; double TotalPoint = 7; double shift_1, shift_5, shift_15, shift_30, shift_60, shift_240, shift_1440, shift_10080; shift_1=iBarShift(NULL,PERIOD_M1,bar,false); shift_5=iBarShift(NULL,PERIOD_M5,bar,false); shift_15=iBarShift(NULL,PERIOD_M15,bar,false); shift_30=iBarShift(NULL,PERIOD_M30,bar,false); shift_60=iBarShift(NULL,PERIOD_H1,bar,false); shift_240=iBarShift(NULL,PERIOD_H4,bar,false); shift_1440=iBarShift(NULL,PERIOD_D1,bar,false); shift_10080=iBarShift(NULL,PERIOD_W1,bar,false); // Indicator (Moving Average) // FAST double FastMA_1_1 = iMA(NULL,PERIOD_M1,FastMAPeriod,0,MAMethod,MAPrice,shift_1); double FastMA_2_1 = iMA(NULL,PERIOD_M1,FastMAPeriod,0,MAMethod,MAPrice,shift_1+1); if ((FastMA_1_1 > FastMA_2_1)) { UP_1 = 1; DOWN_1 = 0; } if ((FastMA_1_1 < FastMA_2_1)) { UP_1 = 0; DOWN_1 = 1; } double FastMA_1_5 = iMA(NULL,PERIOD_M5,FastMAPeriod,0,MAMethod,MAPrice,shift_5); double FastMA_2_5 = iMA(NULL,PERIOD_M5,FastMAPeriod,0,MAMethod,MAPrice,shift_5+1); if ((FastMA_1_5 > FastMA_2_5)) { UP_2 = 1; DOWN_2 = 0; } if ((FastMA_1_5 < FastMA_2_5)) { UP_2 = 0; DOWN_2 = 1; } double FastMA_1_15 = iMA(NULL,PERIOD_M15,FastMAPeriod,0,MAMethod,MAPrice,shift_15); double FastMA_2_15 = iMA(NULL,PERIOD_M15,FastMAPeriod,0,MAMethod,MAPrice,shift_15+1); if ((FastMA_1_15 > FastMA_2_15)) { UP_3 = 1; DOWN_3 = 0; } if ((FastMA_1_15 < FastMA_2_15)) { UP_3 = 0; DOWN_3 = 1; } double FastMA_1_30 = iMA(NULL,PERIOD_M30,FastMAPeriod,0,MAMethod,MAPrice,shift_30); double FastMA_2_30 = iMA(NULL,PERIOD_M30,FastMAPeriod,0,MAMethod,MAPrice,shift_30+1); if ((FastMA_1_30 > FastMA_2_30)) { UP_4 = 1; DOWN_4 = 0; } if ((FastMA_1_30 < FastMA_2_30)) { UP_4 = 0; DOWN_4 = 1; } double FastMA_1_60 = iMA(NULL,PERIOD_H1,FastMAPeriod,0,MAMethod,MAPrice,shift_60); double FastMA_2_60 = iMA(NULL,PERIOD_H1,FastMAPeriod,0,MAMethod,MAPrice,shift_60+1); if ((FastMA_1_60 > FastMA_2_60)) { UP_5 = 1; DOWN_5 = 0; } if ((FastMA_1_60 < FastMA_2_60)) { UP_5 = 0; DOWN_5 = 1; } double FastMA_1_240 = iMA(NULL,PERIOD_H4,FastMAPeriod,0,MAMethod,MAPrice,shift_240); double FastMA_2_240 = iMA(NULL,PERIOD_H4,FastMAPeriod,0,MAMethod,MAPrice,shift_240+1); if ((FastMA_1_240 > FastMA_2_240)) { UP_6 = 1; DOWN_6 = 0; } if ((FastMA_1_240 < FastMA_2_240)) { UP_6 = 0; DOWN_6 = 1; } double FastMA_1_1440 = iMA(NULL,PERIOD_D1,FastMAPeriod,0,MAMethod,MAPrice,shift_1440); double FastMA_2_1440 = iMA(NULL,PERIOD_D1,FastMAPeriod,0,MAMethod,MAPrice,shift_1440+1); if ((FastMA_1_1440 > FastMA_2_1440)) { UP_7 = 1; DOWN_7 = 0; } if ((FastMA_1_1440 < FastMA_2_1440)) { UP_7 = 0; DOWN_7 = 1; } // MEDIUM double MediumMA_1_1 = iMA(NULL,PERIOD_M1,MediumMAPeriod,0,MAMethod,MAPrice,shift_1); double MediumMA_2_1 = iMA(NULL,PERIOD_M1,MediumMAPeriod,0,MAMethod,MAPrice,shift_1+1); if ((MediumMA_1_1 > MediumMA_2_1)) { UP_9 = 1; DOWN_9 = 0; } if ((MediumMA_1_1 < MediumMA_2_1)) { UP_9 = 0; DOWN_9 = 1; } double MediumMA_1_5 = iMA(NULL,PERIOD_M5,MediumMAPeriod,0,MAMethod,MAPrice,shift_5); double MediumMA_2_5 = iMA(NULL,PERIOD_M5,MediumMAPeriod,0,MAMethod,MAPrice,shift_5+1); if ((MediumMA_1_5 > MediumMA_2_5)) { UP_10 = 1; DOWN_10 = 0; } if ((MediumMA_1_5 < MediumMA_2_5)) { UP_10 = 0; DOWN_10 = 1; } double MediumMA_1_15 = iMA(NULL,PERIOD_M15,MediumMAPeriod,0,MAMethod,MAPrice,shift_15); double MediumMA_2_15 = iMA(NULL,PERIOD_M15,MediumMAPeriod,0,MAMethod,MAPrice,shift_15+1); if ((MediumMA_1_15 > MediumMA_2_15)) { UP_11 = 1; DOWN_11 = 0; } if ((MediumMA_1_15 < MediumMA_2_15)) { UP_11 = 0; DOWN_11 = 1; } double MediumMA_1_30 = iMA(NULL,PERIOD_M30,MediumMAPeriod,0,MAMethod,MAPrice,shift_30); double MediumMA_2_30 = iMA(NULL,PERIOD_M30,MediumMAPeriod,0,MAMethod,MAPrice,shift_30+1); if ((MediumMA_1_30 > MediumMA_2_30)) { UP_12 = 1; DOWN_12 = 0; } if ((MediumMA_1_30 < MediumMA_2_30)) { UP_12 = 0; DOWN_12 = 1; } double MediumMA_1_60 = iMA(NULL,PERIOD_H1,MediumMAPeriod,0,MAMethod,MAPrice,shift_60); double MediumMA_2_60 = iMA(NULL,PERIOD_H1,MediumMAPeriod,0,MAMethod,MAPrice,shift_60+1); if ((MediumMA_1_60 > MediumMA_2_60)) { UP_13 = 1; DOWN_13 = 0; } if ((MediumMA_1_60 < MediumMA_2_60)) { UP_13 = 0; DOWN_13 = 1; } double MediumMA_1_240 = iMA(NULL,PERIOD_H4,MediumMAPeriod,0,MAMethod,MAPrice,shift_240); double MediumMA_2_240 = iMA(NULL,PERIOD_H4,MediumMAPeriod,0,MAMethod,MAPrice,shift_240+1); if ((MediumMA_1_240 > MediumMA_2_240)) { UP_14 = 1; DOWN_14 = 0; } if ((MediumMA_1_240 < MediumMA_2_240)) { UP_14 = 0; DOWN_14 = 1; } double MediumMA_1_1440 = iMA(NULL,PERIOD_D1,MediumMAPeriod,0,MAMethod,MAPrice,shift_1440); double MediumMA_2_1440 = iMA(NULL,PERIOD_D1,MediumMAPeriod,0,MAMethod,MAPrice,shift_1440+1); if ((MediumMA_1_1440 > MediumMA_2_1440)) { UP_15 = 1; DOWN_15 = 0; } if ((MediumMA_1_1440 < MediumMA_2_1440)) { UP_15 = 0; DOWN_15 = 1; } // SLOW double SlowMA_1_1 = iMA(NULL,PERIOD_M1,SlowMAPeriod,0,MAMethod,MAPrice,shift_1); double SlowMA_2_1 = iMA(NULL,PERIOD_M1,SlowMAPeriod,0,MAMethod,MAPrice,shift_1+1); if ((SlowMA_1_1 > SlowMA_2_1)) { UP_17 = 1; DOWN_17 = 0; } if ((SlowMA_1_1 < SlowMA_2_1)) { UP_17 = 0; DOWN_17 = 1; } double SlowMA_1_5 = iMA(NULL,PERIOD_M5,SlowMAPeriod,0,MAMethod,MAPrice,shift_5); double SlowMA_2_5 = iMA(NULL,PERIOD_M5,SlowMAPeriod,0,MAMethod,MAPrice,shift_5+1); if ((SlowMA_1_5 > SlowMA_2_5)) { UP_18 = 1; DOWN_18 = 0; } if ((SlowMA_1_5 < SlowMA_2_5)) { UP_18 = 0; DOWN_18 = 1; } double SlowMA_1_15 = iMA(NULL,PERIOD_M15,SlowMAPeriod,0,MAMethod,MAPrice,shift_15); double SlowMA_2_15 = iMA(NULL,PERIOD_M15,SlowMAPeriod,0,MAMethod,MAPrice,shift_15+1); if ((SlowMA_1_15 > SlowMA_2_15)) { UP_19 = 1; DOWN_19 = 0; } if ((SlowMA_1_15 < SlowMA_2_15)) { UP_19 = 0; DOWN_19 = 1; } double SlowMA_1_30 = iMA(NULL,PERIOD_M30,SlowMAPeriod,0,MAMethod,MAPrice,shift_30); double SlowMA_2_30 = iMA(NULL,PERIOD_M30,SlowMAPeriod,0,MAMethod,MAPrice,shift_30+1); if ((SlowMA_1_30 > SlowMA_2_30)) { UP_20 = 1; DOWN_20 = 0; } if ((SlowMA_1_30 < SlowMA_2_30)) { UP_20 = 0; DOWN_20 = 1; } double SlowMA_1_60 = iMA(NULL,PERIOD_H1,SlowMAPeriod,0,MAMethod,MAPrice,shift_60); double SlowMA_2_60 = iMA(NULL,PERIOD_H1,SlowMAPeriod,0,MAMethod,MAPrice,shift_60+1); if ((SlowMA_1_60 > SlowMA_2_60)) { UP_21 = 1; DOWN_21 = 0; } if ((SlowMA_1_60 < SlowMA_2_60)) { UP_21 = 0; DOWN_21 = 1; } double SlowMA_1_240 = iMA(NULL,PERIOD_H4,SlowMAPeriod,0,MAMethod,MAPrice,shift_240); double SlowMA_2_240 = iMA(NULL,PERIOD_H4,SlowMAPeriod,0,MAMethod,MAPrice,shift_240+1); if ((SlowMA_1_240 > SlowMA_2_240)) { UP_22 = 1; DOWN_22 = 0; } if ((SlowMA_1_240 < SlowMA_2_240)) { UP_22 = 0; DOWN_22 = 1; } double SlowMA_1_1440 = iMA(NULL,PERIOD_D1,SlowMAPeriod,0,MAMethod,MAPrice,shift_1440); double SlowMA_2_1440 = iMA(NULL,PERIOD_D1,SlowMAPeriod,0,MAMethod,MAPrice,shift_1440+1); if ((SlowMA_1_1440 > SlowMA_2_1440)) { UP_23 = 1; DOWN_23 = 0; } if ((SlowMA_1_1440 < SlowMA_2_1440)) { UP_23 = 0; DOWN_23 = 1; } // Indicator (CCI) double CCI_1=iCCI(NULL,PERIOD_M1,CCIPeriod,CCIPrice,shift_1); if ((CCI_1 > 0)) { UP_25 = 1; DOWN_25 = 0; } if ((CCI_1 < 0)) { UP_25 = 0; DOWN_25 = 1; } double CCI_5=iCCI(NULL,PERIOD_M5,CCIPeriod,CCIPrice,shift_5); if ((CCI_5 > 0)) { UP_26 = 1; DOWN_26 = 0; } if ((CCI_5 < 0)) { UP_26 = 0; DOWN_26 = 1; } double CCI_15=iCCI(NULL,PERIOD_M15,CCIPeriod,CCIPrice,shift_15); if ((CCI_15 > 0)) { UP_27 = 1; DOWN_27 = 0; } if ((CCI_15 < 0)) { UP_27 = 0; DOWN_27 = 1; } double CCI_30=iCCI(NULL,PERIOD_M30,CCIPeriod,CCIPrice,shift_30); if ((CCI_30 > 0)) { UP_28 = 1; DOWN_28 = 0; } if ((CCI_30 < 0)) { UP_28 = 0; DOWN_28 = 1; } double CCI_60=iCCI(NULL,PERIOD_H1,CCIPeriod,CCIPrice,shift_60); if ((CCI_60 > 0)) { UP_29 = 1; DOWN_29 = 0; } if ((CCI_60 < 0)) { UP_29 = 0; DOWN_29 = 1; } double CCI_240=iCCI(NULL,PERIOD_H4,CCIPeriod,CCIPrice,shift_240); if ((CCI_240 > 0)) { UP_30 = 1; DOWN_30 = 0; } if ((CCI_240 < 0)) { UP_30 = 0; DOWN_30 = 1; } double CCI_1440=iCCI(NULL,PERIOD_D1,CCIPeriod,CCIPrice,shift_1440); if ((CCI_1440 > 0)) { UP_31 = 1; DOWN_31 = 0; } if ((CCI_1440 < 0)) { UP_31 = 0; DOWN_31 = 1; } // Indicator (MACD) double MACD_m_1=iMACD(NULL,PERIOD_M1,MACDFast,MACDSlow,MACDSignal,PRICE_CLOSE,MODE_MAIN,shift_1); double MACD_s_1=iMACD(NULL,PERIOD_M1,MACDFast,MACDSlow,MACDSignal,PRICE_CLOSE,MODE_SIGNAL,shift_1); if ((MACD_m_1 > MACD_s_1)) { UP_33 = 1; DOWN_33 = 0; } if ((MACD_m_1 < MACD_s_1)) { UP_33 = 0; DOWN_33 = 1; } double MACD_m_5=iMACD(NULL,PERIOD_M5,MACDFast,MACDSlow,MACDSignal,PRICE_CLOSE,MODE_MAIN,shift_5); double MACD_s_5=iMACD(NULL,PERIOD_M5,MACDFast,MACDSlow,MACDSignal,PRICE_CLOSE,MODE_SIGNAL,shift_5); if ((MACD_m_5 > MACD_s_5)) { UP_34 = 1; DOWN_34 = 0; } if ((MACD_m_5 < MACD_s_5)) { UP_34 = 0; DOWN_34 = 1; } double MACD_m_15=iMACD(NULL,PERIOD_M15,MACDFast,MACDSlow,MACDSignal,PRICE_CLOSE,MODE_MAIN,shift_15); double MACD_s_15=iMACD(NULL,PERIOD_M15,MACDFast,MACDSlow,MACDSignal,PRICE_CLOSE,MODE_SIGNAL,shift_15); if ((MACD_m_15 > MACD_s_15)) { UP_35 = 1; DOWN_35 = 0; } if ((MACD_m_15 < MACD_s_15)) { UP_35 = 0; DOWN_35 = 1; } double MACD_m_30=iMACD(NULL,PERIOD_M30,MACDFast,MACDSlow,MACDSignal,PRICE_CLOSE,MODE_MAIN,shift_30); double MACD_s_30=iMACD(NULL,PERIOD_M30,MACDFast,MACDSlow,MACDSignal,PRICE_CLOSE,MODE_SIGNAL,shift_30); if ((MACD_m_30 > MACD_s_30)) { UP_36 = 1; DOWN_36 = 0; } if ((MACD_m_30 < MACD_s_30)) { UP_36 = 0; DOWN_36 = 1; } double MACD_m_60=iMACD(NULL,PERIOD_H1,MACDFast,MACDSlow,MACDSignal,PRICE_CLOSE,MODE_MAIN,shift_60); double MACD_s_60=iMACD(NULL,PERIOD_H1,MACDFast,MACDSlow,MACDSignal,PRICE_CLOSE,MODE_SIGNAL,shift_60); if ((MACD_m_60 > MACD_s_60)) { UP_37 = 1; DOWN_37 = 0; } if ((MACD_m_60 < MACD_s_60)) { UP_37 = 0; DOWN_37 = 1; } double MACD_m_240=iMACD(NULL,PERIOD_H4,MACDFast,MACDSlow,MACDSignal,PRICE_CLOSE,MODE_MAIN,shift_240); double MACD_s_240=iMACD(NULL,PERIOD_H4,MACDFast,MACDSlow,MACDSignal,PRICE_CLOSE,MODE_SIGNAL,shift_240); if ((MACD_m_240 > MACD_s_240)) { UP_38 = 1; DOWN_38 = 0; } if ((MACD_m_240 < MACD_s_240)) { UP_38 = 0; DOWN_38 = 1; } double MACD_m_1440=iMACD(NULL,PERIOD_D1,MACDFast,MACDSlow,MACDSignal,PRICE_CLOSE,MODE_MAIN,shift_1440); double MACD_s_1440=iMACD(NULL,PERIOD_D1,MACDFast,MACDSlow,MACDSignal,PRICE_CLOSE,MODE_SIGNAL,shift_1440); if ((MACD_m_1440 > MACD_s_1440)) { UP_39 = 1; DOWN_39 = 0; } if ((MACD_m_1440 < MACD_s_1440)) { UP_39 = 0; DOWN_39 = 1; } // Indicator (ADX) double ADX_plus_1=iADX(NULL,PERIOD_M1,ADXPeriod,ADXPrice,MODE_PLUSDI,shift_1); double ADX_minus_1=iADX(NULL,PERIOD_M1,ADXPeriod,ADXPrice,MODE_MINUSDI,shift_1); if ((ADX_plus_1 > ADX_minus_1)) { UP_41 = 1; DOWN_41 = 0; } if ((ADX_plus_1 < ADX_minus_1)) { UP_41 = 0; DOWN_41 = 1; } double ADX_plus_5=iADX(NULL,PERIOD_M5,ADXPeriod,ADXPrice,MODE_PLUSDI,shift_5); double ADX_minus_5=iADX(NULL,PERIOD_M5,ADXPeriod,ADXPrice,MODE_MINUSDI,shift_5); if ((ADX_plus_5 > ADX_minus_5)) { UP_42 = 1; DOWN_42 = 0; } if ((ADX_plus_5 < ADX_minus_5)) { UP_42 = 0; DOWN_42 = 1; } double ADX_plus_15=iADX(NULL,PERIOD_M15,ADXPeriod,ADXPrice,MODE_PLUSDI,shift_15); double ADX_minus_15=iADX(NULL,PERIOD_M15,ADXPeriod,ADXPrice,MODE_MINUSDI,shift_15); if ((ADX_plus_15 > ADX_minus_15)) { UP_43 = 1; DOWN_43 = 0; } if ((ADX_plus_15 < ADX_minus_15)) { UP_43 = 0; DOWN_43 = 1; } double ADX_plus_30=iADX(NULL,PERIOD_M30,ADXPeriod,ADXPrice,MODE_PLUSDI,shift_30); double ADX_minus_30=iADX(NULL,PERIOD_M30,ADXPeriod,ADXPrice,MODE_MINUSDI,shift_30); if ((ADX_plus_30 > ADX_minus_30)) { UP_44 = 1; DOWN_44 = 0; } if ((ADX_plus_30 < ADX_minus_30)) { UP_44 = 0; DOWN_44 = 1; } double ADX_plus_60=iADX(NULL,PERIOD_H1,ADXPeriod,ADXPrice,MODE_PLUSDI,shift_60); double ADX_minus_60=iADX(NULL,PERIOD_H1,ADXPeriod,ADXPrice,MODE_MINUSDI,shift_60); if ((ADX_plus_60 > ADX_minus_60)) { UP_45 = 1; DOWN_45 = 0; } if ((ADX_plus_60 < ADX_minus_60)) { UP_45 = 0; DOWN_45 = 1; } double ADX_plus_240=iADX(NULL,PERIOD_H4,ADXPeriod,ADXPrice,MODE_PLUSDI,shift_240); double ADX_minus_240=iADX(NULL,PERIOD_H4,ADXPeriod,ADXPrice,MODE_MINUSDI,shift_240); if ((ADX_plus_240 > ADX_minus_240)) { UP_46 = 1; DOWN_46 = 0; } if ((ADX_plus_240 < ADX_minus_240)) { UP_46 = 0; DOWN_46 = 1; } double ADX_plus_1440=iADX(NULL,PERIOD_D1,ADXPeriod,ADXPrice,MODE_PLUSDI,shift_1440); double ADX_minus_1440=iADX(NULL,PERIOD_D1,ADXPeriod,ADXPrice,MODE_MINUSDI,shift_1440); if ((ADX_plus_1440 > ADX_minus_1440)) { UP_47 = 1; DOWN_47 = 0; } if ((ADX_plus_1440 < ADX_minus_1440)) { UP_47 = 0; DOWN_47 = 1; } // Indicator (BULLS) double bulls_1=iBullsPower(NULL,PERIOD_M1,BULLSPeriod,BULLSPrice,shift_1); if ((bulls_1 > 0)) { UP_49 = 1; DOWN_49 = 0; } if ((bulls_1 < 0)) { UP_49 = 0; DOWN_49 = 1; } double bulls_5=iBullsPower(NULL,PERIOD_M5,BULLSPeriod,BULLSPrice,shift_5); if ((bulls_5 > 0)) { UP_50 = 1; DOWN_50 = 0; } if ((bulls_5 < 0)) { UP_50 = 0; DOWN_50 = 1; } double bulls_15=iBullsPower(NULL,PERIOD_M15,BULLSPeriod,BULLSPrice,shift_15); if ((bulls_15 > 0)) { UP_51 = 1; DOWN_51 = 0; } if ((bulls_15 < 0)) { UP_51 = 0; DOWN_51 = 1; } double bulls_30=iBullsPower(NULL,PERIOD_M30,BULLSPeriod,BULLSPrice,shift_30); if ((bulls_30 > 0)) { UP_52 = 1; DOWN_52 = 0; } if ((bulls_30 < 0)) { UP_52 = 0; DOWN_52 = 1; } double bulls_60=iBullsPower(NULL,PERIOD_H1,BULLSPeriod,BULLSPrice,shift_60); if ((bulls_60 > 0)) { UP_53 = 1; DOWN_53 = 0; } if ((bulls_60 < 0)) { UP_53 = 0; DOWN_53 = 1; } double bulls_240=iBullsPower(NULL,PERIOD_H4,BULLSPeriod,BULLSPrice,shift_240); if ((bulls_240 > 0)) { UP_54 = 1; DOWN_54 = 0; } if ((bulls_240 < 0)) { UP_54 = 0; DOWN_54 = 1; } double bulls_1440=iBullsPower(NULL,PERIOD_D1,BULLSPeriod,BULLSPrice,shift_1440); if ((bulls_1440 > 0)) { UP_55 = 1; DOWN_55 = 0; } if ((bulls_1440 < 0)) { UP_55 = 0; DOWN_55 = 1; } // Indicator (BEARS) double bears_1=iBearsPower(NULL,PERIOD_M1,BEARSPeriod,BEARSPrice,shift_1); if ((bears_1 > 0)) { UP_57 = 1; DOWN_57 = 0; } if ((bears_1 < 0)) { UP_57 = 0; DOWN_57 = 1; } double bears_5=iBearsPower(NULL,PERIOD_M5,BEARSPeriod,BEARSPrice,shift_5); if ((bears_5 > 0)) { UP_58 = 1; DOWN_58 = 0; } if ((bears_5 < 0)) { UP_58 = 0; DOWN_58 = 1; } double bears_15=iBearsPower(NULL,PERIOD_M15,BEARSPeriod,BEARSPrice,shift_15); if ((bears_15 > 0)) { UP_59 = 1; DOWN_59 = 0; } if ((bears_15 < 0)) { UP_59 = 0; DOWN_59 = 1; } double bears_30=iBearsPower(NULL,PERIOD_M30,BEARSPeriod,BEARSPrice,shift_30); if ((bears_30 > 0)) { UP_60 = 1; DOWN_60 = 0; } if ((bears_30 < 0)) { UP_60 = 0; DOWN_60 = 1; } double bears_60=iBearsPower(NULL,PERIOD_H1,BEARSPeriod,BEARSPrice,shift_60); if ((bears_60 > 0)) { UP_61 = 1; DOWN_61 = 0; } if ((bears_60 < 0)) { UP_61 = 0; DOWN_61 = 1; } double bears_240=iBearsPower(NULL,PERIOD_H4,BEARSPeriod,BEARSPrice,shift_240); if ((bears_240 > 0)) { UP_62 = 1; DOWN_62 = 0; } if ((bears_240 < 0)) { UP_62 = 0; DOWN_62 = 1; } double bears_1440=iBearsPower(NULL,PERIOD_D1,BEARSPeriod,BEARSPrice,shift_1440); if ((bears_1440 > 0)) { UP_63 = 1; DOWN_63 = 0; } if ((bears_1440 < 0)) { UP_63 = 0; DOWN_63 = 1; } // Indicator (STOCH) double stoch_m_1=iStochastic(NULL,PERIOD_M1,STOKPeriod,STODPeriod,STOSlowing,MODE_SMA,1,MODE_MAIN,shift_1); double stoch_s_1=iStochastic(NULL,PERIOD_M1,STOKPeriod,STODPeriod,STOSlowing,MODE_SMA,1,MODE_SIGNAL,shift_1); if (stoch_m_1 >= stoch_s_1) { UP_65 = 1; DOWN_65 = 0; } if (stoch_m_1 < stoch_s_1) { UP_65 = 0; DOWN_65 = 1; } double stoch_m_5=iStochastic(NULL,PERIOD_M5,STOKPeriod,STODPeriod,STOSlowing,MODE_SMA,1,MODE_MAIN,shift_5); double stoch_s_5=iStochastic(NULL,PERIOD_M5,STOKPeriod,STODPeriod,STOSlowing,MODE_SMA,1,MODE_SIGNAL,shift_5); if (stoch_m_5 >= stoch_s_5) { UP_66 = 1; DOWN_66 = 0; } if (stoch_m_5 < stoch_s_5) { UP_66 = 0; DOWN_66 = 1; } double stoch_m_15=iStochastic(NULL,PERIOD_M15,STOKPeriod,STODPeriod,STOSlowing,MODE_SMA,1,MODE_MAIN,shift_15); double stoch_s_15=iStochastic(NULL,PERIOD_M15,STOKPeriod,STODPeriod,STOSlowing,MODE_SMA,1,MODE_SIGNAL,shift_15); if (stoch_m_15 >= stoch_s_15) { UP_67 = 1; DOWN_67 = 0; } if (stoch_m_15 < stoch_s_15) { UP_67 = 0; DOWN_67 = 1; } double stoch_m_30=iStochastic(NULL,PERIOD_M30,STOKPeriod,STODPeriod,STOSlowing,MODE_SMA,1,MODE_MAIN,shift_30); double stoch_s_30=iStochastic(NULL,PERIOD_M30,STOKPeriod,STODPeriod,STOSlowing,MODE_SMA,1,MODE_SIGNAL,shift_30); if (stoch_m_30 >= stoch_s_30) { UP_68 = 1; DOWN_68 = 0; } if (stoch_m_30 < stoch_s_30) { UP_68 = 0; DOWN_68 = 1; } double stoch_m_60=iStochastic(NULL,PERIOD_H1,STOKPeriod,STODPeriod,STOSlowing,MODE_SMA,1,MODE_MAIN,shift_60); double stoch_s_60=iStochastic(NULL,PERIOD_H1,STOKPeriod,STODPeriod,STOSlowing,MODE_SMA,1,MODE_SIGNAL,shift_60); if (stoch_m_60 >= stoch_s_60) { UP_69 = 1; DOWN_69 = 0; } if (stoch_m_60 < stoch_s_60) { UP_69 = 0; DOWN_69 = 1; } double stoch_m_240=iStochastic(NULL,PERIOD_H4,STOKPeriod,STODPeriod,STOSlowing,MODE_SMA,1,MODE_MAIN,shift_240); double stoch_s_240=iStochastic(NULL,PERIOD_H4,STOKPeriod,STODPeriod,STOSlowing,MODE_SMA,1,MODE_SIGNAL,shift_240); if (stoch_m_240 >= stoch_s_240) { UP_70 = 1; DOWN_70 = 0; } if (stoch_m_240 < stoch_s_240) { UP_70 = 0; DOWN_70 = 1; } double stoch_m_1440=iStochastic(NULL,PERIOD_D1,STOKPeriod,STODPeriod,STOSlowing,MODE_SMA,1,MODE_MAIN,shift_1440); double stoch_s_1440=iStochastic(NULL,PERIOD_D1,STOKPeriod,STODPeriod,STOSlowing,MODE_SMA,1,MODE_SIGNAL,shift_1440); if (stoch_m_1440 >= stoch_s_1440) { UP_71 = 1; DOWN_71 = 0; } if (stoch_m_1440 < stoch_s_1440) { UP_71 = 0; DOWN_71 = 1; } // Indicator (RSI) double rsi_1=iRSI(NULL,PERIOD_M1,RSIPeriod,PRICE_CLOSE,shift_1); if (rsi_1 >= 50) { UP_73 = 1; DOWN_73 = 0; } if (rsi_1 < 50) { UP_73 = 0; DOWN_73 = 1; } double rsi_5=iRSI(NULL,PERIOD_M5,RSIPeriod,PRICE_CLOSE,shift_5); if (rsi_5 >= 50) { UP_74 = 1; DOWN_74 = 0; } if (rsi_5 < 50) { UP_74 = 0; DOWN_74 = 1; } double rsi_15=iRSI(NULL,PERIOD_M15,RSIPeriod,PRICE_CLOSE,shift_15); if (rsi_15 >= 50) { UP_75 = 1; DOWN_75 = 0; } if (rsi_15 < 50) { UP_75 = 0; DOWN_75 = 1; } double rsi_30=iRSI(NULL,PERIOD_M30,RSIPeriod,PRICE_CLOSE,shift_30); if (rsi_30 >= 50) { UP_76 = 1; DOWN_76 = 0; } if (rsi_30 < 50) { UP_76 = 0; DOWN_76 = 1; } double rsi_60=iRSI(NULL,PERIOD_H1,RSIPeriod,PRICE_CLOSE,shift_60); if (rsi_60 >= 50) { UP_77 = 1; DOWN_77 = 0; } if (rsi_60 < 50) { UP_77 = 0; DOWN_77 = 1; } double rsi_240=iRSI(NULL,PERIOD_H4,RSIPeriod,PRICE_CLOSE,shift_240); if (rsi_240 >= 50) { UP_78 = 1; DOWN_78 = 0; } if (rsi_240 < 50) { UP_78 = 0; DOWN_78 = 1; } double rsi_1440=iRSI(NULL,PERIOD_D1,RSIPeriod,PRICE_CLOSE,shift_1440); if (rsi_1440 >= 50) { UP_79 = 1; DOWN_79 = 0; } if (rsi_1440 < 50) { UP_79 = 0; DOWN_79 = 1; } // Indicator (FORCE INDEX) double fi_1=iForce(NULL,PERIOD_M1,FIPeriod,FIMethod,FIPrice,shift_1); if (fi_1 >= 0) { UP_81 = 1; DOWN_81 = 0; } if (fi_1 < 0) { UP_81 = 0; DOWN_81 = 1; } double fi_5=iForce(NULL,PERIOD_M5,FIPeriod,FIMethod,FIPrice,shift_5); if (fi_5 >= 0) { UP_82 = 1; DOWN_82 = 0; } if (fi_5 < 0) { UP_82 = 0; DOWN_82 = 1; } double fi_15=iForce(NULL,PERIOD_M15,FIPeriod,FIMethod,FIPrice,shift_15); if (fi_15 >= 0) { UP_83 = 1; DOWN_83 = 0; } if (fi_15 < 0) { UP_83 = 0; DOWN_83 = 1; } double fi_30=iForce(NULL,PERIOD_M30,FIPeriod,FIMethod,FIPrice,shift_30); if (fi_30 >= 0) { UP_84 = 1; DOWN_84 = 0; } if (fi_30 < 0) { UP_84 = 0; DOWN_84 = 1; } double fi_60=iForce(NULL,PERIOD_H1,FIPeriod,FIMethod,FIPrice,shift_60); if (fi_60 >= 0) { UP_85 = 1; DOWN_85 = 0; } if (fi_60 < 0) { UP_85 = 0; DOWN_85 = 1; } double fi_240=iForce(NULL,PERIOD_H4,FIPeriod,FIMethod,FIPrice,shift_240); if (fi_240 >= 0) { UP_86 = 1; DOWN_86 = 0; } if (fi_240 < 0) { UP_86 = 0; DOWN_86 = 1; } double fi_1440=iForce(NULL,PERIOD_D1,FIPeriod,FIMethod,FIPrice,shift_1440); if (fi_1440 >= 0) { UP_87 = 1; DOWN_87 = 0; } if (fi_1440 < 0) { UP_87 = 0; DOWN_87 = 1; } // Indicator (MOMENTUM) double momentum_1=iMomentum(NULL,PERIOD_M1,MOMPeriod,MOMPrice,shift_1); if (momentum_1 >= 100) { UP_89 = 1; DOWN_89 = 0; } if (momentum_1 < 100) { UP_89 = 0; DOWN_89 = 1; } double momentum_5=iMomentum(NULL,PERIOD_M5,MOMPeriod,MOMPrice,shift_5); if (momentum_5 >= 100) { UP_90 = 1; DOWN_90 = 0; } if (momentum_5 < 100) { UP_90 = 0; DOWN_90 = 1; } double momentum_15=iMomentum(NULL,PERIOD_M15,MOMPeriod,MOMPrice,shift_15); if (momentum_15 >= 100) { UP_91 = 1; DOWN_91 = 0; } if (momentum_15 < 100) { UP_91 = 0; DOWN_91 = 1; } double momentum_30=iMomentum(NULL,PERIOD_M30,MOMPeriod,MOMPrice,shift_30); if (momentum_30 >= 100) { UP_92 = 1; DOWN_92 = 0; } if (momentum_30 < 100) { UP_92 = 0; DOWN_92 = 1; } double momentum_60=iMomentum(NULL,PERIOD_H1,MOMPeriod,MOMPrice,shift_60); if (momentum_60 >= 100) { UP_93 = 1; DOWN_93 = 0; } if (momentum_60 < 100) { UP_93 = 0; DOWN_93 = 1; } double momentum_240=iMomentum(NULL,PERIOD_H4,MOMPeriod,MOMPrice,shift_240); if (momentum_240 >= 100) { UP_94 = 1; DOWN_94 = 0; } if (momentum_240 < 100) { UP_94 = 0; DOWN_94 = 1; } double momentum_1440=iMomentum(NULL,PERIOD_D1,MOMPeriod,MOMPrice,shift_1440); if (momentum_1440 >= 100) { UP_95 = 1; DOWN_95 = 0; } if (momentum_1440 < 100) { UP_95 = 0; DOWN_95 = 1; } // Indicator (DE MARKER) double demarker_1_0=iDeMarker(NULL,PERIOD_M1,DEMPeriod,shift_1); double demarker_1_1=iDeMarker(NULL,PERIOD_M1,DEMPeriod,shift_1+1); if (demarker_1_0 >= demarker_1_1) { UP_97 = 1; DOWN_97 = 0; } if (demarker_1_0 < demarker_1_1) { UP_97 = 0; DOWN_97 = 1; } double demarker_5_0=iDeMarker(NULL,PERIOD_M5,DEMPeriod,shift_5); double demarker_5_1=iDeMarker(NULL,PERIOD_M5,DEMPeriod,shift_5+1); if (demarker_5_0 >= demarker_5_1) { UP_98 = 1; DOWN_98 = 0; } if (demarker_5_0 < demarker_5_1) { UP_98 = 0; DOWN_98 = 1; } double demarker_15_0=iDeMarker(NULL,PERIOD_M15,DEMPeriod,shift_15); double demarker_15_1=iDeMarker(NULL,PERIOD_M15,DEMPeriod,shift_15+1); if (demarker_15_0 >= demarker_15_1) { UP_99 = 1; DOWN_99 = 0; } if (demarker_15_0 < demarker_15_1) { UP_99 = 0; DOWN_99 = 1; } double demarker_30_0=iDeMarker(NULL,PERIOD_M30,DEMPeriod,shift_30); double demarker_30_1=iDeMarker(NULL,PERIOD_M30,DEMPeriod,shift_30+1); if (demarker_30_0 >= demarker_30_1) { UP_100 = 1; DOWN_100 = 0; } if (demarker_30_0 < demarker_30_1) { UP_100 = 0; DOWN_100 = 1; } double demarker_60_0=iDeMarker(NULL,PERIOD_H1,DEMPeriod,shift_60); double demarker_60_1=iDeMarker(NULL,PERIOD_H1,DEMPeriod,shift_60+1); if (demarker_60_0 >= demarker_60_1) { UP_101 = 1; DOWN_101 = 0; } if (demarker_60_0 < demarker_60_1) { UP_101 = 0; DOWN_101 = 1; } double demarker_240_0=iDeMarker(NULL,PERIOD_H4,DEMPeriod,shift_240); double demarker_240_1=iDeMarker(NULL,PERIOD_H4,DEMPeriod,shift_240+1); if (demarker_240_0 >= demarker_240_1) { UP_102 = 1; DOWN_102 = 0; } if (demarker_240_0 < demarker_240_1) { UP_102 = 0; DOWN_102 = 1; } double demarker_1440_0=iDeMarker(NULL,PERIOD_D1,DEMPeriod,shift_1440); double demarker_1440_1=iDeMarker(NULL,PERIOD_D1,DEMPeriod,shift_1440+1); if (demarker_1440_0 >= demarker_1440_1) { UP_103 = 1; DOWN_103 = 0; } if (demarker_1440_0 < demarker_1440_1) { UP_103 = 0; DOWN_103 = 1; } //---- Count Indicators double Indy_count = UP_1 + UP_9 + UP_17 + UP_25 + UP_33 + UP_41 + UP_49 + UP_57 + UP_65 + UP_73 + UP_81 + UP_89 + UP_97 + UP_105 + UP_2 + UP_10 + UP_18 + UP_26 + UP_34 + UP_42 + UP_50 + UP_58 + UP_66 + UP_74 + UP_82 + UP_90 + UP_98 + UP_106 + UP_3 + UP_11 + UP_19 + UP_27 + UP_35 + UP_43 + UP_51 + UP_59 + UP_67 + UP_75 + UP_83 + UP_91 + UP_99 + UP_107 + UP_4 + UP_12 + UP_20 + UP_28 + UP_36 + UP_44 + UP_52 + UP_60 + UP_68 + UP_76 + UP_84 + UP_92 + UP_100 + UP_108 + UP_5 + UP_13 + UP_21 + UP_29 + UP_37 + UP_45 + UP_53 + UP_61 + UP_69 + UP_77 + UP_85 + UP_93 + UP_101 + UP_109 + UP_6 + UP_14 + UP_22 + UP_30 + UP_38 + UP_46 + UP_54 + UP_62 + UP_70 + UP_78 + UP_86 + UP_94 + UP_102 + UP_110 + UP_7 + UP_15 + UP_23 + UP_31 + UP_39 + UP_47 + UP_55 + UP_63 + UP_71 + UP_79 + UP_87 + UP_95 + UP_103 + UP_111 + DOWN_1 + DOWN_9 + DOWN_17 + DOWN_25 + DOWN_33 + DOWN_41 + DOWN_49 + DOWN_57 + DOWN_65 + DOWN_73 + DOWN_81 + DOWN_89 + DOWN_97 + DOWN_105 + DOWN_2 + DOWN_10 + DOWN_18 + DOWN_26 + DOWN_34 + DOWN_42 + DOWN_50 + DOWN_58 + DOWN_66 + DOWN_74 + DOWN_82 + DOWN_90 + DOWN_98 + DOWN_106 + DOWN_3 + DOWN_11 + DOWN_19 + DOWN_27 + DOWN_35 + DOWN_43 + DOWN_51 + DOWN_59 + DOWN_67 + DOWN_75 + DOWN_83 + DOWN_91 + DOWN_99 + DOWN_107 + DOWN_4 + DOWN_12 + DOWN_20 + DOWN_28 + DOWN_36 + DOWN_44 + DOWN_52 + DOWN_60 + DOWN_68 + DOWN_76 + DOWN_84 + DOWN_92 + DOWN_100 + DOWN_108 + DOWN_5 + DOWN_13 + DOWN_21 + DOWN_29 + DOWN_37 + DOWN_45 + DOWN_53 + DOWN_61 + DOWN_69 + DOWN_77 + DOWN_85 + DOWN_93 + DOWN_101 + DOWN_109 + DOWN_6 + DOWN_14 + DOWN_22 + DOWN_30 + DOWN_38 + DOWN_46 + DOWN_54 + DOWN_62 + DOWN_70 + DOWN_78 + DOWN_86 + DOWN_94 + DOWN_102 + DOWN_110 + DOWN_7 + DOWN_15 + DOWN_23 + DOWN_31 + DOWN_39 + DOWN_47 + DOWN_55 + DOWN_63 + DOWN_71 + DOWN_79 + DOWN_87 + DOWN_95 + DOWN_103 + DOWN_111; double UP_m1 = (UP_1 + UP_9 + UP_17 + UP_25 + UP_33 + UP_41 + UP_49 + UP_57 + UP_65 + UP_73 + UP_81 + UP_89 + UP_97 + UP_105) * 1; double UP_m5 = (UP_2 + UP_10 + UP_18 + UP_26 + UP_34 + UP_42 + UP_50 + UP_58 + UP_66 + UP_74 + UP_82 + UP_90 + UP_98 + UP_106) * 1; double UP_m15 = (UP_3 + UP_11 + UP_19 + UP_27 + UP_35 + UP_43 + UP_51 + UP_59 + UP_67 + UP_75 + UP_83 + UP_91 + UP_99 + UP_107) * 1; double UP_m30 = (UP_4 + UP_12 + UP_20 + UP_28 + UP_36 + UP_44 + UP_52 + UP_60 + UP_68 + UP_76 + UP_84 + UP_92 + UP_100 + UP_108) * 1; double UP_H1 = (UP_5 + UP_13 + UP_21 + UP_29 + UP_37 + UP_45 + UP_53 + UP_61 + UP_69 + UP_77 + UP_85 + UP_93 + UP_101 + UP_109) * 1; double UP_H4 = (UP_6 + UP_14 + UP_22 + UP_30 + UP_38 + UP_46 + UP_54 + UP_62 + UP_70 + UP_78 + UP_86 + UP_94 + UP_102 + UP_110) * 1; double UP_D1 = (UP_7 + UP_15 + UP_23 + UP_31 + UP_39 + UP_47 + UP_55 + UP_63 + UP_71 + UP_79 + UP_87 + UP_95 + UP_103 + UP_111) * 1; double TrendUP = UP_m1 + UP_m5 + UP_m15 + UP_m30 + UP_H1 + UP_H4 + UP_D1; double DOWN_m1 = (DOWN_1 + DOWN_9 + DOWN_17 + DOWN_25 + DOWN_33 + DOWN_41 + DOWN_49 + DOWN_57 + DOWN_65 + DOWN_73 + DOWN_81 + DOWN_89 + DOWN_97 + DOWN_105) * 1; double DOWN_m5 = (DOWN_2 + DOWN_10 + DOWN_18 + DOWN_26 + DOWN_34 + DOWN_42 + DOWN_50 + DOWN_58 + DOWN_66 + DOWN_74 + DOWN_82 + DOWN_90 + DOWN_98 + DOWN_106) * 1; double DOWN_m15 = (DOWN_3 + DOWN_11 + DOWN_19 + DOWN_27 + DOWN_35 + DOWN_43 + DOWN_51 + DOWN_59 + DOWN_67 + DOWN_75 + DOWN_83 + DOWN_91 + DOWN_99 + DOWN_107) * 1; double DOWN_m30 = (DOWN_4 + DOWN_12 + DOWN_20 + DOWN_28 + DOWN_36 + DOWN_44 + DOWN_52 + DOWN_60 + DOWN_68 + DOWN_76 + DOWN_84 + DOWN_92 + DOWN_100 + DOWN_108) * 1; double DOWN_H1 = (DOWN_5 + DOWN_13 + DOWN_21 + DOWN_29 + DOWN_37 + DOWN_45 + DOWN_53 + DOWN_61 + DOWN_69 + DOWN_77 + DOWN_85 + DOWN_93 + DOWN_101 + DOWN_109) * 1; double DOWN_H4 = (DOWN_6 + DOWN_14 + DOWN_22 + DOWN_30 + DOWN_38 + DOWN_46 + DOWN_54 + DOWN_62 + DOWN_70 + DOWN_78 + DOWN_86 + DOWN_94 + DOWN_102 + DOWN_110) * 1; double DOWN_D1 = (DOWN_7 + DOWN_15 + DOWN_23 + DOWN_31 + DOWN_39 + DOWN_47 + DOWN_55 + DOWN_63 + DOWN_71 + DOWN_79 + DOWN_87 + DOWN_95 + DOWN_103 + DOWN_111) * 1; double TrendDOWN = DOWN_m1 + DOWN_m5 + DOWN_m15 + DOWN_m30 + DOWN_H1 + DOWN_H4 + DOWN_D1; string Trend_UP = DoubleToStr(((TrendUP/Indy_count)*100),0); string Trend_DOWN = DoubleToStr((100 - StrToDouble(Trend_UP)),0); if (cmd=="Up") return((TrendUP/Indy_count)*100); if (cmd=="Dn") return(100 - StrToDouble(Trend_UP)); } double Analysis(string cmd, int shift) { double rsilevel=iRSI(NULL,0,8,0,shift); double rsilevel3=iRSI(NULL,0,8,0,shift+2); double rsilevelfast=iRSI(NULL,0,3,0,shift); double rsilevel3fast=iRSI(NULL,0,3,0,shift+2); double stolevel= iStochastic( NULL, 0, 10,3, 3, 0,0, MODE_MAIN,shift); double stolevel2=iStochastic( NULL, 0, 10,3, 3, 0,0, MODE_MAIN,shift+1); double stolevel3=iStochastic( NULL, 0, 10,3, 3, 0,0, MODE_MAIN,shift+2); double stolevelsignal= iStochastic( NULL, 0, 10,3, 3, 0,0, MODE_SIGNAL,shift); double stolevel2signal=iStochastic( NULL, 0, 10,3, 3, 0,0, MODE_SIGNAL,shift+1); int UpRSI,DnRSI; int UpRSICross,DnRSICross; int UpRSILevel,DnRSILevel; int RSIOB,RSIOS; int UpSTO,DnSTO; int UpSTOCross,DnSTOCross; int UpSTOLevel,DnSTOLevel; int STOOB,STOOS; if (rsilevel>rsilevel3) {UpRSI=1;DnRSI=0;} else if (rsilevelrsilevel&&rsilevel3fastrsilevel3){UpRSICross=0;DnRSICross=1;} else {UpRSICross=0;DnRSICross=0;} if (rsilevel>50&&rsilevel<=70) {UpRSILevel=1;DnRSILevel=0;} else if (rsilevel<=50&&rsilevel>=30) {UpRSILevel=0;DnRSILevel=1;} else if (rsilevel>70) {RSIOB=1;RSIOS=0;} else if (rsilevel<30) {RSIOB=0;RSIOS=1;} if (stolevel>50&&stolevel<=70){UpSTOLevel=1;DnSTOLevel=0;} else if (stolevel<=50&&stolevel>=30) {UpSTOLevel=0;DnSTOLevel=1;} else if (stolevel>70) {STOOB=1;STOOS=0;} else if (stolevel<30) {STOOB=0;STOOS=1;} if (stolevel>stolevel3) {UpSTO=1;DnSTO=0;} else if (stolevelstolevel&&stolevel2signalstolevel2){UpSTOCross=1;DnSTOCross=0;} double Indy_count =UpRSI+DnRSI+UpRSICross+DnRSICross+UpRSILevel+DnRSILevel+UpSTO+DnSTO+UpSTOCross+DnSTOCross+UpSTOLevel+DnSTOLevel; double TrendUP=UpRSI+UpRSICross+UpRSILevel+UpSTO+UpSTOCross+UpSTOLevel; double TrendDOWN = DnRSI+DnRSICross+DnRSILevel+DnSTO+DnSTOCross+DnSTOLevel; double Up=(TrendUP/Indy_count)*100; double Dn=100 - Up; if (cmd=="ValueUp") { return(Up); } else if (cmd=="ValueDn") { return(Dn); } else { if (Up>=40&&powerup>65)return(1); if (Dn>=40&&powerdn>65)return(2); if (Up>=40&&powerup<55)return(3); if (Dn>=40&&powerdn<55)return(4); } }