DAX 30 – Morning range breakout with order size increase

DAX 30 – Morning range breakout with order size increase

This automatic trading robot use the morning range from 7 o’clock to 9 o’clock of the Dax 30 on a 1 minute timeframe basis. If the price breaks the range up or down, a trade with fixed StopLoss and TakeProfit is set.

This strategy is another version of the famous Open Range Breakout methodology applied on DAX.



Share this

Risk disclosure:

No information on this site is investment advice or a solicitation to buy or sell any financial instrument. Past performance is not indicative of future results. Trading may expose you to risk of loss greater than your deposits and is only suitable for experienced investors who have sufficient financial means to bear such risk.

ProRealTime ITF files and other attachments : How to import ITF files into ProRealTime platform?

New! PRC is also now on YouTube, subscribe to our channel for exclusive content and tutorials

  1. Robin von Bauhn • 281 days ago #

    Thank you for sharing!
    Although I have a couple of questions:
    Why 1 min? Since the range is based over 2h and you enter with stop orders you might as well use 15m to get a larger sample size?
    And why a fixed sl/tp? Especially with a small sample size all you do is increase risk of curvefitting?

    Best regards,

    • beeb • 279 days ago #

      nice that you like the strategy.

      For 1 minute I have chosen to avoid the first minute in the DAX at 9 o’clock, because this is often very turbulent.
      The entrance is at 9 clock 1.

      For the SL / TP I’m still testing myself and I’m not sure how to improve the performance.
      Do you have an idea how to do that?

      Best Regards

  2. mr blue • 281 days ago #

    I have a similar approach running – but yours is also very smart – thanks for sharing!

  3. Stefan Martinali • 276 days ago #

    In the buy long if statement, shouldnt you enter long if onetrade = 1 instead of 0 (row 30)?

  4. JanWd • 273 days ago #

    Was meinst du mit dieser Kode ?
    IF (LONGONMARKET = 1) then
    onetrade = 1
    in = 1
    korrek = 0
    //l1 = POSITIONPRICE + 0.0008
    l2 = POSITIONPRICE – sl
    //sell at l1 LIMIT
    sell at l2 stop

  5. JanWd • 273 days ago #

    Mr Beep, nice strategy you have build !

    I played around with your code, and made my own variation on your code, see below, just an alternative way of coding (less static)

    I am not convinced (yet) about the reliability of the outcomes : if using the code on 100.000 bars, it shows no profit for the first 50.000 bars, I personnally am afraid of overfitting.
    Maybe you have a different opinion.

    Your question : ” For the SL / TP I’m still testing myself and I’m not sure how to improve the performance.
    Do you have an idea how to do that? ===> An good option is to use “Variable optimalization”, for the optimal Take Profit values for short and long positions, could also be used for number of highest and lowest bars to be taken (instead of 120 bars) See also page 30 of the manual, https://www.prorealtime.com/en/pdf/probacktest.pdf

    Kind regards,


    DEFPARAM CumulateOrders = true // Kumulieren von Positionen aktiviert
    Defparam FLATAFTER = 163000 // Verhindert das Trading nach xx:xx Uhr

    DaysForbiddenEntry = (DayOfWeek = 6 OR DayOfWeek = 0) // Verhindert das Trading an bestimmten Wochentagen
    Handelszeit = (Time >= 90000 and Time high7 then // Bedingungen zum Einstieg in Long-Positionen
    BUY size CONTRACTS AT high7 STOP
    sl = round((77/10000 * close)) // stop loss
    pll = round((VARIABLE OPTIMIZATION 3 PL/10000 * close)) // take profit long
    else // Bedingungen zum Einstieg in Short-Positionen
    IF close < low7 then
    sl = round((77/10000 * close)) // stop loss
    pss = round(VARIABLE OPTIMIZATION 4 PS/10000 * close) // take profit short

  6. noisette • 250 days ago #

    Thank you for this code that seems to work well. But, if i’m not wrong, we can have buy and short conditions at the same time. So how can the code “decide” between sell and short?

  7. noisette • 248 days ago #

    sorry, I was wrong in my previous message: it’s not possible to have both conditions at the same time

  8. dreif123 • 232 days ago #

    hi beeb,
    i watched your BOut strategy and i like it very much.
    your code allows only one trade. (long or short).
    what has to be changed in your code, if i like to have maximum 2 trades , so one short and one long, if the events of your code will be matched.
    thx for your support

  9. Dominik • 231 days ago #

    Hallo beeb,
    ich schreibe kurz auf Deutsch und falls es von Wert ist übersetze ich es gerne.
    Vielen Dank für Deine Strategie … sieht schon mal super aus.
    Habe eben anstatt dem SL einen 45 TrailingStop verwendet und TP = 55 (hat mir die Analyse so raus geworfen).
    Durch den Trailing Stop finden keine so großen Abbrüche mehr statt.
    Sollte doch real dann auch funktionieren …oder???
    Es sei denn ich habe etwas übersehen.
    Beste Grüße

    • beeb • 225 days ago #

      Hallo Dominik, das mit dem deutsch schreiben kommt mir sehr gelegen. Komme auch aus Deutschland.
      Also mit deinen werten komme ich auf eine kleine Verbesserung was den Gewinn angeht aber auch auf einen Max. Drawdown von 890,20 € .
      Wenn ich die werte so lasse auf einen Drawdown von 0 €. und die Ratio ist auch minimal besser 0,03 punkte, ist aber denke ich bei dem unterschied zu vernachlässigen.
      Man kann sicher noch an ein paar schrauben drehen und kitzelt noch ein bisschen Performanz raus.
      Es gilt nur die richtigen Regler zu finden 😉
      Gruß Benny

  10. Dominik • 231 days ago #

    // Stops und Targets

  11. vlongobardo67 • 211 days ago #

    hi Beeb, I imported the file in my platform but is does open any order.
    What is wrong , what should I check ?

  12. fserra • 47 days ago #

    Ciao, scusami ma non mi esegue il back test, da cosa può dipendere?

Register or


avatar avatar avatar avatar avatar avatar avatar avatar avatar avatar avatar avatar avatar avatar avatar avatar

+2 more likes

Related users ' posts
jebus89 Guessing photo is 100k bars? Because 200K bars was not good. Also u got alot of loosing tra...
PastaPesto jebus89, thank you for your feedback. You are correct, the backtest is made on 100K. The bad...
jebus89 The more loss in a row you have, the more big winners u need in the future. With a belo 50% ...
Paul Thanks GraHal for the suggestion. I will open a topic for the strategy. Dany, there are sti...
Paul updates are posted in topic below https://www.prorealcode.com/topic/dayopen-straddle-for-da...
eugenio buongiorno paolo , volevo farti i complimenti x il lavoro fatto , funziona molto bene sul 3 ...
5 months ago
Bebbo Thank you for your contribution. I have tested your system on some instruments and I like i...
Nicolas Thank you Xusto. Thank you a lot for your contribution :) Since your code is a Pathfinder'...
Xusto Hello, Fully Agree, I will update it with your advice. Btw Can would you like share you co...
Petersson Kristian Hi when I do back test I get 0 results, what do I do wrong? Trade Well Chris
JohnScher Yes i did before, see library/strategys/repulse and dpo https://www.prorealcode.com/proreal...
JohnScher Don't know what you're doing wrong. Import ITF and observe time zone settings. This should...
osupero https://www.screencast.com/t/QmSXRbBR
osupero https://www.screencast.com/t/2fCW8fkGsOeZ....solo posiciones largas por ahora
osupero https://www.screencast.com/t/MIaSZ2PRg
Eric If you have a high percentage winners and the trades are closed with take profit the spread ...
Casenova I Agree with you JaunJ, and Yes Eric, what you say makes sense too. Optimizing the Stop Loss...
ET Thanks for the system Casenova. In determining the high of the past 4 bars, is there a reaso...
JanWd Hey Doctrading, I tried your code, optimising the A and V and the RSI period, see below. ...
Glen Marquis This will work as there is plenty of room for the Target before the Stop, yet the Stop would...
magicT I did a copy and paste of this code and PRT 10.3 returns a synthax mistake: OneTradePerD...
FULVIO09 Attualmente non c'è sufficiente volatilità : la condizione "C0 = AverageTrueRange[1500](Clos...
vlongobardo67 Ma io intendevo in backtest ! Scusa non l’ho menzionato.
ciniselloftse salve fulvio .il trading sistem e sempre profittevole?
10 months ago
Nicolas https://www.prorealcode.com/topic/mt4-fractal-box/
matthieuatd Bonjour Merci pour ce code il m'apporte beaucoup par contre est il possible que tu réalises...
Nicolas Merci, faire une demande dans le forum approprié.
Yannick TradingDayLong = dayofweek = 1 or dayofweek = 2 or dayofweek = 3 or dayofweek = 4 or dayof...
Marlon Hey JohnScher, your code works fine, but my results aren't as good as yours. Even if I use ...
DarioMazza Bha... this code dont work. gg
12 months ago
ALE P01 , it’s the first patner of the indicator, I hope to add others in future.
ALE We can discuss about the strategy here: https://www.prorealcode.com/topic/scalping-indicator/
Alai-n Merci pour ce travail...
patmaba merci Alai-n. C'est ma première participation sur prorealcode, merci pour à toi pour ton co...
Yannick Hello There is a mistake in trailing stop code, I think that this should fix the problem s...
Paul About the trailing-stop the way it's coded. That works for backtesting only, just look at th...
Jonny sorry paul, but system says that is not possible to put many stop order combined...what have...
1 year ago
TempusFugit Thanks Bin, nice code, I can use several ideas of the way you build it
DarioMazza Thanks Bin, great concentration, i understand the first idea, but may u indicate me the asse...
Bin Hi Mazza This robot is optimized for DAX30.