Merci également ,d'apporter d’éventuelles corrections utiles à un parfait fonctionnement
Du fait du nombre d'operations ( Total des Trades 110354),le format rapport ne peut etre affiché
Du fait du nombre d'operations ( Total des Trades 110354),le format rapport ne peut etre affiché
Code
Dépot initial 220.00
Ecart Actuel (5)
Profit total net 581.83
Profit brut 592.82
Perte brute -10.99
Facteur de profit 53.94
Rémunération espérée 0.01
Chute absolue 0.12
Chute maximale 11.32 (2.30%)
Enfoncement relatif 2.30% (11.32)
Total des Trades 110354
Positions SHORT (vente) gagnées % 54437 (100.00%)
Positions LONG (achat) gagnées % 55917 (99.98%)
Profits des Trades (% du total) 110341 (99.99%)
Pertes des Trades (% du total) 13 (0.01%)
Le plus large
gains par trade 3.64
pertes par trade -1.76
Moyenne
gains par trade 0.01
pertes par trade -0.85
Maximum
gains consécutifs (profit en $) 23344 (127.08)
pertes consécutives (perte en $) 1 (-1.76)
Maximum
Gains consécutifs (coups gagnants) 127.08 (23344)
Pertes consécutives (coups perdants) -1.76 (1)
Moyenne
gains consécutifs 7882
Pertes consécutives 1
Code
//+------------------------------------------------------------------+
//| SCALPING PERFECT.mq4 |
//| Copyright 2019, MetaQuotes Software Corp. |
//| https://www.mql5.com |
//+------------------------------------------------------------------+
//+------------------------------------------------------------------+
//| SCALPING LONG SHORT V2.mq4.mq4 |
//| Copyright 2019, MetaQuotes Software Corp. |
//| https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2019, MetaQuotes Software Corp."
#property link "https://www.mql5.com"
#property version "1.00"
#property strict
extern string Name_EA = "SCALPING LONG SHORT V2";
extern int TakeProfit = 28;
int StopLoss = 0;
extern int ecartask=5;
extern int ecartbid=5;
int MagicNumber =27112019;
extern int LotFactor=300;//150 <---> 300
int Slippage=0;
extern int Start_Time = 7; // Time to allow trading to start ( hours of 24 hr clock ) 0 for both disables
extern int Finish_Time = 22; // Time to stop trading ( hours of 24 hr clock ) 0 for both disables
//+------------------------------------------------------------------+
//| Expert tick function |
//+------------------------------------------------------------------+
void OnTick()
{
if(((TimeHour(TimeCurrent())>=Start_Time)) && ((TimeHour(TimeCurrent())<=Finish_Time )))return ;
int total=OrdersTotal();
int i;
double OpenLongOrders=0,OpenShortOrders=0,PendLongs=0,PendShorts=0;
if(total==0 && OpenLongOrders==0 && OpenShortOrders==0 && PendLongs==0 && PendShorts==0)
{
openbuy();
sellstop();
opensell();
buystop();
}
for(i=0;i<total;i++)
{
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
if(OrderSymbol()==Symbol() && OrderMagicNumber()==MagicNumber)
{
int type=OrderType();
if(type == OP_BUY ) {OpenLongOrders=OpenLongOrders+1;}
if(type == OP_SELL ) {OpenShortOrders=OpenShortOrders+1;}
if(type == OP_BUYSTOP ) {PendLongs=PendLongs+1;}
if(type == OP_SELLSTOP ) {PendShorts=PendShorts+1;}
if(total==1 && OpenLongOrders==0 && OpenShortOrders==0 && (PendLongs==1 || PendShorts==1))
{
deleteallpendingorders();
}
}
}
}
//+------------------------------------------------------------------+
//| opensell |
//+------------------------------------------------------------------+
void opensell()
{
int ticket=OrderSend(Symbol(),OP_SELL,(AccountBalance() * 0.01 /LotFactor)*1,Bid,5,Bid+(StopLoss*Point),Bid-(TakeProfit*Point),"SCALPING LONG SHORT V2",MagicNumber,0,Red);
if (GetLastError()!=0) Print(" BUY Order Error "+(string)ticket);
}
//+------------------------------------------------------------------+
//| buystop |
//+------------------------------------------------------------------+
void buystop1()
{
int ticket= OrderSend(Symbol(),OP_BUYSTOP, (AccountBalance() * 0.01 /LotFactor)*3,Ask+ecartask*Point,5,(Ask+ecartask*Point)-StopLoss*Point,(Ask+ecartask*Point)+TakeProfit*Point,"SCALPING LONG SHORT V2",MagicNumber,0,clrBlue);
if (GetLastError()!=0) Print(" BUY Order Error "+(string)ticket);
}
//+------------------------------------------------------------------+
//| sellstop |
//+------------------------------------------------------------------+
void sellstop1()
{
int ticket =OrderSend(Symbol(),OP_SELLSTOP, (AccountBalance() * 0.01 /LotFactor)*5,Bid-ecartbid*Point,5,(Bid-ecartbid*Point)+StopLoss*Point,(Bid-ecartbid*Point)-TakeProfit*Point,"SCALPING LONG SHORT V2",MagicNumber,0,clrBlue);
if (GetLastError()!=0) Print(" SELL Order Error "+(string)ticket);
}
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
//+------------------------------------------------------------------+
//| openbuy |
//+------------------------------------------------------------------+
void openbuy()
{
int ticket= OrderSend(Symbol(),OP_BUY,(AccountBalance() * 0.01 /LotFactor)*1,Ask,5,Ask-StopLoss*Point,Ask+TakeProfit*Point,"SCALPING LONG SHORT V2",MagicNumber,0,clrBlue);
if (GetLastError()!=0) Print(" BUY Order Error "+(string)ticket);
}
//+------------------------------------------------------------------+
//| sellstop |
//+------------------------------------------------------------------+
void sellstop()
{
int ticket =OrderSend(Symbol(),OP_SELLSTOP, (AccountBalance() * 0.01 /LotFactor)*3,Bid-ecartbid*Point,5,(Bid-ecartbid*Point)+StopLoss*Point,(Bid-ecartbid*Point)-TakeProfit*Point,"SCALPING LONG SHORT V2",MagicNumber,0,clrBlue);
if (GetLastError()!=0) Print(" SELL Order Error "+(string)ticket);
}
//+------------------------------------------------------------------+
//| buystop |
//+------------------------------------------------------------------+
void buystop()
{
int ticket= OrderSend(Symbol(),OP_BUYSTOP, (AccountBalance() * 0.01 /LotFactor)*5,Ask+ecartask*Point,5,(Ask+ecartask*Point)-StopLoss*Point,(Ask+ecartask*Point)+TakeProfit*Point,"SCALPING LONG SHORT V2",MagicNumber,0,clrBlue);
if (GetLastError()!=0) Print(" BUY Order Error "+(string)ticket);
}
//+------------------------------------------------------------------+
//| INVERSION |
//+------------------------------------------------------------------+
//+------------------------------------------------------------------+
//| deleteallpendingorders |
//+------------------------------------------------------------------+
void deleteallpendingorders()
{
for(int i=0;i<OrdersTotal();i++)
{
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
if(OrderSymbol()==Symbol() && OrderMagicNumber()==MagicNumber && ((OrderType()==OP_BUY) || (OrderType()==OP_SELL) ||(OrderType()==OP_BUYSTOP) || (OrderType()==OP_SELLSTOP) || (OrderType()==OP_BUYLIMIT) || (OrderType()==OP_SELLLIMIT)))
{
bool modify= OrderDelete(OrderTicket());
}
}
}