Orders Execution
Indicators Used
0
Views
0
Downloads
0
Favorites
Profitability Reports
AUD/USD
Oct 2024 - Jan 2025
16.00 %
Total Trades
225
Won Trades
0
Lost trades
0
Win Rate
0.00 %
Expected payoff
-43.15
Gross Profit
1871.00
Gross Loss
-11580.00
Total Net Profit
-9709.00
-100%
-50%
0%
50%
100%
GBP/USD
Oct 2024 - Jan 2025
36.00 %
Total Trades
353
Won Trades
131
Lost trades
222
Win Rate
0.37 %
Expected payoff
-27.50
Gross Profit
5431.00
Gross Loss
-15140.00
Total Net Profit
-9709.00
-100%
-50%
0%
50%
100%
NZD/USD
Oct 2024 - Jan 2025
10.00 %
Total Trades
166
Won Trades
36
Lost trades
130
Win Rate
0.22 %
Expected payoff
-58.49
Gross Profit
1090.00
Gross Loss
-10800.00
Total Net Profit
-9710.00
-100%
-50%
0%
50%
100%
EuroBull
/*-----------------------------+
| |
| Shared by www.Aptrafx.com |
| |
+------------------------------*/
//+------------------------------------------------------------------+
//| EuroBull.mq4 |
//| Zonker |
//| http://www.greenpeace.org |
//+------------------------------------------------------------------+
//
//The EuroBull, tends to favour markets that trend in favour of Euro:).
//Designed to run on EURUSD.
#property copyright "Zonker"
#property link "http://www.greenpeace.org"
#define MAXLOTSIZE 5
#define MAXPOS 3
#define SLIP 1
#define SL 100
int myMagic = 88888888;//very lucky, yes?
//+-------------------------------------------------------------------
int init() { return(0); }
int deinit() { return(0); }
//+-------------------------------------------------------------------
int start()
{ double sma;
bool BuyEuros = false;
int LotsToBuy,Lots;
int i;
if(!Happyness()) return(0);
sma = iMA(NULL,PERIOD_D1,10,0,MODE_SMA,PRICE_CLOSE,0);//Must respect the sma.
if(sma > Ask) //Euros going cheap! BUY!
BuyEuros = true;
if(sma < Ask) //Momentum in our favour! BUY!!
BuyEuros = true;
if(sma == Ask) //BuY EUROS NOW!!!, BUY MORE!!!
BuyEuros = true;
if(OrdersTotal()>0)
{ //We have Euros! Do we need any more?
Lots=0;
for(i=0;i<OrdersTotal();i++)
{ OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
Lots += OrderLots();
}
if(AccountEquity() > (Lots*2000 + MathMin(5,(Lots+1)/2)*2000 + 100) && Lots < MAXLOTSIZE*MAXPOS && Lots >= 1.0)
CloseOrders(OP_BUY); //Sell up and buy more Euros
else
return(0);
}
if(BuyEuros)
{ //We don't have any Euros?!!? How many Euros should we buy?
LotsToBuy = AccountBalance()/2000;
if(LotsToBuy == 0 && AccountBalance() > 100)
{ //Ok, getting desparate..
double tinyLots = NormalizeDouble(AccountBalance()/2000.0-0.1,1);
if(tinyLots>0)
MyOrderSend(Symbol(),OP_BUY,tinyLots,Ask,SLIP,Ask-SL*Point,Ask+SL*Point,"",myMagic,0,Blue);
return(0);
}
for(i=0;i<MAXPOS;i++)
{ if(LotsToBuy>MAXLOTSIZE) Lots = MAXLOTSIZE;
else Lots = LotsToBuy;
MyOrderSend(Symbol(),OP_BUY,Lots,Ask,SLIP,Ask-SL*Point,0,"",myMagic,0,Blue);
LotsToBuy -= MAXLOTSIZE;
if(LotsToBuy <= 0) break;
}
}
return(0);
}
//+-------------------------------------------------------------------
bool Happyness() //Are we in the right mood to trade?
{
if(!IsConnected())
{ Print("Yo man, we are not connected!");
return(false);
}
if(!IsExpertEnabled())
{ Print("Hey, we are not enabled!");
return(false);
}
if(AccountEquity() > 98800) //Stop at 888%, lets not be greedy.
{ if(OrdersTotal() > 0)
CloseOrders(OP_BUY);
return(false);
}
if(AccountBalance() < 200) return(false); //Ok, we lost.
return(true);
}
//+-------------------------------------------------------------------
int CloseOrders(int cmd)
{ int i;
double price;
if(cmd == OP_SELL) price = Ask;
else price = Bid;
for(i=OrdersTotal()-1;i>=0;i--)
{ OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
if(OrderType() == cmd)
MyOrderClose(OrderTicket(),OrderLots(),price,SLIP,CLR_NONE);
}
}
//+-------------------------------------------------------------------
int MyOrderSend(string sym, int cmd, double vol, double price, int slip, double sl, double tp, string comment="", int magic=0, datetime exp=0, color cl=CLR_NONE)
{ int err;
bool isAsk=false;
if(price == Ask) isAsk = true;
for(int z=0;z<10;z++)
{ if(OrderSend(sym,cmd,vol,price,slip,sl,tp,comment,magic,exp,cl)<0)
{ err = GetLastError();
Print("OrderSend failed, Error: ", err);
if(err>4000) break;
RefreshRates();
if(isAsk) price = Ask;
else price = Bid;
}
else
break;
}
}
//+------------------------------------------------------------------+
bool MyOrderClose(int ticket, double lots, double price, int slip, color cl=CLR_NONE)
{ int err;
bool isAsk=false;
if(price == Ask) isAsk = true;
for(int z=0;z<10;z++)
{
if(!OrderClose(ticket,lots,price,slip,cl))
{ err = GetLastError();
Print("OrderClose failed, Error: ", err);
if(err>4000) break;
RefreshRates();
if(isAsk) price = Ask;
else price = Bid;
}
else
break;
}
}
//+-------------------------------------------------------------------
Comments
Markdown Formatting Guide
# H1
## H2
### H3
**bold text**
*italicized text*
[title](https://www.example.com)

`code`
```
code block
```
> blockquote
- Item 1
- Item 2
1. First item
2. Second item
---