Someday in the distant future please expose the genetic builder functions as snippets

Why not allow the community to work for you to invent, optimize and test new variations of the genetic building functions?  Since crossover was only recently working properly there is probably much room for improvements and optimizations. It would be nice if we could have access to scripts to manipulate things such as:
-parent selection method (tournament selection, rank selection etc.)
-elitism frequency
-application of filters to new offspring, mutations or fresh blood (can new offspring and mutations survive in the current environment? If no delete instantly)
-crossover type (one point, multi-point)
-crossover minimum/maximum # of blocks/variables passed.
-complex restart rules
-custom migration rules (based on minimum fitness or other stats for instance.)

No attachments
  • Votes +5
  • Project StrategyQuant X
  • Type Feature
  • Status Refused
  • Priority Normal




08.02.2021 21:30

Task created



09.02.2021 14:28
Voted for this task.


09.02.2021 17:59
Voted for this task.


13.02.2021 21:47
Some specific things I would love to test:

-Parents/original don't die off automatically, instead they can die from "old age" or when their child or mutation supersedes them. In this way we can try and operate without any elitism. I think this will be better for high-quality initial start populations like if a strict init pop filter and or decimation is being used or 2 or more build tasks in a sequence.

-We can sometimes try a parent selection method that is more random which I think is better for high quality start populations. 

-some higher percent or maybe even 100% of crossovers can be 1 or 2 point specifically entry/exit and for pending orders we can try signal/price-level/exit as fixed crossover points. Crossovers may be occurring at or near these points but maybe they are occurring at a frequency too low to be optimal. Also, happening exactly at these points instead of near these points might be sometimes best (in case that's not what's already happening, it's hard to tell.) Currently single variables can be crossed over from one parents indicator which doesn't necessarily make a lot of sense and may be happening more frequently than optimal. 


clonex / Ivan Hudec

15.02.2021 14:43
Voted for this task.


16.02.2021 10:10
Voted for this task.

Mark Fric

16.02.2021 10:26

Status changed from New to Refused

sorry, but it is almost impossible to do it. To do this you'd need a very deep knowledge of SQ code, it wouldn't be possible without publishing the whole source code.

StrategyQuant already allows a big number of extensions, I don't think this is most crucial feature.



16.02.2021 17:57
OK thank you for the explanation and consideration, it was worth a shot.


27.01.2022 13:20
Mark, please consider this for the future, I would also be very interested to rewrite/tune the genetic algo as a snippet. Thanks.


29.01.2022 14:51
Voted for this task.

Votes: +5

Drop files to upload


choose files

Max size: 5MB

Not allowed: exe, msi, application, reg, php, js, htaccess, htpasswd, gitignore

Wait please