Техническое задание

//+------------------------------------------------------------------+
//|                                   Gohan Scalper provision.mq5    |
//|                           Advanced Multi-Timeframe Forex Robot   |
//+------------------------------------------------------------------+
#property copyright "Tshegofatso"
#property link      "https://www.mql5.com"
#property version   "1.00"
#property strict

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

//+------------------------------------------------------------------+
//| Input Parameters                                                |
//+------------------------------------------------------------------+
enum ModeType { CONSERVATIVE, BALANCED, AGGRESSIVE };
input ModeType TradeMode = BALANCED;
input double RiskPercent = 1.0;
input double DefaultStopLossPips = 20.0;
input double MaxLot = 2.0;

//+------------------------------------------------------------------+
//| Session Time Checking                                           |
//+------------------------------------------------------------------+
bool IsInTradingSession()
{
   MqlDateTime t;
   TimeToStruct(TimeCurrent(), t);
   int timeInMinutes = t.hour * 60 + t.min;

   return (timeInMinutes >= 60 && timeInMinutes <= 480)  ||  // Asian
          (timeInMinutes >= 480 && timeInMinutes <= 960) ||  // London
          (timeInMinutes >= 780 && timeInMinutes <= 1320);   // New York
}

//+------------------------------------------------------------------+
//| Trend Detection (D1)                                            |
//+------------------------------------------------------------------+
int GetMarketTrend()
{
   static int maFastHandle = iMA(_Symbol, PERIOD_D1, 20, 0, MODE_EMA, PRICE_CLOSE);
   static int maSlowHandle = iMA(_Symbol, PERIOD_D1, 50, 0, MODE_EMA, PRICE_CLOSE);

   double maFast[], maSlow[];
   if(CopyBuffer(maFastHandle, 0, 0, 1, maFast) < 1 ||
      CopyBuffer(maSlowHandle, 0, 0, 1, maSlow) < 1)
      return 0;

   if (maFast[0] > maSlow[0]) return 1;    // Bullish
   if (maFast[0] < maSlow[0]) return -1;   // Bearish
   return 0;                               // Sideways
}

//+------------------------------------------------------------------+
//| Break of Structure (M15)                                        |
//+------------------------------------------------------------------+
bool DetectBreakOfStructure()
{
   double highs[2];
   if(CopyHigh(_Symbol, PERIOD_M15, 1, 2, highs) < 2)
      return false;

   return highs[0] > highs[1];
}

//+------------------------------------------------------------------+
//| Confirmation Candle (M5)                                        |
//+------------------------------------------------------------------+
bool IsConfirmationCandle()
{
   double open[1], close[1], high[1], low[1];

   if(CopyOpen(_Symbol, PERIOD_M5, 0, 1, open) < 1 ||
      CopyClose(_Symbol, PERIOD_M5, 0, 1, close) < 1 ||
      CopyHigh(_Symbol, PERIOD_M5, 0, 1, high) < 1 ||
      CopyLow(_Symbol, PERIOD_M5, 0, 1, low) < 1)
      return false;

   double body = MathAbs(close[0] - open[0]);
   double range = high[0] - low[0];

   return (body > range * 0.5);
}

//+------------------------------------------------------------------+
//| Lot Size Calculation                                            |
//+------------------------------------------------------------------+
double CalculateLotSize(double stopLossPips)
{
   double balance = AccountInfoDouble(ACCOUNT_BALANCE);
   double riskAmount = balance * (RiskPercent / 100.0);
   double pipValue = SymbolInfoDouble(_Symbol, SYMBOL_TRADE_TICK_VALUE);
   double lotSize = riskAmount / (stopLossPips * pipValue);
   return MathMin(MaxLot, MathMax(0.01, NormalizeDouble(lotSize, 2)));
}

//+------------------------------------------------------------------+
//| Enter Buy Trade                                                 |
//+------------------------------------------------------------------+
void EnterBuyTrade(double lot, double stopLossPips)
{
   double sl = SymbolInfoDouble(_Symbol, SYMBOL_BID) - stopLossPips * _Point;
   trade.Buy(lot, _Symbol, 0, sl, 0, "Buy Entry");
}

//+------------------------------------------------------------------+
//| Enter Sell Trade                                                |
//+------------------------------------------------------------------+
void EnterSellTrade(double lot, double stopLossPips)
{
   double sl = SymbolInfoDouble(_Symbol, SYMBOL_ASK) + stopLossPips * _Point;
   trade.Sell(lot, _Symbol, 0, sl, 0, "Sell Entry");
}

//+------------------------------------------------------------------+
//| Expert Tick Function                                            |
//+------------------------------------------------------------------+
void OnTick()
{
   if(!IsInTradingSession()) return;

   int trend = GetMarketTrend();
   if(trend == 0) return;

   if(!DetectBreakOfStructure()) return;

   if(!IsConfirmationCandle()) return;

   double lot = CalculateLotSize(DefaultStopLossPips);

   if(trend > 0)
      EnterBuyTrade(lot, DefaultStopLossPips);
   else
      EnterSellTrade(lot, DefaultStopLossPips);
}

//+------------------------------------------------------------------+
//| OnInit and Timer Hooks                                          |
//+------------------------------------------------------------------+
int OnInit()
{
   EventSetTimer(60);
   return INIT_SUCCEEDED;
}

void OnDeinit(const int reason)
{
   EventKillTimer();
}

void OnTimer()
{
   // Reserved for advanced wave/fakeout/FVG logic
}

Файлы:

Откликнулись

1
Разработчик 1
Оценка
(6)
Проекты
4
0%
Арбитраж
5
0% / 100%
Просрочено
0
Свободен
Похожие заказы
Title Professional AI Automation Trading Bot for Forex & Crypto Solution Language Python (preferred) or MQL5 depending on integration requirements. Categories Expert Advisor (EA) for MetaTrader 5 Automated trading strategies AI/ML-based signal generation Risk management automation Required Skills Strong knowledge of MQL5/Python Experience with MetaTrader API integration Machine learning model deployment
The striker robot 30 - 2000 USD
I would like a trend and pullback strategy for the robot timeframe:15 minutes(m15) or 1 hour(h1) indicators:50 EMA (Exponential Moving Average)/200 EMA/RSI (14) BUY SET UP 1.Confirm The Trend .50 EMA must be above 200 EMA .Price must be above both EMAs 2.Wait for a pullback .Do not buy when the price shoots up. .Wait for the price to come back near the 50 EMA 3.Confirm entry .ENTER BUY WHEN: .A bullish candlestick
I need an Ai trading bot for Binance and BTC on MT5 that also uses order flow data. It should also make use of TSI- Temporal indicator sampling and also it should make use of fundamental analysis in the process of signal generation
I have a EA for XAUUSD which works awesome in sideways and trending market as well, capital requirement is only 2000USd and weekly profit is around 1500-2000 USD. I am using this bot from 3 months and getting continuous good result
Title: MT5 Forex Trading Robot Development I need a MetaTrader 5 (MT5) Expert Advisor (EA) for automated Forex trading. Requirements: 1. The robot must be fully automated and capable of opening and closing trades without manual intervention. 2. Compatible with MetaTrader 5 (MT5). 3. Adjustable lot size, Stop Loss, and Take Profit settings. 4. Built-in risk management based on account balance. 5. Ability to trade
ART 1: NUMBER OF TRADES ALLOWED IN ONE DIRECTION: Maximum number of trades in one direction = ------------------------------ ------------------------------ ------------------------------ -------------- par PART 2 PARTIAL CLOSURE OF STOPLOSS: Total STOPLOSS =------ Pips 1a: Percentage of Stoploss =--% 1b Percentage of Lot size =--% 2a: Percentage oe of Lot size =--% f Stoploss =--% 2b
MT5 Expert Advisor (EA) Acquisition Request – Proven XAUUSD Martingale / Grid EA I am looking to purchase a fully developed, actively traded, and proven MT5 Expert Advisor for XAUUSD (Gold) that uses Martingale, Grid, Averaging, Recovery, or Hybrid Recovery techniques. Mandatory Verification Requirement To be considered, please provide: - MT5 Investor Password (Read-Only Access) for verification - Account Number /
Looking to buy profitable MT4/MT5 Expert Advisors (EAs). Requirements: • Fully automated • 6+ months backtest • 100+ trades • No martingale or grid systems Send: • Backtest report • Max drawdown • Markets traded • Brief strategy summary Only original EAs developed by you. Long-term collaboration available
Live chart [ expert is not executing trades on xauusd ] , Deleting Existing Parameter not in use , Live Chart Adjustments Only , No Need to Change anything else , expert will be live testing Throughout
Prepare expert for xauusd live chart [ expert is not executing trades on xauusd ] . Deletion and cleaning code . Trailing Stop Rule to follow the given method . Live Chart Only

Информация о проекте

Бюджет
30+ USD
Сроки выполнения
до 10 дн.