Specifiche

Code pour créer un robot 



//+------------------------------------------------------------------+
#include <Trade/Trade.mqh>
CTrade trade;

// SYMBOLS
string symbols[3] = {"Volatility 10 Index","Volatility 25 Index","Volatility 75 Index"};
string bestSymbol = "";

// VARIABLES
double startBalance;
int tradeCount = 0;
int lossStreak = 0;
bool tradingStopped = false;
bool profitMode = false;
datetime lastDay;

// PARAMÈTRES
double lotSize;
int stopLoss;
int takeProfit;
int trailingStop = 80;

//+------------------------------------------------------------------+
// RESET JOUR
void ResetDaily()
{
   datetime now = TimeCurrent();
   if(TimeDay(now) != TimeDay(lastDay))
   {
      startBalance = AccountInfoDouble(ACCOUNT_BALANCE);
      tradeCount = 0;
      lossStreak = 0;
      tradingStopped = false;
      profitMode = false;
      lastDay = now;
   }
}

//+------------------------------------------------------------------+
double GetProfitPercent()
{
   double balance = AccountInfoDouble(ACCOUNT_BALANCE);
   return ((balance - startBalance) / startBalance) * 100.0;
}

//+------------------------------------------------------------------+
// IA MEILLEUR INDICE
string GetBestSymbol()
{
   double bestScore = 0;
   string selected = symbols[0];

   for(int i=0; i<3; i++)
   {
      string sym = symbols[i];

      double range = iHigh(sym, PERIOD_M5, 0) - iLow(sym, PERIOD_M5, 0);
      double ema10 = iMA(sym, PERIOD_M5, 10, 0, MODE_EMA, PRICE_CLOSE, 0);
      double ema20 = iMA(sym, PERIOD_M5, 20, 0, MODE_EMA, PRICE_CLOSE, 0);

      double trend = MathAbs(ema10 - ema20);

      double score = range + trend;

      if(score > bestScore)
      {
         bestScore = score;
         selected = sym;
      }
   }

   return selected;
}

//+------------------------------------------------------------------+
// SCALPING V75
bool IsScalpingMode(string sym)
{
   if(sym == "Volatility 75 Index")
   {
      double range = iHigh(sym, PERIOD_M1, 0) - iLow(sym, PERIOD_M1, 0);
      return (range > 200 * _Point);
   }
   return false;
}

//+------------------------------------------------------------------+
// ANTI FAKE BREAKOUT
bool IsValidEntry(string sym)
{
   double rsi = iRSI(sym, PERIOD_M1, 14, PRICE_CLOSE, 0);

   double high0 = iHigh(sym, PERIOD_M1, 0);
   double low0 = iLow(sym, PERIOD_M1, 0);

   double range = high0 - low0;

   if(range < 100 * _Point) return false;
   if(range > 400 * _Point) return false;
   if(rsi > 75 || rsi < 25) return false;

   return true;
}

//+------------------------------------------------------------------+
// MARKET MAKER TRAP
bool IsMarketTrap(string sym)
{
   double high0 = iHigh(sym, PERIOD_M1, 0);
   double low0 = iLow(sym, PERIOD_M1, 0);
   double close0 = iClose(sym, PERIOD_M1, 0);
   double open0 = iOpen(sym, PERIOD_M1, 0);

   double range = high0 - low0;
   double body = MathAbs(close0 - open0);

   if(range > 350 * _Point && body < (range * 0.3))
      return true;

   return false;
}

//+------------------------------------------------------------------+
// SUPPORT / RESISTANCE
bool NearSupportResistance(string sym)
{
   double high = iHigh(sym, PERIOD_M15, iHighest(sym, PERIOD_M15, MODE_HIGH, 20, 0));
   double low = iLow(sym, PERIOD_M15, iLowest(sym, PERIOD_M15, MODE_LOW, 20, 0));

   double price = SymbolInfoDouble(sym, SYMBOL_BID);

   double zone = 150 * _Point;

   if(MathAbs(price - high) < zone || MathAbs(price - low) < zone)
      return true;

   return false;
}

//+------------------------------------------------------------------+
// MULTI TF
bool MultiTFConfirm(string sym)
{
   double ema10_M1 = iMA(sym, PERIOD_M1, 10, 0, MODE_EMA, PRICE_CLOSE, 0);
   double ema20_M1 = iMA(sym, PERIOD_M1, 20, 0, MODE_EMA, PRICE_CLOSE, 0);

   double ema10_M5 = iMA(sym, PERIOD_M5, 10, 0, MODE_EMA, PRICE_CLOSE, 0);
   double ema20_M5 = iMA(sym, PERIOD_M5, 20, 0, MODE_EMA, PRICE_CLOSE, 0);

   double ema10_M15 = iMA(sym, PERIOD_M15, 10, 0, MODE_EMA, PRICE_CLOSE, 0);
   double ema20_M15 = iMA(sym, PERIOD_M15, 20, 0, MODE_EMA, PRICE_CLOSE, 0);

   bool buyTrend =
      (ema10_M1 > ema20_M1) &&
      (ema10_M5 > ema20_M5) &&
      (ema10_M15 > ema20_M15);

   bool sellTrend =
      (ema10_M1 < ema20_M1) &&
      (ema10_M5 < ema20_M5) &&
      (ema10_M15 < ema20_M15);

   return (buyTrend || sellTrend);
}

//+------------------------------------------------------------------+
// TRAILING
void ManageTrailing(string sym)
{
   if(PositionSelect(sym))
   {
      double tp = PositionGetDouble(POSITION_TP);

      if(PositionGetInteger(POSITION_TYPE) == POSITION_TYPE_BUY)
      {
         double price = SymbolInfoDouble(sym, SYMBOL_BID);
         trade.PositionModify(sym, price - trailingStop * _Point, tp);
      }

      if(PositionGetInteger(POSITION_TYPE) == POSITION_TYPE_SELL)
      {
         double price = SymbolInfoDouble(sym, SYMBOL_ASK);
         trade.PositionModify(sym, price + trailingStop * _Point, tp);
      }
   }
}

Code pour créer un robot suite 

//+------------------------------------------------------------------+

bool StopConditions()

{

   double profit = GetProfitPercent();


   if(profit <= -5.0) return true;

   if(tradeCount >= 3) return true;

   if(lossStreak >= 2) return true;


   return false;

}


//+------------------------------------------------------------------+

void OnTick()

{

   ResetDaily();


   if(tradingStopped) return;


   double balance = AccountInfoDouble(ACCOUNT_BALANCE);

   lotSize = 0.01;

   stopLoss = 120;

   takeProfit = 140;


   double profit = GetProfitPercent();


   if(profit >= 2.0 && !profitMode)

   {

      profitMode = true;

      SendNotification("💰 Profit sécurisé");

   }


   if(StopConditions())

   {

      tradingStopped = true;

      SendNotification("🚫 STOP");

      return;

   }


   bestSymbol = GetBestSymbol();

   string sym = bestSymbol;


   ManageTrailing(sym);


   double lot = profitMode ? lotSize * 0.5 : lotSize;


   if(IsScalpingMode(sym))

   {

      stopLoss = 80;

      takeProfit = 100;

   }


   double ema10 = iMA(sym, PERIOD_M1, 10, 0, MODE_EMA, PRICE_CLOSE, 0);

   double ema20 = iMA(sym, PERIOD_M1, 20, 0, MODE_EMA, PRICE_CLOSE, 0);

   double rsi = iRSI(sym, PERIOD_M1, 14, PRICE_CLOSE, 0);


   double ask = SymbolInfoDouble(sym, SYMBOL_ASK);

   double bid = SymbolInfoDouble(sym, SYMBOL_BID);


   if(!PositionSelect(sym)

      && IsValidEntry(sym)

      && !IsMarketTrap(sym)

      && NearSupportResistance(sym)

      && MultiTFConfirm(sym))

   {

      if(ema10 > ema20 && rsi > 55)

      {

         trade.Buy(lot, sym, ask,

                   bid - stopLoss * _Point,

                   bid + takeProfit * _Point);


         tradeCount++;

         SendNotification("📈 BUY " + sym);

      }


      if(ema10 < ema20 && rsi < 45)

      {

         trade.Sell(lot, sym, bid,

                    ask + stopLoss * _Point,

                    ask - takeProfit * _Point);


         tradeCount++;

         SendNotification("📉 SELL " + sym);

      }

   }

}


//+------------------------------------------------------------------+

void OnTradeTransaction(const MqlTradeTransaction &trans,

                        const MqlTradeRequest &request,

                        const MqlTradeResult &result)

{

   if(trans.type == TRADE_TRANSACTION_DEAL_ADD)

   {

      if(trans.profit < 0)

         lossStreak++;

      else

         lossStreak = 0;

   }

}


Con risposta

1
Sviluppatore 1
Valutazioni
Progetti
0
0%
Arbitraggio
0
In ritardo
0
Gratuito
2
Sviluppatore 2
Valutazioni
(298)
Progetti
477
40%
Arbitraggio
105
40% / 24%
In ritardo
81
17%
Caricato
Pubblicati: 2 codici
3
Sviluppatore 3
Valutazioni
Progetti
0
0%
Arbitraggio
0
In ritardo
0
Gratuito
4
Sviluppatore 4
Valutazioni
Progetti
0
0%
Arbitraggio
0
In ritardo
0
Gratuito
Ordini simili
I am looking for an experienced MT5 EA developer to create an Asian Session Mean Reversion EA. 主な特徴: 平均回帰戦略 アジア取引時間のみ ボリンジャーバンドを基盤としたエントリー マルチエントリー/スケーリングポジション リスク管理機能 スプレッドフィルター ニュースフィルター 設定可能なパラメータ 戦略構造と詳細な仕様は議論の後に提供されます。 私はMT5の経験が豊富で、迅速なコミュニケーションがあり、テスト後にリビジョンをサポートする意欲のある開発者を好みます。 まずはEAのMVPバージョンを開発し、その後数週間にわたって前方テストを行い、最終的なパラメータ調整と改訂を行いたいと考えています。 テスト後のリビジョンサポートに関する情報も必ず含めてください。 予算見込み:USD 500–600 納期:10days-14days
JDE LS 53+ USD
Purpose The system aims to: Analyze forex market data in real time Identify trading opportunities quickly Automatically execute trades Help users potentially grow small capital (e.g., R1000+), without guaranteeing profits 3. 👥 Users Beginner traders Intermediate traders Admin/Developer (to manage and monitor the bot) 4. ⚙️ Functional Requirements 4.1 Market Data Analysis The bot must collect real-time price data
I am looking for an experienced MQL5 developer to build a professional Expert Advisor with the following specs: TECHNICAL REQUIREMENTS: - Platform: MetaTrader 5 (MT5) - Pairs: GBPUSD and EURUSD - Broker suffix support (e.g. GBPUSD@, EURUSD@) - Primary timeframe: M5 -Higher timeframe bias: H1 and H4 (for trend direction only) - One chart setup — manages both pairs from one chart STRATEGY: - Price action based: BOS
OBJETIVO Criar um Expert Advisor MT5 profissional para XAUUSD focado em: Consistência Baixo drawdown Scalping profissional Proteção da conta Crescimento sustentável Compatibilidade com conta micro e prop firms NÃO utilizar: Martingale Grid Hedge agressivo Recovery system Multiplicação de lotes após perda --- ATIVO XAUUSD apenas --- TIMEFRAMES Timeframe principal M5 Confirmação tendência M15 Confirmação macro opcional
I need a very advanced and intelligent MT5 Expert Advisor coded in MQL5 for XAUUSD, based on ICT + CRT + Smart Money Concepts. The goal is not a simple robot, but a professional decision-making system with strong filters, risk control, and high-quality trade selection. The EA must include: 1. Multi-Timeframe Analysis - D1 / H4 / H1 bias - M15 / M5 entry confirmation - Bullish or bearish market structure - BOS, CHoCH
Intraday Trade Ninja EA — Complete Logic Structure This document maps the full architecture, execution logic, signal flow, trade management, and safety structure of the Intraday Trade Ninja MT4 Expert Advisor. 1. Core Indicators · ©Price Border (TMA bands) · MA-X Arrows · MA-Y Arrows · LeManSignal · EMA 49 & 89 - Per Candle Color Switching 2. EA Entry Architecture ·
Hi Developers, I am looking for an experienced MT4/MT5 EA developer to create an Expert Advisor based on my custom indicator along with a Trend Magic confirmation filter. I will provide: Raw Pine Script of my custom indicator Pine Script of Trend Magic indicator Important Note: My existing indicator requires slight correction/refinement because it occasionally fails to identify the required candle accurately
I have a 90% completed project with the execution part left to complete, I have been struggling to complete this section and I need help from someone expert in MQL5 with knowledge on forex trading and ICT Concepts coding. Contact me for further details
Hi, I am looking for someone to create me a trading indicator that will scalp the market 30-90 pips successfully in high volumes, I would like to be able to bridge this to create a signal channel for my community so it would need to have buy and sell indication on the indicator we run quite small stop losses so execution of trades can’t go in to draw down much alternatively create me a MT5 EA bot that scalps the
Hi basically I'm wanting an already made EA scalper that's constantly in and out of trades on the M1 time frame that has good risk management. It knows what it's doing. Most of its trades are profitable and that can start with £100. I am willing to pay up to £1000 for the right scalping bot. If you please have one and you're very confident in it, please allow me to use a live version to see how it does and if I'm

Informazioni sul progetto

Budget
30+ USD