Orders Execution
Indicators Used
Miscellaneous
0
Views
0
Downloads
0
Favorites
Profitability Reports
AUD/USD
Oct 2024 - Jan 2025
50.00 %
Total Trades
36
Won Trades
0
Lost trades
0
Win Rate
0.00 %
Expected payoff
-26.67
Gross Profit
960.00
Gross Loss
-1920.00
Total Net Profit
-960.00
-100%
-50%
0%
50%
100%
GBP/USD
Oct 2024 - Jan 2025
73.00 %
Total Trades
45
Won Trades
19
Lost trades
26
Win Rate
0.42 %
Expected payoff
-12.44
Gross Profit
1520.00
Gross Loss
-2080.00
Total Net Profit
-560.00
-100%
-50%
0%
50%
100%
One_in_Day1
//+------------------------------------------------------------------+
//| One_in_Day.mq4 |
//+------------------------------------------------------------------+
//---- input parameters
extern int StartHr=00;
extern int StartMin=00;
extern int StopLoss=80;
extern int TakeProfit=80;
extern double Lots=1;
extern int DaysOfClose=1; // ñêîëüêî äíåé äåðæàòü îòêðûòûì (îïòèìàëüíî 1)
extern int TS_Mode=0; // trailing stop 0=NO 1=YES 2=TS Only
extern int TS_Trigger=12;
extern int TS_Sensitivity=12;
extern int emaFast = 12; // parameters for MACD and OSMA
extern int emaSlow = 26; // parameters for MACD and OSMA
extern int signalPeriod = 9; // parameters for MACD and OSMA
extern int timeFrame = 0; // parameters for MACD and OSMA
int BuySell=0; // 0= Both BUY/SELL - 1=Buy ONLY - 2=Sell ONLY
//+------------------------------------------------------------------+
//| expert start function |
//+------------------------------------------------------------------+
int start()
{
//----
int i,j,Ticket,StartTime,Bought=0,Sold=0,Closed;
double Vol;
string Text;
double Trigger0=iMACD(NULL,timeFrame,emaFast,emaSlow,signalPeriod,PRICE_CLOSE,MODE_MAIN,0);
double Trigger1=iMACD(NULL,timeFrame,emaFast,emaSlow,signalPeriod,PRICE_CLOSE,MODE_MAIN,1);
double Trigger2=iMACD(NULL,timeFrame,emaFast,emaSlow,signalPeriod,PRICE_CLOSE,MODE_MAIN,2);
double Signal0=iMACD(NULL,timeFrame,emaFast,emaSlow,signalPeriod,PRICE_CLOSE,MODE_SIGNAL,0);
double Signal1=iMACD(NULL,timeFrame,emaFast,emaSlow,signalPeriod,PRICE_CLOSE,MODE_SIGNAL,1);
double Signal2=iMACD(NULL,timeFrame,emaFast,emaSlow,signalPeriod,PRICE_CLOSE,MODE_SIGNAL,2);
//Count time
StartTime= StrToTime(StartHr+":"+StartMin);
//Setup comment
Text="HH"+Symbol();
// Update Trailing Stop
for (i=0;i<OrdersTotal();i++){
OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
if(OrderComment()==Text)
{
int ticket = OrderTicket();
if (TS_Mode == 1)
{
ControlTrailingStop(ticket);
}
if (TS_Mode == 2 && (OrderOpenPrice() < Ask || OrderOpenPrice() > Bid))
{
ControlTrailingStop(ticket);
}
}
}
//Set orders
if(CurTime()>= StartTime && CurTime()<StartTime+300){
//Check Orders
for (i=0;i<OrdersTotal();i++){
OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
if(OrderComment()==Text && OrderType()==OP_BUY && OrderOpenTime()>CurTime()-3600) Bought++;
if(OrderComment()==Text && OrderType()==OP_SELL && OrderOpenTime()>CurTime()-3600) Sold++;
}
if(Bought==0 && (Trigger0<0 && Trigger0<Signal0)){ //buy order
Vol=Lots;
//Ticket=OrderSend(Symbol(),OP_BUY,Vol,Ask,3,Ask-StopLoss*Point,0,Text,0,0,Green);
//Ticket=OrderSend(Symbol(),OP_BUYLIMIT,Vol,Ask-TakeProfit*Point,3,Ask-(StopLoss+TakeProfit)*Point,Ask+TakeProfit*Point,Text,0,0,Green);
Ticket=OrderSend(Symbol(),OP_BUY,Vol,Ask,3,Ask-StopLoss*Point,Ask+TakeProfit*Point,Text,0,0,Blue);
PlaySound("expert.wav");
Sleep(10000);
}
if(Sold==0 && (Trigger0>0 && Trigger1<Signal1)){ //sell order
Vol=Lots;
//Ticket=OrderSend(Symbol(),OP_SELL,Vol,Bid,3,Bid+StopLoss*Point,0,Text,0,0,Green);
//Ticket=OrderSend(Symbol(),OP_SELLLIMIT,Vol,Bid+TakeProfit*Point,3,Bid+(StopLoss+TakeProfit)*Point,Bid-TakeProfit*Point,Text,0,0,Green);
Ticket=OrderSend(Symbol(),OP_SELL,Vol,Bid,3,Bid+StopLoss*Point,Bid-TakeProfit*Point,Text,0,0,Aqua);
PlaySound("expert.wav");
Sleep(10000);
}
if(GlobalVariableCheck("Closed")) GlobalVariableDel("Closed");
}
//Manage opened orders
for (i=0;i<OrdersTotal();i++){
OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
//close open position after 2 days
if(OrderComment()==Text && CurTime()>=OrderOpenTime()+DaysOfClose*24*3600-300){
if(OrderType()==OP_BUY && OrderOpenPrice() > Bid){
OrderClose(OrderTicket(),OrderLots(),Bid,3,Red);
PlaySound("expert.wav");
GlobalVariableSet("Closed",1);
Sleep(10000);
}
if(OrderType()==OP_SELL && OrderOpenPrice() < Ask){
OrderClose(OrderTicket(),OrderLots(),Ask,3,Violet);
PlaySound("expert.wav");
GlobalVariableSet("Closed",2);
Sleep(10000);
}
}
}
return(0);
}
//+------------------------------------------------------------------+
//+------------------------------------------------------------------+
//| Control trailing stop |
//+------------------------------------------------------------------+
void ControlTrailingStop(int ticket)
{
if (ticket == 0) return;
double ts;
if (OrderSelect(ticket, SELECT_BY_TICKET, MODE_TRADES)==false) return;
if (OrderType() == OP_BUY)
{
ts = Bid-(Point*TS_Sensitivity);
if ((ts >= OrderStopLoss() + TS_Sensitivity*Point) && (Bid >= OrderOpenPrice() + TS_Trigger*Point ))
{
OrderModify(ticket, OrderOpenPrice(), ts, OrderTakeProfit(), 0);
}
}else if(OrderType() == OP_SELL){
ts = Ask+(Point*TS_Sensitivity);
if ((ts <= OrderStopLoss() - TS_Sensitivity*Point) && (Ask <= OrderOpenPrice() - TS_Trigger*Point))
{
OrderModify(ticket, OrderOpenPrice(), ts, OrderTakeProfit(), 0);
}
}
}
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
---