Thursday, June 3, 2010

Alternative Adaptive Criteria - Introducing a New Feature of Teyacanani

One of the main problems Teyacanani has faced from the moment of its release is the use of a daily ATR indicator with small period values (3 to 6) which are extremely sensitive to the presence or absence of Sunday candles within the broker's feed. The fact that these periods are small makes the presence of these candles extremely influential, something that doesn't happen with the turtle system or Watukushay No.2 which use much longer ATR period lengths (14-20). In order to solve this problem we have implemented an EA that generates an offline chart without Sunday candles but this system does not work on some brokers for reasons pertinent to each brokers' particular software implementation. On today's post I want to introduce a new solution to this Teyacanani problem showing you a new type of adaptation that uses the ATR indicator but does not rely on daily indicator data, effectively eliminating the problem of Sunday candles for this EA on brokers where our non-Sunday solution does not work.

What is exactly the problem with Sunday candles ? When you calculate the value of a daily ATR indicator, the code calculates the value of the ATR assigning the same weight to the values of all daily candles. On brokers where Sunday candles exist these candles are treated - within the calculation of the ATR - as if they were regular daily candles when they usually have only 10-20% of the regular volume of a complete weekday. When you calculate the value of the daily ATR for a small number of periods you will often get a very significantly smaller value for the indicator when compared with an indicator where no Sunday candles are involved.

Many people - me included - will think here that the best and easiest solution would be simply to decrease the values of the filters on the EA to compensate for a "lower overall" ATR value. However the main issue here is that no accurate 10 year backtesting data with Sunday candles is available to test the strategy and this therefore makes any modification done impossible to evaluate with metatrader 4. Possibly diminishing the value of all filters might work, but there is also a very important possibility that this will simply not work as - when low ATR periods are used - you might get days where the ATR is calculated without the Sunday candle. For example, a 4 period daily ATR on Friday only counts Friday, Thursday, Wednesday and Tuesday, leaving outside Monday and Sunday. Introducing a modification that decreases all overall ATR related variables will probably have an adverse effect on these days.

What is the solution then ? The easiest thing to do here was to find a way of removing the Sunday candles from the chart, merging Monday and Sunday candles to get a "clean feed" that simulates that of a broker without Sunday candles. Using an EA called "without Sunday", available from the mql4 code database, we were able to eliminate the problem for most brokers. However, due to limiations inherent to some other brokers - particularly Forex.com - this solution wasn't able to work correctly in some cases.

My solution for this case was to find another adaptive criteria that could avoid the usage of the daily ATR indicator. I thought that if you could simply take a lower time frame and "extrapolate" you could maybe obtain the same results as you would with the regular daily-ATR solution. So my implementation was therefore really simple. Take a given hourly-ATR period indicator and then multiply it by X so that you reach a magnitude similar to that of the daily ATR indicator. You would still get evolving adaptability as market conditions change but of course, the speed and character of the adaptation would change.
-
-
In the end I found the results showed above for the EUR/USD and GBP/USD currency pairs using Teyacanani (Jan-2000, Jan-2010). The trading results - after following the same optimization procedure as with the original Teyacanani version - were very similar to those obtained with the daily-ATR solution, showing that a given hourly-ATR could in fact extrapolate to a daily-ATR without great changes in the effectiveness of the adaptation against volatility. However it is clearly notable here that this approach does not tend to work for all currency pairs. Some instruments like the NZD/USD and AUD/USD tend to have larger and more changing hourly volatilities that do not provide an adequate reflection when extrapolated towards daily volatility. The results obtained for these currency pairs are therefore poorer than when using the regular Teyacanani EA.

In the end, what this exercise has taught me - and I hope I have transmitted to you within this article - is that volatility adaptation can be carried out successfuly through many levels and that alternatives to daily-ATR based adaptation are clearly possible but may prove to be different for instruments with different characteristics. Right now this new version of Teyancanani - now available within Asirikuy - provides users of brokers that could not implement the WithoutSunday solution with a version of Teyacanani that can run on the EUR/USD and GBP/USD with similar profit and draw down targets. Volatility adaptation has always been one of my great areas of interest in automated trading and hopefully within the next few months and years I will be able to develop some robust and creative adaptive criteria :o).

If you would like to learn more about automated trading system development and how you too can develop systems that adapt to changes in market conditions please consider buying my ebook on automated trading or joining Asirikuy to receive all ebook purchase benefits, weekly updates, check the live accounts I am running with several expert advisors and get in the road towards long term success in the forex market using automated trading systems. I hope you enjoyed the article !

2 comments:

Gabor said...

Hi Daniel!

There's another broker dependency problem with the short period ATR, but probably not as significant as the Sunday bar issue. When a new day begins, the volatity of that day is almost zero, and therefore the short period ATR drops sometimes the half of the previous value. The problem comes from the fact that brokers close their daily candles in different times and that difference can be 4 hours or more so the timing of the sudden drop of the ATR will depend on your broker which will influence entry and exit as well.

Daniel said...

Hi Gabor,

Thank you for your comment :o) Indeed, you are right about that. Having different times of daily closing would also cause differences in trades since the contribution of the newly formed daily candle would be larger or smaller. The overall different open/close values of daily candles would also cause ATR differences (independently of the period) since the ATR uses the close of candles to calculate its value.

The modification presented in this article does address both of these problems, effectively eliminating them from the picture. In the future implementations like this may be more practical than daily chart-based implementations since they provide a much more broker-independent approach.

Thank you very much again for your comment Gabor :o)

Best Regards,

Daniel

Daniel Fernandez's Expert Author Email Alerts
Sign up to receive email alerts of Daniel Fernandez’s latest articles from EzineArticles.com!

Email Address: