Auftrag beendet

Ausführungszeit 8 Tage

Spezifikation

//+------------------------------------------------------------------+
//|                                           SpikeHunterX.mq5       |
//|                   Proprietary Boom & Crash Spike Indicator       |
//|         Multi-Layer Signal System - Trap Zones, Liquidity, etc. |
//+------------------------------------------------------------------+
#property indicator_chart_window
#property indicator_buffers 0
#property indicator_plots   0
#include <Math\Stat\StdDev.mqh>

//+------------------------------------------------------------------+
//| Explanation:
//| This indicator is designed for Boom and Crash indices (MT5).
//| It detects engineered spikes using 5 filters:
//| 1. Volatility Compression Zone (Trap Box)
//| 2. Liquidity Pool Scanner (Equal Highs/Lows)
//| 3. Spike Pattern Recognition (based on candle behavior)
//| 4. Volume Anomaly Detection (non-linear volume spikes)
//| 5. Time Filter (high-probability spike times)
//|
//| If all filters align, it draws a BUY or SELL spike arrow on chart.
//+------------------------------------------------------------------+

//--- Adjustable Parameters
input double VolatilityThreshold     = 0.3;   // StdDev threshold for compression zone
input int    LiquidityTolerancePips  = 3;     // Max pip distance for equal highs/lows
input double VolumeMultiplier        = 2.0;   // Volume spike threshold
input int    SpikeCheckShiftStart    = 10;
input int    SpikeCheckDepth         = 50;

//+------------------------------------------------------------------+
//| Volatility Compression Zone Detection
//+------------------------------------------------------------------+
bool IsCompressionZone()
{
   double std_dev = iStdDev(_Symbol, _Period, 10, MODE_SMA, PRICE_CLOSE, 0);
   double boll_upper = iBands(_Symbol, _Period, 20, 2.0, 0, PRICE_CLOSE, MODE_UPPER, 0);
   double boll_lower = iBands(_Symbol, _Period, 20, 2.0, 0, PRICE_CLOSE, MODE_LOWER, 0);
   double boll_range = boll_upper - boll_lower;
   double atr = iATR(_Symbol, _Period, 14, 0);

   return (std_dev < VolatilityThreshold && boll_range < atr);
}

//+------------------------------------------------------------------+
//| Liquidity Pool Detection (Equal Highs/Lows)
//+------------------------------------------------------------------+
bool IsEqualLow(int shift)
{
   double low1 = Low[shift];
   double low2 = Low[shift + 1];
   double low3 = Low[shift + 2];
   double tolerance = LiquidityTolerancePips * _Point;
   return (MathAbs(low1 - low2) <= tolerance && MathAbs(low2 - low3) <= tolerance);
}

bool IsEqualHigh(int shift)
{
   double high1 = High[shift];
   double high2 = High[shift + 1];
   double high3 = High[shift + 2];
   double tolerance = LiquidityTolerancePips * _Point;
   return (MathAbs(high1 - high2) <= tolerance && MathAbs(high2 - high3) <= tolerance);
}

//+------------------------------------------------------------------+
//| Broker Spike Pattern Detection (3-candle setup)
//+------------------------------------------------------------------+
bool IsBearishSpikePattern(int shift)
{
   return (Close[shift+2] > Open[shift+2] &&
           Close[shift+1] > Open[shift+1] &&
           Close[shift]   < Open[shift]);
}

bool IsBullishSpikePattern(int shift)
{
   return (Close[shift+2] < Open[shift+2] &&
           Close[shift+1] < Open[shift+1] &&
           Close[shift]   > Open[shift]);
}

//+------------------------------------------------------------------+
//| Volume Anomaly Detector
//+------------------------------------------------------------------+
bool IsVolumeAnomaly(int shift)
{
   double avgVol = 0;
   for(int i = 1; i <= 10; i++)
      avgVol += Volume[shift + i];
   avgVol /= 10;

   return (Volume[shift] > avgVol * VolumeMultiplier);
}

//+------------------------------------------------------------------+
//| Time Filter (Specific Spike Minutes)
//+------------------------------------------------------------------+
bool IsSpikeTime()
{
   datetime now = TimeCurrent();
   int minute = TimeMinute(now);
   return (minute == 5 || minute == 20 || minute == 45);
}

//+------------------------------------------------------------------+
//| Final Spike Signal Logic (Buy/Sell Conditions)
//+------------------------------------------------------------------+
bool IsBuySpikeSignal(int shift)
{
   return (IsCompressionZone() &&
           IsEqualLow(shift) &&
           IsBullishSpikePattern(shift) &&
           IsVolumeAnomaly(shift) &&
           IsSpikeTime());
}

bool IsSellSpikeSignal(int shift)
{
   return (IsCompressionZone() &&
           IsEqualHigh(shift) &&
           IsBearishSpikePattern(shift) &&
           IsVolumeAnomaly(shift) &&
           IsSpikeTime());
}

//+------------------------------------------------------------------+
//| Draw Arrows on Spike Detection
//+------------------------------------------------------------------+
void DrawSpikeSignal(string label, int shift, bool isBuy)
{
   string name = label + IntegerToString(shift);
   double price = isBuy ? Low[shift] - 10 * _Point : High[shift] + 10 * _Point;
   color clr = isBuy ? clrLime : clrRed;
   int arrow = isBuy ? 233 : 234; // Wingdings up/down

   if(!ObjectCreate(0, name, OBJ_ARROW, 0, Time[shift], price)) return;
   ObjectSetInteger(0, name, OBJPROP_COLOR, clr);
   ObjectSetInteger(0, name, OBJPROP_WIDTH, 2);
   ObjectSetInteger(0, name, OBJPROP_ARROWCODE, arrow);
}

//+------------------------------------------------------------------+
//| Main OnCalculate Loop
//+------------------------------------------------------------------+
int OnCalculate(const int rates_total,
                const int prev_calculated,
                const datetime &time[],
                const double &open[],
                const double &high[],
                const double &low[],
                const double &close[],
                const long &tick_volume[],
                const long &volume[],
                const int &spread[])
{
   for(int i = rates_total - SpikeCheckDepth; i >= SpikeCheckShiftStart; i--)
   {
      if (IsBuySpikeSignal(i))
         DrawSpikeSignal("BuySpike", i, true);
      else if (IsSellSpikeSignal(i))
         DrawSpikeSignal("SellSpike", i, false);
   }
   return(rates_total);
}

//+------------------------------------------------------------------+
read it carefull all logic i want you to code into this indicator 
alert trade panel background watermarking of symbol 

“This is a multi-layer advanced spike detection system for Boom & Crash. Each module is modular and explained. It’s based on proprietary edge logic, not retail indicators. Please compile, test on M5 timeframe, and optionally add alerts or dashboard after verifying the core logic.”


📦 What's Included:

  1. Trap Zone Detection (via stddev + Bollinger + ATR)

  2. Liquidity Sweep Zones (Equal Highs/Lows logic)

  3. Candle Pattern Recognition (3-candle spike structure)

  4. Volume Anomaly Filter (custom volume surge)

  5. Time Filter (uses broker timing edge)

  6. Unified Spike Entry Logic (Buy/Sell conditions)

  7. Spike Drawing Engine (arrows on chart with price offset)

This is a proprietary spike detection system for Boom & Crash indices on MT5, designed to detect institutional-style manipulations, not just standard retail indicators. It uses five layered conditions to filter out false signals and only highlight high-probability spike opportunities.


🧩 1. Volatility Compression Zone (Trap Box)

What It Does:

  • Detects when the market is ranging with low volatility (tight candles).

  • Spikes often explode out of these “trap zones.”

How It Works:

  • Uses StdDev and Bollinger Band range to detect a squeeze condition.

  • Compares the Bollinger range to ATR to confirm a volatility drop.

🗣️ “If the candles are small and volatility is low, it means price is about to break out. This sets up the environment for a potential spike.”


🧩 2. Liquidity Pool Scanner (Equal Highs/Lows)

What It Does:

  • Finds Equal Highs or Lows → Where retail traders place stop losses.

  • Spikes are designed to hit those stops (aka liquidity hunts).

How It Works:

  • Checks if 3 recent candles have nearly equal highs (for sell spike) or lows (for buy spike).

  • A pip-based tolerance defines “equal.”

🗣️ “We scan for zones where stop losses are clustered. If price touches that zone during a trap breakout, it's likely to spike.”


🧩 3. Broker Spike Pattern Recognition

What It Does:

  • Detects specific candle patterns brokers often use before triggering a spike.

  • For example: 2 bullish candles followed by a strong bearish candle (spike).

How It Works:

  • Matches a 3-candle formation that historically precedes spikes.

    • For crash (sell): Bull → Bull → Big Bear

    • For boom (buy): Bear → Bear → Big Bull

🗣️ “We reverse-engineered known broker patterns that tend to appear before a spike. We filter based on that sequence.”


🧩 4. Volume Anomaly Detector

What It Does:

  • Detects abnormal tick volume spikes.

  • Spikes usually come with a sudden volume burst.

How It Works:

  • Compares the current volume to the average volume of the last 10 candles.

  • If it’s 2x or more (customizable), it's flagged as an anomaly.

🗣️ “When big volume hits suddenly during compression, it’s often a broker-pushed spike — so we confirm this volume burst as a signal condition.”


🧩 5. Time Filter (Spike Hot Minutes)

What It Does:

  • Filters trades to trigger only at known spike-prone times (e.g. :05, :20, :45 past the hour).

How It Works:

  • Uses TimeMinute() to detect whether current broker time matches high-probability windows.

🗣️ “Some brokers push spikes on a pattern — for example, every 15-20 minutes. So we only allow signals during these hot times.”


🎯 Spike Signal Logic

What It Does:

  • Only triggers a Buy/Sell signal if all five conditions are met.

How It Works:

  • Functions like IsBuySpikeSignal() or IsSellSpikeSignal() check:

    1. Compression Zone ✅

    2. Liquidity Pool ✅

    3. Broker Pattern ✅

    4. Volume Anomaly ✅

    5. Spike Time ✅

🗣️ “This is a multi-confirmation system. No signal will appear unless all criteria align — this reduces false signals significantly.”


📈 Spike Drawing on Chart

What It Does:

  • Draws a green or red arrow below or above the candle where spike is expected.

  • Shows the exact candle where signal was detected.

How It Works:

  • Draws OBJ_ARROW using Wingdings code for up/down arrows.

  • Uses ObjectCreate() for chart display with time and price.

🗣️ “Whenever a spike is expected, it draws an arrow so we can visually verify the setup on the chart.”


📂 Developer Summary for Integration

Indicator Requirements:

  • MT5 compatible (MQL5)

  • Works on Boom/Crash  (timeframe: M1 preferred)

  • Self-contained, no buffers — only chart objects (arrows)

Customization Options:

  • Add alerts (optional)

  • Add dashboard (optional)

  • Turn into EA later


✅  Developer:

“I want you to build a fully working MT5 indicator that detects engineered spikes using a proprietary 5-layer filtering system: compression zones, liquidity sweeps, broker candle patterns, volume spikes, and time filters. The signal should only trigger when all 5 align. Arrows should show where the spike is expected. No repainting. I want the code clean, modular, and scalable.”




Bewerbungen

1
Entwickler 1
Bewertung
(16)
Projekte
19
11%
Schlichtung
8
38% / 38%
Frist nicht eingehalten
2
11%
Beschäftigt
2
Entwickler 2
Bewertung
(442)
Projekte
570
37%
Schlichtung
106
39% / 33%
Frist nicht eingehalten
17
3%
Frei
3
Entwickler 3
Bewertung
(3)
Projekte
2
0%
Schlichtung
1
0% / 100%
Frist nicht eingehalten
0
Frei
Ähnliche Aufträge
Chin 30 - 300 USD
i want to add the 30m time frame in the ema section high ema is 1h low ema is 5m i want u to add a mid ema so i can use 3 time frames
I’ve been following your profile and I'm interested in your expertise with the ATAS API and C# development. I have a clear technical scope for a high-performance M1 indicator focused on Binary Options and Scalping. ​The core logic is based on institutional Order Flow convergence: ​Stacked Imbalances: 300% ratio with a minimum of 3 consecutive levels. ​Delta/Price Divergence: Filtering for market exhaustion (New Highs
Hello, Please read the full specification before applying. This project is NOT about building an EA from scratch. I already have a fully working MT5 Expert Advisor. The EA already includes a dashboard, risk management, and some protection systems, but it needs a few more features . So I need an experienced MQL5 developer to modify my existing MT5 EA by replacing the current entry logic with a new breakout strategy
Copying third party from telegram. I have quite a number of them There is many different of them, I will consolidate all of them and send you Usually is a price range, so when hit the range will trigger Option for both fix or scale with equity I would like to have both, option to choose to follow the SL/TP signal provided or not This copier will trigger my DCA bot function. So don’t need set max position limit and
can you help me with editing the existing ATR Trailing Stop Indicator to include a logic to include additional script, where my ninZaRenko bars when it closes above OR below the dynamic stop line, I will be out of trade. Please remember, in this Indicator, now when the price touches the stop line, I am stopped out .. . I want to edit the script, in lieu of the price touch, I like to update this logic to when the bar
TORUNZ 😎 30+ USD
The robot should use different indicators for a example smart money indicator and market structure structure and break indicators in order for it to enter the market, it should also be able to tell false breakouts is the Bollinger indicator, and if the market is confirmed to be profitable,the robot should rebuy or resell the market according to the predictions made, it should execute the trades if the market reverses
I need an advisor created that opens a position with 0.10 lot size when a bull cross arrow appears on the m5 time frame and closes the trade after exactly one candle stick, the ea does the same thing over and over, a bull cross appear on m5 timeframe, and it opens 1 position with 0.10 lot size, and closes it after one candlestick on m5... If possible, provide a demo version
Description I am looking for an experienced MQL5 developer to investigate and fix a suspected memory or resource usage issue in my MT5 Expert Advisor. The EA itself works correctly from a strategy and trading logic perspective . The trading model must remain exactly as it currently operates. I am not looking for any changes or optimisation to the strategy . The goal of this job is purely to identify and fix a
Busco un robot para trading de scalping en oro o forex, el robot debe ser rentable en esos mercados, podemos automatizar mi estrategia basada en medias móviles con estrategia de scalping o bien si él desarollador tiene uno que funcione así y sea rentable podemos ver la opción de un demo o cuenta de lectura para estar seguros de la rentabilidad en el robot
MT4 EA TO TAKE TRADES FROM (A) HYDRA TREND RIDER AND (B) IQ GOLD GANN LEVELS ON MQL5.COM The MT4 version of these two indicators can be found on the mql5.com website with the following links: Hydra Trend Rider: https://www.mql5.com/en/market/product/111010?source=Site +Profile+Seller IQ Gold Gann Levels: https://www.mql5.com/en/market/product/134335?source=Site +Profile+Seller (1) ENTRY (a) Hydra Trend Rider

Projektdetails

Budget
30 - 100 USD
Ausführungsfristen
bis 10 Tag(e)