![]() |
Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | |
|
Here we test a volatility system on synthetic data to illustrate how to use data scrambling. A volatility system is a good choice for this because the currency markets have recently seen sudden, compressed moves. You may feel that sudden, compressed price moves are a staple in today's futures markets. However, a historical review will convince you that they have also occurred before. Such moves are often difficult to trade with
Testing a Volatility System on Synthetic Data 237
systems that use heavily smoothed data. Many traders have observed that sudden moves also occur near the turning points of trends. Hence, you may find a volatility-based approach also suitable for identifying tops or bottoms. You can define volatility in many different ways.
The usual practice is to use some multiple of the recent true range to define the edges of price moves. Here we take a simpler approach and use just the difference between today's high and low as the measure of price range. The buy stop for tomorrow is today's high plus two times today's high-low range. Similarly, the sell stop is today's low minus two times today's high-low range. It is quite unlikely (but not impossible) that you will hit both entry orders on the same day.
The above definition of entry points is quite generic and not optimized to any specific market. You can use a multiple larger than two to get fewer entries, or smaller than two if you want more entries. We assume these volatile swings occur near turning points, so we will test an arbitrary trend following exit: exiting on the close of the twentieth day in the trade. First we look at test results using continuous contracts. Then, we will test this system on synthetic Swiss franc data obtained using data scrambling. The goal is to show how this simple system works as well as to illustrate how you can use scrambled data.
Figure 8.5 shows how the volatility entries appear on the December 1995 Swiss franc contract. In September, this system profited from a powerful rally. The exit at the end of 20 days got you out in the consolidation region. However, the system did not go short soon enough in the August sell-off. That trade was barely profitable. Note the previous long trade hit the $3,000 initial stop. Therefore, by design, a short burst out of one consolidation into another consolidation or trend works best with this system.
We tested the system first on a continuous contract using actual Swiss franc data from June 30, 1989, through June 30, 1995, allowing $100 for slippage and commissions and using a $3,000 initial stop. We then used the data scrambling routine to scramble these data, and made up eight more continuous contracts. We tested the same system without any changes on the scrambled data, as summarized in Table 8.4. The synthetic data have the letters "Syn" in their name for clear identification.
The results over 56 years of synthetic data show that it is possible to have future performance significantly better or worse than the test period. This should come as no big surprise. The performance over individual synthetic contracts varies widely. The average performance of all the eight synthetic series (last row), however, approaches the performance over the original test period (first row). This result is similar
238 Data Scrambling
Figure 8.5 Stops at two times the high-low range above and below today's high and low provide good entries into compressed moves. However, the market can often make big moves without volatility.
Table 8.4 Comparison of volatility system on actual and scrambled data
Maximum Intraday Draw-Profit down Market ($) ($) |
Number Number Average Average Profit of of Win/ Trade Factor Trades Winners Loss ($) |
SF |
5,800 |
1.06 121
1.92
-17,600
Contract
SF Syn #1 | 33,624 | -12,732 | 1.42 | 1.60 | |||
SF Syn #2 | 35,563 | -19,550 | 1.38 | 1.59 | |||
SF Syn #3 | -713 | -21,388 | 0.99 | 1.53 | -8 | ||
SF Syn #4 | 14,350 | -14,938 | 1.16 | 1.92 | |||
SF Syn #5 | 8,937 | -20,425 | 1.11 | 1.36 | |||
SF Syn #6 | -22,625 | -27,050 | 0.79 | 1.21 | -224 | ||
SF Syn #7 | 13,550 | -22,463 | 1.14 | 1.49 | |||
SF Syn #8 | -13,212 | -30,750 | 0.9 | 1.19 | -136 | ||
Average SFSyn data | 8,684 | -21,162 | 1.11 | 1.49 |
Summary 239
to that shown in Table 8.1, where the average statistics of the random samples were close to the statistics of the original sample.
In essence, when we average the results over more and more synthetic data, we will get ever better estimates of the "true" or most likely system performance. We can also find the standard deviation of the results over synthetic data to quantify the variability of future results. For example, the standard deviation of the profits on synthetic data in Table 8.4 was $20,523 (not shown). Armed with this data, we can use mean-variance analysis to make portfolio decisions using the ideas of modem portfolio theory. We can try to find the portfolio weights for a group of systems that might achieve a given level of expected return for a particular expected standard deviation. We can also use the standard deviation to input a relevant range of values for risk of ruin calculations. Another application is to estimate a range of future drawdowns for a given system. Thus, synthetic data can be used to estimate the expected future performance.
There is one important limitation of scrambled data. Since we are using a random sampling with replacement approach, our new patterns do not represent actual market behavior. For example, synthetic data can create patterns that do not represent market psychology or any real supply-demand forces. Hence, you should create many data sets and average your system performance across those sets. The averaged performance will probably be more representative of potential system performance in the future.
Дата публикования: 2014-11-28; Прочитано: 350 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!