5.3 issues
Author: jsmith2007z
Creation Date: 2/4/2009 12:24 PM
profile picture

jsmith2007z

#1
In testing 5.3, I've noticed the following; I think these issues also existed in 5.1:

When it runs out of memory, the program will die. This is not very graceful.

It has a memory leak; two backtests, each of which run when separately will fit into memory, when run one after the other will, upon running the second one, cause the program to die due to memory overload. This should not be happening.
profile picture

Cone

#2
Sorry that you're having problems with memory, but backtests need to hold data in memory for post-processing.

What kind of backtests are you running?
How much memory are you working with?
profile picture

jsmith2007z

#3
How about a "free memory" button for those wishing to do sequential backtests?

I am running backtests on 1 minute bars of the component stocks of the S&P 500. I can test about two months at a time, in isolation, without blowing memory. WL Pro 4.5 can handle 2 or 3 times that.

My computer has 4 gigs, which is more than 32-bit XP Pro can see.

A true 64-bit version of WL Pro is very much needed.

By the way, I get different backtest results in 4.5 and 5.3. Any idea which one, if either, is correct? Do they use different algorithms for deciding which trades to take when there are more trades than available capital?
profile picture

Eugene

#4
QUOTE:
How about a "free memory" button for those wishing to do sequential backtests?

There is one - it's called Bars.Cache.Clear (QuickRef).

QUOTE:
By the way, I get different backtest results in 4.5 and 5.3. Any idea which one, if either, is correct? Do they use different algorithms for deciding which trades to take when there are more trades than available capital?

You hit the nail on the head. Take a look at the Wealth-Lab User Guide, Strategy Window > Backtesting Strategies > How Trades Are Chosen and Position.Priority in the QuickRef.
profile picture

Cone

#5
QUOTE:
WL Pro 4.5 can handle 2 or 3 times that.
That's why we always argued for single precision numbers. Anyway, be careful what you wish for because everyone asking for double precision got it in Version 5.

QUOTE:
A true 64-bit version of WL Pro is very much needed.
More power users like you need to call Fidelity and express this opinion.
profile picture

WLXYZ

#6
Creating a new workspace and then attempting to save causes run-time error

Thanks,


wlxyz


Unhandled exception has occurred in your application. ...
Object reference not set to an instance of an object

************** Exception Text **************
System.NullReferenceException: Object reference not set to an instance of an object.
at WealthLabPro.ChartForm.SaveStrategyAs()
at WealthLabPro.MainForm.be(Object A_0, EventArgs A_1)
at System.Windows.Forms.ToolStripItem.RaiseEvent(Object key, EventArgs e)
at System.Windows.Forms.ToolStripMenuItem.OnClick(EventArgs e)
at System.Windows.Forms.ToolStripItem.HandleClick(EventArgs e)
at System.Windows.Forms.ToolStripItem.HandleMouseUp(MouseEventArgs e)
at System.Windows.Forms.ToolStripItem.FireEventInteractive(EventArgs e, ToolStripItemEventType met)
at System.Windows.Forms.ToolStripItem.FireEvent(EventArgs e, ToolStripItemEventType met)
at System.Windows.Forms.ToolStrip.OnMouseUp(MouseEventArgs mea)
at System.Windows.Forms.ToolStripDropDown.OnMouseUp(MouseEventArgs mea)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
at System.Windows.Forms.ToolStrip.WndProc(Message& m)
at System.Windows.Forms.ToolStripDropDown.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
profile picture

Eugene

#7
Please create a support ticket.
profile picture

WLXYZ

#8
Support Ticket created. Thanks, Eugene
profile picture

Eugene

#9
Thank you.
profile picture

jsmith2007z

#10
Where, when, and how should Bars.Cache.Clear be called to free memory for another strategy backtest in the same session?
profile picture

Eugene

#11
Bars.Cache.Clear forces clearing internal cache of the Bars object. You can clear the cache after your Strategy has finished executing.

Note: calling the method erases all DataSeries stored in the cache, thereby affecting performance visualizers which make some use of the indicators created by your Strategy - e.g. Analysis Series from Community.Visualizers.