Thobo ea fx

Spécifications

// === INPUT PARAMETERS ===
input int FastMA = 9;     // Fast moving average for trend
input int SlowMA = 21;    // Slow moving average for trend
input double Risk = 1.0;  // Risk percentage per trade
input int ATRPeriod = 14; // ATR period for dynamic SL/TP
input double ATRMultiplier = 1.5; // Multiplier for ATR-based SL/TP
input int RSI_Period = 14; // RSI period
input int RSI_Overbought = 70;
input int RSI_Oversold = 30;
input int MACD_Fast = 12, MACD_Slow = 26, MACD_Signal = 9; // MACD settings

// === STRUCTURE DETECTION ===
double HighPrev, LowPrev, HighCurrent, LowCurrent;
bool BreakOfStructure;

// === FAIR VALUE GAP DETECTION ===
bool FairValueGapFound(double high1, double low1, double high2, double low2) {
    return (low2 > high1);  // FVG occurs when the second candle's low is above the first candle's high
}

// === ORDER BLOCK DETECTION ===
bool IsOrderBlock(double open1, double close1, double open2, double close2) {
    return (close1 < open1 && close2 > open2); // Bullish order block: Strong rejection from a bearish candle
}

// === MAIN FUNCTION ===
void OnTick() {
    // Get latest candle data
    HighPrev = iHigh(Symbol(), PERIOD_M15, 1);
    LowPrev = iLow(Symbol(), PERIOD_M15, 1);
    HighCurrent = iHigh(Symbol(), PERIOD_M15, 0);
    LowCurrent = iLow(Symbol(), PERIOD_M15, 0);

    // === CHECK FOR BREAK OF STRUCTURE (BOS) ===
    BreakOfStructure = (HighCurrent > HighPrev || LowCurrent < LowPrev);

    // === CHECK FOR FAIR VALUE GAP (FVG) ===
    bool FVG = FairValueGapFound(HighPrev, LowPrev, HighCurrent, LowCurrent);

    // === CHECK FOR ORDER BLOCKS ===
    bool OrderBlock = IsOrderBlock(iOpen(Symbol(), PERIOD_M15, 1), iClose(Symbol(), PERIOD_M15, 1), 
                                   iOpen(Symbol(), PERIOD_M15, 0), iClose(Symbol(), PERIOD_M15, 0));

    // === TREND FILTER USING MOVING AVERAGES ===
    double maFast = iMA(Symbol(), PERIOD_M15, FastMA, 0, MODE_SMA, PRICE_CLOSE, 0);
    double maSlow = iMA(Symbol(), PERIOD_M15, SlowMA, 0, MODE_SMA, PRICE_CLOSE, 0);
    bool Uptrend = (maFast > maSlow);
    bool Downtrend = (maFast < maSlow);

    // === RSI FILTER ===
    double RSI_Value = iRSI(Symbol(), PERIOD_M15, RSI_Period, PRICE_CLOSE, 0);
    bool RSI_Buy = (RSI_Value < RSI_Oversold);
    bool RSI_Sell = (RSI_Value > RSI_Overbought);

    // === MACD FILTER ===
    double macdMain, macdSignal, macdHist;
    iMACD(Symbol(), PERIOD_M15, MACD_Fast, MACD_Slow, MACD_Signal, PRICE_CLOSE, macdMain, macdSignal, macdHist);
    bool MACD_Buy = (macdMain > macdSignal);
    bool MACD_Sell = (macdMain < macdSignal);

    // === ATR for DYNAMIC SL/TP ===
    double ATR_Value = iATR(Symbol(), PERIOD_M15, ATRPeriod, 0);
    double DynamicSL = ATRMultiplier * ATR_Value;
    double DynamicTP = 4 * DynamicSL; // 1:4 Risk-Reward

    // === TRADE CONDITIONS ===
    if (BreakOfStructure && FVG && OrderBlock && Uptrend && RSI_Buy && MACD_Buy && OrdersTotal() == 0) {
        // Buy Setup
        double lotSize = 0.1; 
        double entryPrice = Ask;
        double stopLoss = entryPrice - DynamicSL; 
        double takeProfit1 = entryPrice + (DynamicTP * 0.5); // 50% TP
        double takeProfit2 = entryPrice + (DynamicTP); // 100% TP

        // Place Buy Order
        int orderTicket = OrderSend(Symbol(), OP_BUY, lotSize, entryPrice, 10, stopLoss, takeProfit2, "BUY Order", 0, 0, clrBlue);

        // Set Partial TP
        if (orderTicket > 0) {
            Sleep(5000); // Wait before modifying order
            OrderModify(orderTicket, entryPrice, stopLoss, takeProfit1, 0, clrBlue);
        }
    }

    if (BreakOfStructure && FVG && OrderBlock && Downtrend && RSI_Sell && MACD_Sell && OrdersTotal() == 0) {
        // Sell Setup
        double lotSize = 0.1; 
        double entryPrice = Bid;
        double stopLoss = entryPrice + DynamicSL;
        double takeProfit1 = entryPrice - (DynamicTP * 0.5); // 50% TP
        double takeProfit2 = entryPrice - (DynamicTP); // 100% TP

        // Place Sell Order
        int orderTicket = OrderSend(Symbol(), OP_SELL, lotSize, entryPrice, 10, stopLoss, takeProfit2, "SELL Order", 0, 0, clrRed);

        // Set Partial TP
        if (orderTicket > 0) {
            Sleep(5000);
            OrderModify(orderTicket, entryPrice, stopLoss, takeProfit1, 0, clrRed);
        }
    }
}

Répondu

1
Développeur 1
Évaluation
(274)
Projets
346
29%
Arbitrage
36
28% / 64%
En retard
10
3%
Travail
2
Développeur 2
Évaluation
(33)
Projets
38
21%
Arbitrage
5
0% / 60%
En retard
0
Gratuit
3
Développeur 3
Évaluation
(23)
Projets
34
53%
Arbitrage
1
100% / 0%
En retard
1
3%
Gratuit
4
Développeur 4
Évaluation
(17)
Projets
21
14%
Arbitrage
8
38% / 38%
En retard
3
14%
Chargé
5
Développeur 5
Évaluation
(329)
Projets
515
19%
Arbitrage
35
46% / 31%
En retard
34
7%
Travail
6
Développeur 6
Évaluation
(13)
Projets
20
40%
Arbitrage
1
0% / 100%
En retard
1
5%
Gratuit
7
Développeur 7
Évaluation
(62)
Projets
90
29%
Arbitrage
24
13% / 58%
En retard
7
8%
Travail
8
Développeur 8
Évaluation
(24)
Projets
26
73%
Arbitrage
1
0% / 100%
En retard
0
Gratuit
9
Développeur 9
Évaluation
(33)
Projets
35
20%
Arbitrage
5
40% / 40%
En retard
0
Gratuit
Publié : 1 code
10
Développeur 10
Évaluation
Projets
0
0%
Arbitrage
0
En retard
0
Gratuit
11
Développeur 11
Évaluation
(2)
Projets
3
0%
Arbitrage
8
13% / 88%
En retard
1
33%
Gratuit
12
Développeur 12
Évaluation
(613)
Projets
716
33%
Arbitrage
46
48% / 41%
En retard
14
2%
Chargé
13
Développeur 13
Évaluation
(7)
Projets
6
0%
Arbitrage
4
25% / 75%
En retard
2
33%
Gratuit
14
Développeur 14
Évaluation
(206)
Projets
267
21%
Arbitrage
24
50% / 17%
En retard
0
Travail
15
Développeur 15
Évaluation
(3)
Projets
1
0%
Arbitrage
5
0% / 100%
En retard
0
Gratuit
16
Développeur 16
Évaluation
(162)
Projets
289
35%
Arbitrage
18
22% / 61%
En retard
43
15%
Gratuit
17
Développeur 17
Évaluation
(78)
Projets
246
74%
Arbitrage
7
100% / 0%
En retard
1
0%
Gratuit
Publié : 1 article
18
Développeur 18
Évaluation
(45)
Projets
91
13%
Arbitrage
34
26% / 59%
En retard
37
41%
Gratuit
19
Développeur 19
Évaluation
Projets
0
0%
Arbitrage
0
En retard
0
Gratuit
20
Développeur 20
Évaluation
(7)
Projets
8
0%
Arbitrage
4
0% / 100%
En retard
3
38%
Gratuit
21
Développeur 21
Évaluation
Projets
0
0%
Arbitrage
0
En retard
0
Gratuit
22
Développeur 22
Évaluation
Projets
0
0%
Arbitrage
0
En retard
0
Gratuit
23
Développeur 23
Évaluation
(574)
Projets
945
47%
Arbitrage
309
58% / 27%
En retard
125
13%
Gratuit
Commandes similaires
A simple hedge robot 30 - 50 USD
Eu gostaria de um robot de Hedge, em uma conta ele vende na outra conta ele compra, mas que seja de forma bem perfeita, ou seja, com comissao, spread e lot ajustados para que nas duas contas os trades fiquem exatos -30$ e +30$ . very simple strategy smc that makes 50 trades at least on a period of 24h
I Have an existing Mql5 Expert advisor (source code), I want a professional programmer to help me Modify the EA... so that it can stop taking new trades once it Gets to a Pacific Lots Size or Floating loss
Hi, can you define entry conditions based on 100 or 200 trades? If you need more history, i can give you more trades. It is EURUSD with great results! If you can do it, contact me
take your time better make it for days and have good bot than never benefits both of us. Make the bot have zero errors and backtest it for a 2 year period
Wise Legend 30 - 500 USD
I want this robot to alert me on a good entry point on the trading flat form ether to buy or to sell. And also alert me when to close the market. And alert me on market continuations
I have an existing MT5 Expert Advisor with the original MQ5 source code. I need an experienced MQL5 developer to review, debug and professionally improve the existing EA, not build an unrelated EA from scratch. The EA is mainly for XAUUSD and already contains entry signals, EMA filters, automatic lot sizing, basket profit management, spread/margin protection, news filtering and recovery logic. The main problem is the
Exact Pine Script Conversion: The EA must replicate my Pine Script exactly — including Support/Resistance, Liquidity Grab/Sweep, 30 EMA, Entry, SL, TP, Partial Booking and Breakeven . No assumptions or changes to the logic. Accurate Entries: The EA must enter exactly according to the Pine Script conditions, including the correct candle and price level after the Support/Resistance or Liquidity Sweep setup. SL & TP: SL
I buy EA for USDEUR or XAUUSD for FTMO with proven backtest. Send me images with backtest reports where daily max dd is 1% on 200k account. I can buy several eas if you have them with proofs. Need images of backtesting for 5 years
Cerco uno sviluppatore MQL5 esperto per lavorare su un Expert Advisor (EA) XAUUSD per MetaTrader 5 già esistente , versione attuale XAU_V59.mq5 . L'obiettivo è modificare, correggere e sviluppare il codice esistente senza stravolgere la logica già presente , mantenendo le regole ei parametri già definiti, salvo le modifiche espressamente richieste. REQUISITI FONDAMENTALI Il codice deve essere scritto in MQL5 nativo e
I need an MT5 Expert Advisor for a mean-reversion strategy on EURUSD: single entry at local price extremes, fixed stop loss and take profit, no grid and no averaging. Position size must be calculated automatically so that risk per trade is capped at a fixed USD amount, with a daily loss limit and a pause after consecutive losses. I will send the full specification — entry conditions, filters and all input parameters

Informations sur le projet

Budget
30 - 200 USD