Trabajo finalizado
Plazo de ejecución 3 días
Comentario del Cliente
Super job I recommend, very professionnal, thank you. :)
Comentario del Ejecutor
Great client! Hope to work with you in the future!
thnx
Tarea técnica
Hello, I would need to mix these two EAs together, and SUPER TAKE only works with GBPUSD example: once the two EAs together I want that when SUPER TAKE reaches "1" (that the profit is 1 €) then all open positions on the GBPUSD are closed and only for GBPUSD.
here are the two EAs
Balbuzia, and SUPER TAKE//+------------------------------------------------------------------+
//| Balbuzia_3_in_1.mq4 |
//| Copyright 2018, GCN ltd. |
//| http://www.it-labmd.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2018, GCN ltd."
#property link "http://www.it-labmd.com"
#property version "1.00"
#property strict
extern double lots1_1 = 0.01;
extern double lots2_1 = 0.02;
extern double lots3_1 = 0.04;
input int TakeProfit1_1 = 10;
input int StopLoss1_1 = 400;
input int TakeProfit2_1 = 10;
input int StopLoss2_1 = 400;
input int TakeProfit3_1 = 10;
input int StopLoss3_1 = 400;
extern int magic_1=000013;
extern double Level_1=1.2885;
extern double MaxDeviation_1=9; // Max Deviation, points
bool RunOnce_1=false;
int last_order_check_1=false;
datetime EaStartTime_1=TimeCurrent();
double takeprofit1_1=TakeProfit1_1;
double stoploss1_1=StopLoss1_1;
double takeprofit2_1=TakeProfit2_1;
double stoploss2_1=StopLoss2_1;
double takeprofit3_1=TakeProfit3_1;
double stoploss3_1=StopLoss3_1;
extern double lots1_2 = 0.01;
extern double lots2_2 = 0.02;
extern double lots3_2 = 0.04;
input int TakeProfit1_2 = 10;
input int StopLoss1_2 = 400;
input int TakeProfit2_2 = 10;
input int StopLoss2_2 = 400;
input int TakeProfit3_2 = 10;
input int StopLoss3_2 = 400;
extern int magic_2=000014;
extern int Distance_2= 10;
double Level_2 = 0;
extern double MaxDeviation_2=9; // Max Deviation, points
bool RunOnce_2=false;
int last_order_check_2=false;
datetime EaStartTime_2=TimeCurrent();
double takeprofit1_2=TakeProfit1_2;
double stoploss1_2=StopLoss1_2;
double takeprofit2_2=TakeProfit2_2;
double stoploss2_2=StopLoss2_2;
double takeprofit3_2=TakeProfit3_2;
double stoploss3_2=StopLoss3_2;
int distance_2=Distance_2;
extern double lots1_3 = 0.01;
extern double lots2_3 = 0.02;
extern double lots3_3 = 0.04;
input int TakeProfit1_3 = 10;
input int StopLoss1_3 = 400;
input int TakeProfit2_3 = 10;
input int StopLoss2_3 = 400;
input int TakeProfit3_3 = 10;
input int StopLoss3_3 = 400;
extern int magic_3=000015;
extern int Distance_3= 10;
double Level_3 = 0;
extern double MaxDeviation_3=9; // Max Deviation, points
bool RunOnce_3=false;
int last_order_check_3=false;
datetime EaStartTime_3=TimeCurrent();
double takeprofit1_3=TakeProfit1_3;
double stoploss1_3=StopLoss1_3;
double takeprofit2_3=TakeProfit2_3;
double stoploss2_3=StopLoss2_3;
double takeprofit3_3=TakeProfit3_3;
double stoploss3_3=StopLoss3_3;
int distance_3=Distance_3;
//+------------------------------------------------------------------+
//| Expert initialization function |
//+------------------------------------------------------------------+
int OnInit()
{
//--- create timer
MathSrand(GetTickCount());
if(Digits==5 || Digits==3)
{
takeprofit1_1 =TakeProfit1_1*10;
stoploss1_1 =StopLoss1_1*10;
takeprofit2_1 =TakeProfit2_1*10;
stoploss2_1 =StopLoss2_1*10;
takeprofit3_1 =TakeProfit3_1*10;
stoploss3_1 =StopLoss3_1*10;
takeprofit1_2=TakeProfit1_2*10;
stoploss1_2 =StopLoss1_2*10;
takeprofit2_2 =TakeProfit2_2*10;
stoploss2_2 =StopLoss2_2*10;
takeprofit3_2 =TakeProfit3_2*10;
stoploss3_2 =StopLoss3_2*10;
distance_2=Distance_2*10;
takeprofit1_3=TakeProfit1_3*10;
stoploss1_3 =StopLoss1_3*10;
takeprofit2_3 =TakeProfit2_3*10;
stoploss2_3 =StopLoss2_3*10;
takeprofit3_3 =TakeProfit3_3*10;
stoploss3_3 =StopLoss3_3*10;
distance_3=Distance_3*10;
}
Level_2=Level_1+Point()*distance_2;
Level_3=Level_1-Point()*distance_3;
//---
return(INIT_SUCCEEDED);
}
//+------------------------------------------------------------------+
//| Expert deinitialization function |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
{
}
//+------------------------------------------------------------------+
//| Expert tick function |
//+------------------------------------------------------------------+
void OnTick()
{
OnTick_1();
OnTick_2();
OnTick_3();
}
//+------------------------------------------------------------------+
//| Expert tick function |
//+------------------------------------------------------------------+
void OnTick_1()
{
if(IsLastOrderClose(magic_1,EaStartTime_1))
{
OnInit();
Print("Ea Closed Manually ");
EaStartTime_1=TimeCurrent();
}
int ticet;
int t=MathRand();
double MA_Fast1,MA_Low1;
if(CountVsego(magic_1)==0)
{
MA_Fast1=iMA( NULL,0,5, 0, MODE_SMA, PRICE_TYPICAL, 0);
MA_Low1=iMA( NULL, 0, 14, 0, MODE_SMA, PRICE_CLOSE, 1);
if(Counts(magic_1,EaStartTime_1,RunOnce_1)==0 && MA_Fast1>MA_Low1 && (RunOnce_1 || (Ask>=Level_1 && Ask<=Level_1+(MaxDeviation_1*_Point) && Level_1!=0)))
{
ticet=OrderSend(Symbol(),OP_BUY,lots1_1,Ask,3,Bid-stoploss1_1*Point,Ask+takeprofit1_1*Point,"1.1",magic_1,0,clrGreen);
}
if(Counts(magic_1,EaStartTime_1,RunOnce_1)==0 && MA_Fast1<MA_Low1 && (RunOnce_1 || (Bid<=Level_1 && Bid>=Level_1-(MaxDeviation_1*_Point) && Level_1!=0)))
{
ticet=OrderSend(Symbol(),OP_SELL,lots1_1,Bid,3,Ask+stoploss1_1*Point,Bid-takeprofit1_1*Point,"1.1",magic_1,0,clrRed);
}
if(Counts(magic_1,EaStartTime_1,RunOnce_1)==1)
{
if(getLastOrderCloseType(magic_1)==1) ticet=OrderSend(Symbol(),OP_BUY,lots2_1,Ask,3,Bid-stoploss2_1*Point,Ask+takeprofit2_1*Point,"1.2",magic_1,0,clrGreen);
if(getLastOrderCloseType(magic_1)==0) ticet=OrderSend(Symbol(),OP_SELL,lots2_1,Bid,3,Ask+stoploss2_1*Point,Bid-takeprofit2_1*Point,"1.2",magic_1,0,clrRed);
}
if(Counts(magic_1,EaStartTime_1,RunOnce_1)==2)
{
if(getLastOrderCloseType(magic_1)==1) ticet=OrderSend(Symbol(),OP_BUY,lots3_1,Ask,3,Bid-stoploss3_1*Point,Ask+takeprofit3_1*Point,"1.3",magic_1,0,clrGreen);
if(getLastOrderCloseType(magic_1)==0) ticet=OrderSend(Symbol(),OP_SELL,lots3_1,Bid,3,Ask+stoploss3_1*Point,Bid-takeprofit3_1*Point,"1.3",magic_1,0,clrRed);
}
}
}
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
void OnTick_2()
{
if(IsLastOrderClose(magic_2,EaStartTime_2))
{
OnInit();
Print("Ea Closed Manually ");
EaStartTime_2=TimeCurrent();
}
int ticet;
int t=MathRand();
double MA_Fast1,MA_Low1;
if(CountVsego(magic_2)==0)
{
MA_Fast1=iMA( NULL,0,5, 0, MODE_SMA, PRICE_TYPICAL, 0);
MA_Low1=iMA( NULL, 0, 14, 0, MODE_SMA, PRICE_CLOSE, 1);
if(Counts(magic_2,EaStartTime_2,RunOnce_2)==0 && MA_Fast1>MA_Low1 && (RunOnce_2 || (Ask>=Level_2 && Ask<=Level_2+(MaxDeviation_2*_Point) && Level_2!=0)))
{
ticet=OrderSend(Symbol(),OP_BUY,lots1_2,Ask,3,Bid-stoploss1_2*Point,Ask+takeprofit1_2*Point,"2.1",magic_2,0,clrGreen);
}
if(Counts(magic_2,EaStartTime_2,RunOnce_2)==0 && MA_Fast1<MA_Low1 && (RunOnce_2 || (Bid<=Level_2 && Bid>=Level_2-(MaxDeviation_2*_Point) && Level_2!=0)))
{
ticet=OrderSend(Symbol(),OP_SELL,lots1_2,Bid,3,Ask+stoploss1_2*Point,Bid-takeprofit1_2*Point,"2.1",magic_2,0,clrRed);
}
if(Counts(magic_2,EaStartTime_2,RunOnce_2)==1)
{
if(getLastOrderCloseType(magic_2)==1) ticet=OrderSend(Symbol(),OP_BUY,lots2_2,Ask,3,Bid-stoploss2_2*Point,Ask+takeprofit2_2*Point,"2.2",magic_2,0,clrGreen);
if(getLastOrderCloseType(magic_2)==0) ticet=OrderSend(Symbol(),OP_SELL,lots2_2,Bid,3,Ask+stoploss2_2*Point,Bid-takeprofit2_2*Point,"2.2",magic_2,0,clrRed);
}
if(Counts(magic_2,EaStartTime_2,RunOnce_2)==2)
{
if(getLastOrderCloseType(magic_2)==1) ticet=OrderSend(Symbol(),OP_BUY,lots3_2,Ask,3,Bid-stoploss3_2*Point,Ask+takeprofit3_2*Point,"2.3",magic_2,0,clrGreen);
if(getLastOrderCloseType(magic_2)==0) ticet=OrderSend(Symbol(),OP_SELL,lots3_2,Bid,3,Ask+stoploss3_2*Point,Bid-takeprofit3_2*Point,"2.3",magic_2,0,clrRed);
}
}
}
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
void OnTick_3()
{
if(IsLastOrderClose(magic_3,EaStartTime_3))
{
OnInit();
Print("Ea Closed Manually ");
EaStartTime_3=TimeCurrent();
}
int ticet;
int t=MathRand();
double MA_Fast1,MA_Low1;
if(CountVsego(magic_3)==0)
{
MA_Fast1=iMA( NULL,0,5, 0, MODE_SMA, PRICE_TYPICAL, 0); // áûñòðàÿ ÌÀ
MA_Low1=iMA( NULL, 0, 14, 0, MODE_SMA, PRICE_CLOSE, 1); // ìåäëåííàÿ ÌÀ
if(Counts(magic_3,EaStartTime_3,RunOnce_3)==0 && MA_Fast1>MA_Low1 && (RunOnce_3 || (Ask>=Level_3 && Ask<=Level_3+(MaxDeviation_3*_Point) && Level_3!=0)))
{
ticet=OrderSend(Symbol(),OP_BUY,lots1_3,Ask,3,Bid-stoploss1_3*Point,Ask+takeprofit1_3*Point,"3.1",magic_3,0,clrGreen);
}
if(Counts(magic_3,EaStartTime_3,RunOnce_3)==0 && MA_Fast1<MA_Low1 && (RunOnce_3 || (Bid<=Level_3 && Bid>=Level_3-(MaxDeviation_3*_Point) && Level_3!=0)))
{
ticet=OrderSend(Symbol(),OP_SELL,lots1_3,Bid,3,Ask+stoploss1_3*Point,Bid-takeprofit1_3*Point,"3.1",magic_3,0,clrRed);
}
if(Counts(magic_3,EaStartTime_3,RunOnce_3)==1)
{
if(getLastOrderCloseType(magic_3)==1) ticet=OrderSend(Symbol(),OP_BUY,lots2_3,Ask,3,Bid-stoploss2_3*Point,Ask+takeprofit2_3*Point,"3.2",magic_3,0,clrGreen);
if(getLastOrderCloseType(magic_3)==0) ticet=OrderSend(Symbol(),OP_SELL,lots2_3,Bid,3,Ask+stoploss2_3*Point,Bid-takeprofit2_3*Point,"3.2",magic_3,0,clrRed);
}
if(Counts(magic_3,EaStartTime_3,RunOnce_3)==2)
{
if(getLastOrderCloseType(magic_3)==1) ticet=OrderSend(Symbol(),OP_BUY,lots3_3,Ask,3,Bid-stoploss3_3*Point,Ask+takeprofit3_3*Point,"3.3",magic_3,0,clrGreen);
if(getLastOrderCloseType(magic_3)==0) ticet=OrderSend(Symbol(),OP_SELL,lots3_3,Bid,3,Ask+stoploss3_3*Point,Bid-takeprofit3_3*Point,"3.3",magic_3,0,clrRed);
}
}
}
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
int getLastOrderCloseType(int magic)
{
datetime t=0;
int tick=-1;
int i,total=OrdersHistoryTotal();
for(i=0; i<total; i++)
{
if(OrderSelect(i,SELECT_BY_POS,MODE_HISTORY))
{
if(OrderSymbol()==Symbol() && OrderMagicNumber()==magic)
{
if(t<OrderCloseTime())
{
t=OrderCloseTime();
tick=OrderTicket();
}
}
}
}
for(i=0; i<total; i++)
{
if(OrderSelect(tick,SELECT_BY_TICKET))
{
return OrderType();
}
}
return tick;
}
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
int CountSELL(int magic)
{
int count=0;
int i;
for(i=OrdersTotal()-1;i>=0;i--)
{
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
{
if(OrderSymbol()==Symbol() && OrderMagicNumber()==magic && OrderType()==OP_SELL)
count++;
}
}
return(count);
}
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
int CountBUY(int magic)
{
int count=0;
int i;
for(i=OrdersTotal()-1;i>=0;i--)
{
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
{
if(OrderSymbol()==Symbol() && OrderMagicNumber()==magic && OrderType()==OP_BUY)
count++;
}
}
return(count);
}
//+------------------------------------------------------------------+
int Counts(int magic,datetime &EaStartTime,bool &RunOnce)
{
int count=0,i;
for(i=OrdersHistoryTotal()-1;i>=0;i--)
{
if(OrderSelect(i,SELECT_BY_POS,MODE_HISTORY))
{
if(OrderSymbol()==Symbol() && OrderMagicNumber()==magic && OrderOpenTime()>=EaStartTime)
{
if(OrderProfit()<0)
{
if(count==0)
{
OnInit();
EaStartTime=TimeCurrent();
RunOnce=true;
return(count);
}
}
else
{
count++;
}
}
if(count>2)
{
OnInit();
EaStartTime=TimeCurrent();
RunOnce=true;
return(count);
}
}
}
return(count);
}
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
int CountVsego(int magic)
{
int Vsego;
Vsego=CountBUY(magic)+CountSELL(magic);
return(Vsego);
}
//+------------------------------------------------------------------+
bool IsLastOrderClose(int magic,datetime &EaStartTime)
{
bool signal=false;
for(int i=OrdersHistoryTotal()-1;i>=0;i--)
{
bool select=OrderSelect(i,SELECT_BY_POS,MODE_HISTORY);
if(select && OrderSymbol()==_Symbol && OrderMagicNumber()==magic)
{
if(OrderType()==OP_BUY && OrderOpenTime()>=EaStartTime)
{
if(OrderClosePrice()>OrderStopLoss() && OrderClosePrice()<OrderTakeProfit())
{
signal=true;
}
break;
}
else if(OrderType()==OP_SELL && OrderOpenTime()>=EaStartTime)
{
if(OrderClosePrice()<OrderStopLoss() && OrderClosePrice()>OrderTakeProfit())
{
signal=true;
}
break;
}
}
}
return(signal);
}
//+------------------------------------------------------------------+
SUPER TAKE
//+------------------------------------------------------------------+
//| TakeProfit 1 |
//+------------------------------------------------------------------+
#property copyright ""
#property link ""
extern double My_Money_Equity_Target=1;
int Slippage=4;
int i;
double EquityTarget;
//+------------------------------------------------------------------+
//+------------------------------------------------------------------+
int init()
{
//----
EquityTarget = AccountEquity()+My_Money_Equity_Target;
//----
return(0);
}
//+------------------------------------------------------------------+
//+------------------------------------------------------------------+
int deinit()
{
//----
//----
return(0);
}
//+------------------------------------------------------------------+
//+------------------------------------------------------------------+
int start()
{
if (AccountEquity()>= EquityTarget)
{
for(i=OrdersTotal()-1;i>=0;i--)
{
if(OrderSelect(i,SELECT_BY_POS))
{
bool Res=false;
if(OrderType()==OP_BUY)
{
Res = OrderClose(OrderTicket(),OrderLots(),MarketInfo(OrderSymbol(),MODE_BID),Slippage,clrNONE);
}else if(OrderType()==OP_SELL)
{
Res = OrderClose(OrderTicket(),OrderLots(),MarketInfo(OrderSymbol(),MODE_ASK),Slippage,clrNONE);
}else
{
Res = OrderDelete(OrderTicket());
}
}
}
Print ("Equity reached to ",DoubleToStr(AccountEquity(),2));
if(!Res) return(0);
EquityTarget = AccountEquity()+My_Money_Equity_Target;
}
Comment("Balance: ",AccountBalance(),", Account Equity: ",AccountEquity(),", Account Profit: ",AccountProfit(),
"\nMy Account Equity Target: ",EquityTarget);
return(0);
}
Han respondido
1
Evaluación
Proyectos
326
43%
Arbitraje
34
32%
/
29%
Caducado
83
25%
Libre
Solicitudes similares
Abba Wale
30 - 100000 USD
//+------------------------------------------------------------------+ //| XAUUSD_SMART_EA_V2.mq5 | //| BOS + Liquidity Sweep + FVG + EMA + ATR | //+------------------------------------------------------------------+ #property strict #property version "2.00" #include <Trade/Trade.mqh> CTrade trade; //================================================================== // INPUTS
Dfwluxea
30 - 6000 USD
MetaTrader 5 Smart Trading Robot – Description Create an advanced MetaTrader 5 (MT5) Expert Advisor designed to analyze the market, generate high-quality trading signals, identify potential trading mistakes, and manage trades using strict risk-management rules. The robot should continuously analyze price action, market structure, trend direction, volatility, support and resistance, momentum, and selected technical
1. PROJECT OVERVIEW Development of a custom automated and manual trading bot for NinjaTrader 8, primarily designed for Nasdaq Futures (NQ/MNQ). The bot will contain the original trading strategy, configurable risk management, automatic and manual operating modes, alerts, profit/loss management, partial profit taking, Break Even, backtesting functionality, and the additional configurable contract-averaging system
Hello, I have a custom indicator with a specific line. Logic I want: 1. When a candle closes and crosses the indicator line (I will tell you the buffer number of this line), start counting. 2. After the cross, wait for 3 consecutive candles with the same color / same direction. 3. If the 3 candles are bullish, open a BUY trade on the next candle open. 4. If the 3 candles are bearish, open a SELL trade on the
I need I trading robot with a dashboard for stop and start working 99%accurate profit while scalping me the user only putting password of mt5 then I run it that doesn't take a long time to process a trade and always making sure that altlest it makes 500dollars per day using 0.05 lot size
Simple RSI based EA
30+ USD
Require an EA that opens trades at preselected RSI values. The EA will then monitor the gain/loss of the open positions and close them as specified in terms of points gain/loss. Once a position closes, the action will trigger the opening of other positions as specified
Looking for liquidity indicator
50+ USD
Look at this chart. The ellipses that I have identified show reversals and liquidity was I am trying to find a good way to identify these areas an indicator that automatically detects the sweep and reversal Look at this chart. The ellipses that I have identified show reversals and liquidity was
TraderBlox AI made this RSI bot – anyone speak MQL5?
200 - 300 USD
Anyone with experience in trading bots? I'm using TraderBlox ( https://traderblox.com/ ) and the AI assistant generated a bot with RSI that's showing a 68% win rate in backtesting. However, the generated code has some parts " Important: I will only reply to those who send me a photo of their project and have read this; this way I rule out bots. "I don't fully understand (especially order management and dynamic
Ich möchte einen professionellen Expert Advisor (EA) für MetaTrader 5 entwickeln lassen, der sich funktional am ThunderGold Scalper orientiert. Instrument: XAUUSD / GOLD Zeitrahmen: M15 Plattform: MetaTrader 5 / MQL5 Der EA soll eine eigene, nachprogrammierte Strategie verwenden und keine geschützten Quellcodes oder proprietären Dateien des Originalprodukts kopieren. Gewünschte Funktionen: automatischer Handel auf
XAGUSD MT5 Automated Trading Expert Advisor
30 - 200 USD
I need a fully automated Expert Advisor (EA) written in MQL5 for MetaTrader 5. The EA must work directly inside MT5 and must NOT require TradingView, PineConnector, webhooks, or another external connector to place trades. Trading Instrument Primary symbol: XAGUSD (Silver) My broker may display the symbol as XAGUSD-ECN, so the EA should work with the broker’s available XAGUSD symbol. Main entry timeframe: 5-minute
Información sobre el proyecto
Presupuesto
30+ USD
Plazo límite de ejecución
a 2 día(s)