Wealth-Lab 5.0 (.NET) Tips & Info
Author: Cone
Creation Date: 2/20/2008 9:43 AM
profile picture


Wealth-Lab (.NET) 5.0 is currently available only as Wealth-Lab Pro 5.0 for Fidelity Active customers. It will be available for international customers at a later date - check the Home page for announcements.

Many of you will be off and running with WLP Version 5.0 without even looking at the User Guide, but there are a few tips and issues that we'd like to point out. Thanks to Eugene for most of these originally posted and discussed here


Minimum O.S. requirement is Windows XP or Vista (32 bit)
. Wealth-Lab (.NET) is not compatible with Windows 2000 or lower.
. A 64-bit installation has not been prepared, but we expect to get there later this year.

Build up your intraday DataSets
If you use Wealth-Lab to watch streaming Intraday charts, take time to build your static intraday DataSets first. Version 5.0 uses the static data as backfill for streaming charts to avoid unnecessarily requesting the same data time and again.

Be mindful of the "All Data" setting when streaming
If you don't have time to do #1, make sure that you do not select "All Data" when requesting Streaming charts. Doing so will result in long delays as all-available intraday data is loaded for the symbol. Instead, use a specified number of fixed bars, for example.

"Missing" functions
If you can't find am equivalent function in WealthScript of WLP5, think .NET instead. For example, this applies to:

. File operations (StreamReader, StreamWriter etc)
. Mathematical functions (System.Math),
. String operations (String)
. TLists (List, ArrayList, SortedList, Hashtable and more)

NB: There are functions missing for a reason (i.e. WatchList operation).

WL5 doesn't contain a ChangeBar lookalike, but it's easy to modify values of the Bars object:

Please log in to see this code.

Since the Date collection is read-only, it is not possible to change the bar's date. See what happens if you uncomment the Date[bar] = dt line.

Accessing the Ghost bar from Strategies.
In Streaming mode, WL5 allows to have some access to the partial bar via the .PartialValue property of the DataSeries object:

Please log in to see this code.

... but note:

Accessing the opening price works right now for Fidelity streaming since the end-of-interval is determined by the reception of first tick (the open) in the following interval.

This is going to change once "the heartbeat" is implemented for Fidelity Streaming in 5.1. In this case, scripts will be executed based on the heartbeat and not [necessarily] the first tick in the next interval. Consequently, the opening price won't be available when the Strategy is executed.

Copy format from DataSet (ASCII provider)
trixie writes:
I see that there is an option to "copy format from dataset", but it is not highlighted for some reason. How to resolve this issue?

The option "Copy Format from a DataSet" is helpful when you have a repetitive task of creating related ASCII datasets. If they share the same format, you don't have to specify its details for DataSet #2, #3 and so on. If at least one ASCII DataSet exists in WL5, the option becomes highlighted for you to replicate saved settings (and save time).

As you see, it's quite similar to "copy formatting" feature of MS Excel. Or, if you like, close to "Common Format" feature of WLD4 but without having to expressly define a format.

COM Interop
Not much to say. Power users can employ COM interop feature of .NET directly in WLP5. Here's an example which "drives" the Quote Manager tool of WL4 (see code snippet #1):

export to wl4

Beetles / Bugs / Issues

Known Bugs
The Introduction chapter of the User Guide has a "Known Bugs" topic describing a few bugs that were too minor to hold up the release.

Unnecessary requests for Daily when On Demand enabled
Another bug discovered even too late for the guide is that if "File > Update Data on Demand" is enabled, running Daily charts will always result in an update request from the Static data provider. The simple solution is to disable "on Demand".

GetExternalSymbol issue
When accessing symbols across DataSets of different providers in Multi-Symbol Backtest (e.g. Yahoo-to-ASCII, but not Fidelity-to-Fidelity), GetExternalSymbol has known problem.

Please log in to see this code.

Suppose your code visualizes an external symbol (^NDX) from a DataSet (Yahoo!) other than the primary (Fidelity). After performing an MSB and subsequently changing to individual instrument chart, the secondary symbol's pane is missing or empty and/or the debug window has an error line.

IntelliSense on strike?
IntelliSense seems to be mute as fish when you type LastPosition or LastActivatePosition? Don't hang on, it's much convenient to define a Position-type variable once and IntelliSense will work everywhere in your code after you type "." :
Position p = LastPosition;

SellAtAutoTrailingStop is slow
Note that until it's fixed, SellAtAutoTrailingStop is known to slow down strategy execution on large amounts of data.

Unable to login to Fidelity?
Getting an error message when trying to login to Fidelity within WLP5? Try this:

1. In IE, Tools > Internet Options > Connections. Click LAN Settings...
2. If "Automatically detect settings" is checked, uncheck it.
3. Try to login.

profile picture


This website uses cookies to improve your experience. We'll assume you're ok with that, but you can opt-out if you wish (Read more).