Welcome to WealthScript Translator
Author: DrKoch
Creation Date: 12/10/2008 9:34 AM
profile picture

DrKoch

#1
Today Fidelity finally published the WealthScript Translator.

It is a beta Version and available for free from the Active Trader page:

http://personal.fidelity.com/products/trading/Common/download_active_trader_apps.shtml

From the Help text:

After a ChartScript is exported from Wealth-Lab 4.0 (WL4) WSTL reads the exported file, translates it into the C# programming language and writes it as a Wealth-Lab 5.0 (WL5) strategy into WL5's strategy folder.

The translated strategies work exactly as the original ChartScript. producing the same results within rounding precision.


profile picture

nisaion2

#2
Will it be able to translate :

Index := GetExternalSeries( '^NDX', #Close );

Thank you
profile picture

Cone

#3
That's a bug in the current beta version. For now, you'll need to modify that line manually -

CODE:
Please log in to see this code.
profile picture

nisaion2

#4
V5 doe not let use Index series further:

If ((CMO(Bar, Index, 24) < 0))….
Gives error CS1502: The best overloaded method match for ‘finantic.TL.CMO(int, int, int)’ has some invalid arguments;
And error CS1503 : Argument ‘2’: cannot convert from ‘WealthLab.DataSeries’ to ‘int’
profile picture

Cone

#5
Is this a problem with WSTL? The syntax of your snippet is not correct for Version 5. See the Programming Guide, please.
profile picture

nisaion2

#6
It is a Wealth Lab Developer Version 5
After conversion from V4:

if cmo(bar,Index,5)<0 then B:=A*(1+cmo(bar,Index,5)*4/10) else B:=A;

I got :

if ((CMO(Bar, Index, 5) < 0)) B = (double)(A * ((1 + ((CMO(Bar, Index, 5) * 4) / 10))));
else B = (double)A;

and now WLD5 gives 2 Errors:
error CS1502: The best overloaded method match for ‘finantic.TL.CMO(int, int, int)’ has some invalid arguments;
and error CS1503 : Argument ‘2’: cannot convert from ‘WealthLab.DataSeries’ to ‘int’
profile picture

DrKoch

#7
It is in fact one single error: Your "Index" is a DataSeries while translated indicators still expect price series, represented by integer handles.
Because the beta WSTL does not support "GetExternalSymbol" you had to convert this manually and further you have to adapt all follow-up code which uses "Index" the same way - manually.
profile picture

nisaion2

#8
Could you please show how to convert this given example?
profile picture

mkbtrader

#9
In WLP4 there were the following indicators "MACDEx", "KeltnerAtrUpper", "KeltnerAtrLower". I can't find them in WLP5 anymore. The translator gives me errors, because it can't find those indicators. Anybody have an idea what to do?
profile picture

Eugene

#10
QUOTE:
In WLP4 there were the following indicators "MACDEx",


See an identical question answered here:

WealthScript Translator » Hershey Equity 5.0

P.S. The Community.Indicators library has MACDEx long since.
profile picture

beachbilly

#11

I have lines of code:



AnalyzeSeries(DivideSeries(WL_CLOSE, LowestSeries(WL_CLOSE, 60)), "Cl/Low60");
AnalyzeSeries(DivideSeries(WL_CLOSE, LowestSeries(WL_CLOSE, 30)), "Cl/Low30");
AnalyzeSeries(DivideSeries(WL_CLOSE, LowestSeries(WL_CLOSE, 10)), "Cl/Low10")


and the error messages:

The name 'Analyze Seires' does not exist in the current contxt.

next error messages are:

Operator '&&' cannot be applied to operands of the type 'bool' nd 'double'

How can these be properly translated?

Thanks.
profile picture

Eugene

#12
AnalyzeSeries can not be translated. It simply means nothing in V5 because it had no Analysis Series View. However, we hope this to change pretty soon. :)

So, you can safely remove those lines of code.
profile picture

Cone

#13
(Eugene. is more than just hoping. He's already built the Analysis Series Visualizer and is testing it now.)
profile picture

swuzy

#14
Seems to generally work, albeit with some minor errors, when I export scripts from WLP4 to a folder, and then point the Translator to a script therein.

I have not been able to simply cut and paste a script into Translator's translation window, and have it work. Is it supposed to be able to handle such cut and paste, or is the former method the only way to do it?

Sometimes, I'd still go to the old WL4 site to run some public scripts for testing, and want to try same out in WLP5. But it can be a lot of steps to transfer them script by script into WLP4, and then into a windows folder, and then into the Translator, and then into WL5.

Thanks for clarifying what is most efficient approach.
profile picture

Eugene

#15
QUOTE:
Is it supposed to be able to handle such cut and paste, or is the former method the only way to do it?

Copy/paste is not supported, it works with *.WS files (and that's documented in the utility's help file.)
QUOTE:
Sometimes, I'd still go to the old WL4 site to run some public scripts for testing, and want to try same out in WLP5.

Just paste the copied script into a text file with the *.WS extension and let WSTL do the job.
profile picture

DrKoch

#16
QUOTE:
I have not been able to simply cut and paste a script into Translator's translation window

Did you notice that the translator allows editing of WS code once a WS script is loaded?

Just create a script Test.WS or Empty.WS with just a single line of text or comment.
Load this into the translator.
Now you may type or paste any code fragments into the WS window and translate it.
profile picture

windward

#17
QUOTE:
P.S. The Community.Indicators library has MACDEx long since.


WealthScript worked fine with my previous Wealth-Lab installation. I uninstalled and deleted WL due to an "Unhandled exception...error in XML document" that would not let me load Strategy Monitor. I downloaded the current files and reinstalled Wealth-Lab 5.3 and WealthScript Translator and placed Community.Indicators.dll in the c:\Program Files\Fidelity Investments\WealthLab Pro 5 directory. Now WSTL doesn't find MACDEx and others. Here is part of the log for attempting to translate "Score 4."

cannot find file CommoditySelectionIndex
cannot find file ZigZag Study
cannot find file IIRSmoother
cannot find file Sell_Patterns
cannot find file Chandelier Exit Long
cannot find file Chandelier Exit Short
cannot find file Bear Power
cannot find file Bull Power
cannot find file VolumeColor
cannot find file Elder Force
cannot find file Market Temperature
cannot find file MACDEx

I placed a couple of these files with a .ws extension in an Include Folder and pointed WSTL to it. That works, but I didn't have to do this with a previous installation of WL and WSTL translating the same files.

There is another problem I have in the translation process with some files that is perhaps related to the above problem. In WL compile I get "error CS0103... GetExternalSeries."

Most files translate without a hitch, but a few won't translate with WL and WSTL "out of the box." What am I missing...other indicators, the order of installation...? Is Community.Indicators still in MACDEx?
profile picture

Eugene

#18
Just a couple of side notes.

QUOTE:
I uninstalled and deleted WL due to an "Unhandled exception...error in XML document" that would not let me load Strategy Monitor.

Next time you face a similar problem, save yourself some time (and your precious strategies) by erasing just one file: StrategyMonitorConfiguration.xml in one of Wealth-Lab's folders (see Data > Where data is stored in the Wealth-Lab User Guide).

QUOTE:
Is Community.Indicators still in MACDEx?

Sure, MACDEx is still in Community.Indicators, which has (and never had) nothing to do with WealthScript Translator. It's a different library that contains native WL5 indicators to be used in Strategies.
profile picture

Eugene

#19
QUOTE:
I placed a couple of these files with a .ws extension in an Include Folder and pointed WSTL to it. That works, but I didn't have to do this with a previous installation of WL and WSTL translating the same files.

Pointing WSTL to an Include folder is a prerequisite. By uninstalling it, WSTL's configuration could have been affected.
QUOTE:
There is another problem I have in the translation process with some files that is perhaps related to the above problem. In WL compile I get "error CS0103... GetExternalSeries."

Re-read the very beginning of this topic - see msg from Cone @ 12/10/2008 4:20 PM.
profile picture

GolfPlayer

#20
Hi DrKoch!

Do you have any attitude to WealthScript Translator (WSTL)? I have some question. Could you help, please?
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).