//+------------------------------------------------------------------+ //| Timetop.mq4 | //| Copyright © 2009, MetaQuotes Software Corp. | //| http://www.metaquotes.net | //+------------------------------------------------------------------+ #property copyright "Copyright © 2009, MetaQuotes Software Corp." #property link "http://www.metaquotes.net" extern double Lots=0.01; extern bool Mnmgt=true; extern double Risk=2; extern bool TPco=true; extern int p=23; extern int Daystart=7; extern int MaxRange=400; extern bool ShowLines=true; extern bool TradeFridays=false; extern string Remark1="Brokerdigits: true=5 false=4"; extern bool Brokerdigits=true; extern int Magicnumber=12345; int ticket1,ticket2,order1,order2,k,x; double op1,op2,selltp,buytp,y; //+------------------------------------------------------------------+ //| expert initialization function | //+------------------------------------------------------------------+ int init() { //---- //---- return(0); } //+------------------------------------------------------------------+ //| expert deinitialization function | //+------------------------------------------------------------------+ int deinit() { //---- //---- return(0); } //+------------------------------------------------------------------+ //| expert start function | //+------------------------------------------------------------------+ int start() { int dow=DayOfWeek(); string dayname; switch(dow) { case '0': dayname="Sunday"; break; case 1: dayname="Monday"; break; case 2: dayname="Tuesday"; break; case 3: dayname="Wednesday"; break; case 4: dayname="Thursday"; break; case 5: dayname="Friday"; break; case 6: dayname="Saturday"; break; } if (Brokerdigits==true){x=10;y=0.001;}else{x=1;y=0.01;} if (Hour()==Daystart+1){k=0;} if (Hour()==Daystart&&k==0){ k=1; CloseSellPosition(); CloseBuyPosition(); CloseSellStopPosition(); CloseBuyStopPosition(); int hb= iHighest(NULL, 0, 2, p, 1); int lb= iLowest(NULL, 0, 1, p, 1); double high= iHigh(NULL, 0, hb); double low= iLow(NULL, 0, lb); double close= iClose(NULL, 0, 1); double ran=high-low; double buy=NormalizeDouble(close+(ran/4),Digits); double sell=NormalizeDouble(close-(ran/4),Digits); buytp=NormalizeDouble(close+(ran/2),Digits); selltp=NormalizeDouble(close-(ran/2),Digits); double buysl=NormalizeDouble(close-((ran/4)-((10*Point)*x)),Digits); double sellsl=NormalizeDouble(close+((ran/4)-((10*Point)*x)),Digits); int randisp=(ran*MathPow(10,Digits))/x; string nt=""; if(randisp>MaxRange){nt="NO TRADE range more than "+MaxRange;} Comment ("High ",high, " Low ", low,"\n","Range ",randisp," Close ",close,"\n","Buy ",buy," BuyTP ",buytp," BuySL ",buysl, "\n","Sell ",sell," SellTP ",selltp," SellSL ",sellsl,"\n",nt); ObjectDelete("Buy"); ObjectDelete("Sell"); ObjectDelete("BuyTP"); ObjectDelete("SellTP"); ObjectDelete("Daystart"); if (((dow==5&&TradeFridays==true)||dow!=5)&&randisp