Part 3: Designing a Trading System in Torrent MetaStock.
By David Jenyns

In Part 2 of Designing a Trading System in torrent MetaStock I covered how to code the first two of the four major components of a mechanical entry system. I had explained the coding of price and liquidity. In this article I will cover the steps for coding the remaining two components, trend and volatility, into torrent MetaStock. In the end, you will have the complete codes for a mechanical entry system.

Let's begin with trend identification. Remember the trend is your friend when trading. You always want to trade with the torrent Metastock trend, not against it. Think of it this way, if you were swimming in the sea, and got yourself caught in a rip tide, is it easier to swim with the current or against it? It is the same with trading with a trend.

There are many ways to identify torrent MetaStock trends, and it's not particularly important which method you use. You just need to use one. One of my preferred methods for identifying trending stocks is to find stocks that are trading at their current highs. You can do this by stipulating that the highest high price must have been achieved in the last x number of days.

Once again, the torrent MetaStock variables you use will depend on the time frame you are trading. But for this example, you want the highest high price in the last 240 days to have occurred in the last 20 days.

Using the formula reference section in the torrent MetaStock Programming Study Guide, you can find the syntax of the highest high function, and then plug in the details. Then, using the less than symbol, you can specify the number of days must be less than 20. In torrent MetaStock language that would be:

HHVBars(H,240) < 20

The final component to our entry system is the volatility measure. The aim of including this formula is to identify stocks that move enough for us to make a profit, yet aren't so erratic that they keep you up at night. There are a few ways to measure torrent MetaStock volatility. However, my favorite is the ATR method. The ATR indicates how much a stock will move, on average, over a certain period. Torrent MetaStock will help you identify this.

For example, a one-dollar stock might move five cents on average over the last 20 days. You can divide this value by the price of the stock and you will have the average percentage movement of a stock. With these values, you can stipulate a minimum and maximum daily volatility value.

For example: You may want the ATR, divided by the average closing price, over the last 21 days, to be greater than 1.5%. Therefore, the average minimum volatility must be greater than 1.5%.

Additionally, you may want the ATR divided by the closing price, over the last 21 days, to be less than 6%. This sets the average maximum volatility at less than 6%. In MetaStock language that would be:

ATR(21)/Mov(C,21,S)*100 > 1.5 and
ATR(21)/Mov(C,21,S)*100 < 6

Putting all our code together, you see what your entry system looks like:

C>1 and++Mov(v,21,s)*C > 200000 and
HHVBars(H,240) < 20 and
ATR(21)/Mov(C,21,S)*100 > 1.5 and
ATR(21)/Mov(C,21,S)*100 < 6

You now have now a workable entry system. Not only did you construct a robust system, but it also adheres to the KISS principal (Keep It Simple Simon). This system can be cut and pasted into the Explorer within torrent MetaStock. However, the entry is only the beginning of a successful trading system. In later parts of this series, you'll find the rest of the components that you need to design a torrent MetaStock trading system.