EURUSD Morning Entry V1

Viewing 15 posts - 1 through 15 (of 68 total)
  • Author
    Posts
  • #100356 quote
    Paul
    Participant
    Master

    A strategy build on an idea posted by imokdesign

    EuroUSD mini with 5 contracts

    Timeframe 15 minutes

    Spread 1

    It’s setup for 15 minutes, works also from 1 minute to 30 minutes.

    (timezone UTC+2.00 Europe/Amsterdam Central European Summer Time)

    TempusFugit thanked this post
    EURUSD-15MIN.jpg EURUSD-15MIN.jpg eurusd-min-15601932744lcp8.jpg eurusd-min-15601932744lcp8.jpg
    #100403 quote
    Nicolas
    Keymaster
    Master

    Hi Paul, thanks a lot for sharing the strategy, but I did not find the code in your post? How does it works please? 😉

    #100468 quote
    Paul
    Participant
    Master

    Yeah something went wrong. Happens quickly 🙂

    //EURUSD 15M Morning Entry
    //15 MIN
    DEFPARAM CUMULATEORDERS = false
    DEFPARAM FLATBEFORE = 100000
    DEFPARAM FLATAFTER = 140000
    
    if time=140000 then
    level=high[1]
    endif
    
    c1= close < dopen(0)
    c2= high  < dhigh(1)
    c3= level > dlow(1)
    c4= level > dlow(2)
    
    bu= BollingerUp[20](close)
    bd= BollingerDown[20](close)
    ba= (bu+bd)/2
    
    c5= ba<ba[1] or high > bu
    
    if c1 and c2 and c3 and c4 and c5 THEN
    sellshort 5 contract at market
    endif
    
    SET STOP %LOSS 0.5
    
    
    stefou102, Andyswede, jebus89 and 5 others thanked this post
    EURUSD-15M-Morning-Entry.itf Screenshot-2019-06-12-at-03.32.47.jpg Screenshot-2019-06-12-at-03.32.47.jpg
    #100472 quote
    jebus89
    Participant
    Master

    This is very interesting! The results looks more even on 30 min, but theres less max drawdown and more profit on 15 min so i guessing thats what im gonna run this one on 🙂

    1. How you came up with this? Is it all by urself or is it from the internet/ a book?

    2. Im mainly wondering about the time (10:00 and 14:00) because You cant optimize these values, did you just guess them or whats the thinking behind them?

    3. Why is there no long trades? Whats the reasoning behind this?

    The results look robust and good, 1000 trades, 8 years backtesT, very few degrees of freedom.

    Im running this in demo a month or 2 then im gonna run it live for sure.

     

    Interesting results: If you remove all conditions and only keep C1, you get a pretty good result just from that 😛

    You could actually remove C1 as well, just use like “close > 0” and you will still get 54% and every year = green.

    So the Time when you can trade is basicly 90% of the strategy. The rest of the filters do remove about 1150 trades (u get 2K trades if u take the trade using only “close > 0”)

    So i guess the “where did you get the code / why use 10:00 and 14:00?” Is a pretty decent question. Its a crazy anomaly thats for sure.

    #100473 quote
    jebus89
    Participant
    Master

    Would also like to add that it also looks fairly nice for other EUR/XXX markets. Like eur/NOK, eur/GBP, eur/SGD. Not saying im going to trade it on all those but the results are profitable (without spread at least) which is giving the backtest some more robustness at least for me.

    The strategy is not a huge fan of other currencies that do not include the EURO, which im guessing is mainly because of the 10:00 – 14:00 setting.

    Im a fan of this strategy thats for sure. I think its funny to see how its mainly the time that “makes the trade” profitable and good. The filters are for sure doing some work as well but i think its possible to find different filters as well but i like how your filters have no degrees of freedom, meaning theres no variables to optimize. Just using daily high/low and high/low of the candle is a good thing in my book.. Less optimizing = less chance of curvefitting…

    One thing that i dont like so far is the downwards sloping trend in the EQ if you look at quarterly or monthly bars in the detailed report. It can be just random of course so its no biggie but its a tiny red flag, for me at least.

     

    //EURUSD 15M Morning Entry
    //15 MIN
    DEFPARAM CUMULATEORDERS = false
    DEFPARAM FLATBEFORE = 100000
    DEFPARAM FLATAFTER = 140000
    
    c1= close > 0
    
    if c1  THEN
    sellshort 1 contract at market
    endif
    
    SET STOP %LOSS 0.5

    Try this one on 1h timeframe on eur/SGD or eur/NOK (no spreads)

    Looks kinda crazy good.. On eur/USD its profitable only after 2005.. Not sure what to make of that

    #100483 quote
    Paul
    Participant
    Master

    To answer a few questions Jebus89;

    1. The idea was posted by Imokdesign who found the idea on internet.
      1. https://www.trading-treff.de/wissen/handelsstrategie-fuer-daytrader-im-eurusd-backtest-inklusive
    2. Optimising only time confirmed the findings from the original idea.
    3. Basically up to now I just looked at the short trades and tried to make the equity curve and drawdown better.

    I started blank as you did above.

    Then added simple optimised filters i.e.

    If v3=1 then
    v13=open
    elsif v3=2 then
    v13=high
    elsif v3=3 then
    v13=low
    elsif v3=4 then
    v13=close
    endif
    
    If v2=1 then
    v12=dopen(1)
    elsif v2=2 then
    v12=dhigh(1)
    elsif v2=3 then
    v12=dlow(1)
    elsif v2=4 then
    v12=dclose(1)
    endif

    to find a good combination and to reduce the number of trades, so optimised v2/v3 in range 1-4 and tried i.e. v13>v12

    Because the code is so simple, it goes quick.

    To improve btw, you can add to only enter before 12u or 13u.

    Besides that I found that

    level=highest[2](low)[1]

    added better results too.

    Thanks for the finding of other markets! I didn’t have a look before but indeed something as eurNOK looks great!

    I’am curious what other kind of filters spring to mind!

    #100485 quote
    TempusFugit
    Participant
    Veteran

    Very interesting system indeed, thanks Paul!

    Trying to shred some ligth to the logic of the system I have to say that there are studies about the contrarian effect in the currencys of their markethour. In this case, in the Eur/Usd, the price tend to go down in the morning and up in the afternoon. I am trying to attach here a paper about this effect, I don´t know if it´s possible. Actually I developed myself a strategy based in this effect. So I guess this effect is working for this strategy additionally to its other entry conditions.

    O-jay8 and Paul thanked this post
    Swiss-Banking-Working-Paper.pdf
    #100504 quote
    stefou102
    Participant
    Veteran

    seems to be a very robust strategy, thanks for sharing!

    tried a few filters, but none really improved the backtest so far, except for one.

    My filter idea was that if the day before, the currency jumped a lot, than you shouldn’t short it. I tried first with 1%, but after optimisation on 200k I settled on 0.65%

     

    c5= (dclose(1)-dopen(1))/dopen(1)*100<0.65
    #100506 quote
    GraHal
    Participant
    Master

    I don’t get results anywhere near like Paul’s image above.

    I’ve tried be subtracting 1 hour off the times (Paul in Netherlands is 1 hour ahead of me in UK) and also it is better on 10 min TF but still nowhere near as good as Paul’s.

    Attached are my results, any comments appreciated.

    I know I’ll try it on the eurusd mini, nut I wouldn’t have thought it made that much difference?

    I’ll report back

    EDIT/PS

    Results are worse still on eurusd mini on CFD … same as you guys … see Image 2

    Paul-4.jpg Paul-4.jpg Paul-5.jpg Paul-5.jpg
    #100510 quote
    stefou102
    Participant
    Veteran

    I changed a bit the logic to let run winners.

    
    //EURUSD 15M Morning Entry
    //15 MIN
    DEFPARAM CUMULATEORDERS = false
    DEFPARAM FLATBEFORE = 100000
    DEFPARAM FLATAFTER = 200000
    
    positionsize=3
    
    if time=140000 then
    level=highest[2](low)[1]
    endif
    //
    c1= close < dopen(0)
    c2= high  < dhigh(1)
    c3= level > dlow(1) and level > dlow(2)
    c4= (dclose(1)-dopen(1))/dopen(1)*100<0.65
    
    ba= average[20](close)
    dst = STD[20](close)
    Bu = ba + (2 * dst)
    
    
    
    c5= ba<ba[1] or high > bu
    
    
    if c1 and c2 and c3 and c4 and c5 and time<130000 THEN
    sellshort positionsize contract at market
    
    endif
    
    
    if shortonmarket and time=141500 and positionperf(0)*100<0.3 then
    exitshort at market
    
    else
    enableBreakeven=1 // mettre à 1 pour activer le breakeven, sinon 0
    BESG = 0.25// % break even stop gain
    BESL = 0 // % break even stop level
    underlaying=0.01
    
    if enableBreakeven then
    if not onmarket then
    newsl=0
    endif
    if ((longonmarket and shortonmarket[1]) or (longonmarket[1] and shortonmarket)) then
    newsl=0
    endif
    if longonmarket then
    if close-tradeprice(1)>=(((tradeprice(1)/100)*BESG)/(underlaying/100))*pointsize then
    newsl=tradeprice(1)+(((tradeprice(1)/100)*BESL)/(underlaying/100))*pointsize
    endif
    endif
    if shortonmarket then
    if tradeprice(1)-close>=(((tradeprice(1)/100)*BESG)/(underlaying/100))*pointsize then
    newsl=tradeprice(1)-(((tradeprice(1)/100)*BESL)/(underlaying/100))*pointsize
    endif
    endif
    if longonmarket and newsl>0 then
    sell at newsl stop
    endif
    if shortonmarket and newsl>0 then
    exitshort at newsl stop
    endif
    
    endif
    
    endif
    
    SET STOP %LOSS 0.4
    SET TARGET %profit 1
    
    GraHal, Balmora74, Paul, matsodont and jebus89 thanked this post
    Capture.png Capture.png
    #100512 quote
    Magifina
    Participant
    Master

    Grahal, have you tried UTC+2 time zone? With this one you should get similar results than Paul.
    I had a backtest like you with the UTC+0 time zone.

    GraHal thanked this post
    #100513 quote
    GraHal
    Participant
    Master

    Thank you Stefou … results are much better now (top curve on attached)!

    I will set it going on Demo Forward Test.

    PaulStef.jpg PaulStef.jpg
    #100515 quote
    Balmora74
    Participant
    Veteran

    Thanks a lot Paul for sharing this spectacular & original strategy !

    Paul thanked this post
    #100529 quote
    Paul
    Participant
    Master

    @stefou102

    What you did worked well and improved the code. Nice one!

    stefou102 thanked this post
    #100531 quote
    GraHal
    Participant
    Master

    One could conclude that the eurusd data changed overnight as I now get a better curve (lower curve in attached image) with Paul’s original code than Stefou’s code.

    Spread = 1 in each version and both with times set for UTC +1.

    Anybody else seeing similar differences today??

    mrnent.jpg mrnent.jpg mrnent-2.jpg mrnent-2.jpg mrnent-3.jpg mrnent-3.jpg
Viewing 15 posts - 1 through 15 (of 68 total)
  • You must be logged in to reply to this topic.

EURUSD Morning Entry V1


ProOrder: Automated Strategies & Backtesting

New Reply
Author
author-avatar
Paul @micky75d Participant
Summary

This topic contains 67 replies,
has 20 voices, and was last updated by Vonasi
6 years, 1 month ago.

Topic Details
Forum: ProOrder: Automated Strategies & Backtesting
Language: English
Started: 06/11/2019
Status: Active
Attachments: 33 files
Logo Logo
Loading...