Manual_EA





//+------------------------------------------------------------------+
//|                                                    Manual_EA.mq4 |
//|                      Copyright © 2007, MetaQuotes Software Corp. |
//|                                        http://www.metaquotes.ru/ |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2007, MetaQuotes Software Corp."
#property link      "http://www.metaquotes.ru/"
 
//---- input parameters
extern int       Kperiod=5;
extern int       Dperiod=3;
extern int       slowPeriod=3;
extern int       UpLevel=90;
extern int       DownLevel=10;
extern int       StopLoss=100;
extern int       TakeProfit=100;
extern double    Lots=0.1;
 
//+------------------------------------------------------------------+
//| expert start function                                            |
//+------------------------------------------------------------------+
int start()
  {
//----
   int res=-1;
//----
   double prevValue = iStochastic(Symbol(),0,Kperiod,Dperiod,slowPeriod,MODE_SMA,0,MODE_SIGNAL,2);
   double currValue = iStochastic(Symbol(),0,Kperiod,Dperiod,slowPeriod,MODE_SMA,0,MODE_SIGNAL,1);
   int i,type;
   double SL,TP;
 
   if (currValue>DownLevel && prevValue<DownLevel) res=OP_BUY;
   if (currValue<UpLevel && prevValue>UpLevel) res=OP_SELL;
   if (res==OP_BUY) // îòêðîåì ïîêóïêè, çàêðîåì ïðîäàæè
      {
      if (OrdersTotal()>0)
         {
         for (i=OrdersTotal()-1; i>=0;i--)
            {
            if (OrderSelect(i,SELECT_BY_POS))
               {
               if (OrderType()==OP_SELL) OrderClose(OrderTicket(),OrderLots(),Ask,3);
               }
            }
         }
      if (StopLoss!=0)    SL=Bid-StopLoss*Point;   else SL=0;         
      if (TakeProfit!=0)  TP=Bid+TakeProfit*Point; else TP=0;         
      OrderSend(Symbol(),OP_BUY,Lots,Ask,3,SL,TP);
      }
   
 
   if (res==OP_SELL) // îòêðîåì ïðîäàæè, çàêðîåì ïîêóïêè
      {
      if (OrdersTotal()>0)
         {
         for (i=OrdersTotal()-1; i>=0;i--)
            {
            if (OrderSelect(i,SELECT_BY_POS))
               {
               if (OrderType()==OP_BUY) OrderClose(OrderTicket(),OrderLots(),Bid,3);
               }
            }
         }   
      if (StopLoss!=0)    SL=Ask+StopLoss*Point;   else SL=0;         
      if (TakeProfit!=0)  TP=Ask-TakeProfit*Point; else TP=0;         
      OrderSend(Symbol(),OP_SELL,Lots,Bid,3,SL,TP);
      }
 
//----
   return(0);
  }
//+------------------------------------------------------------------+



Sample





Analysis



Market Information Used:



Indicator Curves created:


Indicators Used:

Stochastic oscillator


Custom Indicators Used:

Order Management characteristics:
Checks for the total of open orders

It Closes Orders by itself
It automatically opens orders when conditions are reached

Other Features:

BackTest : EURUSD on H1

From 2009-08-01 to 2009-10-01 Profit Factor:0.44 Total Net Profit:-826.62

BackTest : EURUSD on H1

From 2009-12-01 to 2010-01-17 Profit Factor:0.46 Total Net Profit:-760.00

BackTest : EURUSD on H1

From 2010-04-01 to 2010-04-30 Profit Factor:0.00 Total Net Profit:0.00

BackTest : EURUSD on H1

From 2010-05-01 to 2010-05-31 Profit Factor:0.00 Total Net Profit:0.00

BackTest : EURUSD on H1

From 2010-06-01 to 2010-06-30 Profit Factor:0.00 Total Net Profit:0.00

BackTest : GBPUSD on H1

From 2010-01-01 to 2010-02-27 Profit Factor:0.89 Total Net Profit:-148.00

BackTest : USDCAD on H1

From 2009-12-01 to 2010-01-01 Profit Factor:0.58 Total Net Profit:-584.74

BackTest : USDCHF on H1

From 2009-12-01 to 2010-01-01 Profit Factor:0.24 Total Net Profit:-344.36

BackTest : USDJPY on H1

From 2009-11-01 to 2009-11-30 Profit Factor:0.50 Total Net Profit:-4052.78

Request Backtest for Manual_EA


From : (yyyy/mm/dd) To: (yyyy/mm/dd)

Pair: Period: