Specifiche
//+------------------------------------------------------------------+
//| XAUUSD Automated Forex Robot |
//| Enhanced Version with Error Handling and Improvements |
//+------------------------------------------------------------------+
input int FastMA = 10; // Fast moving average period
input int SlowMA = 50; // Slow moving average period
input int RSI_Period = 14; // RSI period
input double Overbought = 70; // RSI overbought level
input double Oversold = 30; // RSI oversold level
input double RiskPercent = 1.0; // Risk per trade as a percentage of account equity
input double ATRMultiplier = 2.0; // ATR multiplier for stop-loss
input double TrailingStop = 300; // Trailing stop in points
input double MinLotSize = 0.01; // Minimum lot size
input double LotStep = 0.01; // Lot size increment
input int ATR_Period = 14; // ATR period
input int MaxSlippage = 3; // Maximum slippage in points
input int MAGIC_NUMBER = 123456; // Unique identifier for trades
input string TradeComment = "XAUUSD Bot"; // Trade comment
//+------------------------------------------------------------------+
//| OnTick Function - Main Logic |
//+------------------------------------------------------------------+
void OnTick() {
// Calculate indicators
static double fastMA, slowMA, rsi, atr;
fastMA = iMA(NULL, 0, FastMA, 0, MODE_EMA, PRICE_CLOSE, 0);
slowMA = iMA(NULL, 0, SlowMA, 0, MODE_EMA, PRICE_CLOSE, 0);
rsi = iRSI(NULL, 0, RSI_Period, PRICE_CLOSE, 0);
atr = iATR(NULL, 0, ATR_Period, 0);
// Check for existing trades
bool buyOpen = IsTradeOpen(OP_BUY);
bool sellOpen = IsTradeOpen(OP_SELL);
// Entry logic
if (fastMA > slowMA && rsi > Oversold && rsi < 50 && !buyOpen) {
// Buy Signal
double sl = Bid - ATRMultiplier * atr;
double tp = Bid + ATRMultiplier * atr * 2;
double lotSize = CalculateLotSize(sl);
OpenTrade(OP_BUY, lotSize, sl, tp);
}
if (fastMA < slowMA && rsi < Overbought && rsi > 50 && !sellOpen) {
// Sell Signal
double sl = Ask + ATRMultiplier * atr;
double tp = Ask - ATRMultiplier * atr * 2;
double lotSize = CalculateLotSize(sl);
OpenTrade(OP_SELL, lotSize, sl, tp);
}
// Exit logic (Close trades when conditions reverse)
if (buyOpen && (fastMA < slowMA || rsi >= Overbought)) {
CloseTrade(OP_BUY);
}
if (sellOpen && (fastMA > slowMA || rsi <= Oversold)) {
CloseTrade(OP_SELL);
}
// Manage Trailing Stop
ManageTrailingStop();
}
//+------------------------------------------------------------------+
//| Calculate Lot Size Based on Risk |
//+------------------------------------------------------------------+
double CalculateLotSize(double stopLossPrice) {
double accountEquity = AccountEquity();
double riskAmount = (RiskPercent / 100) * accountEquity;
double stopLossDistance = MathAbs(Bid - stopLossPrice);
double lotSize = riskAmount / (stopLossDistance * MarketInfo(Symbol(), MODE_TICKVALUE));
// Adjust lot size to broker limits
lotSize = MathMax(lotSize, MinLotSize);
lotSize = NormalizeDouble(MathFloor(lotSize / LotStep) * LotStep, 2);
return lotSize;
}
//+------------------------------------------------------------------+
//| Open Trade Function |
//+------------------------------------------------------------------+
void OpenTrade(int tradeType, double lotSize, double stopLoss, double takeProfit) {
double price = tradeType == OP_BUY ? Ask : Bid;
int ticket = OrderSend(Symbol(), tradeType, lotSize, price, MaxSlippage, stopLoss, takeProfit, TradeComment, MAGIC_NUMBER, 0, Blue);
if (ticket < 0) {
int errorCode = GetLastError();
Print("Error opening trade: ", errorCode, ". Retrying...");
Sleep(1000); // Retry after 1 second
ticket = OrderSend(Symbol(), tradeType, lotSize, price, MaxSlippage, stopLoss, takeProfit, TradeComment, MAGIC_NUMBER, 0, Blue);
if (ticket < 0) {
Print("Failed to open trade after retry. Error: ", GetLastError());
}
} else {
Print("Trade opened: ", ticket);
}
}
//+------------------------------------------------------------------+
//| Close Trade Function |
//+------------------------------------------------------------------+
void CloseTrade(int tradeType) {
for (int i = OrdersTotal() - 1; i >= 0; i--) {
if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
if (OrderSymbol() == Symbol() && OrderType() == tradeType && OrderMagicNumber() == MAGIC_NUMBER) {
int ticket = OrderClose(OrderTicket(), OrderLots(), tradeType == OP_BUY ? Bid : Ask, MaxSlippage, Red);
if (ticket < 0) {
Print("Error closing trade: ", GetLastError());
} else {
Print("Trade closed: ", ticket);
}
}
}
}
}
//+------------------------------------------------------------------+
//| Manage Trailing Stop Function |
//+------------------------------------------------------------------+
void ManageTrailingStop() {
for (int i = OrdersTotal() - 1; i >= 0; i--) {
if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
if (OrderSymbol() == Symbol() && OrderMagicNumber() == MAGIC_NUMBER) {
double newStopLoss;
if (OrderType() == OP_BUY) {
newStopLoss = Bid - TrailingStop * Point;
if (newStopLoss > OrderStopLoss()) {
OrderModify(OrderTicket(), OrderOpenPrice(), newStopLoss, OrderTakeProfit(), 0, Blue);
}
} else if (OrderType() == OP_SELL) {
newStopLoss = Ask + TrailingStop * Point;
if (newStopLoss < OrderStopLoss()) {
OrderModify(OrderTicket(), OrderOpenPrice(), newStopLoss, OrderTakeProfit(), 0, Blue);
}
}
}
}
}
}
//+------------------------------------------------------------------+
//| Check if Trade Exists |
//+------------------------------------------------------------------+
bool IsTradeOpen(int tradeType) {
for (int i = OrdersTotal() - 1; i >= 0; i--) {
if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
if (OrderSymbol() == Symbol() && OrderType() == tradeType && OrderMagicNumber() == MAGIC_NUMBER) {
return true;
}
}
}
return false;
}
Con risposta
1
Valutazioni
Progetti
192
58%
Arbitraggio
10
80%
/
0%
In ritardo
0
Gratuito
Pubblicati: 1 codice
2
Valutazioni
Progetti
312
28%
Arbitraggio
33
27%
/
64%
In ritardo
10
3%
In elaborazione
3
Valutazioni
Progetti
38
21%
Arbitraggio
5
0%
/
60%
In ritardo
0
Gratuito
4
Valutazioni
Progetti
505
19%
Arbitraggio
32
44%
/
31%
In ritardo
34
7%
Caricato
5
Valutazioni
Progetti
20
10%
Arbitraggio
4
50%
/
50%
In ritardo
5
25%
Gratuito
6
Valutazioni
Progetti
628
54%
Arbitraggio
30
53%
/
23%
In ritardo
6
1%
Caricato
7
Valutazioni
Progetti
8
13%
Arbitraggio
3
0%
/
33%
In ritardo
2
25%
Gratuito
Pubblicati: 1 codice
8
Valutazioni
Progetti
13
23%
Arbitraggio
7
0%
/
71%
In ritardo
3
23%
In elaborazione
9
Valutazioni
Progetti
105
60%
Arbitraggio
0
In ritardo
0
Gratuito
10
Valutazioni
Progetti
6
17%
Arbitraggio
0
In ritardo
3
50%
Gratuito
11
Valutazioni
Progetti
2
0%
Arbitraggio
5
0%
/
80%
In ritardo
1
50%
Gratuito
12
Valutazioni
Progetti
134
66%
Arbitraggio
36
25%
/
56%
In ritardo
22
16%
Gratuito
Pubblicati: 10 codici
13
Valutazioni
Progetti
486
75%
Arbitraggio
6
67%
/
17%
In ritardo
0
In elaborazione
14
Valutazioni
Progetti
165
24%
Arbitraggio
23
9%
/
78%
In ritardo
16
10%
In elaborazione
15
Valutazioni
Progetti
632
33%
Arbitraggio
39
38%
/
49%
In ritardo
11
2%
Caricato
16
Valutazioni
Progetti
1
0%
Arbitraggio
1
0%
/
100%
In ritardo
0
Gratuito
17
Valutazioni
Progetti
0
0%
Arbitraggio
0
In ritardo
0
Gratuito
Pubblicati: 1 codice
18
Valutazioni
Progetti
81
43%
Arbitraggio
27
11%
/
70%
In ritardo
8
10%
Gratuito
19
Valutazioni
Progetti
0
0%
Arbitraggio
0
In ritardo
0
In elaborazione
Ordini simili
Gold robot for 1 minute
100 - 150 USD
I need a EA as per the attached video. I need the same type of EA, once it is ready share the video of any demo account. if everything is ok I will purchase immediately. thank you
I’m hiring an experienced MQL5 developer to finish and fix an existing project (NOT building from scratch). I have: An existing MT5 EA (.mq5 + .ex5) that is based on my TradingView logic A TradingView indicator version used for signals/alerts The EA works but has logic/consistency issues and needs improvements + cleanup Goal Make the EA reliable and consistent: Ensure entries/exits match the intended logic Fix
It is better to spend thirty minutes to prepare a good text than to lose hours and days to resolve misunderstanding after concluding the Agreement or when accepting the order execution results
. Estou buscando adquirir um Expert Advisor (EA) existente e com fins lucrativos, com código-fonte completo, para adicionar ao portfólio de investimentos de nossos clientes. Para deixar claro, esta não é uma solicitação para desenvolver ou projetar uma nova estratégia. Se você já possui um EA comprovado, consistente e pronto para produção, com pelo menos 6 meses de histórico de desempenho, estou disposto a analisá-lo
Dear Developer, I am looking to develop both a MetaTrader 5 Indicator and a MetaTrader 5 Expert Advisor (EA) based on the swing depth logic shown in the Pine Script code attached below. The indicator and EA must be built as separate files but must follow the exact same signal logic so both display and execute identically. Please carefully review the requirements below and confirm your understanding before starting
I have a High-Frequency Trading EA and I need a full conversion and optimization for MT5. The goal is to ensure stable execution and reliable performance on real accounts (IC Markets Raw and similar ECN brokers). I need an experienced and reputable MQL5 developer to: Convert the existing strategy to MT5 with full fidelity to the original trading logic (entries, SL, breakeven, trailing, pending orders). Optimize the
Need profitable EA
60+ USD
Hello friends, We need Robot, EA , or Trading software with proven( 6 to 12 months) and it should be given consistent profit upto 3 % per month with no risk ( low Drawdown ), we will pay what you ask, and also We are regulated forex broker and we have all access like FIX API etc, and we dealing with Top tier 1 LPs . Thanks
Looking to acquire an existing, profitable Expert Advisor (EA) with full source code to add to our client investment portfolio. To be clear, this is not a request to develop or design a new strategy. If you already have an EA that is proven, consistent, and production-ready, with at least 6 months of history performance I’m open to reviewing it immediately. Please apply only if you meet all the requirements below
Need a quarantine winning bot to trade step100, vix 75,25,50 and 30. Serious persons only. Minimum to no lost. Should’ve able to trade secondly rapidly and daily . Should only enter winning trades
Please help add an alert notification feature to this indicator so I can receive a notification immediately whenever a signal appears. Thanks. Just help to put an alert notification at appearance of the signal on this indicator
Informazioni sul progetto
Budget
100+ USD