Termos de Referência
//+------------------------------------------------------------------+
//| 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;
}
Respondido
1
Classificação
Projetos
209
61%
Arbitragem
10
80%
/
0%
Expirado
0
Livre
Publicou: 1 código
2
Classificação
Projetos
361
30%
Arbitragem
37
27%
/
65%
Expirado
10
3%
Carregado
Publicou: 10 códigos
3
Classificação
Projetos
38
21%
Arbitragem
5
0%
/
60%
Expirado
0
Livre
4
Classificação
Projetos
515
19%
Arbitragem
35
46%
/
31%
Expirado
34
7%
Trabalhando
5
Classificação
Projetos
20
10%
Arbitragem
4
50%
/
50%
Expirado
5
25%
Livre
6
Classificação
Projetos
648
53%
Arbitragem
35
63%
/
20%
Expirado
7
1%
Trabalhando
7
Classificação
Projetos
8
13%
Arbitragem
3
0%
/
33%
Expirado
2
25%
Livre
Publicou: 1 código
8
Classificação
Projetos
13
23%
Arbitragem
7
0%
/
71%
Expirado
3
23%
Trabalhando
9
Classificação
Projetos
105
60%
Arbitragem
0
Expirado
0
Livre
10
Classificação
Projetos
6
17%
Arbitragem
0
Expirado
3
50%
Livre
11
Classificação
Projetos
2
0%
Arbitragem
5
0%
/
80%
Expirado
1
50%
Livre
12
Classificação
Projetos
134
66%
Arbitragem
36
25%
/
56%
Expirado
22
16%
Livre
Publicou: 10 códigos
13
Classificação
Projetos
491
75%
Arbitragem
6
67%
/
17%
Expirado
0
Trabalhando
14
Classificação
Projetos
184
25%
Arbitragem
25
16%
/
76%
Expirado
16
9%
Livre
15
Classificação
Projetos
739
34%
Arbitragem
49
53%
/
39%
Expirado
15
2%
Trabalhando
16
Classificação
Projetos
1
0%
Arbitragem
1
0%
/
100%
Expirado
0
Livre
17
Classificação
Projetos
0
0%
Arbitragem
0
Expirado
0
Livre
Publicou: 1 código
18
Classificação
Projetos
83
45%
Arbitragem
27
11%
/
70%
Expirado
8
10%
Livre
19
Classificação
Projetos
0
0%
Arbitragem
0
Expirado
0
Trabalhando
Pedidos semelhantes
Scalping bort
30+ USD
GOLD SCALPING BOT STRATEGY Symbol: XAUUSD (Gold vs USD) Broker: Exness Account: Standard Starting Balance: $20 1. TIMEFRAME - Trend analysis: M15. - Entry timeframe: M5. - Trade only when the market has a clear direction. 2. INDICATORS - EMA 50 - EMA 200 - RSI 14 - Support and Resistance 3. BUY RULES The bot must open a BUY trade only when all these conditions are met: 1. EMA 50 is above EMA 200 on M15. 2. Price is
Looking for an Auto Trading Bot
30 - 200 USD
I am looking for an experienced MT5 Expert Advisor developer to build an automated Gold (XAUUSD) trading bot. My requirements are: Automatically identify and draw supply and demand zones on the chart. Identify Order Blocks, Fair Value Gaps (FVG), liquidity sweeps and Market Structure Shifts (MSS/CHoCH). Analyse multiple timeframes and use a higher-timeframe directional bias without unnecessarily blocking valid trades
MT5 EA
30 - 100 USD
I’m looking for a **ready-made MT5 scalping EA specifically for Gold (XAUUSD)**. My main requirement is an **HTF scalping strategy**, so I’m looking for an existing robot that is already developed and can be tested before I make the purchase. I would like to test on demo account first, Any available backtest or trading results * Whether I can test it on a demo account * Your price and licensing details I’m
MT5 Multi-Market Trading Robot and Signal System
50 - 200 USD
Hello, I am looking for an experienced MQL5 developer to create a professional, reliable, fully customizable Expert Advisor (EA) and trading signal system for MetaTrader 5. 1. Supported Markets The EA must support: Gold (XAUUSD) Silver (XAGUSD) Nasdaq 100 (NAS100/US100) Forex currency pairs Bitcoin (BTCUSD) It must work with MT5 brokers, including Tickmill, where these instruments are available. 2. Two Trading Modes
Hi all I'm looking for a good coder Existing Automated Trading System (Expert Advisor) This EA’s building block is the Bheurekso Pattern (which uses price action) indicators. 1. **Indicator Integration**: The EA should be developed utilizing the Bheurekso pattern indicator. 2. **Sell Signals**: The EA must execute a sell order upon the appearance of any of the following bearish signals or a down arrow that appears
Custom metatrader 5 expect advise for daily trader
30 - 100 USD
Entry Strategy: Explain exact conditions for opening a trade specific indicators like Moving Averages or RSI, time of day, or price action rules. Exit Strategy: Define when a trade should closeTake Profit, Stop Loss, Trailing Stop, or indicator signals. Daily Trading Rules: Specify daily limits if applicable maximum trades per day, specific trading hours, or maximum daily loss limit. Risk & Position Sizing: Indicate
Creating my own robot trading
30+ USD
I want to create my own trading robot that will automatically open and close trades,it's must be operating 24/7 on both the brokers app and the mt5 as well.it must be able to grow small accounts from 10 usd with proper risk management and smart executions.it must operates on the following brokers EXNESS, XM GLOBAL,WELTRADE and DERIV
I’m looking for a **ready-made MT5 scalping EA specifically for Gold (XAUUSD)**. My main requirement is an **HTF scalping strategy**, so I’m looking for an existing robot that is already developed and can be tested before I make the purchase. I would like to test on demo account first, Any available backtest or trading results * Whether I can test it on a demo account * Your price and licensing details I’m
Request for an Existing Automated Trading System (Expert Advisor) I am looking to acquire an existing, fully functional Expert Advisor (EA) that trades Forex CFDs, with the option of trading other CFDs if the strategy supports them safely. Performance objectives Target average net monthly return: 1.5%. A consistent 1.0% monthly return may be considered if the system demonstrates strong risk control and credible
Hi All, I am looking for a bot EA which makes good profit. If any having please share it for TEST. After proper TESTING only I will make the payment, no cheating no fraud. Please do not waste the time also
Informações sobre o projeto
Orçamento
100+ USD