Related to (but not the same as) the idea of having an on/off checkbox for each optimization input is the idea of allowing Step = 0 as a way to tell the optimizer "stay at the start value".
Doing sequential optimizations (first some params, then different params) with MC is currently agonizing.
IMO, this should be dead-simple to do, with every possible form of support provided for.
On/Off checkboxes and allowing Step = 0 are two of the desirable forms of support.
The problem with requiring Step <> 0 as currently, is that it is not possible to prevent optimization of a given parameter without destroying the (normal, default, standard, generally used, special case, - pick one) range settings for the parameter.
This is a big-time drag for doing sequential optimizations.
It is also very simple to fix, with just minor design changes.
I hope that the reasoning here can be seen and accepted for implementation ASAP.
Thanks!
Need to Allow Step value of 0
- Andrew Kirillov
- Posts: 1589
- Joined: 28 Jul 2005
- Has thanked: 2 times
- Been thanked: 31 times
- Contact:
TSS should focus on manual trading first as this is low-hanging fruit. The bell and whistles you suggest are unimportant for majority of users.This is one of several key items pertaining to real-world usage of the MC backtesting capabilities that needs/deserves completion/enhancement prior to (IMO) turning all development attention elsewhere (e.g. manual trading, etc.).
- Bruce DeVault
- Posts: 438
- Joined: 19 Jan 2010
- Location: Washington DC
- Been thanked: 2 times
- Contact:
In support of any user's sequential optimization, I'd like to also mention the importance of quick and easy configuration of the starting point.
Consider the case where an initial optimization has been performed, and many iterations (let's say 16000 iterations) are available for reloading into the chart to be displayed.
The user may wish to take any one of those 16000 iterations as the starting point for a fine-grained sweep of just 1 or 2 parameters.
So, in the optimization setup dialog, we would like a button "Set Start to Current" (or similar name) whose effect would be threefold:
1. Set all the Start Values to the currently displayed values
2. Set all the End Values to the currently displayed values (e.g. same as the start values)
3. Set all the step values to 0.
The user would then merely adjust the Start/End/Step for the one or two parameters of interest and start the desired optimization.
The button would accomplish accurately in a split-second what would today take the user a minute or two (or maybe even many minutes, if there are alot of parameters) with the possibility of undetected error.
And, of course, that savings in time and aggravation would accrue to every user of optimization, every time they want to do a "starting point sequential optimization", forever after.
I highly recommend this way of looking at "software leverage" when choosing to devote effort (or not) to implementing workflow improvement for users/customers.
The human's time is the critical component that there will never be more of. You can buy faster computer clock speed, you can buy more memory, more processor cores, more machines, and the future promises even more of all that. But you cannot buy more than 24 hours in your day, and never will be able to.
IMO, this is the most important single understanding needed for developing superior software solutions that will be highly popular and sell well at a favorable price. Smart people will pay up for what really, truly saves them time (and will abandon what sucks that time away to no purpose).
Consider the case where an initial optimization has been performed, and many iterations (let's say 16000 iterations) are available for reloading into the chart to be displayed.
The user may wish to take any one of those 16000 iterations as the starting point for a fine-grained sweep of just 1 or 2 parameters.
So, in the optimization setup dialog, we would like a button "Set Start to Current" (or similar name) whose effect would be threefold:
1. Set all the Start Values to the currently displayed values
2. Set all the End Values to the currently displayed values (e.g. same as the start values)
3. Set all the step values to 0.
The user would then merely adjust the Start/End/Step for the one or two parameters of interest and start the desired optimization.
The button would accomplish accurately in a split-second what would today take the user a minute or two (or maybe even many minutes, if there are alot of parameters) with the possibility of undetected error.
And, of course, that savings in time and aggravation would accrue to every user of optimization, every time they want to do a "starting point sequential optimization", forever after.
I highly recommend this way of looking at "software leverage" when choosing to devote effort (or not) to implementing workflow improvement for users/customers.
The human's time is the critical component that there will never be more of. You can buy faster computer clock speed, you can buy more memory, more processor cores, more machines, and the future promises even more of all that. But you cannot buy more than 24 hours in your day, and never will be able to.
IMO, this is the most important single understanding needed for developing superior software solutions that will be highly popular and sell well at a favorable price. Smart people will pay up for what really, truly saves them time (and will abandon what sucks that time away to no purpose).