Hey, figured I'd start a thread for the community to discuss the new optimizer feature. If nothing else, I'll put my notes in this thread.

 

SCREENSHOTS:

120449_1608681323.jpg

120449_1608681361.jpg

 

USAGE TIP:

Looks like parameter optimization only supports `decimal` (the dropdown shows a disabled `integer` option so that's likely coming), so in the mean time make sure to cast to `int`

self.prdbase = int(self.GetParameter("prdbase"))

120449_1608680033.jpg

 

PRAISE:

  • Showing individual backtests is great
  • having min/max/step size is essential to optimizing (ha) speed over realistic optimization values and saving money on resources, so glad that's in from the beginning
  • charts with sharpe/dd/annual return vs optimized value are a must have, glad to see these in here too, it's also equally essential to see the optimization value when hovering over a datapoint (for example, my screenshot shows a prdbase value of 65 yielding a 1.007 sharpe)

120449_1608680295.jpg

 

SUGGESTIONS:

  • strategy equity overview chart in it's current state, while pretty, is useless. Please add the same data point annotation that shows which parameter value is used to create a given colored equity line. I don't even think there's a legend explaining which colors correspond to which parameter value, though obviously one could grind with provided data to figure it out... but that's not the point. in it's current state, hovering shows a unique "shape", such as a hollow triangle.

120449_1608680454.jpg

  • Perhaps you may think of a better UX design, but I think this design choice would be EXTREMELY helpful: For all 4 displayed graphs, color the scatter point / equity curve for a given parameter value (e.g. baseprd = 65) across all graphs using the SAME color. to choose the colors, make it a gradient from two colors, let's pretend light blue to dark green for the sake of example (colors do not matter but distinguisable is the goal). Instead of making the color gradient vertical for sharpe/etc, make it horizontal, CORRESPONDING to the optimized value on the scale of min-value to min-value. In it's current form, it's mostly deviod of meaning apart from aestetics. Now this obviously means the Equity curve will not have a pretty gradient up and down, but a jumbling of these colors, but what this does is it allows a user to quicky distinguish "oh my best equity curve is light blue, that means it must be one of the minimum parameter values that is the best". This improves the at-a-glance UX, but equity curve data annotations is a must-have that furthers the functionality of this curve.

120449_1608680769.jpg120449_1608680938.jpg I'm going to post this now and continue suggestions in the comments because if I accidentally hit backspace again while not :focus'd in this text-area and delete my whole post, I'm just not going to post at all