Pakai Code yg ini pak :
TP, SL dan parameter lain default
Hasilnya menanjak, cuma ada 1 OP terakhir yg bikin dia loss
tolong diterawang pak, trims alot

Code:
//+------------------------------------------------------------------+
//| Tes ea.mq4 |
//| Zefanya |
//| |
//+------------------------------------------------------------------+
#property copyright "Zefanya"
#property link ""


extern int TakeProfit = 30;
extern int StopLoss = 20;
extern int Slippage = 3;
extern   double   Lots           = 0.1;

extern int EMA1Periode = 4;
extern int EMA2Periode = 50;

//+------------------------------------------------------------------+
//| expert initialization function |
//+------------------------------------------------------------------+
int init()
{
//----
//----
return(0);
}
//+------------------------------------------------------------------+
//| expert deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----
//----
return(0);
}

//+------------------------------------------------------------------+
//| expert start function |
//+------------------------------------------------------------------+
int start ()
{
//----
   double dMA1now, dMA2now, dMA1before, dMA2before;

   Comment ("Tes ea(c) Zefanya");

   dMA1now=iMA(NULL,0,EMA1Periode,0,MODE_EMA,PRICE_CLOSE ,0);
   dMA2now=iMA(NULL,0,EMA2Periode,0,MODE_EMA,PRICE_CLOSE ,0);

   dMA1before=iMA(NULL,0,EMA1Periode,0,MODE_EMA,PRICE_CLOSE ,1);
   dMA2before=iMA(NULL,0,EMA2Periode,0,MODE_EMA,PRICE_CLOSE ,1);

/* Code di bawah ini tidak perlu */
//if ( (dMA1 > dMA2) && (dMA1 < dMA2) )
//if ( (dMA1 < dMA2) && (dMA1 > dMA2) )

if(OrdersTotal()<1) // cuma boleh ada satu OP pada satu saat saja
{

if ((dMA1now > dMA2now) && (dMA1before < dMA2before)) 
{
// Lakukan perintah BUY disini
OrderSend(Symbol(),OP_BUY, Lots, Ask, Slippage,Bid-StopLoss*TakeProfit, Ask+TakeProfit*Point, 0);
}
else if ( (dMA1now < dMA2now) && (dMA1before > dMA2before) ) // memotong dari atas ke bawah
{
// Lakukan perintah SELL disini
OrderSend(Symbol(),OP_SELL, Lots, Bid, Slippage, Ask+StopLoss*TakeProfit, Bid-TakeProfit*Point, 0);
}

}

//----
return(0);
}

//+------------------------------------------------------------------+

//+------------------------------------------------------------------+