Termos de Referência
//+------------------------------------------------------------------+
//| Expert initialization function |
//+------------------------------------------------------------------+
input int FastEMA = 50; // Fast EMA period
input int SlowEMA = 200; // Slow EMA period
input double Lots = 0.1; // Lot size per trade
input double StopLossPercent = 1.5; // Stop loss in % of balance
input double TakeProfitPercent = 3; // Take profit in % of balance
int fast_ema_handle, slow_ema_handle;
//+------------------------------------------------------------------+
//| Expert initialization |
//+------------------------------------------------------------------+
int OnInit()
{
// Create EMA indicators handles
fast_ema_handle = iMA(_Symbol, _Period, FastEMA, 0, MODE_EMA, PRICE_CLOSE);
slow_ema_handle = iMA(_Symbol, _Period, SlowEMA, 0, MODE_EMA, PRICE_CLOSE);
if(fast_ema_handle == INVALID_HANDLE || slow_ema_handle == INVALID_HANDLE)
{
Print("Failed to create indicator handles");
return(INIT_FAILED);
}
return(INIT_SUCCEEDED);
}
//+------------------------------------------------------------------+
//| Expert deinitialization function |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
{
// Release indicator handles
IndicatorRelease(fast_ema_handle);
IndicatorRelease(slow_ema_handle);
}
//+------------------------------------------------------------------+
//| Expert tick function |
//+------------------------------------------------------------------+
void OnTick()
{
double fast_ema[2], slow_ema[2];
// Copy latest two EMA values
if(CopyBuffer(fast_ema_handle, 0, 0, 2, fast_ema) <= 0 ||
CopyBuffer(slow_ema_handle, 0, 0, 2, slow_ema) <= 0)
return;
// Check for crossover on the last closed bar
bool buy_signal = (fast_ema[1] < slow_ema[1]) && (fast_ema[0] > slow_ema[0]);
bool sell_signal = (fast_ema[1] > slow_ema[1]) && (fast_ema[0] < slow_ema[0]);
// Calculate stop loss and take profit prices
double balance = AccountInfoDouble(ACCOUNT_BALANCE);
double tick_value = SymbolInfoDouble(_Symbol, SYMBOL_TRADE_TICK_VALUE);
double tick_size = SymbolInfoDouble(_Symbol, SYMBOL_TRADE_TICK_SIZE);
double point = SymbolInfoDouble(_Symbol, SYMBOL_POINT);
double stop_loss_pips = (StopLossPercent / 100) * balance / (Lots * tick_value);
double take_profit_pips = (TakeProfitPercent / 100) * balance / (Lots * tick_value);
// Check for existing positions
int total_positions = PositionsTotal();
// Buy signal processing
if(buy_signal)
{
// Close sell positions
for(int i=total_positions-1; i>=0; i--)
{
ulong ticket = PositionGetTicket(i);
if(PositionGetString(POSITION_SYMBOL) == _Symbol && PositionGetInteger(POSITION_TYPE) == POSITION_TYPE_SELL)
PositionClose(ticket);
}
// Check if no buy position exists
bool buy_exists = false;
for(int i=total_positions-1; i>=0; i--)
{
if(PositionGetString(POSITION_SYMBOL) == _Symbol && PositionGetInteger(POSITION_TYPE) == POSITION_TYPE_BUY)
buy_exists = true;
}
if(!buy_exists)
{
// Place buy order
MqlTradeRequest request;
MqlTradeResult result;
double price = SymbolInfoDouble(_Symbol, SYMBOL_ASK);
request.action = TRADE_ACTION_DEAL;
request.symbol = _Symbol;
request.volume = Lots;
request.type = ORDER_TYPE_BUY;
request.price = price;
request.deviation = 10;
request.sl = price - stop_loss_pips * point;
request.tp = price + take_profit_pips * point;
request.magic = 123456;
OrderSend(request, result);
}
}
// Sell signal processing
else if(sell_signal)
{
// Close buy positions
for(int i=total_positions-1; i>=0; i--)
{
ulong ticket = PositionGetTicket(i);
if(PositionGetString(POSITION_SYMBOL) == _Symbol && PositionGetInteger(POSITION_TYPE) == POSITION_TYPE_BUY)
PositionClose(ticket);
}
// Check if no sell position exists
bool sell_exists = false;
for(int i=total_positions-1; i>=0; i--)
{
if(PositionGetString(POSITION_SYMBOL) == _Symbol && PositionGetInteger(POSITION_TYPE) == POSITION_TYPE_SELL)
sell_exists = true;
}
if(!sell_exists)
{
// Place sell order
MqlTradeRequest request;
MqlTradeResult result;
double price = SymbolInfoDouble(_Symbol, SYMBOL_BID);
request.action = TRADE_ACTION_DEAL;
request.symbol = _Symbol;
request.volume = Lots;
request.type = ORDER_TYPE_SELL;
request.price = price;
request.deviation = 10;
request.sl = price + stop_loss_pips * point;
request.tp = price - take_profit_pips * point;
request.magic = 123456;
OrderSend(request, result);
}
}
}
Respondido
1
Classificação
Projetos
5
0%
Arbitragem
2
0%
/
50%
Expirado
2
40%
Carregado
2
Classificação
Projetos
17
18%
Arbitragem
0
Expirado
1
6%
Livre
3
Classificação
Projetos
9
78%
Arbitragem
0
Expirado
0
Livre
4
Classificação
Projetos
945
47%
Arbitragem
304
59%
/
26%
Expirado
125
13%
Trabalhando
5
Classificação
Projetos
1
0%
Arbitragem
0
Expirado
0
Trabalhando
6
Classificação
Projetos
536
35%
Arbitragem
66
35%
/
33%
Expirado
192
36%
Ocupado
7
Classificação
Projetos
2
0%
Arbitragem
0
Expirado
0
Livre
8
Classificação
Projetos
144
46%
Arbitragem
19
42%
/
16%
Expirado
32
22%
Livre
9
Classificação
Projetos
0
0%
Arbitragem
0
Expirado
0
Livre
10
Classificação
Projetos
249
31%
Arbitragem
0
Expirado
3
1%
Livre
Publicou: 2 códigos
11
Classificação
Projetos
0
0%
Arbitragem
0
Expirado
0
Livre
12
Classificação
Projetos
78
22%
Arbitragem
13
23%
/
23%
Expirado
6
8%
Carregado
13
Classificação
Projetos
0
0%
Arbitragem
0
Expirado
0
Livre
14
Classificação
Projetos
18
28%
Arbitragem
3
67%
/
0%
Expirado
0
Livre
15
Classificação
Projetos
466
39%
Arbitragem
96
43%
/
19%
Expirado
75
16%
Carregado
Publicou: 2 códigos
16
Classificação
Projetos
2
0%
Arbitragem
0
Expirado
0
Trabalhando
Pedidos semelhantes
Turn pennies into power
100 - 200 USD
1. Target Market Which market will the bot trade? (e.g., Crypto/Binance, Stocks/Interactive Brokers, Forex/MetaTrader 5) 2. Scalping Strategy (The Core Logic) What is the primary indicator you want the bot to use? (e.g., Simple Moving Averages (SMA), Exponential Moving Averages (EMA), Relative Strength Index (RSI), Bollinger Bands, or a combination) What is the timeframe? (e.g., 1-minute, 5-minute candles) 3
Safe Haven EA 1) PLACING ORDERS EA opens Buy stop and Sell Stop at a set distance ‘d’ from below options depending on what is chosen. Create EA to have below as options 1A) Open of a candle 1B) Current market position 1C) Set price Example I If d = 100, option 1A) is chosen, Daily candle is chosen and openprice of US 30 daily candle is 46600.0 for a chosen lot “ L” = 0.01, i) A buy stop
I have created a strategy script from scratch to create . BET EMA-SMA Cross + ATR + ADX — Coder Specification Purpose: Production-ready specification for implementing an automated trading strategy on Gold futures using Renko 3-tick bricks, run from Tokyo open → first 4 hours of London (≈12 hours). Includes improved filters, trailing stop, partial profit, session handling and test/reporting requirements
Hello, I am looking for a highly experienced MQL5 developer to build a unique FTMO-compliant Hybrid EA that includes a Smart Scalper module, a Swing module, and a full prop-firm safety engine. Please confirm: Your experience with FTMO rules. Past EAs you created with risk control systems. If you build everything from scratch (no reused code). Delivery timeline. Price quote. If possible, please share: Examples of
Gege Squash V1
30 - 200 USD
I want a powerful MT5 Expert Advisor named 'Gege Squash Pro V.1'. It must work for forex and gold , make it available for all quotes of forex Robot must include: Trend direction filter Breakout entry system Stop loss + take profit auto-calculation Trailing stop Risk per trade settings Smart breakeven Optional signals on chart News filter (optional) Conditions: Must work on small accounts Low drawdown Medium risk No
GegeSquashProV. 1
30+ USD
Nice here’s a ready-to-compile MQL5 Expert Advisor called GegeSquashProV1 Code — GegeSquashProV1.mq5 Copy this into MetaEditor (or mql5.com cloud editor), compile, then upload the compiled EA to your MT5 Android. //+------------------------------------------------------------------+ //| GegeSquashProV1.mq5 | //| Author: ChatGPT (template for user "Gege") | //| Strategy: EMA crossover + RSI filter + ATR SL/TP + Risk
Quant Developer (Python + MQL5)
1500 - 2200 USD
Location: Remote Salary: Negotiable Type: Full-time About the Role We are looking for a Quant Developer experienced in Python and MQL5 to join our systematic R&D team. You will help transform research ideas into executable strategies, build data pipelines, improve execution tools, and automate monitoring processes. Key Responsibilities Develop, test, and deploy MQL5 scripts & EAs Build Python-based backtesting and
I am looking for an experienced MT5 Expert Advisor developer who can build a price-action and structure-based automated strategy for XAUUSD . This EA must follow a clearly defined logic flow based on market structure shifts, break/confirmation rules, and zone-based entries , using closed-candle calculations only (no repainting, no indicator dependency). The EA includes: structure and swing detection confirmation of
I’m looking for someone who’s proficient in pinescrip latest version. The candidate must understand dealing ranges. I will describe what I need for the range to be considered a dealing. It’s a 2 part indicator. Part 1 spots the dealing ranges based on my requirements and Prager 2: the script draws a circle from start to the end of dealing ranges then count some candles. The rest is simple math. But before moving to
I'm looking to create a Gold trading EA that focuses on rebate earnings rather than trading profits. The key requirement is for it to execute more than 20 trades per day without ending in a daily loss. Scope of work - Develop a Gold trading EA capable of executing over 20 trades per day. - Ensure that the daily trading results do not end in a loss. - Focus on rebate earnings rather than trading profits. Additional
Informações sobre o projeto
Orçamento
50+ USD
Prazo
de 1 para 30 dias
Cliente
Pedidos postados1
Número de arbitragens0