Since some builds ago I receive an exception/error when changing the optimization parameters of the building blocks.
When closing the exception window I can work again but not saving, backtesting, optimize or exiting. Consequence: all recent changes or gone.
System.InvalidCastException: Unable to cast object of type 'WealthLab.WPF.TimeSeriesComboBox' to type 'WealthLab.WPF.DoubleUpDown'.
at WealthLab.WPF.ParameterEditorPanel.get_Parameters()
at WealthLab8.ucBuildingBlockPanel.ApplyParameters(ParameterList allParameters)
at WealthLab8.BuildingBlockContainer.ApplyParameterValues()
at WealthLab8.designerBuildingBlock.UpdateStrategyFromUI()
at WealthLab8.cwStrategy.ResolvePrototype()
at WealthLab8.cwStrategy.Save()
at WealthLab8.cwStrategy.InvokePrototype(Object def, RoutedEventArgs cont)
at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
at System.Windows.Controls.Primitives.ButtonBase.OnClick()
at System.Windows.Controls.Button.OnClick()
at WealthLab.WPF.WLButton.OnClick()
at System.Windows.Controls.Primitives.ButtonBase.OnMouseLeftButtonUp(MouseButtonEventArgs e)
at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
at System.Windows.UIElement.ReRaiseEventAs(DependencyObject sender, RoutedEventArgs args, RoutedEvent newEvent)
at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
at System.Windows.UIElement.RaiseTrustedEvent(RoutedEventArgs args)
at System.Windows.Input.InputManager.ProcessStagingArea()
at System.Windows.Input.InputProviderSite.ReportInput(InputReport inputReport)
at System.Windows.Interop.HwndMouseInputProvider.ReportInput(IntPtr hwnd, InputMode mode, Int32 timestamp, RawMouseActions actions, Int32 x, Int32 y, Int32 wheel)
at System.Windows.Interop.HwndMouseInputProvider.FilterMessage(IntPtr hwnd, WindowMessage msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at System.Windows.Interop.HwndSource.InputFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
When closing the exception window I can work again but not saving, backtesting, optimize or exiting. Consequence: all recent changes or gone.
System.InvalidCastException: Unable to cast object of type 'WealthLab.WPF.TimeSeriesComboBox' to type 'WealthLab.WPF.DoubleUpDown'.
at WealthLab.WPF.ParameterEditorPanel.get_Parameters()
at WealthLab8.ucBuildingBlockPanel.ApplyParameters(ParameterList allParameters)
at WealthLab8.BuildingBlockContainer.ApplyParameterValues()
at WealthLab8.designerBuildingBlock.UpdateStrategyFromUI()
at WealthLab8.cwStrategy.ResolvePrototype()
at WealthLab8.cwStrategy.Save()
at WealthLab8.cwStrategy.InvokePrototype(Object def, RoutedEventArgs cont)
at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
at System.Windows.Controls.Primitives.ButtonBase.OnClick()
at System.Windows.Controls.Button.OnClick()
at WealthLab.WPF.WLButton.OnClick()
at System.Windows.Controls.Primitives.ButtonBase.OnMouseLeftButtonUp(MouseButtonEventArgs e)
at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
at System.Windows.UIElement.ReRaiseEventAs(DependencyObject sender, RoutedEventArgs args, RoutedEvent newEvent)
at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
at System.Windows.UIElement.RaiseTrustedEvent(RoutedEventArgs args)
at System.Windows.Input.InputManager.ProcessStagingArea()
at System.Windows.Input.InputProviderSite.ReportInput(InputReport inputReport)
at System.Windows.Interop.HwndMouseInputProvider.ReportInput(IntPtr hwnd, InputMode mode, Int32 timestamp, RawMouseActions actions, Int32 x, Int32 y, Int32 wheel)
at System.Windows.Interop.HwndMouseInputProvider.FilterMessage(IntPtr hwnd, WindowMessage msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at System.Windows.Interop.HwndSource.InputFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
Rename
Changing what parameters? Changing them how? What does the strategy look like? Give us something to work with.
Probably a picture of the condition will be sufficient.
Mentioning precisely which parameter you were working with would pinpoint it for us.
Mentioning precisely which parameter you were working with would pinpoint it for us.
Using WL8 build 39.
I have building blocks with an RSI, WM%, close > WMA(..), close < WMA(..).
It is when you choose: check and uncheck "make this parameter optimizable" at several blocks shortly after each other.
When I try again now, even some blocks just dissapear. Gone.
It's not the first time.

It is also with another strategy. The indicators doesn't seem to matter.
I have building blocks with an RSI, WM%, close > WMA(..), close < WMA(..).
It is when you choose: check and uncheck "make this parameter optimizable" at several blocks shortly after each other.
When I try again now, even some blocks just dissapear. Gone.
It's not the first time.
It is also with another strategy. The indicators doesn't seem to matter.
I made a gif file of the recording.

The last tries, I don't get the error window anymore, the blocks just dissapear one by one.
The last tries, I don't get the error window anymore, the blocks just dissapear one by one.
Reproduction of the error:
QUOTE:
I don't get the error window anymore, the blocks just dissapear one by one.
Just to clarify: this behavior indicates an exception in the Blocks engine. When one is thrown, the Blocks below starting with the "offending" one may disappear.
QUOTE:
Reproduction of the error:
Thanks for the quality error report.
Couldn't make it happen. Please send the strategy's XML file demonstrating the anomaly to support@wealth-lab.com. (Right click on it to export.)
Have sent the standard Neo Master. So it's not any complicated strategy from my side that is causing the problem.
Using Windows 11 home
64-bits.
Using Windows 11 home
64-bits.
I'm able to duplicate it.
Your Response
Post
Edit Post
Login is required