Jump to content

3 Day Trend and Hull Moving Average


Recommended Posts

I have been working on a new algorithm for the better sense of the word, I have been playing with some ideas and here is what I have come up with. It's come up with some profitable results so far so I wanted to get your thoughts. 

  • Take the price for the last 10 days and calculate the Hull Moving Average. The benefit of the Hull moving average is that it cuts out a lot of noise. 
  • Take the last 3 days close price and check that if it has been all up or all down. 
    • If the the current price is above the HMA then buy and if it's not sell (All days up) the idea being that it's breaking to the upside or trend reversal if not. 
    • If the the current price is above the HMA then buy and if it's not sell (All days down)

I currently have the take profit (limit) set at 2% of the current price, I can't figure out a better way of deciding where to set the take profit (in pips)? Anyone got any good Python functions or modules that would let me work that out? 

I have a fully working Python algorithm that works with the IG Index API trading on UK stocks if anyone is interested? 

  • Like 1
  • Thought provoking 1
Link to comment

Hi, 

This sounds pretty interesting. What are you applying it to? Individual stocks?  Just curious to know,. 
I have a couple of ideas, but first, I wonder if there is a typo there, because on your second main bullet, you address "if the current price is above the HMA and if it's not sell" which reads exactly the same as the first bullet, except that you then have (all days up) in one and (all days down) in the other. I don't quite follow. Should one of those sells say buy?

My suggestion for where to set stops would be to link it to some measure of ATR (average true range), perhaps setting this to a 10-day ATR, since the data you're using reaches back as far as 10 days also. This will give a time-varying sense of how much potential the price has (based on the very recent past) to move a given amount. Setting a purely numerical absolute level such as 2% could have wildly different propensities to cut your losses early in different market conditions. 

Depending if I'm reading it correctly, this seems to be a trading rule that is based around trending and momentum. It can be more helpful to focus in these cases on having a stop loss to minimise downside when a position has been opened and once again that ATR indicator is useful for that, since you need to give a trade a little more room to breathe when average range per period is higher. You can then (if the trade gains sufficiently) shift up your stop loss, keeping it a certain distance below spot so there's still room for the trade to breathe without cutting you out too prematurely. Ideally your trade goes into profit enough that you can bring your stop loss up to breakeven or higher so after that, the trade cannot possibly lose money.

However, it doesn't usually doesn't pay to restrict your upside when trading trends / momentum. Rather than a mechanically derived take-profit level decided at the outset, you might want to keep a trade running if it's still making money which means that the underlying trend is still going, until there is some sign of the trend starting to weaken. You'll never get the full benefit of trend based trading if you reduce the opportunity for your winning trades to become big winners. This is easy enough to build into the rule. 

You could have several things that ultimately close your trade and just one of them coming true could be enough to trigger closure. One of them could be in relation to passing below a particular moving average (a shorter one than 10 days, in order to be responsive to deterioration in the trend); another could relate to consecutive days move in the underlying price - in other words some adjusted version of the conditions you used to enter the trade in the first place.

Or you could measure drawdown from the highest point the P&L of the position reached so far. Let's say the trade reached a peak P&L of 10% and then began to drift, and rather than waiting for it to turn upwards again you could ask: (a) have at least 3 days passed without the trade making a new high? (b) has the P&L declined by at least 3% from its high? (this is somewhat similar in nature to having a moving stop loss which you have shifted upwards each period that the trade has gained), and if at least one of these questions is answered YES then close.

There are so many methods but the key is whether a thorough backtest (including out of sample performance) works in a consistent enough way. Also beware of the fact that with many asset price series there's an asymmetry between the behaviour of their upside trends and their downside trends.

Hope this helps!

  • Thought provoking 1
Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Posts

    • Sainsburys full year earnings and Unilever’s first quarter trading update both say the same thing, UK consumers are in for higher prices. The war in Ukraine, supply chain issues and the effects of ongoing Covid all to blame.      
    • US Dollar (DXY) Daily Price and Analysis US Q1 GDP may stall the greenback’s advance. A 20-year high nears for the US dollar. The multi-month US dollar rally continues with the greenback printing a fresh high today ahead of the first look at US Q1 GDP at 12.30 GMT. The US dollar basket (DXY) has been boosted by renewed weakness in the Euro and the Japanese Yen, as investors move from lower-yielding to higher-yielding currencies, while safe-haven flows continue to benefit the greenback. The US growth release later in the session is expected to show a sharp slowdown from the robust Q4 figure of 6.9%. The markets are currently pricing in growth of just 1% for the first three months of this year, with the slowdown mainly due to a reduction in inventory accrual over the quarter. This release is unlikely to move the greenback, unless there is a large miss or beat, as the Fed believe that 2022 US growth will be robust enough to let them tighten monetary policy sharply without damaging the economy. The latest US Core PCE data – the Fed’s preferred inflation reading – is released on Friday and this may have more effect on the US dollar than today’s GDP data. For all market moving economic data and events, see the DailyFX Calendar. The ongoing US dollar rally has been aided by weakness across a range of G7 currencies including the Euro, the Japanese Yen, and the British Pound. The Euro continues to battle with lowly growth expectations, exacerbated by energy concerns, the British Pound is mired by weak economic data, while the Japanese Yen is in freefall as the BoJ continues with its ultra-loose monetary policy.   The US dollar continues to press higher and looks set to break above 103.96, the March 2020 high. Above here the US dollar would be back at levels last seen nearly two decades ago. The March resistance will likely hold in the short-term, especially with month-end portfolio rebalancing at the end of the week, but US dollar strength is set to continue in the months ahead. USDOLLAR (DXY) WEEKLY PRICE CHART – APRIL 28, 2022 {{THE_FUNDAMENTALS_OF_BREAKOUT_TRADING}} What is your view on the US Dollar – bullish or bearish?   Apr 28, 2022 | DailyFX Nick Cawley, Strategist
    • While Tesla has nothing directly to do with Elon Musk buying Twitter - TSLA stock closed down 12% on news that Musk may have to sell stock and use other holdings to stand against the loan to finalise the purchase of the social media giant.        
×
×
  • Create New...