GA’s in general are a way to quickly search large inputs spaces to give results that while are not optimal are usually very good, as opposed to a brute force approach that will take a long time to search the same input space and find the same results, however if you use brute force approach and have enough time you will find the BEST result as you do an exhaustive search so eventually you will find it ultimate result at the Global Maxima, Obviously Random approach is just that, it will randomly search the input space and hopefully come up with something worthwhile.
The theory behind GA is that inputs to a large search space are mapped/encoded to a genome (i.e. could be an array or string representing the inputs to be searched), in this case with SQ it is the functions are mapped to form a strategy, and the search space the market, a fitness function based on rules is applied to the genome to determine whats a good result and who gets to survive to the next population, in this case the fitness are the rules you apply, such as profit and draw down and is what determines what strategy gets selected as parents for the next generation.
An initial population is created using random generated genomes (or sometimes seeded with pre-populated genomes, i.e. you may have some non optimal solutions you want to further search) and much like the theory of evolution the genomes that are the fitness survive (result of applying the fitness function to each genome in the population ), so only the fitness survive and along with new randomly generated genomes generated to make up the population, crossover and mutation will occur, where with crossover simulates breeding and a pair of parent genomes will swap part of their genome to form the children that go to make up the new generation, each genome in the new population has a small random chance of mutation, this mutation helps the population to not get stuck in local maxima type situations, the fitness function get applied and it all begins again.
Over time the overall fitness value of the population usually increases to a point where it won’t increase much further, i.e. fitness stagnation. When this occurs it’s usually the result of having found a local maxima in the search space and is usually a sign that it can’t evolve further. It is therefore best to start again with a new population to try and fine another local maxima.
So to answer your question, in SQ the results using GA VS Random, IMHO is that GA will find profitable strategies quicker that random, however the resulting population will all be similar and may not be any more optimal than random generated strategies so both will need some form of optimisation. So really both are just a form of searching, just that Ga will find solutions quicker, but the solution found while being good may not be optimal, i.e as is not at global maxima. What I do is start with random and my top ones there are used to seed GA
Many moons ago (back in the late 90’s) for my final undergraduate project I wrote a multitasking OS for embedded systems on the Motorola 68HC11 MPU that used GA as the task scheduler.
Stephen…