//+---------------------------------------------------------------------+ //| Pedro.mq4 | //| Name := Venezuelan Investment Group | //| Author := Pedro Echenagucia | //| Link := http://www.veninvgroup.com/ | //+---------------------------------------------------------------------+ #property copyright "Pedro Echenagucia" #property link "http://www.veninvgroup.com" //---- #define ID 98698 //---- extern double Lots=1; extern int StopLoss=30,TakeProfit=50; extern int GAP=5,MaxTrades=10,ReEntryGAP=1,tStop=10,tPips=0,StartHour=1,EndHour=23; extern bool MM=1; extern int MaxLots=50,StartYear=2006; double Entry=0,ReEntry=0; int Dir=0; int i=0; double nLots=0; int nTrades=0; //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ int start() { //if( Year()EndHour) { Entry=0; // ReEntry=0; return(0); } if(nTrades()< MaxTrades) { Trade(); Comment("Trade"); } } //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ void Trade() { if (MM) { nLots=MathFloor(AccountEquity()/20000); if (nLots < 1)nLots=1; if (nLots > MaxLots )nLots=MaxLots; } else { nLots=Lots; } if(Entry>0) { if(Ask>=Entry+GAP*Point) { OrderSend(Symbol(),OP_SELL,nLots,Bid,1,Bid+StopLoss*Point,Bid-TakeProfit*Point,"PedroMod",ID,0,Red); ReEntry=Ask; Print("ReEntry ",ReEntry, " Time ",TimeToStr(CurTime(),TIME_DATE|TIME_MINUTES)); Entry=0; Dir=2; return; } if(Ask<=Entry-GAP*Point) { OrderSend(Symbol(),OP_BUY,nLots,Ask,1,Ask-StopLoss*Point,Ask+TakeProfit*Point,"PedroMod",ID,0,Blue); ReEntry=Ask; Print("ReEntry ",ReEntry, " Time ",TimeToStr(CurTime(),TIME_DATE|TIME_MINUTES)); Entry=0; Dir=1; return; } } else { if(nTrades()==0 ) { Entry=Ask; Print("Entry ",Entry, " Time ",TimeToStr(CurTime(),TIME_DATE|TIME_MINUTES)); ReEntry=0; } } if (ReEntry>0) { if(Dir==1) { if(Ask<=ReEntry+ReEntryGAP*Point ) { OrderSend(Symbol(),OP_BUY,nLots,Ask,1,Ask-StopLoss*Point,Ask+TakeProfit*Point,"PedroMod",ID,0,Blue); if(nTrades+1=ReEntry-ReEntryGAP*Point) { OrderSend(Symbol(),OP_SELL,nLots,Bid,1,Bid+StopLoss*Point,Bid-TakeProfit*Point,"PedroMod",ID,0,Red); if(nTrades+10) { for(i=0;ibid+TrailingStop*Point Then ModifyOrder(OrderValue(i,VAL_TICKET),OrderValue(i,VAL_OPENPRICE),bid+TrailingStop*Point, OrderValue(i,VAL_TAKEPROFIT), Blue); }; } } } If tStop Then { For i=1 to TotalTrades { If OrderValue(1,VAL_SYMBOL)==Symbol Then { Switch OrderValue(i,VAL_TYPE) { Case OP_BUY: If OrderValue(i,VAL_STOPLOSS)=OrderValue(i,VAL_OPENPRICE)+tStop*Point Then ModifyOrder(OrderValue(i,VAL_TICKET),OrderValue(i,VAL_OPENPRICE),OrderValue(i,VAL_OPENPRICE)+tPips*Point, OrderValue(i,VAL_TAKEPROFIT), Blue); Case OP_SELL: If OrderValue(i,VAL_STOPLOSS)>OrderValue(i,VAL_OPENPRICE) And bid<=OrderValue(i,VAL_OPENPRICE)-tStop*Point Then ModifyOrder(OrderValue(i,VAL_TICKET),OrderValue(i,VAL_OPENPRICE),OrderValue(i,VAL_OPENPRICE)-tPips*Point, OrderValue(i,VAL_TAKEPROFIT), Red); }; } } } */ //+------------------------------------------------------------------+