EA captures trading range acording to user time range. Places order when market at edge of range for reversal acording to user parameters

Tarea técnica

Range Reversal EA


29/01/26 Rev 0


Overview

This EA will bound a range of price action over a set time. At a specified time range a trade will be enabled if price action triggers a reversal at or near to the bound range, by a stated offset. Typically the EA will be permitted to only take one trade per day. The EA is not to operate on Weekends. The EA will be left running on a MT5 platform on a server.


Testing

I will not be able to test the EA on the Weekend.

I will need two working days to test the EA before final approval. Please don’t hurry me to close before then.


Specification

EA is required for MT5 platform.

Broker is 5 digit.

Speed of trade execution is important.

Time frame may be M5 or any other.

Assets may be Futures Index (Points) or FOREX (Pips)


Logic


*See Settings section at end of document for descriptions of EA ‘terms’.


The EA will be used to typically set only one trade at a user defined time window per day. In this instance it must not be triggering multiple trades per day. Typically the 5 min time frame is used.


This EA is used on Futures index where points are used. It may also be used on FOREX where pips are used.


The user specified time period ‘RangeStartTime’ to ‘RangeEndTime’ is scanned to identify the candle range highest and lowest values (wicks included). Horizontal lines are drawn around this range. The colour of the lines and thickness of the lines can be changed by the user.


Figure 1: Red Upper Range and Blue lower Range lines



Within the Allow Trade Time (‘AllowTradeStartTime’ through to ‘AllowTradeEndTime’) a market order trade will be executed acting as a limit order should market price cross the ‘TradeEntryOffset’ located at the high and low range, and reverse back to trigger the limit order style entry. Just one trade is triggered either at the high or low range depending on price action. If a ‘TradeEntryOffset’ value greater than 0 is entered then this offset order execution line is moved within the range (not outside of the range).


Figure 2: TradeEntryOffset shown






Figure 3: Trade Executed



Figure 4: Trade Closed



The ‘AllowTradeStartTime’ may be initiated when the ‘RangeEndTime’ has not yet concluded. This will enable the range to continue to be formed by steadily trending candles and only when one candle retraces inward of the ‘TradeEntryOffset’ will a trade then be placed. Figure 5 demonstrates this principal below. The range is monitored until moment order is placed to populate SL and TP values, and lot size if correlated to % balance or monetary value.




Figure 5: Price action expanding the range until trade is triggered


And below figure 6 the order placement.


Figure 6: Trade executed


And trade completing in figure 7 below.



Figure 7: Trade Complete



Within the Allow Trade Time (‘AllowTradeStartTime’ through to ‘AllowTradeEndTime’) if market price activates a trade (either a buy at the lower range, or sell at the higher range), then the trade runs until SL or TP is hit or ‘CloseAllOpenTradesBy’ is met. If ‘QtyTradesAllowedPerDay’ is 1 then only 1 trade is allowed per day, resetting at Midnight. If the value is greater than 1 then still only 1 active trade is allowed at a time. Any triggers whilst an existing active trade is open will be ignored. It is the expectation that mostly this EA will be set for 1 trade per day. If no trade has been activated by ‘AllowTradeEndTime’ then simply there is no trade for that day.


Fast execution is a priority, I don’t want slippage restriction to stop order opening.




If a value greater than 0 and less than 1 is entered into ‘MoveSLToBEWhen%ToTP’ then once this % move to TP is reached in an open trade the SL will be moved to entry. Example value entered is 0 or 1 then SL will not be moved. Example value 0.5 then SL will be moved to entry when trade has reached 50% of TP. Anticipated value to be used: 0.8 = 80% of TP.



Display

The following text is to be displayed in black (Colour change available) on the top left hand side of the screen, below the MT5 chart window Symbol, Time frame i.e. USDJPY, M5:


Range Reversal EA

Range High (143.484) : Low (142.850)

Range Size (0.634)

Daily Trades Count Buy (0) : Sell (1)

Daily Trades Result Win (1) : Loss (0)

Range Start Time: 2026.01.29 01:30:00

Range End Time: 2026.01.29 10:30:00

Allow Trade Start Time: 2026.01.29 06:00:00

Allow Trade End Time: 2026.01.29 10:30:00

Close All Open Trades By: 2026.01.29 14:30:00

Server Time: 2026.01.29 11:00:00



User Settings

The below settings are to be configurable on the EA inputs settings window:


RangeStartTime_(HH:MM:SS) – 02:00:00 (beginning of daily range zone).

RangeEndTime_(HH:MM:SS) – 08:00:00 (end of daily range zone).


AllowTradeStartTime_(HH:MM:SS) – 06:00:00 (pending market order ready to be executed).

AllowTradeEndTime_(HH:MM:SS) – 08:00:00 (no new order will be placed after this time, EA will not execute new trade until next new fresh day session). TradeEntryOffset is painted on the chart starting at the ‘AllowTradeStartTime’.


CloseAllOpenTradesBy_(HH:MM) – 10:00 (Any open trade not hitting TP or SL by this time will be closed).


TradeEntryOffsetUnits_(Points or Pips) – Points (Points will be used for Futures indicies, pips for FOREX).


TradeEntryOffset – 10 (10 Points bellow upper range, and 10 Points above lower range. Trade is triggered as if it were a limit order in that it travels past the offset, then back through to trigger market execution of order. If this value is set to 0 then the TradeEntryOffset is on the Range line i.e. no offset).


QtyTradesAllowedPerDay – 1 (1 trade allowed. As soon as this trade is triggered the range horizontal lines will stop painting, as will the TradeEntryOffset lines. If 2 is selected then an additional trade will only be allowed after TP or SL is hit on the first trade, range horizontal and TradeEntryOffset lines will continue painting until last trade is taken or RangeEndTime or AllowTradeEndTime is reached).


TradingDaysActive_(Mon1/Tues2/Wed3/Thu4/Fri5/Sat6/Sun7) – 1,2,3,4,5 (EA will only operate on entered days, if a public holiday is on Wednesday for the working week I would enter 1,2,4,5 so that Wednesday is not traded) Or if you can enter the days instead of numbers even better!


TP%OfRange – 0.5 (0.5 = 50%, the TP will be set to half of the Range)


SL%OfRange – 0.25 (0.25 = 25%, the SL will be set to quarter of the Range)


MoveSLToBEWhen%ToTP – 0.8 (0.8 = 80% of TP, SL will be moved to entry when trade has reached 80% of TP).


LotRiskMoney - £100 (the lot size to trade will be equated from the SL size and be of a value of £100. If set to zero this method is not used).


LotRisk% - 1.00% (The lot size to trade will be equated from the SL size and 1% of the account balance. If set to zero this method is not used). Anticipate this will be the main method of computing lot size.


LotSize – 1 (the lot size to trade will be this entered value. If set to zero this method is not used).


UpperRangeLineColour – Select colour and line thickness of the chart upper horizontal range.


LowerRangeLineColour – Select colour and line thickness of the chart lower horizontal range.


TradeEntryOffsetLineColour – Select colour and line thickness of the chart TradeEntryOffset horizontal lines.


LookBackDays – 5 (on the charts the Range and TradeEntryOffset will be painted on 5 days of charts allowing the user to look back and review performance).


Display Only


ServerTime (this is a display of the broker server time to cross check range times and trade times).


RangeSize (this is a display of the range size between the upper range and lower range prior to trade being executed. The units will be points or pips depending on what was selected for ‘TradeEntryOffsetUnits’).









Archivos adjuntos:

PNG
Figure 1.png
270.8 Kb
PNG
Figure 2.png
360.0 Kb
PNG
Figure 3.png
138.0 Kb
PNG
Figure 4.png
262.1 Kb
PNG
Figure 5.png
226.1 Kb
PNG
Figure 6.png
260.5 Kb
PNG
Figure 7.png
278.9 Kb

Han respondido

1
Desarrollador 1
Evaluación
(392)
Proyectos
544
40%
Arbitraje
30
57% / 3%
Caducado
57
10%
Trabaja
Ha publicado: 11 ejemplos
2
Desarrollador 2
Evaluación
(428)
Proyectos
623
54%
Arbitraje
30
53% / 23%
Caducado
6
1%
Ocupado
3
Desarrollador 3
Evaluación
(2629)
Proyectos
3341
67%
Arbitraje
77
48% / 14%
Caducado
342
10%
Trabaja
Ha publicado: 1 ejemplo
4
Desarrollador 4
Evaluación
(22)
Proyectos
31
55%
Arbitraje
0
Caducado
1
3%
Trabaja
5
Desarrollador 5
Evaluación
(57)
Proyectos
84
26%
Arbitraje
24
13% / 58%
Caducado
7
8%
Trabaja
6
Desarrollador 6
Evaluación
(8)
Proyectos
8
0%
Arbitraje
0
Caducado
0
Libre
7
Desarrollador 7
Evaluación
(8)
Proyectos
11
0%
Arbitraje
6
33% / 67%
Caducado
2
18%
Libre
8
Desarrollador 8
Evaluación
(1)
Proyectos
2
0%
Arbitraje
0
Caducado
1
50%
Libre
9
Desarrollador 9
Evaluación
Proyectos
0
0%
Arbitraje
0
Caducado
0
Libre
10
Desarrollador 10
Evaluación
Proyectos
0
0%
Arbitraje
0
Caducado
0
Libre
11
Desarrollador 11
Evaluación
(1)
Proyectos
2
0%
Arbitraje
1
0% / 100%
Caducado
0
Libre
Ha publicado: 2 ejemplos
12
Desarrollador 12
Evaluación
(306)
Proyectos
550
35%
Arbitraje
79
32% / 42%
Caducado
198
36%
Trabajando
13
Desarrollador 13
Evaluación
Proyectos
0
0%
Arbitraje
0
Caducado
0
Libre
14
Desarrollador 14
Evaluación
(57)
Proyectos
89
43%
Arbitraje
4
0% / 100%
Caducado
3
3%
Trabaja
15
Desarrollador 15
Evaluación
(171)
Proyectos
195
42%
Arbitraje
13
8% / 54%
Caducado
9
5%
Libre
Ha publicado: 3 ejemplos
16
Desarrollador 16
Evaluación
(3)
Proyectos
3
33%
Arbitraje
0
Caducado
0
Libre
17
Desarrollador 17
Evaluación
Proyectos
0
0%
Arbitraje
1
0% / 100%
Caducado
0
Libre
18
Desarrollador 18
Evaluación
(24)
Proyectos
25
68%
Arbitraje
0
Caducado
1
4%
Trabajando
Ha publicado: 5 ejemplos
19
Desarrollador 19
Evaluación
(77)
Proyectos
241
73%
Arbitraje
7
100% / 0%
Caducado
1
0%
Libre
20
Desarrollador 20
Evaluación
(2294)
Proyectos
2888
63%
Arbitraje
122
44% / 25%
Caducado
428
15%
Trabaja
21
Desarrollador 21
Evaluación
Proyectos
0
0%
Arbitraje
0
Caducado
0
Libre
22
Desarrollador 22
Evaluación
(1)
Proyectos
1
0%
Arbitraje
0
Caducado
0
Libre
23
Desarrollador 23
Evaluación
(52)
Proyectos
89
25%
Arbitraje
8
75% / 13%
Caducado
44
49%
Trabaja
24
Desarrollador 24
Evaluación
(3)
Proyectos
1
100%
Arbitraje
3
0% / 100%
Caducado
0
Libre
25
Desarrollador 25
Evaluación
(16)
Proyectos
35
23%
Arbitraje
4
0% / 50%
Caducado
2
6%
Trabaja
Solicitudes similares
I already have an EA and willing to work together with a talented professional programmer so that we can make a profitable EA for the long-term. RazorQuant AI | Buy Trading Robot (Expert Advisor) for MetaTrader 5 RAZORQUANT AI v3.7 (MT5 EA) Purpose: Automated trading EA that combines classic technical filters with machine-learning signals and optional external AI (LLM) advice to decide BUY/SELL/HOLD and manage
step by step and structure this into a full IEEE 830 / ISO/IEC/IEEE 29148 style Requirements Specification. This format will include: Introduction System Overview Functional and Performance Requirements Traceability Matrix (linking requirements to test cases) Verification and Validation Compliance Standards 1. Introduction 1.1 Purpose The purpose of this document is to define the technical requirements for the
MQL5 Expert Advisor Development (MT5) I need a professional MQL5 developer to create a custom Expert Advisor (EA) for MetaTrader 5 with high accuracy, low drawdown, and fast execution . 🔹 Strategy Requirements: Timeframe: Scalping-friendly (M1 / M5) Indicators Used: EMA 9 EMA 12 EMA 21 VWAP (as a trend filter) RSI (for trade confirmation) 🔹 Trade Logic: Buy and Sell entries based on EMA crossover + VWAP direction
Project Summary We are looking for a highly experienced MetaTrader 5 (MT5) developer to build a pattern-based Expert Advisor (EA) focused on low-time-interval automation (15-second & 30-second logic). This is a pure MT5 project — no external platforms, no shortcuts. It should be very clean ,Efficient ,Precised ,Accurate ,No copy paste ,Low latency. If you have real experience with MT5 tick-based logic and
//+------------------------------------------------------------------+ //| XAUUSD Ultimate Institutional EA | //| Features: | //| - True swing-based market structure | //| - BOS sniper entries on M5 | //| - Liquidity sweep filter | //| - Partial TP + breakeven | //| - Visual BOS, swings, liquidity
Hello great developers, I need a very fast and hardworking deliver who know both back end and front end of trade copier system. I need a web based trade copier application, i already create the website aspect, only need the copier to be included. I actually have a limited time, and no room for unprofessional developers, kindly send your applications if you can actually get it done in the space of 2 days and my budget
I am looking for an experienced developer to create an automated trading bot on the Quantower platform based on my trading rules. The bot should execute trades automatically. Kindly bid for it if it is what you can code for me
// Add this to your EA after ExportState() function void SendToBase44(const string state, const string dir, double entry, double sl, double tp) { string url = " https://preview-sandbox--ee0a32a725b788974de435e8cef40b7a.base44.app/api/functions/receiveEAState "; string headers = "Content-Type: application/json\r\n"; string json = "{" "\"symbol\":\""+_Symbol+"\","
Project Summary We are looking for a highly experienced MetaTrader 5 (MT5) developer to build a pattern-based Expert Advisor (EA) focused on low-time-interval automation (15-second & 30-second logic). This is a pure MT5 project — no external platforms, no shortcuts. The selected freelancer will handle the project end-to-end, from strategy implementation to deployment and stability. If you have real experience with
1.Sinyal Perdagangan : Sinyal beli: garis MACD utama memotong garis sinyal ke atas (macd_current>signal_current && macd_previous<signal_previous). Sinyal jual: garis MACD utama memotong garis sinyal ke bawah (macd_current<signal_current && macd_previous>signal_previous). Gambar di bawah menunjukkan kasus beli dan jual. 2. Posisi ditutup pada sinyal yang berlawanan: Posisi beli ditutup pada sinyal jual, dan posisi

Información sobre el proyecto

Presupuesto
100+ USD
Plazo límite de ejecución
a 3 día(s)

Cliente

(2)
Encargos realizados4
Número de arbitrajes0