Strat – Bol break with vol filtr DAX.H1 [Seemore]

Viewing 14 posts - 1 through 14 (of 14 total)
  • Author
    Posts
  • #37419 quote
    Maz
    Participant
    Veteran

    RE: https://www.prorealcode.com/prorealtime-trading-strategies/dax-bollinger-break-v

    “Dax Bollinger break with volume. 1 Hour”

    Just opening a forum topic for this breakout strategy idea posted by Seemore Profit. I’m a bit short on time but wanted to post a quick optimization. Also I have a few more points about this.

    • Not really a fan of hard coded vars – volume threshold should be dynamic
    • Bollenger periods also hard coded; could be dynamic
    • Needs some proper money-management code. Hard coded basis point stop and limit are not allowing for shifts in volatility. So add ADX / FDI filters and such like

    Anyway point being I think the overall idea is cool and there’s much further to go on this 🙂

    Have a great week!

    Best,

    Maz

     

    // System Settings
    DEFPARAM CumulateOrders = False 
    DEFPARAM FLATBEFORE = 070000
    DEFPARAM FLATAFTER = 181500
    
    
    // Old Variables
    //positionSize = 1
    //volumeThreshold = 8000
    //pointTarget = 60
    //pointStop = 30
    //bolUpPeriod = 20
    //bolDnPeriod = 20
    
    // New variables
    positionSize = 1
    volumeThreshold = 12500
    pointTarget = 53 // must make this dynamic
    pointStop = 30   // must make this dynamic
    bolUpPeriod = 20 // not optimized yet
    bolDnPeriod = 20 // not optimized yet
    
    
    // Indicators
    bolUp = bollingerUp[bolUpPeriod](close)
    bolDn = bollingerDown[bolDnPeriod](close)
    volumeFilter = ( Volume >= volumeThreshold )
    tradingDay = not (OpenDayOfWeek = 6 OR OpenDayOfWeek = 0)
    
    
    
    // Entry logic
    
    // long side
    bc1 = (close > bolUp) and volumeFilter
    bc1 = bc1 and tradingDay
    
    // short side
    sc1 = (close < bolDn) and volumeFilter
    sc1 = sc1 and tradingDay
    
    
    
    // Execution
    IF bc1 then
    BUY positionSize PERPOINT AT MARKET
    elsif sc1 THEN
    SELLSHORT positionSize PERPOINT AT MARKET
    ENDIF
    
    // Stops and targets
    SET STOP pLOSS pointStop
    SET TARGET pPROFIT pointTarget
    

    Let’s see some further development 🙂

    Nicolas, BC, Francesco78 and Daniel Rönnqvist thanked this post
    bol-breakout-dax-h1.png bol-breakout-dax-h1.png
    #37463 quote
    Francesco78
    Participant
    Master

    Here is what I get
    // New variables

    atrperiod = 10
    atr = averagetruerange[atrperiod]
    positionSize = 1
    volumeThreshold = 12500
    pointTarget = 3*atr
    pointStop = 7*atr
    bolUpPeriod = 20
    bolDnPeriod = 32

    #37485 quote
    Seemore Profit
    Participant
    Junior

    Hi all thanks for the feedback.

    Maz i like to use hard stops as i feel it lowers the risk of blow outs and gives a nice balance of risk to reward. I agree that something could be used to improve this is someway whilst keeping the balance in place. Maybe a reversal signal on a shorter time frame might work?

    Francesco I added your variables, but didnt seem to improve the results in a back test. What were your results?

    #37487 quote
    Francesco78
    Participant
    Master

    HI Seemore, yes pls find it in the attachment.

    Seemore Profit thanked this post
    dax_vol_break.png dax_vol_break.png
    #37499 quote
    JR1976
    Participant
    Veteran

    Dear All,

    nice work , but why  the backtest start only since August 2016  and not before ??

     

    Regards

    #37503 quote
    Francesco78
    Participant
    Master

    Volume data are lacking before then.

    I wonder if with the premium account they could be retrieved.

    JR1976 and Seemore Profit thanked this post
    #37660 quote
    2Cent
    Participant
    Junior

    Hi Francesco,

    with premium account I get the same limitation for volume data. Volume data starts at monday, Aug 29, 2016.

    So I see no possibility to backtest this volume based strategy for a longer period than aprox 9 months.

    BR Cent

    #38654 quote
    David
    Participant
    Veteran

    Due to the lack of volume data I looked at building this in MT4.

    The problem is that the volume data is different.

    I spoke to IG and a prop trader about the different data and I was informed that indices volume data varies and in the case of IG it represents their client pool volume.

    Seemore Profit thanked this post
    #38656 quote
    Nicolas
    Keymaster
    Master

    in the case of IG it represents their client pool volume.

    and this is exactly the same with any other MT4 brokers for retail traders.

    #39948 quote
    Seemore Profit
    Participant
    Junior

    Due to the lack of volume data I looked at building this in MT4. The problem is that the volume data is different. I spoke to IG and a prop trader about the different data and I was informed that indices volume data varies and in the case of IG it represents their client pool volume.

    Thanks For finding this out, was wondering about this.

    My final strat from the original saw the best vol set at 7000 and the target price changed to 58.

    Gave these results, anyone find anything else worth adding/changing?

    DAx-bol-2.png DAx-bol-2.png
    #39954 quote
    JR1976
    Participant
    Veteran

    Dear Seemore profit,.

    In your screenshot the backtest start from 2013 , is it by IG/prorealtime platform ? Because I understood that the volume for IG is only since August 2016

    Thanks

    #40034 quote
    Seemore Profit
    Participant
    Junior

    That is correct JR the results are only from trades starting from August 16.

    I guess it has no trades before then because of the volume data.

    JR1976 thanked this post
    #41412 quote
    Yannick
    Participant
    Veteran

    Hello

    For volumeThreshold, it is possible to calculate an average of last volume data , in case of evolution of volume of trading of the intrument.

    There is no volume during night, so volume could be filled with last volume value to prevent a zero in the average.

     

    If volume>2000 then
    myvolume= volume
    volumeaverage=average(myvolume)[50]
    Endif
    
    volumeThreshold = x*volumeaverage//12500 x=2 gives good results in backtest

    Backtest with x= 2 gives good results

    Real robot get 3 consecutives winning trades

    Seemore Profit and JR1976 thanked this post
    Allemagne-30-au-comptant-Mini-1€-bol-volume-filtered-.png Allemagne-30-au-comptant-Mini-1€-bol-volume-filtered-.png full-backtest-x-2Allemagne-30-au-comptant-Mini-1€-.png full-backtest-x-2Allemagne-30-au-comptant-Mini-1€-.png
    #53769 quote
    Yannick
    Participant
    Veteran

    Hi I have found this article for similar strategy adapted to FX , maybe on other commodities for diversification

    https://blog.quandl.com/bollinger-band-breakout-augmented-volume  

    The strategy is making some money according to backtest.

    Please find live results for people who would be interested in this strategy.

    Even if the DAX is in a bull market, the short side wins more than long side due to the better ratio Earning/loss. This could be due to the fact that indices grows slowly but falls sharply in fear mode. I will try to find “safe heavens money flow” related to fear mode , maybe  Gold, Yen, BTC

    Despair thanked this post
    Dax-breakout-volume-1h.jpg Dax-breakout-volume-1h.jpg short-results.jpg short-results.jpg
Viewing 14 posts - 1 through 14 (of 14 total)
  • You must be logged in to reply to this topic.

Strat – Bol break with vol filtr DAX.H1 [Seemore]


ProOrder: Automated Strategies & Backtesting

New Reply
Author
author-avatar
Maz @eqmaz Participant
Summary

This topic contains 13 replies,
has 8 voices, and was last updated by Yannick
8 years, 3 months ago.

Topic Details
Forum: ProOrder: Automated Strategies & Backtesting
Language: English
Started: 06/05/2017
Status: Active
Attachments: 7 files
Logo Logo
Loading...