- 1. Evolving Trading Ruleswith XCSF Daniele Loiacono Artificial
Intelligence and Robotics Laboratory,Politecnico di Milano, Italy
GECCO'07, July 7-11, 2007, London, UK.
2. Outline
3. What is a learning classifier system?
- M achine learning paradigm
- Solves problemsevolvinga set ofrules(the classifiers)
- Theknowledgeis thus represented with apopulationof rules
- In stateS,doing actionAwill resultin a payoffP , estimated with
accuracyF
4. XCSF
- Introduced by Wilson in 2001
- The classifier payoff P iscomputed by a parameterized function
p(S, w )
-
- Reinforcement Learning techniques to build the payoff target
(prediction)P = p(S,w)
-
- Gradient descent to learn the parametersw
-
- A genetic algorithm, based on accuracy, as generalization
mechanism
5. Outline
6. The Framework STOCK10 VolumePrice STOCK1 VolumePrice STOCK2
VolumePrice INPUT ? SYSTEM Buy/Sell transactions for earning a lot
of $$$ 7. Problem Decomposition STOCK10 VolumePrice STOCK1
VolumePrice STOCK2 VolumePrice INPUT Buy/Sell transactions for
earning a lot of $$$STOCK1 Expert STOCK2 Expert STOCK3 Expert Merge
Expert 8. The stock experts INPUT BUY HOLD SELL Action Suggested
FEATURE EXTRACTION AND NORMALIZATION EXPERT KB EVOLVED WITH XCSF 9.
Feature Extraction
- The known indicators are an obvious choice
- We used three well know indicators:
-
- PPO (12,26,9) for the stock price
-
- RSI with period 14 for the stock price
-
- PPO (12,26,9)for the stock volume
- In addition we also used as feature the fraction of the overall
portfolio value invested in the stock
- Finally features are normalized between -1 and 1
10. Evolving the KB
- The KB is a set of rules evolved with XCSF applied to a single
stock portfolio optimization problem.
- At each time step XCSF can:
-
- buy a fixed amount of shares of the stock
-
- sell a fixed amount of shares of the stock
-
- hold the current position
- Goal is maximizing the income over time
11. Merging Expert
- We merged all the stock expert suggestions with a simple
heuristic algorithm
- First an exponential moving average of each stock suggestions
is computed (a numerical value is associated to buy, hold and
sell)
- For each stock with an average suggestion of selling higher
than a threshold, a fixed amount of shares is sold
- For each stock with an average suggestion of buying higher than
a threshold, a fixed amount of shares is bought
12. Outline
13. Experimental setup
- The data set provided for the competition was partitioned in
two set: a training set (900 samples) and a validation set (246
samples)
- XCSF was applied on the training set for evolving the KB of the
10 stock experts
- A 10-fold crossvalidation was used for tuning XCSF
parameters
- Finally the overall system (the 10 stock experts and the merge
one) was tested on the validation set
14. Validation results 15. Test Results
- The system was finally tested on a the official test set
provided for the competition
16. Outline
17. Discussion of results
- Why so a different performance on different dataset ?
- Financial market are complex
- But have a look to the dataset:
TRAININGSET 18. Discussion of results
- Why so a different performance on different dataset ?
- Financial market are complex
- But have a look to the dataset:
VALIDATION SET 19. Discussion of results
- Why so a different performance on different dataset ?
- Financial market are complex
- But have a look to the dataset:
TESTSET 20. Conclusions
- We introduced a very simple framework for evolving trading
rules with XCSF
- Results are mixed and further investigation is necessary for a
better understanding and improvements of the system
performance
- There are a lot of possible extensions:
-
- Choice of technical indicators
-
- Evolving the merge expert