Image Image Image Image Image Image Image Image Image Image

Turing Finance | October 25, 2016

Scroll to top



Computational Finance at IEEE WCCI 2014

Computational Finance at IEEE WCCI 2014

I recently had the awesome opportunity to present my honours research at this years IEEE World Congress for Computational Intelligence conference (IEEE-WCCI) in Beijing. My trip was sponsored by the University of Pretoria's Computational Intelligence Research Group (CIRG) so I would like to send out a special thanks to supervisor, Dr. Katherine Malan, and my Professor, Andries Engelbrecht, for making the trip possible.

The Great Wall of China

After the World Congress for Computational Intelligence conference I did some sight-seeing. Here is a photo of The Great Wall of China, I've included some more photos at the end of the article as well.

Computational intelligence (CI) is a set of nature and biologically inspired computational methodologies and algorithms for addressing complex real-world problems for which traditional approaches, i.e., first principles modeling or explicit statistical modeling, are ineffective or infeasible [Wikipedia]

Computational Intelligence can be broken up into five paradigms,

  1. Evolutionary Computation
  2. Artificial Neural Networks
  3. Swarm Intelligence
  4. Fuzzy Systems, and
  5. Artificial Immune Systems (Not discussed)

Some of the papers presented at the conference are relevant to computational and quantitative finance. The objective of this article is to introduce the first four computational intelligence paradigms and list some of the relevant conference papers related to each paradigm. Please get in touch if you are struggling to find any of the below mentioned papers, I do have copies.

Evolutionary Computation

Evolutionary Computation (EC) is a set of meta-heuristic, population-based, global optimization algorithms inspired by mechanisms found in natural evolution including: natural selection, sexual reproduction (crossover), and genetic mutations. Let's break those terms down,

A heuristic is a procedure which can be used to solve some problem. Heuristics are normally designed using knowledge of the problem. For example, to sort a list of integers in ascending order we could use a sorting algorithm e.g. Merge Sort or Heap Sort with the greater than inequality which defines the desired ordering of those integers. But what if we didn't know about the problem i.e. we didn't know what the desired ordering was?

A meta-heuristic is a generic procedure for finding solutions to different problems. Meta-heuristics don't assume any knowledge of the problem. For example, to  sort a list of integers in any order we couldn't use a sorting algorithm because we would not know which inequality to use. However we could use a genetic algorithm and iteratively evolve a set of solutions until the right ordering had been found whether that be ascending, descending, or random.

Population based optimization algorithms maintain multiple solutions to the problem. In the context of a genetic algorithm the population survives for a number of generations. For each generation the best individuals in the population are allowed to survive (natural selection), those solutions are used to produce new solutions to the problem (crossover), and a small subset of the resulting population is selected to undergo small changes (mutation).

Genetic Algorithm

Illustration of how the population in a Genetic Algorithm change over time

There are many Evolutionary Computation techniques including: genetic algorithms, genetic programming, evolutionary programming, differential evolution, gene expression programming, evolutionary strategies, and cultural algorithms. There were few evolutionary computation papers related directly to finance, but here are some which I find interesting,

  1. Evolving Exact Integer Algorithms with Genetic Programming, written by Thomas Weise, Mingxu Wan, Ke Tang and Xin Yao
  2. Grammar Based Genetic Programming with Bayesian Network, written by Pak-Kan Wong, Leung-Yau Lo, Man-Leung Wong and Kwong-Sak Leung
  3. Evolutionary Computation for Dynamic Optimization Problems, written by Changhe Li, Michalis Mavrovouniotis, Shengxiang Yang and Xin Yao

Neural Networks

Neural Networks (NN) are computational models inspired by the connectionist systems found in brains. They are the most well known computational intelligence paradigm and, as such, many misconceptions about them exist. Put simply, neural networks approximate a set of complex non-linear multiple regressions between inputs and outputs. For a detailed discussion please see my earlier article, 10 Misconceptions about Neural Networks.

Neural Networks are used extensively for time-series modelling and forecasting which makes them particularly useful for financial modelling. I have included a sub-set of articles from the conference which I believe will interest readers below but for a complete list of papers related to time-series forecasting in particular, please see the conference programme.

  1. Cooperative Coevolution of Feed Forward Neural Networks for Financial Time Series Problem, written by Shelvin Chand and Rohitash Chandra
  2. Algorithmic Trading Behavior Identification Using Reward Learning Method, written by Steve Yang, Qifeng Qiao, Peter Beling and Scherer William
  3. GPU Implementation of the Feedforward Neural Network with Modified Levenberg-Marquardt Algorithm, written by Tomislav Bacek, Dubravko Majetic and Danko Brezak
  4. Selecting and Combining Models with Self-Organizing Maps for Long-Term Forecasting of Chaotic Time Series, written by Rigoberto Fonseca-Delgado and Pilar Gomez-Gil
  5. A Higher-Order Fuzzy Neural Network for Modeling Financial Time Series, written by Massimo Panella, Luca Liparulo and Andrea Proietti

Swarm Intelligence

Swarm Intelligence (SI) is similar to Evolutionary Computation in that it is also a set of meta-heuristic, population-based, global optimization algorithms. However, unlike Evolutionary Computation, Swarm Intelligence is inspired by the collective intelligence found in swarms of animals in nature including beehives, flocks of birds, ant colonies, and more. My favourite swarm intelligence techniques are Ant Colony Algorithms which are inspired by the behaviors of Ants. Two popular Ant algorithms exist; one used for shortest path problems and another used for real-time clustering. I will describe how each of these two algorithms work at a higher level and provide links for those readers who find it interesting.

When Ants leave the colony to find food, they leave a trail of pheromones. Upon finding food the Ants follow the same route back to the Colony. Pheromones wash away at a constant rate. Therefore, the ants which find food first i.e. travel a shorter route reinforce their own pheromone trails more than their less successful counterparts. As more ants leave the colony, the probability of them selecting a particular route is dependent on the amount of pheromone on that route. Over time, the Ants converge on the shortest path to a food source.

Ant Colony Algorithm Pheromone Trails

Image showing how Ant Colony Algorithm Pheromone Trails converge on a shortest path. For a great video which shows this technique working check out this YouTube video.

This above technique has been used to optimize telecommunications networks. It has also been used as a more efficient way to price exotic derivatives than Monte Carlo simulations: Ant Colony Optimization for Options PricingI have not had a change to try this [yet].

Another amazing things Ants do is construct 'cemeteries' of dead Ants. This behavior is the inspiration behind a powerful real time clustering algorithm. In this technique ants walk around randomly. If they encounter a dead ant they might pick it up. They then continue walking around randomly and after each step they might drop the dead ant. The probability of picking up or dropping a dead ant is a function of how many other dead ants are in the surrounding area.

In other words if there are many dead ants, the probability of dropping the dead Ant is high and the probability of picking up a dead Ant is low. Over time, what emerges from these simple rules are 'clusters' or cemeteries of dead Ants. This technique can be applied to any clustering problem and even portfolio construction, see my previous article about this.

Ant Colony Optimizations

Illustration of Cemetery formation / Clustering using Ant Colony Optimizations

Other Swarm Intelligence techniques include Particle Swarm Optimization, Artificial Bee Colony Optimization, The Bees Algorithm, The Bat Algorithm, Glowworm Swarm Optimization, and Stochastic Diffusion Search. Here are some articles from the conference (including mine):

  1. Combining Technical Trading Rules Using Parallel Particle Swarm Optimization Based on Hadoop, written by Fei Wang, Philip Yu and David Cheung
  2. Creating Stock Trading Rules Using Graph-Based Estimation of Distribution Algorithm, written by Xianneng Li, Wen He and Kotaro Hirasawa
  3. Using Harmony Search with Multiple Pitch Adjustment Operators for the Portfolio Selection Problem, written by Nasser R. Sabar and Graham Kendall
  4. Carry Trade Portfolio Optimization using Particle Swarm Optimization, written by Stuart Reid, Katherine Malan and Andries Engelbrecht
  5. A Combinatorial Algorithm for the Cardinality Constrained Portfolio Optimization Problem, written by Tianxiang Cui, Shi Cheng and Ruibin Bai

Fuzzy Systems

Fuzzy Systems (FS) use a form of many-valued logic called Fuzzy Logic. Fuzzy Logic deals with reasoning that is approximate rather than exact. Using traditional logic, variables may take on either true or false whereas fuzzy logic variables may have a truth value that ranges between zero and one. This 'inexactness' allows Fuzzy Systems to model the world more realistically.

For example, we want a system for determining whether people are short or tall. Using traditional logic we might model a boundary which classified between tall or short. For example, if you are taller than 1.75 m you are tall, otherwise you are short. The issue with this, is that is it inflexible. Consider two people; one 1.749 m tall and the other 1.751 m tall. Using our traditional logic the first person is short and the second is tall being just a 2mm apart from one another.

We can overcome this by using Fuzzy Logic membership functions. A membership function simply determines to what degree an individual belongs to the set of short or tall people. We can even overlap these membership functions so that it is possible for an individual to be both short and tall to varying degrees. The general concept is illustrated below,

Fuzzy Logic Membership Function Example

Fuzzy Logic Membership Function Example

Here are some interesting papers from the conference, as with Neural Networks it appears that there is a large body of research linking time-series forecasting with fuzzy systems.

  1. Fuzzy Rule-Based Ensemble for Time Series Prediction: The Application of Linguistic Associations Mining, written by Martin Stepnicka, Lenka Stepnickova and Michal Burda
  2. Non-linear Variable Structure Regression (VSR) and Its Application in Time-Series Forecasting, written by Mohammad Korjani and Jerry Mendel
  3. A Minimax Model of Portfolio Optimization Using Data Mining to Predict Interval Return Rate, written by Meng Yuan and Junzo Watada
  4. Modeling Time Series with Fuzzy Cognitive Maps, written by Homenda Wladyslaw, Jastrzebska Agnieszka and Pedrycz Witold
  5. An Improved Boosting Scheme Based Ensemble of Fuzzy Neural Networks for Nonlinear Time Series Prediction, written by Yilin Dong and Jianhua Zhang

Some more photos from the trip

In conclusion the conference was great and I am very pleased to have published my first paper. I also thought that Beijing was an incredible city! I was impressed at how organized the city is and I enjoyed learning about it's history. Here are some more photos from the trip.

Temple of Heaven Park

Temple of Heaven Park

Tiannamen Square Early Evening

Tiannamen Square Early Evening

The Forbidden City

The Forbidden City

Temple of Good Harvest Temple of Heaven

Temple of Good Harvest Temple of Heaven

Night Market

Night Market


  1. jack zhang

    do you have an email that I can send you an email?/Jack

Submit a Comment