Strategy DayOpen Straddle for DAX

Viewing 15 posts - 211 through 225 (of 242 total)
  • Author
    Posts
  • #116810 quote
    FrancescoFrancesco
    Participant
    Veteran

    @Paul

    I will do more tests, but i have to ask you if you can attach the LATEST version of the strategy and on what timeframe you think should work on.

    It’s a little bit confusing trying to find the last legit one in 14 pages 😀

    #116812 quote
    PaulPaul
    Participant
    Master

    Hi, the latest is on page 14 v6p and is designed for the dax 1 minute.

    Thing is, I don’t like the 1 minute timeframe one bit, so if can be improved upon would be great (preferably 5/15 min or higher)!

    #116813 quote
    FrancescoFrancesco
    Participant
    Veteran

    Ok I had it under my eyes and I didn’t noticed sorry 😀
    There’s some variables optimizations to do also?

    Btw i agree with you, 1min seems too low.

    Anyway did you used the system on your live account in these years?

    #116818 quote
    PaulPaul
    Participant
    Master

    Yes on & off and made & lost money. I consider this my worst and boring system 🙂 The last version was to reduce clutter.

    Its concept is interesting, that why I still put time in it. Version v6p is running only in demo, still positive with around €100 this year. I make a strategy now on a higher timeframes. Minimum 5 minutes and with lost of trades. My best system has 900+ trades and goes way back on 1 hour timeframe, to put it in perspective!

    ps maybe change the 2 and 1.5 variables at the entry section. Better modify the code somehow to get better results.

    #116820 quote
    FrancescoFrancesco
    Participant
    Veteran

    @paul

    How can you say that a system with this results (around 3 gain loss ratio in the last 200k) is not profitable?

    And also, if this is the worst and boring, what is your best? D:

    #116837 quote
    PaulPaul
    Participant
    Master

    @Francesco Petrone I’am not saying the dax dayopen straddle it not profitable, it could be fine for coming months.

    I don’t want to put a pic of another strategy here. I will test its robustness later and will post in that topic.

    #116846 quote
    FrancescoFrancesco
    Participant
    Veteran

    No worries i was just surprised 😀

    Btw, this morning the breakeven function did not work, can you check it or is my impression?

    #116849 quote
    FrancescoFrancesco
    Participant
    Veteran

    No ok that was my impression, doesn’t matter 😀

    #116852 quote
    deletedaccount100622deletedaccount100622
    Participant
    New

    Oddly enough I was looking at this strategy last night, it only works well for long positions

    //-------------------------------------------------------------------------
    // Main code : DailyOpen Straddle DAX 3minMM
    //-------------------------------------------------------------------------
    //-------------------------------------------------------------------------
    // Main code : Straddle DayOpen
    //-------------------------------------------------------------------------
    
    // common rules
    DEFPARAM CUMULATEORDERS = false
    DEFPARAM PRELOADBARS = 10000
    
    // optional
    ExtraTradeCriteria=1
    
    once multiplier=1
    once fraction=72
    once newlevel=72
    once oldlevel=72
    once startpositionsize=1
    once positionsize=startpositionsize
    if strategyprofit>newlevel then
    multiplier=multiplier+0.05
    oldlevel=newlevel
    newlevel=strategyprofit+multiplier*fraction
    positionsize=multiplier*startpositionsize
    elsif strategyprofit<oldlevel and multiplier>=1 then
    newlevel=strategyprofit
    oldlevel=strategyprofit-multiplier*fraction
    multiplier=multiplier-0.05
    positionsize=multiplier*startpositionsize
    endif
    // positionsize and stops
    
    sl = 1  // % Stoploss 0.6
    pt = 0.8  // % Profit Target 0.4
    ts = 7  // % MFETrailing
    
    // indicator settigns
    NOP=15 //number of points
    TimeOpen=080000
    
    // day & time rules
    ONCE entertime = TimeOpen
    ONCE lasttime  = 100000
    ONCE closetime = 240000 // greater then 23.59 means it continues position overnight
    ONCE closetimeFriday=173000
    
    tt1 = time >= entertime
    tt2 = time <= lasttime
    tradetime = tt1 and tt2
    
    DayForbidden = 0 // 0=sunday
    df = dayofweek <> dayforbidden
    
    // setup number of trades intraday
    if IntradayBarIndex = 0 then
    longtradecounter = 0
    Shorttradecounter = 0
    Tradecounter=0
    endif
    
    // general criteria
    GeneralCriteria =  tradetime and df
    
    // trade criteria
    tcLong =   countoflongshares < 1 and longtradecounter < 1 and tradecounter <1
    tcShort =  countofshortshares < 1 and shorttradecounter < 1 and tradecounter <1
    
    // indicator criteria
    If time = TimeOpen then
    DayOpen=open
    endif
    
    if IntradayBarIndex = 0 then
    lx=0
    sx=0
    endif
    
    if high > DayOpen+NOP then
    lx=1
    else
    lx=0
    endif
    
    if low < DayOpen-NOP then
    sx=1
    else
    sx=0
    endif
    
    // trade criteria extra
    min1 = MIN(dhigh(0),dhigh(1))
    min2 = MIN(dhigh(1),dhigh(2))
    
    max1 = MAX(dlow(0),dlow(1))
    max2 = MAX(dlow(1),dlow(2))
    
    If ExtraTradeCriteria then
    tcxLong = high < MIN(min1,min2)
    tcxShort = low > MAX(max1,max2)
    else
    tcxLong = high
    tcxShort = low
    endif
    
    // long entry
    If GeneralCriteria then
    if lx and tcLong and tcxLong then
    buy positionsize contract at market
    longtradecounter=longtradecounter + 1
    tradecounter=tradecounter+1
    endif
    endif
    
    // short entry
    If GeneralCriteria then
    if sx and tcShort and tcxShort then
    sellshort 0 contract at market
    shorttradecounter=shorttradecounter + 1
    tradecounter=tradecounter+1
    endif
    endif
    
    // MFETrailing
    trailingstop = (tradeprice/100)*ts
    if not onmarket then
    MAXPRICE = 0
    MINPRICE = close
    priceexit = 0
    endif
    if longonmarket then
    MAXPRICE = MAX(MAXPRICE,close)
    if MAXPRICE-tradeprice(1)>=trailingstop*pipsize then
    priceexit = MAXPRICE-trailingstop*pipsize
    endif
    endif
    if shortonmarket then
    MINPRICE = MIN(MINPRICE,close)
    if tradeprice(1)-MINPRICE>=trailingstop*pipsize then
    priceexit = MINPRICE+trailingstop*pipsize
    endif
    endif
    If onmarket and priceexit>0 then
    sell at market
    exitshort at market
    endif
    
    // exit at closetime
    If onmarket then
    if time >= closetime then
    sell at market
    exitshort at market
    endif
    endif
    
    // exit friday at set closetime
    if onmarket then
    if (CurrentDayOfWeek=5 and time>=closetimefriday) then
    sell at market
    exitshort at market
    endif
    endif
    
    // build-in exit
    SET TARGET %PROFIT pt
    SET STOP %LOSS sl
    

    I took the above code live last night, tested over 100k bars with 1 point spread

    Capture-1.png Capture-1.png Capture2.png Capture2.png Capture3.png Capture3.png
    #116856 quote
    FrancescoFrancesco
    Participant
    Veteran

    @RoboFuturesTrader

    Tested on 200k on 3min and 1min timeframe, does not look good as the last paul’s version

    daxstraddletest3min.jpg daxstraddletest3min.jpg daxstraddletest1min.jpg daxstraddletest1min.jpg
    #116869 quote
    deletedaccount100622deletedaccount100622
    Participant
    New

    Please ignore the first 2 screenshots I hadn’t changed the opening time

    The systems side by side at 3 mins over 100k bars are shown in images 5 & 6 and I have turned off the money management so that we are both using one point per pip

    I chose the parameters that allowed for a smoother curve so you can see that my system has taken around 1/3 of the trades of Pauls system

    Mine is based from Pauls original posting so I am keen to test the new code and new time frames

    They are really two versions of the same system and when I looked down the optimisation report I preferred this version of the system, I have around 20 systems running now so I prefer to have fewer trades with a higher Gain/Loss ratio to help with management of capital

    More great work from @Paul for the community

    Paul thanked this post
    DOS1.png DOS1.png DOS-2.png DOS-2.png DOS-5.png DOS-5.png DOS-6.png DOS-6.png
    #116872 quote
    FrancescoFrancesco
    Participant
    Veteran

    Latest version of Paul works on 1min timeframe not on 3min.
    With that scenario, compared to the screen of your version, you have a slightly better ratio on gains, but the number of trades is less than half as you said.

    OT: You’re not working anymore on your blog? I would have liked to read you.

    #116875 quote
    deletedaccount100622deletedaccount100622
    Participant
    New

    Ah okay I will test on 1 Minutes, yes still working on the blog I just need to finish to the robo futures trader process section before developing the main blog

    If you sign up for the newsletter here https://robofuturestrader.com/newsletter-sign-up/ then I will be sending out updates

    To be honest it may end up as a vlog as I hate writing…….. not sure if you would have a preference of text/video or both

    #116878 quote
    FrancescoFrancesco
    Participant
    Veteran

    Subscribed to your newsletter immediately, and i started to follow you on insta too.

    Well, personally i prefer vlogs, and if your goal is to have a good niche I think they are the most functional thing.

    #116994 quote
    deletedaccount100622deletedaccount100622
    Participant
    New

    Thanks Francesco

    On the Daily Straddle topic is did some work on it last night and it reminded me why I don’t like 1 min systems, with only having 100k bars there just isn’t enough of a trading period to make a decision on the system so I will probably get a version up and running in demo and revisit it in the summer. I had the same problem with the code below (can’t find the original link now) in that it looked great for Dax and Brent for 3 months but then flipped when I began testing

    DEFPARAM FLATBEFORE=090100
    // Festlegen der Code-Parameter
    DEFPARAM CumulateOrders = false // Kumulieren von Positionen deaktiviert
    
    // einmalige werte
    
    once size = 0.5
    once profi = 20
    once in = 1
    once korrek = 1
    sl = 35
    // Verhindert das Trading an bestimmten Wochentagen
    daysForbiddenEntry = OpenDayOfWeek = 6 OR OpenDayOfWeek = 0
    noEntryAfterTime = 100000
    timeEnterAfter = time < noEntryAfterTime
    
    // einen trade nur
    IF (CurrentTime = 010000) then
    onetrade = 0
    ENDIF
    // Bedingungen zum Einstieg in Long-Positionen
    IF (CurrentTime = 085900) then
    high7 = HIGHEST[120](high)
    low7 = LOWEST[120](low)
    ENDIF
    IF (close > high7) AND (CurrentTime >= 090100) then
    onetrade = 1
    ENDIF
    
    IF  (CurrentTime >= 090100) AND not daysForbiddenEntry AND (onetrade = 0) AND timeEnterAfter THEN
    BUY size CONTRACT AT high7 STOP
    ENDIF
    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
    ENDIF
    
    // Bedingungen zum Einstieg in Short-Positionen
    IF close < low7 AND (CurrentTime >= 090100) then
    onetrade = 1
    ENDIF
    IF (CurrentTime >= 090100) AND not daysForbiddenEntry AND (onetrade = 0) AND timeEnterAfter THEN
    SELLSHORT size CONTRACT AT low7 STOP
    ENDIF
    IF (SHORTONMARKET = 1) then
    onetrade = 1
    in = 1
    korrek = 0
    //s1 = POSITIONPRICE - 0.0008
    s2 = POSITIONPRICE + sl
    //EXITSHORT at s1 LIMIT
    EXITSHORT at s2 STOP
    ENDIF
    
    // korrektur
    IF (LONGONMARKET < 1) AND (SHORTONMARKET < 1) then
    in = 0
    ENDIF
    
    IF in = 0 and korrek = 0 then
    d1 = POSITIONPERF(1) > 0
    d2 = POSITIONPERF(1) < 0
    IF d1 and size > 1 then
    size = size - 1
    korrek = 1
    ELSIF d2 then
    size = size + 1
    korrek = 1
    ENDIF
    ENDIF
    
    
    // Stops und Targets
    SET STOP pLOSS 60
    SET TARGET pPROFIT sl
    
    // Performance
    IF STRATEGYPROFIT > profi then
    size = 1
    profi = profi + 20
    ENDIF
    
Viewing 15 posts - 211 through 225 (of 242 total)
  • You must be logged in to reply to this topic.
ProRealAI ProRealAI New

Stuck on this ProBuilder code?

Describe what this topic is trying to build, in plain English, and ProRealAI writes the ProRealTime™ indicator, screener or system for you.

Available in 7 languages
Try ProRealAI

Strategy DayOpen Straddle for DAX


ProOrder: Automated Strategies & Backtesting

New Reply
Author
author-avatar
Paul @micky75d Participant
Summary

This topic contains 241 replies,
has 39 voices, and was last updated by MonobrowMonobrow
5 years, 9 months ago.

Topic Details
Forum: ProOrder: Automated Strategies & Backtesting
Language: English
Started: 11/04/2018
Status: Active
Attachments: 100 files
ProRealCode ProRealCode
Loading...