## Defining Support & Resistance Levels Mathematically, A True Challenge for Automated Systems

I have always said that there is a lot of importance and potential in the trading of support and resistance levels in trading in general, and particuarly in forex trading. However it is true that the creation of long term profitable systems for automated trading based on the definition of S&R (support and resistance) levels has been difficult up until now due to the inherent problems of defining these levels mathematically. On today’s post I want to talk about some of the approaches used to define these levels and the short commings each one of them has. On tomorrow’s post I will talk about what I think is the solution to the problem, a concept which may lead to the development of an automated system based on S&R levels which is able to gauge S&R level importance and trade the many techniques which can be derived from these levels in a profitable fashion.

So what is so difficult about the definition of support and resistance levels ? Theoretically a support or resistance level is an area (not a specific price value !) in which price finds a natural difficulty to continue to move in its previously acquired direction. So for example, if the EUR/USD is in an uptrend and there is a resistance level at the 1.3500 zone, price will get to this level and then it will bounce from it or consolidate around it until it either continues its previous trend or tests a lower support level.

Notice how many of the definitions of support and resistance are vague. What is a zone exactly ? how large must these zone be ? What parameters determine its size ? How could we know this level exists before price reaches it ?

The fact is that these questions have no straightforward answer. There is no rules for the size of the S&R zone, nor is there a way to accurately determine the levels before they happen. The previous attempts at coding automated trading system using S&R levels have tried to infere future S&R levels by taking information about previous levels in the past. The reality seems to be that a previously found support or resistance level will behave as either support or resistance in the future depending on from where it is attacked by price.

So the problem seems to be to find S&R levels in the past somehow and then use them in the future. If price faulters around a support or resistance level, then an intuitive way to define them is through the high/low criteria. A resistance is reached on the high of a candle followed by a candle of opposite direction and a support level is reached on the opposite situation. Another way to define these levels would be to use the fractal indicator. Since fractals determine patterns which signal reversals then the high or low of a fractal may indicate a resistance or support level.

The problems inherent to these very common approaches and other similar approaches is evident. All Support and Resistance levels are given and absolutely no importance is given to some over others. Another problem is that several fractals or high/lows may happen on similar levels but interpreted as different S&R levels when in reality they represent the same support or resistance zone. Since there is no discriminations between the S&R levels defined, these techniques of defining S&R almost always fail since they trigger trades on “not so important” price levels which make the strategies lack a positive mathematical expectancy.

So the steps to define S&R levels in a reliable fashion seem to be the following :

• Define all S&R levels
• Discriminate important from unimportant levels
• Define Zones of S&R

### 2 Responses to “Defining Support & Resistance Levels Mathematically, A True Challenge for Automated Systems”

1. Tcxmon says:

Daniel-

That's a very interesting topic and i've thought about it myself at times.

One solution that comes to mind is to build an array of price levels and every time a tick arrives, increment the counter for that price level. What you end up with is an array of "TPO" time-price opportunity that resembles a "Market Profile" type graph.

The array elements with the highest tick counts are where the majority of trading took place and could be considered either resistance or support depending on whether the price is above or below that level currently.

Another interesting question is whether old resistance or support should "expire" after a given amount of time. If you wanted to do that, you could decrement from the array all price action X number of bars back in the past. I'm not sure if this makes sense since the older support/resistance is usually more important than newer support/resistance.

One final thought – it seems like Forex has a devilish way of violating support and resistance much more than other markets, like stocks for example. I suspect that's because Forex is so heavily traded based on technical factors and they are fewer "buy and hold" type investors versus stocks.

Anyway, good post and it will be interesting to see what you come up with.

Chris

2. Daniel says:

Hi Chris,

Thanks a lot for your comment :o) Indeed, the time-price opportunity array idea sounds interesting but it has the terrible problem of being impossible to simulate accurately due to the absence of reliable tick data on the Metatrader 4 platform. Since I only focus on strategies which can be accurately simulated that strategy seems to go out of my scope. However it could indeed be a good way of getting S&R levels and to gauge their importance.

You are right in that the forex market likes to "play around" the S&R levels and they are rarely respected to the pip. Something which is often seen in stocks and futures. In forex we see more "zones" of S&R which are also often not repseted.

However this lack of "respect" of the forex market is, in my opinion, a simple consequecen of the lack of a central exchange. Since in stocks and futures everybody sees the same charts, everybody has the same S&R levels in mind while in forex there can be a +/- 10 pip difference between what you are looking at and what I may be looking at as an S or R level.

I am glad you have liked the post, I hope that you read tomorrow's post and give me your opinion regarding my ideas to handle the situation. Thanks again for commenting :o)

Best Regards,

Daniel Fernandez