//+------------------------------------------------------------------+ //| ch_2006.mq4 | //| Copyright © 2006, Рамиль Сафиуллович Иргизов | //| popcorn@aaanet.ru | //+------------------------------------------------------------------+ //| Automated Trading Championship 2006 | //| Подключается к графику USDCHF 1 мин | //+------------------------------------------------------------------+ #define m 20050611 extern int takeprofit = 165; extern int stoploss = 165; extern double lots = 0.1; extern double risk = 0.25; extern int mm = 1; extern int pu1 = 1; extern int pu2 = 71; extern int pu3 = 326; extern int puu = 410; extern int sl = 22; extern int sl_min = 2; extern double p = 0.22; extern int dd = 7; extern int ddma = 9; extern double kr = 0.5; //----------------------------------------------------------------------------- int kol_buy() { int kol_ob=0; for(int i=0;i=5) lotsi=5-0.1; mah1_1=iMA(NULL,0,pu1,1,MODE_SMA,PRICE_HIGH,1); mal1_1=iMA(NULL,0,pu1,1,MODE_SMA,PRICE_LOW,1); mah2_1=iMA(NULL,0,pu2,1,MODE_SMA,PRICE_HIGH,1); mal2_1=iMA(NULL,0,pu2,1,MODE_SMA,PRICE_LOW,1); mal3_1=iMA(NULL,0,pu3,1,MODE_SMA,PRICE_LOW,1); mal3_2=iMA(NULL,0,pu3,1,MODE_SMA,PRICE_LOW,2); mah3_1=iMA(NULL,0,pu3,1,MODE_SMA,PRICE_HIGH,1); mah3_2=iMA(NULL,0,pu3,1,MODE_SMA,PRICE_HIGH,2); mah1_2=iMA(NULL,0,pu1,1,MODE_SMA,PRICE_HIGH,2); mal1_2=iMA(NULL,0,pu1,1,MODE_SMA,PRICE_LOW,2); mah2_2=iMA(NULL,0,pu2,1,MODE_SMA,PRICE_HIGH,2); mal2_2=iMA(NULL,0,pu2,1,MODE_SMA,PRICE_LOW,2); ma1=iMA(NULL,0,puu,1,MODE_SMA,PRICE_MEDIAN,1); ma2=iMA(NULL,0,puu,1,MODE_SMA,PRICE_MEDIAN,2); slp=sl*Point; slp_min=sl_min*Point; bool sob=false,sos=false; sob=CurTime()>lastt+60*61 && mah1_2=mah2_1 && ma1>ma2 && mah2_1>mah2_2 && mah3_1>mah3_2 && (mah2_1-mah2_2)>(mah3_1-mah3_2) && (mah3_1-mal3_1)<(mah2_1-mal2_1) && // ma1mah3_1 && mah1_1<=mah3_1+dd*Point && mah2_1>mah3_1 && High[1]<=ma1+ddma*Point && kol_buy()<2 && kol_buy()+kol_sell()<3; sos=CurTime()>lastt+60*61 && mal1_2>mal2_2 && mal1_1<=mal2_1 && ma1(mal3_2-mal3_1) && (mah3_1-mal3_1)<(mah2_1-mal2_1) && // ma1>mal3_1 && mal3_1>mal2_1 && mal2_1>mal1_1 && mal1_1=mal3_1-dd*Point && mal2_1=ma1-ddma*Point && kol_sell()<1 && kol_buy()+kol_sell()<3; tic=-1;kk=0; if (sob) { while(tic==-1 && kk<3) { tic=OrderSend(Symbol(),OP_BUY,lotsi,Ask,slip,Ask-stoploss*Point,Ask+takeprofit*Point," ",m,0,Yellow); if (tic==-1) { gle=GetLastError(); kk++; Print("Ошибка №",gle," при buy ",kk); Sleep(6000); RefreshRates(); } } lastt=CurTime(); return; } tic=-1;kk=0; if (sos) { while(tic==-1 && kk<3) { tic=OrderSend(Symbol(),OP_SELL,lotsi,Bid,slip,Bid+stoploss*Point,Bid-takeprofit*Point," ",m,0,Red); if (tic==-1) { gle=GetLastError(); kk++; Print("Ошибка №",gle," при sell ",kk); Sleep(6000); RefreshRates(); } } lastt=CurTime(); return; } total=OrdersTotal(); for(i=0;iOrderOpenPrice()+slp) { OrderModify(OrderTicket(),OrderOpenPrice(),OrderOpenPrice()+slp_min,OrderTakeProfit(),0,White); return; } if(OrderStopLoss()>OrderOpenPrice() && OrderStopLoss()+1*PointOrderOpenPrice() || OrderStopLoss()==0) && Low[1]Low[1]+(slp-slp_min)+(OrderOpenPrice()-Low[1]-slp)*p) { OrderModify(OrderTicket(),OrderOpenPrice(),Low[1]+(slp-slp_min)+(OrderOpenPrice()-Low[1]-slp)*p, OrderTakeProfit(),0,Red); return; } } } } }