Orders Execution
Indicators Used
Miscellaneous
0
Views
0
Downloads
0
Favorites
Profitability Reports
AUD/USD
Oct 2024 - Jan 2025
65.00 %
Total Trades
822
Won Trades
0
Lost trades
0
Win Rate
0.00 %
Expected payoff
-7.12
Gross Profit
10831.60
Gross Loss
-16684.40
Total Net Profit
-5852.80
-100%
-50%
0%
50%
100%
GBP/USD
Oct 2024 - Jan 2025
57.00 %
Total Trades
802
Won Trades
408
Lost trades
394
Win Rate
0.51 %
Expected payoff
-9.44
Gross Profit
10132.70
Gross Loss
-17705.60
Total Net Profit
-7572.90
-100%
-50%
0%
50%
100%
nemox-0001_133
//+------------------------------------------------------------------+
//| ShadowTrader |
//| Copyright © 2005, MetaQuotes Software Corp. |
//| http://www.metaquotes.net |
//| v1.2 |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2005, MetaQuotes Software Corp."
#property link "http://www.metaquotes.net"
extern double Lots = 0.1;
extern int TakeProfit = 500;
extern int StopLoss = 500;
extern int limit = 5; // Óðîâåíü óñòàíîâêè îòëîæåííîãî îðäåðà
extern int ProfitLevel = 30; // Îáùèé ïðîôèò äëÿ âñåõ ïîçèöèé ïðè êîòîðîì îíè çàêðûâàþòñÿ
static int magicNumber = 23456;
static datetime prev_min = D'1.1.1'; // Ïðåäûäóùèé ìèíèìóì
static datetime prev_max = D'1.1.1'; // Ïðåäûäóùèé ìàêñèìóì
bool AllowTrade,NewBar,OrdersClose,OpenSell,OpenBuy;
datetime LastTrade;
int ticket,n;
//+------------------------------------------------------------------+
//| expert initialization function |
//+------------------------------------------------------------------+
int init()
{
AllowTrade=True;OrdersClose=false;OpenSell=false;OpenBuy=false;
LastTrade=CurTime();
ticket=0;n=0;
return(0);
}
//+------------------------------------------------------------------+
//| expert deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
return(0);
}
//+------------------------------------------------------------------+
//| expert start function |
//+------------------------------------------------------------------+
int start()
{
if ((Year()<2005) || (Month()<7)) return (0);
double iFractals_up = 0; // Ìàêñèìóì
double iFractals_lo = 0; // Ìèíèìóì
double TP =0,SL=0,price=0,totalprofit=0;
int cnt=0,i=0,totalcountpos=0;
//Òèïû îòêðûòûõ îðäåðîâ
int ps=0,pb=0,ss=0,sb=0,ls=0,lb=0;
//+------------------------------------------------------------------------------------------------+
//| Ìîäóëü ïîäñ÷¸òà îòêðûòûõ îðäåðîâ
//+------------------------------------------------------------------------------------------------+
//Åñëè åñòü õîòü îäèí îòêðûòûé îðäåð, îïðåäåëÿåì òèï îòêðûòîãî îðäåðà
for (cnt=OrdersTotal()-1;cnt>=0;cnt--)
{
OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
if (OrderType()==OP_SELL && OrderSymbol()==Symbol())
{ //åñòü îòêðûòàÿ êîðîòêàÿ ïîçèöèÿ
ps=ps+1;totalcountpos=totalcountpos+1;
totalprofit=totalprofit+OrderProfit();
}
if (OrderType()==OP_BUY && OrderSymbol()==Symbol())
{ //åñòü îòêðûòàÿ äëèííàÿ ïîçèöèÿ
pb=pb+1;totalcountpos=totalcountpos+1;
totalprofit=totalprofit+OrderProfit();
}
if (OrderType()==OP_SELLSTOP && OrderSymbol()==Symbol())
{ //åñòü îòëîæåííûé îðäåð SellStop
ss=ss+1;totalcountpos=totalcountpos+1;
}
if (OrderType()==OP_BUYSTOP && OrderSymbol()==Symbol())
{ //åñòü îòëîæåííûé îðäåð BuyStop
sb=sb+1;totalcountpos=totalcountpos+1;
}
}
//+------------------------------------------------------------------------------------------------+
//| Êîíåö ìîäóëÿ ïîäñ÷¸òà îòêðûòûõ îðäåðîâ
//+------------------------------------------------------------------------------------------------+
//+------------------------------------------------------------------------------------------------+
//| Åñëè îáùèé ïðîôèò ïî âñåì îòêðûòûì ïðåâûøàåò íàø óðîâåíü, äàåì ïðèêàç íà çàêðûòèå âñåõ îðäåðîâ
//+------------------------------------------------------------------------------------------------+
if (totalprofit>ProfitLevel)
{
AllowTrade=false;
OrdersClose=true;
}
//+------------------------------------------------------------------------------------------------+
//| Ìîäóëü çàêðûòèÿ âñåõ îðäåðîâ
//+------------------------------------------------------------------------------------------------+
//+------------------------------------------------------------------------------------------------+
//| Ìîäóëü çàêðûòèÿ âñåõ îðäåðîâ
//+------------------------------------------------------------------------------------------------+
if (OrdersClose)
{
AllowTrade=false;
bool result=false;
for (cnt=OrdersTotal()-1;cnt>=0;cnt--)
{
if (((CurTime()-LastTrade)<10) || (LastTrade==0)) return (0);
result=false;
OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
RefreshRates();
{
if ((OrderSymbol()==Symbol()) && (OrderType()==OP_BUY))
{
result=OrderClose(OrderTicket(),OrderLots(),NormalizeDouble(Bid,Digits),5,Yellow);
if (result){ LastTrade=CurTime();break; }
}
if ((OrderSymbol()==Symbol()) && (OrderType()==OP_SELL))
{
result=OrderClose(OrderTicket(),OrderLots(),NormalizeDouble(Ask,Digits),5,Blue );
if (result){ LastTrade=CurTime();break; }
}
if ((OrderSymbol()==Symbol()) && (OrderType()==OP_BUYSTOP) && (OrderMagicNumber()== magicNumber))
{
result=OrderDelete(OrderTicket());
if (result){ LastTrade=CurTime();break; }
}
if ((OrderSymbol()==Symbol()) && (OrderType()==OP_SELLSTOP) && (OrderMagicNumber()== magicNumber))
{
result=OrderDelete(OrderTicket());
if (result){ LastTrade=CurTime();break; }
}
}
}
if(result==false)
{
Alert("Order " , OrderTicket() , " failed to close. Error:" , GetLastError() );
Sleep(3000);
}
}
//+------------------------------------------------------------------------------------------------+
//| Êîíåö ìîäóëÿ çàêðûòèÿ âñåõ îðäåðîâ
//+------------------------------------------------------------------------------------------------+
//+------------------------------------------------------------------------------------------------+
//| Åñëè îðäåðîâ áîëüøå íå îñòàëîñü, ÷åðåç 5 ñåêóíä íà÷èíàåì òîðãîâëþ çàíîâî
//+------------------------------------------------------------------------------------------------+
if (totalcountpos==0)
{
OrdersClose=false;
Sleep(5000);
AllowTrade=true;
}
//+------------------------------------------------------------------------------------------------+
//|
//+------------------------------------------------------------------------------------------------+
// Åñëè ñâîáîäíûé îñòàòîê ìåíüøå íåîáõîäèìîãî, òî âûõîäèì
if (AccountFreeMargin() < ((1000*Ask)*Lots)+100 )
{
Alert("Íåäîñòàòî÷íî äåíåã!");
return (0);
}
//+------------------------------------------------------------------------------------------------+
//| Ìîäóëÿ èíäèêàòîðà
//+------------------------------------------------------------------------------------------------+
for (i = 0; i < 300; i++)
{
iFractals_up = iFractals(NULL, 0, MODE_UPPER, i);
iFractals_lo = iFractals(NULL, 0, MODE_LOWER, i);
if ((iFractals_up != 0) || (iFractals_lo != 0)) break;
}
// Íîâûé ìàêñèìóì ?
if ((iFractals_up != 0) && (Time[i] != prev_max) && (i < 3))
{
OpenSell=true;prev_max = Time[i];
}
// Íîâûé ìèíèìóì ?
if ((iFractals_lo != 0) && (Time[i] != prev_min) && (i < 3))
{
OpenBuy=true;prev_min = Time[i];
}
//+------------------------------------------------------------------------------------------------+
//| Êîíåö ìîäóëÿ èíäèêàòîðà
//+------------------------------------------------------------------------------------------------+
//+------------------------------------------------------------------------------------------------+
//| Îòêðûòèå îðäåðîâ
//+------------------------------------------------------------------------------------------------+
if (OpenSell && AllowTrade)
{
if ((CurTime()-LastTrade)<10) return (0);
ticket=0;
// Îòêðîåì îòëîæåííûé îðäåð.
while (ticket==0)
{
RefreshRates();
price = NormalizeDouble(High[i]+(limit*Point),Digits);
SL = price - StopLoss * Point;
TP = price + TakeProfit * Point;
ticket=OrderSend(Symbol(), OP_BUYSTOP, Lots, price, 3, SL, TP, "OP_BUYSTOP", magicNumber, 0, Pink);
Sleep(1000);
}
Sleep(10000);
ticket=0;
// Îòêðîåì îñíîâíîé îðäåð.
while (ticket==0)
{
RefreshRates();
SL = NormalizeDouble(Bid,Digits) + StopLoss * Point;
TP = NormalizeDouble(Bid,Digits) - TakeProfit * Point;
ticket=OrderSend(Symbol(),OP_SELL,Lots,NormalizeDouble(Bid,Digits),3,SL,TP,"OP_SELL",magicNumber,0,Blue);
Sleep(1000);
}
LastTrade=CurTime();
OpenSell=false;
}
if (OpenBuy && AllowTrade)
{
if ((CurTime()-LastTrade)<10) return (0);
ticket=0;
// Îòêðîåì îòëîæåííûé îðäåð.
while (ticket==0)
{
RefreshRates();
price = NormalizeDouble(Low[i]-(limit*Point),Digits);
SL = price + StopLoss * Point;
TP = price - TakeProfit * Point;
ticket=OrderSend(Symbol(), OP_SELLSTOP, Lots, price, 3, SL, TP, "OP_SELLSTOP", magicNumber, 0, SkyBlue);
Sleep(1000);
}
Sleep(10000);
ticket=0;
// Îòêðîåì îñíîâíîé îðäåð.
while (ticket==0)
{
RefreshRates();
SL = NormalizeDouble(Ask,Digits) - StopLoss * Point;
TP = NormalizeDouble(Ask,Digits) + TakeProfit * Point;
ticket=OrderSend(Symbol(),OP_BUY,Lots,NormalizeDouble(Ask,Digits),3,SL,TP,"OP_BUY",magicNumber,0,Yellow);
Sleep(1000);
}
LastTrade=CurTime();
OpenBuy=false;
}
//+------------------------------------------------------------------------------------------------+
//| Êîíåö îòêðûòèÿ îðäåðîâ
//+------------------------------------------------------------------------------------------------+
return(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
---