Apuntarme a la lista de espera
Estrategias / Breakout / Morning Range Breakout

Morning Range Breakout con dimensionamiento adaptativo

En la primera barra de cada día, el sistema coloca una orden stop de compra en el máximo de 120 barras y una orden stop de venta en el mínimo de 120 barras. Solo se permite una operación al día. Busca 35 puntos con un stop fijo de 60 puntos.

BreakoutLargos & cortosSwingPetróleo BrentDiario
1.89Profit factor
7,714Beneficio neto EUR
74.19%Tasa de acierto
434Operaciones
-719Max drawdown
17.77Operación media

Mejor ejecución de 39. Brent Crude, Diario, spread 3, de la ejecución pf:2026-09-15-BRENT-D.tsv:3.

Reglas de entrada, largos

  1. Solo si hoy no se ha tomado ni activado ninguna operación y no es una barra de fin de semana

Reglas de entrada, cortos

  1. Solo si hoy no se ha tomado ni activado ninguna operación y no es una barra de fin de semana

Reglas de salida

  1. Stop a 35 unidades de precio del precio medio de entrada
  2. Stop loss fijo 60 puntos

Condiciones de la prueba

PeriodoHasta 2026-09-15
InstrumentoBrent Crude, Diario
Spread3 puntos
Contratos1
Capital inicial1,000,000
CostesSolo spread. No se incluyen comisiones ni financiación overnight.
BarrasHasta 200,000 barras, menos cuando el instrumento tiene menos historial
Última prueba2026-09-16
Parámetros (8)
stopDistance
Distancia en precio del stop gestionado y del objetivo de beneficio
35
rangeBars
Barras del rango del breakout, tomadas en la primera barra de cada día
120
stopLossPoints
Stop protector fijo en puntos
60
profitStep
El tamaño se reinicia a 1 cada vez que el beneficio de la estrategia gana esta cantidad
20
positionSize
Contratos; crece tras una pérdida, se reduce tras una ganancia
1
profitMark
Nivel de beneficio de la estrategia que activa el siguiente reinicio del tamaño
20
inTrade
Valor inicial del indicador de operación abierta, para que el tamaño no se ajuste antes de la primera operación
1
sizeAdjusted
Valor inicial del indicador de tamaño ajustado, para que el tamaño no se ajuste antes de la primera operación
1

Todas las ejecuciones

Mercados y marcos temporales probados

MercadoMarco temporalPFOperaciones% de aciertoNetoMax DD
Petróleo BrentMejor ejecuciónDiario1.89 43474.197,714 EUR-719
USD/JPYDiario1.86 1,08976.121,338,700 JPY-76,500
GBP/USDDiario1.70 1,09474.3118,262 USD-1,989
Dow Jones4 horas1.68 62671.7310,622 EUR-1,550
Oro10 min1.43 46855.777,053 EUR-1,102
OroDiario1.39 27860.434,570 EUR-2,200
Oro15 min1.37 52854.557,646 EUR-1,961
PlataDiario1.34 42560.7129,069 USD-6,934
Dow Jones1 hora1.33 1,06561.6015,281 EUR-1,498
DAX 40Diario1.30 95462.7912,668 EUR-2,732
Petróleo crudo de EE. UU.4 horas1.29 1,04459.8715,081 EUR-2,352
Plata4 horas1.28 85756.0156,137 USD-7,984
Petróleo Brent4 horas1.28 74361.249,972 EUR-3,412
USD/JPY10 min1.25 91566.78802,240 JPY-282,690
EUR/USDDiario1.23 1,05467.4687,805 USD-28,557
Oro4 horas1.23 46852.996,138 EUR-3,127
USD/JPY15 min1.21 1,11467.24865,410 JPY-238,610
Nikkei 225Diario1.21 1,16073.1012,846 USD-5,694
Oro5 min1.21 36454.954,571 EUR-3,052
Dow Jones30 min1.19 1,34758.9517,804 EUR-6,660
Oro1 hora1.18 72852.888,638 EUR-3,600
S&P 500Diario1.18 40954.284,457 EUR-2,346
USD/JPY5 min1.16 52264.94325,240 JPY-130,880
GBP/USD4 horas1.15 1,63764.9413,171 USD-3,585
Nasdaq 1004 horas1.13 1,23557.0012,906 EUR-9,310
Oro30 min1.13 72451.807,513 EUR-4,038
USD/JPY4 horas1.12 1,12964.48438,870 JPY-180,040
USD/JPY1 hora1.11 2,05864.82922,930 JPY-335,090
Petróleo crudo de EE. UU.1 hora1.11 1,89654.5420,962 EUR-7,692
Nasdaq 10010 min1.11 1,26852.6813,948 EUR-7,963
Nasdaq 10015 min1.10 1,80852.3218,077 EUR-13,562
Petróleo Brent1 hora1.10 1,36553.4814,300 EUR-10,534
S&P 50030 min1.10 1,19351.5511,913 EUR-7,131
Petróleo crudo de EE. UU.30 min1.08 2,42652.9326,200 EUR-19,195
USD/JPY30 min1.07 1,81265.18588,350 JPY-559,030
S&P 50015 min1.07 1,08750.417,498 EUR-4,808
EUR/USD4 horas1.06 1,52564.2066,798 USD-60,183
GBP/USD1 hora1.06 3,05863.8711,410 USD-7,294
USD/JPY1 minn/a 8768.97122,500 JPY-50,710

Gráficos

Resultados por ejecución

Las 10 mejores de 39 ejecuciones. La lista completa está en la tabla de arriba.

Por encima de 1.0 ganó dinero, por debajo de 1.0 perdió dinero.

El código

ProBuilder, reescrito al estándar de la casa

// ============================================================
// Morning Range Breakout
// ProRealAlgos Strategy Library  |  prorealalgos.com
// Type: Breakout
// Direction: Long & short
// Timeframe tested: Daily
// ============================================================

// --- Settings ---
DEFPARAM CumulateOrders = false
DEFPARAM PreloadBars = 1000

// --- Parameters ---
stopDistance = 35             // price distance of the managed stop and the profit target
rangeBars = 120               // bars in the breakout range, taken at the first bar of each day
stopLossPoints = 60           // hard protective stop in points
profitStep = 20               // size resets to 1 each time strategy profit gains this much

ONCE positionSize = 1         // contracts; grows after a loss, shrinks after a win
ONCE profitMark = 20          // strategy profit level that triggers the next size reset
ONCE inTrade = 1              // start as if in a trade, so no size change before the first trade
ONCE sizeAdjusted = 1         // start as already adjusted, same reason

// --- Indicators ---
weekendBar = OpenDayOfWeek = 6 OR OpenDayOfWeek = 0

// New day: allow one trade and capture the range.
IF Day <> Day[1] THEN
  tradeTaken = 0
  rangeHigh = Highest[rangeBars](high)
  rangeLow = Lowest[rangeBars](low)
ENDIF

61 líneas más: las reglas de entrada y salida.

Configuración

Cómo cargarla

  1. Copia el código con el botón de copiar del bloque de código.
  2. En ProRealTime, abre un gráfico del instrumento y el marco temporal que quieras probar y luego abre ProOrder > New trading system y elige "Create with programming".
  3. Pega el código, dale un nombre al sistema y guárdalo.
  4. Haz clic en "Backtest", ajusta tu propio spread y position size, y ejecútala antes de considerar operarla en real.
Lee esto primeroDebilidades conocidas4 puntos
  • El position size crece 1 contrato después de cada operación perdedora y se reinicia cuando el beneficio supera la siguiente marca de 20 unidades. Una serie de pérdidas puede poner varios contratos en riesgo a la vez.
  • El stop fijo (60 puntos) es mayor que el objetivo (35 puntos). La tasa de acierto del 74.19% en Brent Crude Diario sostiene el resultado, y una caída de la tasa de acierto perjudicaría rápido.
  • Los objetivos y stops basados en puntos no escalan entre mercados. USD/JPY 30 minutos generó 588,350 JPY pero con un drawdown de 559,030 JPY.
  • A pesar del nombre, DAX 40 no fue el mejor mercado. DAX 40 Diario tuvo un profit factor de 1.3.

Preguntas

Sobre esta estrategia

¿Puedo ejecutarla en ProOrder?

Sí. Las órdenes stop, los objetivos y la lógica de dimensionamiento están todos en el código, y toma como máximo una operación al día.

¿Qué instrumentos se probaron?

Brent Crude Diario fue el mejor, con un profit factor de 1.89. Le siguieron USD/JPY Diario (1.86), GBP/USD Diario (1.7) y Dow Jones 4 horas (1.68), y casi todas las demás filas estuvieron por encima de 1.

¿Cuánto capital necesita el dimensionamiento?

El peor drawdown en Brent Crude Diario fue de 718.9 EUR, empezando desde 1 contrato. Como el tamaño aumenta tras las pérdidas, una serie de pérdidas más larga que la del backtest costaría más que eso.

¿Por qué da buenos resultados en las pruebas con barras diarias?

En gráficos diarios cada barra es la primera barra de un nuevo día, así que el sistema puede colocar nuevas órdenes en cada sesión. Los gráficos intraday como Gold 10 minutos también funcionaron, con un profit factor de 1.43.

Relacionado

Estrategias como esta

Resistance Breacher

Mejor ejecución en el mismo mercado, Brent Crude.

1.58 PF · 142 operaciones

Buy After Price Fall

Un profit factor similar.

1.88 PF · 312 operaciones

Breakout Regime Filter

También es una estrategia breakout.

6.28 PF · 70 operaciones

¿Quieres aprender cómo el position size cambia un sistema como este? Apúntate a la lista de espera de ProRealAlgos.

La comunidad de ProRealAlgos obtiene las reglas completas, el código completo y la cartera automatizada.

Los resultados pasados de backtest no garantizan resultados futuros. Esto no es asesoramiento financiero. Seleccionado y mantenido por ProRealAlgos. ProRealTime™ es una marca comercial de ProRealTime SAS. prorealalgos.comEstadísticasDocumentación