I'm a software engineer by profession, and trying to figure out the best way to structure complex algorithmic code.
The problem is, that any reasonably sophisticated algorithm would require many ideas around money, portfolio and investment management.
This invariably would necessitate dozens (if not hundreds) of helper functions.
The Quantopian IDE seems to support editing only one 'file' per algorithm, so this would mean I would have to put all these functions in the same file, i.e. a monolithic file!
What's worse is that, many of these helper functions would likely be useful in other algorithms... and this means copying the same code to multiple files/algorithms (and we all know that code duplication is bad, right? :) )
Leveraging my experience in software engineering build and release processes, I supposed I could create a build/deploy process by generating the monolithic algorithm files from templates.
Even if that would work, it would be useful to have a Quantopian API to allow batch updating of algorithms.
However, this requires considerable skills that I suspect is not readily available to the average Quantopian :)
In the mean time, does Quantopian have plans to allow the end user to create their own user defined library modules for inclusion into their algorithms (or even to share...).
Fi