I find that EA on this forum, but it's outdated, because it's placing orders
with the SL/TP pre-set and for now most brokers will fist require to place a
trade and then Set the SL/TP with OrderModify function. So I change the Code and
Add SL/TP .. Maybe something is wrong in Events sequence..
I don't know what's
wrong with the code, everything looks fine, also simple script with
OrderSend(Symbol(), OP_SELL, 0.01, Bid, 3, 0, 0,"sell 001", 0, 0 ,Red);
sometimes execute and sometimes not (InterbankFX broker), that's drives me
nuts.. Here is that very useful EA, but something is just don't working as
I need.. Can anybody check it out? I have pretty useful strategy on 1 currency pair, but I need this to be Automated..
Also need to be add, ones trade hit Stop Loss or Take profit, set
that
bool Place_Sell=true;
bool Place_Buy=true;
again, as they set to false ones trade is met criteria
Thank you.
with the SL/TP pre-set and for now most brokers will fist require to place a
trade and then Set the SL/TP with OrderModify function. So I change the Code and
Add SL/TP .. Maybe something is wrong in Events sequence..
I don't know what's
wrong with the code, everything looks fine, also simple script with
OrderSend(Symbol(), OP_SELL, 0.01, Bid, 3, 0, 0,"sell 001", 0, 0 ,Red);
sometimes execute and sometimes not (InterbankFX broker), that's drives me
nuts.. Here is that very useful EA, but something is just don't working as
I need.. Can anybody check it out? I have pretty useful strategy on 1 currency pair, but I need this to be Automated..
Also need to be add, ones trade hit Stop Loss or Take profit, set
that
bool Place_Sell=true;
bool Place_Buy=true;
again, as they set to false ones trade is met criteria
Thank you.
PHP Code
//+------------------------------------------------------------------+
//| TimeEntry.mq4 |
//| Copyright © 2008, MetaQuotes Software Corp. |
//| http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2008, MetaQuotes Software Corp."
#property link "http://www.metaquotes.net"
extern double dLots = 0.01;
extern int StopLoss = 30;
extern int TakeProfit = 30;
extern bool Long_Entry = false; // Set to "true" or "false".
extern bool Short_Entry = true; // You can have both Long_Entry & Short Entry set to "true".
extern int Hour_For_Long_Entry = 16; //this is your broker's time as displayed in the MArket Watch window.
extern int Minute_For_Long_Entry = 35;
extern int Hour_For_Short_Entry = 23; //this is your broker's time as displayed in the Market Watch window.
extern int Minute_For_Shor_Entry = 10;
int MagicNumber=0;
double Poin;
int i,Total;
double SL,TP;
bool Place_Sell=true;
bool Place_Buy=true;
//+------------------------------------------------------------------+
//| expert initialization function |
//+------------------------------------------------------------------+
int init()
{
//----
//Checking for unconventional Point digits number
if (Point == 0.00001) Poin = 0.0001; //6 digits
else if (Point == 0.001) Poin = 0.01; //3 digits (for Yen based pairs)
else Poin = Point; //Normal
Print("App Started");
//----
if (Symbol()=="AUDCADm" || Symbol()=="AUDCAD") {MagicNumber=101;}
if (Symbol()=="AUDCHFm" || Symbol()=="AUDCHF") {MagicNumber=102;}
if (Symbol()=="AUDJPYm" || Symbol()=="AUDJPY") {MagicNumber=103;}
if (Symbol()=="AUDNZDm" || Symbol()=="AUDNZD") {MagicNumber=104;}
if (Symbol()=="AUDUSDm" || Symbol()=="AUDUSD") {MagicNumber=105;}
if (Symbol()=="CADCHFm" || Symbol()=="CADCHF") {MagicNumber=106;}
if (Symbol()=="CADJPYm" || Symbol()=="CADJPY") {MagicNumber=107;}
if (Symbol()=="CHFJPYm" || Symbol()=="CHFJPY") {MagicNumber=108;}
if (Symbol()=="EURAUDm" || Symbol()=="EURAUD") {MagicNumber=109;}
if (Symbol()=="EURCADm" || Symbol()=="EURCAD") {MagicNumber=110;}
if (Symbol()=="EURCHFm" || Symbol()=="EURCHF") {MagicNumber=111;}
if (Symbol()=="EURGBPm" || Symbol()=="EURGBP") {MagicNumber=112;}
if (Symbol()=="EURJPYm" || Symbol()=="EURJPY") {MagicNumber=113;}
if (Symbol()=="EURUSDm" || Symbol()=="EURUSD") {MagicNumber=114;}
if (Symbol()=="EURNZdm" || Symbol()=="EURNZD") {MagicNumber=115;}
if (Symbol()=="GBPAUDm" || Symbol()=="GBPAUD") {MagicNumber=116;}
if (Symbol()=="GBPCADm" || Symbol()=="GBPCAD") {MagicNumber=117;}
if (Symbol()=="GBPCHFm" || Symbol()=="GBPCHF") {MagicNumber=118;}
if (Symbol()=="GBPJPYm" || Symbol()=="GBPJPY") {MagicNumber=119;}
if (Symbol()=="GBPNZDm" || Symbol()=="GBPNZD") {MagicNumber=120;}
if (Symbol()=="GBPUSDm" || Symbol()=="GBPUSD") {MagicNumber=121;}
if (Symbol()=="NZDCADm" || Symbol()=="NZDCAD") {MagicNumber=122;}
if (Symbol()=="NZDCHFm" || Symbol()=="NZDCHF") {MagicNumber=123;}
if (Symbol()=="NZDJPYm" || Symbol()=="NZDJPY") {MagicNumber=124;}
if (Symbol()=="NZDUSDm" || Symbol()=="NZDUSD") {MagicNumber=125;}
if (Symbol()=="USDCHFm" || Symbol()=="USDCHF") {MagicNumber=126;}
if (Symbol()=="USDJPYm" || Symbol()=="USDJPY") {MagicNumber=127;}
if (Symbol()=="USDCADm" || Symbol()=="USDCAD") {MagicNumber=128;}
if (Symbol()=="USDMXNm" || Symbol()=="USDMXN") {MagicNumber=129;}
if (MagicNumber==0) {MagicNumber = 199;}
//----
return(0);
}
//+------------------------------------------------------------------+
//| expert deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----
//----
return(0);
}
//+------------------------------------------------------------------+
//| expert start function |
//+------------------------------------------------------------------+
int start()
//======== 1 ========================= Case Buy
{
//============================================
if(Long_Entry==true && Hour()==Hour_For_Long_Entry && Minute()>=Minute_For_Long_Entry)
{
if(Place_Buy == true)
{
OrderSend(Symbol(),OP_BUY,dLots,Ask,5,0,0,"Buy",MagicNumber,0,Blue);
Place_Buy=false;
//=====================================
if(GetLastError() != 0){
Print("Sell OrderSend 1 failed with error #", GetLastError());
}
//=====================================
}
}
//======== 2 ========================= Case SELL
if(Short_Entry==true && Hour()==Hour_For_Short_Entry && Minute()>=Minute_For_Long_Entry)
{
if(Place_Sell == true)
{
OrderSend(Symbol(),OP_SELL,dLots,Bid,5,0,0,"Sell",MagicNumber,0,Red);
Place_Sell=false;
///====================================
if(GetLastError() != 0)
{
Print("Sell OrderSend 1 failed with error #", GetLastError());
}
//========================================
}
}
//+------------------------------------------------------------------+ }
Total=OrdersTotal();
if(Total>0)
{
for(i=Total-1; i>=0; i--)
{
if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES)==true)
{
if(OrderSymbol()==Symbol() && OrderMagicNumber() == MagicNumber && OrderType()==OP_SELL)
{
if(StopLoss>0)SL=OrderOpenPrice()+StopLoss*Poin;else SL=0;
if(TakeProfit>0)TP=OrderOpenPrice()-TakeProfit*Poin;else TP=0;
OrderModify(OrderTicket(),OrderOpenPrice(),SL,TP,0,Red);
}
///------------------------------------------------
if(OrderSymbol()==Symbol() && OrderMagicNumber() == MagicNumber && OrderType()==OP_BUY)
{
if(StopLoss>0) SL=OrderOpenPrice()-StopLoss*Poin;else SL=0;
if(TakeProfit>0)TP=OrderOpenPrice()+TakeProfit*Poin;else TP=0;
OrderModify(OrderTicket(),OrderOpenPrice(),SL,TP,0,Red);
}
}
}
}
//----
return(0);
}
//+------------------------------------------------------------------+
Viewer Discretion Advised: Shall we shag now or should we shag later? :-)