ASX: Annual Return - 33%, Max drawdown - 15%
I assume it is long only with appropriate commission and allowance for slippage so could you produce the results from 1/11/2007 to 3/3/2009 please.Perhaps a few more tests then "W"
I assume it is long only with appropriate commission and allowance for slippage so could you produce the results from 1/11/2007 to 3/3/2009 please.
Oh I have tested many trend following systems too but the consecutive losses, consistently low percentage winners (in the 30's) and excessive draw down are not good results.G'day Wysiwyg,
I am no expert at trading (Given I have only recently started) but have been reasonably successful with system design and backtesting. The best advice I can give you is the following:
Of all the different systems I tried trend following was by far the most successful. There is plenty of articles on the internet regarding the Turtles trading method and I reccommend these as a start.
I already use an index filter on my testing. Below I have tried your MA > and the results are not good.Filter your buys using the index you are trading against. I.E. buy = ma(xao,10)> ma(xao,30). Use XAO = Foreign("xao","Close") in amibroker to do this. This is why I still had a 22.5% profit during the crash as I was out of the maket for the majority of it getting back in for some quick profits during the April - May bounce.
If the strategy averaged 22% through the GFC then this recent market trajectory is but a blip. But that is the whole idea of back testing a strategy. We want to be as honest to ourselves as the software allows and with Amibroker you can code in complete honesty.Like I said earlier all of this is good in theory but when the market isn't moving as it hasn't since October the trend trading strategy probably isn't going to work. I am sticking with it in the hope that the market will make up it's mind and eventually move in the correct direction, up.
PosQty = 10;
SetOption("MaxOpenPositions", PosQty );
PositionSize = -100/PosQty;
PositionScore = Random();
SetTradeDelays(1,1,0,0);
V1 = EMA(C*V, 50) > 25000;
ATRMultiplier = Param("ATR Multiplier", 5, 1.5, 10, 0.5);
ATRRange = Param("ATR Range", 50, 1, 100, 1);
TrailStop = ATRMultiplier * ATR(ATRRange);
ApplyStop(2, 2, TrailStop, 1);
Call = Foreign("^AORD", "C", True);
Check = MA(Call, 10) > MA(Call, 30);
Buy = Cross(MA(C,20),MA(C,50)) & Check & V1;
Sell = 0;
Good Day Harro.G'day Wysiwyg,
Results:
Annual return - 18%, Max DD - 24%, Winners - 45%, Exposure - 43%
It is not possible except by looking into the future!! You cannot know the daily average price until the EOD. The back tester is using data already known to buy/sell a position before the day is over. In reality you would have to buy/sell next day once the average price is known.For info I had trades set to buy and sell at the days average price.
Harro
Of all the different systems I tried trend following was by far the most successful. There is plenty of articles on the internet regarding the Turtles trading method and I reccommend these as a start.
Tried the .abs extension and a few programs to open it but illegible. ASCII format?? Sidestep that one.Wysiwyg,
That is puzzling. I have checked all of my settings etc. and they all appear to be fine, I have attached them if you would like to check them we may be able to help each other out (Note - You will have to change the file extension back to .ABS, I changed it to .DOC to allow it to be uploaded, not sure if it will still work but give it a go).
I add extra onto the brokerage.Are you including slippage in your results?
YesAre you backtesting historical asx data or current day asx data, I am backtesting current day data? (Obvious limitations involved that I am exploring).
YesDid you convert XAO (Under call and Positionscore) back to ^AORD, I forgot to mention this.
I have downloaded data from 1985 to now from the list you sent except for the five letter ones. I think they are options or warrants on shares.The only other thing I can think of is that we are testing different data. I have included my list of ASX FPO, If you could run a backtest against it and see what happens perhaps we can get to the bottom of this, you've got me worried now that the error may be from my side.
I see. Good luck with that idea but for back testing I can't see any benefit from trying to buy/sell prior to knowing what the price is.As for trade entry timing, if i set it to by in at Open vice average it actually gives about a 1% better annual return. The problem is that getting in at open is very difficult as I work during the day, so if I just set a limit order I may miss the trade or end up paying a premium on this if it was to open below what I was expecting.
This is the results page using the Relative Strength position score. Slightly varies with the random position score.Let me know how your results go,
Harro
I've got no idea. My results are attached. Even if I add .5% slippage/buy and sell I still get 15% annual return. .ABS = amibroker backtest settings, you just open the settings window, click load and select the file.
What results are others getting when they backtest the given formula?
Good Evening.
I have established a difference with the "Trades" data you posted.
On your big winner, $110,000 for SDL, my tester did not take the trade and that would be because other trades were open at that time which comes back to dissimilar data.
With SDL, I checked if my MA's crossed on the 29th March 2007 and they did indeed so the trigger was there but the back tester did not take it.
Wysiwyg,
As for trade entry timing, if i set it to by in at Open vice average it actually gives about a 1% better annual return. The problem is that getting in at open is very difficult as I work during the day, so if I just set a limit order I may miss the trade or end up paying a premium on this if it was to open below what I was expecting. The idea behind me submitting a relative order at 1130 with 0 offset is that I will "on average" get in at the average price. Sometimes I will pay more and sometimes I will pay less but it will all come out in the wash. It is a work in progress and I am currently experimenting with this to see what the actual outcome is.
Let me know how your results go,
Harro
Aha. You are not getting away that easy.On further investigation of why SDL was not taken. I ran a back test from the period in which SDL was taken by your tester. Still, with a full account SDL was not traded. I thought what could this be.
Your additional criterion, the Volume > MA(Volume,100); was not met on the 29th March 2009 according to my 100 Period MA of the volume.
An independent 100% reliable source shows me that on the day of the signal, the 29th. March 2007, the volume was low. Additionally, your results show open price of 13c on the 30th. when the open was 12.5c. The signal day had an open & high of 13c. No 13c on trade day the 30th.
This is critical to know. It is the defining factor on data difference.
Was the volume on this day, the 29th. March 2007, above your 100 MA?
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?