Crossover. To explore the space of experts, crossover operators are used, meaning that an offspring is built with parts of his ‘parents’. We considered one point, two points and uniform crossover. For example, assume that the length of the chromosome is 6; one of the five crossing points can be chosen and the second point has been selected in Figure 1. Consequently, the first offspring has the two first genes of the first parent and the others from the second parent; the opposite rule is applied for the second offspring. It gives rise to two new experts (or chromosomes) for the next generation. The crossover probability is usually very high, in the range of 50–95%.
Mutation. Mutation of gene i of an expert means, in our context, that, randomly, emi ¼ ð1 þ eiÞ modð2Þ; meaning that 1 becomes 0 and 0 becomes 1. The mutation probability is usually very low, in the range of 0.01–0.5%. If the number of mutations is too great in a population, the algorithm fails to converge. In our system, the mutation operator concerns a few genes in the whole population. However, a very high mutation rate may be applied in the case of early convergence.
Replacement. After crossover and mutation operations, a new population is usually created by the replacement (reinsertion) operator. Replacement replicates the most successful experts
Figure 1. Example of one-point crossover.
generated by the genetic operators. Various replacement strategies can be applied [16]. To ensure that the most profitable experts are not lost due to the stochastic character of the genetic operators, in our system we have chosen the elitist strategy. In other words, the best experts from the current population pass directly to the next one without modification.
To sum up, the GA applies iteratively all operators to the set of experts in each population until the stopping criteria are met. In our system, a stopping criterion is given by the user as a maximal number of generations to run under the condition that the heterogeneity of a population is higher than the minimal number of different experts.
The goal of our experiment is to discover experts, given time-series of prices and a set of technical rules. However, this set of rules is not selected on a priori relevancy criteria; the genetic algorithm is in charge of determining which rules are to be selected by the best expert. In fact, each user of such methods can add new rules; the only limit is set by the computing power.
Before describing in some details the methodology, we need to define the general orientation of the test. We started by considering the most common criticisms addressed to studies on ‘technical-analysis-based trading’, as follows:
(1) The period may influence the results; in other words, tests in a different period could have resulted in completely different excess returns.
(2) Transaction costs are neglected; it is well known that some filter-based rules may be consuming transaction costs because of the number of trades.
(3) The prices at which trades are executed are not realistic because they are often considered as the last price used by the rules to be applied. In real markets, you cannot trade at a revealed price, you can only post orders for the next trade session which may be just a few seconds after the last observed trading price. Moreover, you have to bear the bid-ask spread when selling your position.
To avoid these criticisms, we considered 3 years of daily data (1997–1999) and selected at random ten dates for the beginning of learning periods. We considered that transaction costs are 0.25%, a level which seems quite reasonable for heavily traded stocks. Finally, the experts’ decisions were taken after the close and executed at the opening price of the next day. Definition of learning and test periods. Consider the following notations:
* ½0;T is the whole period within which empirical tests are performed,
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.