Current compilation mechanism looks for files in the flat structure (Indicator folder & Strategy folder). Finally, all development efforts are strictly limited: there is no possibility to put files into own namespace and related folder. Everything has to be put into one big bunch of files coming from different sources. It is one big chaos in that folder, that is really hard to manage.
You can imagine, we have around 100+ different utility classes. And with current fixed flat directory structure we are temporarily forced to put all these classes into a few "grouping" files, to be able to manage this in one folder. When we add many indicators and files coming from other sources, it is even bigger chaos.
There is real need for some intelligent structure, that can be extended.
This would be very beneficial many programmers and NT vendors.
We should introduce how to instruct the NT compilation to accept files in nested folders
to be able to encapsulate separate things into separate folders.
Suggestion of the solution (just my first idea):
My first suggestion is to have settings for the compiler, that can accept new paths, similarly, as we are adding external *.dll to the references.
For example, there could be files for each company/vendor like:
ProjectOrCompany/Strategy
ProjectOrCompany/Indicator
ProjectOrCompany/Shared
This structure could be also followed by Ninjatrader itself, with folder structure:
NinjaTrader7/Strategy
NinjaTrader7/Indicator
NinjaTrader7/Shared
I am sure, this can improved or made much more better, when more people will think about it. Ideal is to build some generic folder structure without limitation of nesting folders, which follows some well-known convention for best separation of code from different programmers/projects/vendors. Otherwise, we are all mixing now in one all-mighty folder,
which is not manageable with rising count of files and complexity.
Comment