Orders Execution
Indicators Used
0
Views
0
Downloads
0
Favorites
Profitability Reports
AUD/USD
Oct 2024 - Jan 2025
20.00 %
Total Trades
771
Won Trades
0
Lost trades
0
Win Rate
0.00 %
Expected payoff
-12.75
Gross Profit
2513.00
Gross Loss
-12342.00
Total Net Profit
-9829.00
-100%
-50%
0%
50%
100%
GBP/USD
Oct 2024 - Jan 2025
0.00 %
Total Trades
0
Won Trades
0
Lost trades
0
Win Rate
0.0 %
Expected payoff
0.00
Gross Profit
0.00
Gross Loss
0.00
Total Net Profit
0.00
-100%
-50%
0%
50%
100%
NZD/USD
Oct 2024 - Jan 2025
12.00 %
Total Trades
556
Won Trades
185
Lost trades
371
Win Rate
0.33 %
Expected payoff
-17.67
Gross Profit
1295.00
Gross Loss
-11121.00
Total Net Profit
-9826.00
-100%
-50%
0%
50%
100%
JK_BullP____
//+------------------------------------------------------------------+
//| JK_BullP_AutoTrader.mq4 |
//| Copyright © 2005, Johnny Kor |
//| autojk@mail.ru |
//| On-Line Testing http://vesna.on-plus.ru/forex/stat/69740/ |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2005, Johnny Kor"
#property link "autojk@mail.ru"
//---- input parameters
extern double TakeProfit = 7;
extern double Lots = 1;
extern double StopLoss = 30;
extern int TrailingStop = 15;
extern double Patr=9,Prange=5,Kstop=1.5,kts=2,Vts=2;
//+------------------------------------------------------------------+
//| expert initialization function |
//+------------------------------------------------------------------+
int start()
{double pos1pre, pos2cur, hzbul1, hzbul2, hzbear1, hzbear2;
int cnt, ticket, total,TotalOpenOrders;
pos1pre = iBullsPower(NULL, 0, 13,PRICE_CLOSE,2);
pos2cur = iBullsPower(NULL, 0, 13,PRICE_CLOSE,1);
//hzbear1 = iBearsPower(NULL, 0, 13,PRICE_WEIGHTED,1);
//hzbear2 = iBearsPower(NULL, 0, 13,PRICE_CLOSE,0);
// = ((hzbear1+hzbul1)/2);
// = ((hzbear2+hzbul2)/2);
total=OrdersTotal();
/*
{
int para; // - ïîðÿäêîâûé íîìåð äîðãóåìîé ïàðû
double sl[11]; //- ìàññèâ StopLoss ïî êàæäîé ïàðå - ðàâåí äëèíå ñâå÷è íà íà÷àëî óòðåííåé ñåññèè
double ts[11]; //- ìàññèâ òðåéëèíãîâ ïî êàæäîé ïàðå - äèíàìè÷åñêèé òðåéëèíã
string arSym[12];
//----
// Ïîðÿäêîâûé íîìåð ïàðû
if (Symbol()=="USDCHF") para=0; arSym[0]="ïî ôðàíêó";
if (Symbol()=="GBPUSD") para=1; arSym[1]="ïî Ôóíòó";
if (Symbol()=="USDJPY") para=2; arSym[3]="ïî åíå";
if (Symbol()=="EURUSD") para=3; arSym[3]="ïî åâðå";
if (Symbol()=="AUDUSD") para=4; arSym[3]="ïî àâñòðàëèéöó";
if (Symbol()=="USDCAD") para=5; arSym[3]="ïî êàíàäöó";
if (Symbol()=="EURGBP") para=6; arSym[3]="ïî åâðî ôóíòó";
if (Symbol()=="EURCHF") para=7; arSym[3]="ïî åâðî ôðàíêó";
if (Symbol()=="EURJPY") para=8; arSym[3]="ïî åâðî åíå";
if (Symbol()=="GBPJPY") para=9; arSym[3]="ïî Ôóíò åíå";
if (Symbol()=="GPBCHF") para=10; arSym[3]="ïî ôóíò ôðàíêó";
if (Symbol()=="#EPU4") para=11; arSym[3]="ïî Èíäåêñó";
double mode,ValATR,hi,lo;
int prevBars,I,j2;
int lang_mode=SPEECH_NATIVE;
// Äâèãàåì ñòîïû
ts[para]=TrailingStop;
//-------------------------------------------------------
if (prevBars != Bars)
{
ValATR=0;
for ( I=1 ; I<=Patr;I++){
if (I<= Patr) ValATR += High[I]-Low[I]; }
ValATR = NormalizeDouble(ValATR / Patr,4);
hi=High[Highest(NULL,0,MODE_HIGH,Prange,Prange)];
lo=Low[Lowest(NULL,0,MODE_LOW,Prange,Prange)];
if (Vts==1) { ts[para]=NormalizeDouble(kts*ValATR,4);
sl[para]=Kstop*ValATR; }
if (Vts==2) { ts[para]=(hi-lo);
sl[para]=Kstop*(hi-lo); }
prevBars = Bars;
}
if (Vts<1 || Vts>2) return(0);
//-------------------------------------------------------
// int total=OrdersTotal();
for(cnt=0;cnt<total;cnt++)
{
// Âûñòàâëåíèå ïåðâîãî ñòîïà
OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
if(OrderType()==OP_BUY && OrderSymbol()==Symbol()&& OrderStopLoss()== 0) {
OrderModify(OrderTicket(),OrderOpenPrice(),Bid-sl[para],OrderTakeProfit(),0,Yellow);
SpeechText("Còîï ëîñ"+ arSym[para]+" óñòàíîâëåí óñïåøíî!", lang_mode);
return(0);
}
if(OrderType()<=OP_SELL && OrderSymbol()==Symbol() && OrderStopLoss()== 0) {
OrderModify(OrderTicket(),OrderOpenPrice(),Ask+sl[para],OrderTakeProfit(),0,Yellow);
SpeechText("Còîï ëîñ "+ arSym[para]+"óñòàíîâëåí óñïåøíî!", lang_mode);
return(0);
}
// Ìîäèôèêàöèÿ
OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
if(OrderType()<=OP_SELL &&
OrderSymbol()==Symbol())
{
if(OrderType()==OP_BUY)
{
if(ts[para]>0)
{
if(Bid-OrderOpenPrice()>TrailingStop*Point)
{
if(OrderStopLoss()<Bid-ts[para]|| OrderStopLoss()<OrderOpenPrice())
{
OrderModify(OrderTicket(),OrderOpenPrice(),Bid-ts[para],OrderTakeProfit(),0,Blue);
return(0);
}
}
}
}
else
{
if(ts[para]>0)
{
if((OrderOpenPrice()-Ask)>TrailingStop*Point)
{
if(OrderStopLoss()==0.0 ||
OrderStopLoss()>(Ask+ts[para])|| OrderStopLoss()>OrderOpenPrice())
{
OrderModify(OrderTicket(),OrderOpenPrice(),Ask+ts[para],OrderTakeProfit(),0,Red);
return(0); }
}
}
}
}
}
}
OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
if (OrderType()==OP_BUY && OrderSymbol()==Symbol()&& OrderStopLoss()<Bid-ts[para])
{ SpeechText("Îðäåð áàé"+ arSym[para]+" ìîäèôèöèðîâàí óñïåøíî!", lang_mode); }
if ( OrderType()==OP_SELL && OrderSymbol()==Symbol()&& OrderStopLoss()>Ask+ts[para]){
SpeechText("Îðäåð ñåëë"+ arSym[para]+" ìîäèôèöèðîâàí óñïåøíî!", lang_mode);}
//----
//----
//----
*/
int H,L;
for (cnt=0;cnt<30;cnt++)
{if (H==0)
{if (H<High[cnt]) H=High[cnt];}}
for (cnt=0;cnt<30;cnt++)
{if (L==0)
{
if (L>Low[cnt]) L=Low[cnt];}}
Comment(" BullsPower - ",pos1pre," BearsPower - ",pos2cur);
int j;
for(cnt=0;cnt<total;cnt++)
{
OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
if(OrderType()<=OP_SELL && // ýòî îòêðûòàÿ ïîçèöèÿ? OP_BUY èëè OP_SELL
OrderSymbol()==Symbol()) // èíñòðóìåíò ñîâïàäàåò?
{j=2;
if(OrderType()==OP_BUY) // îòêðûòà äëèííàÿ ïîçèöèÿ
{
// ïðîâåðèì - ìîæåò ìîæíî/íóæíî óæå òðåéëèíã ñòîï ñòàâèòü?
if(TrailingStop>0) // ïîëüçîâàòåëü âûñòàâèë â íàñòðîéêàõ òðåéëèíãñòîï
{ // çíà÷èò ìû èäåì åãî ïðîâåðÿòü
if(Bid-OrderOpenPrice()>Point*TrailingStop)
{
if(OrderStopLoss()<Bid-Point*TrailingStop)
{
OrderModify(OrderTicket(),OrderOpenPrice(),Bid-Point*TrailingStop,OrderTakeProfit(),0,Red);
return(0);
}
}
}
}
else // èíà÷å ýòî êîðîòêàÿ ïîçèöèÿ
{
// ïðîâåðèì - ìîæåò ìîæíî/íóæíî óæå òðåéëèíã ñòîï ñòàâèòü?
if(TrailingStop>0) // ïîëüçîâàòåëü âûñòàâèë â íàñòðîéêàõ òðåéëèíãñòîï
{ // çíà÷èò ìû èäåì åãî ïðîâåðÿòü
if((OrderOpenPrice()-Ask)>(Point*TrailingStop))
{
if(OrderStopLoss()==0.0 ||
OrderStopLoss()>(Ask+Point*TrailingStop))
{
OrderModify(OrderTicket(),OrderOpenPrice(),Ask+Point*TrailingStop,OrderTakeProfit(),0,Red);
return(0);
}
}
}
}
}
}
/*if (pos1pre > pos2cur)
{
for(cnt=0;cnt<total;cnt++)
{
OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
if(OrderType()<=OP_BUY &&
OrderSymbol()==Symbol())
{
if (Bid>(OrderSelect(cnt,OrderOpenPrice(), MODE_TRADES)+TrailingStop*Point))
{
OrderClose(OrderSelect(cnt,Symbol()),Lots,Bid,3,Violet);
}
}
}
}
if (pos2cur<0)
{
for(cnt=0;cnt<total;cnt++)
{
OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
if(OrderType()<=OP_SELL &&
OrderSymbol()==Symbol())
{
if (Ask>(OrderSelect(cnt,OrderOpenPrice(), MODE_TRADES)-TrailingStop*Point))
{
OrderClose(OrderSelect(cnt,Symbol()),Lots,Ask,3,Violet);
}
}
}
}
*/
if (pos1pre>pos2cur && pos2cur>0 && j<2)
{
OrderSend(Symbol(), OP_SELL,Lots,Bid,3,Bid+StopLoss*Point,Bid-TakeProfit*Point,NULL,0,0,Red);
}
if (pos2cur<0 && j<1)
{
OrderSend(Symbol(), OP_BUY,Lots,Ask,3,Ask-StopLoss*Point,Ask+TakeProfit*Point,NULL,0,0,Red);
}
// TRALiNG
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
---