What is WealthSignals?
WealthSignals (WS) is the Wealth-Lab.com community's new Trading System Subscriber Network. It also includes a sandbox area where you can do your paper trading (virtual trading) and hone your trading system development skills for free. WS provides up to the minute hypothetical performance reporting from quality data streams.
Right now, developers can easily upload End Of Day trading alerts and start establishing a public record of forward trading from their licensed Wealth-Lab Developer/Pro software with our WealthSignals Publisher extension!
What's coming next:
- Subscribers paying you a monthly fee to get your published WealthSignals.
- Mobile apps, forex & futures trading, intraday support, and more...
What is a WealthSignals Trading System?
WealthSignals participation begins with registering to Wealth-Lab.com and submitting our Post-a-system form in order to create your WealthSignals Trading System (WSTS). You then upload data from a Strategy that you've developed on your Wealth-Lab client software thus making your WSTS an outward reflection of that strategy.
If you make your WSTS public, then all Wealth-Lab.com users will have the ability to view a restricted set of its performance data and description information but not
its alerts or open positions. The daily alerts and opens position data is reserved for subscribers only.
Your WealthSignals Trading System becomes a public record of forward trading, while you maintain complete control and privacy of the code which never leaves your desktop.
There are two main benefits:
- The potential to earn monthly subscription fees from subscribers
- Making a name for yourself as a trading system developer
What is the WealthSignals Publisher?
The WealthSignals Publisher
(WSP) is a tool that system authors
can use to upload backtest performance data and Alerts to WealthSignals accounts. With the WSP, any Strategy that generates Alerts...
- Code-based WealthScript Strategy,
- Created with Strategy Builder,
- Combination Strategy,
- Compiled Strategy residing in a DLL library
...can submit them from Wealth-Lab Pro/Developer to your WealthSignals account in a convenient way. Placing discretionary signals is supported too.
The WSP in a “one-way street”: while its purpose consists of uploading backtests and daily Alerts to WealthSignals, it doesn't provide any feedback on order execution. The WealthSignals website will provide hypothetical order execution and tracking with up to the minute performance reports.
First and foremost, installing the WealthSignal Publisher library (or update to its most-recent version if exists) is a prerequisite to using the WSP. After restarting Wealth-Lab, open the Preferences dialog (hit F12) and check “WealthSignals”:
|To configure the WS Publisher, open a Strategy window, perform a backtest, switch to "WealthSignals" tab, and click on “Setup...” to display this dropdown menu.|
|In the first place, enter your Wealth-Lab.com username and password in the respective fields. Once entered, your credentials will be used for authentication until you change the password on the website. They are required at all times to communicate with the WealthSignals website. Your password is securely stored in a disk file (see Technical Background below). |
|Another required one-time action is requesting (or re-requesting, if it has been changed) the list of WS accounts which you created on our website. Clicking “Refresh” will populate the dropdown list below with your existing accounts, allowing to link Strategies with WS accounts (read on below). These settings will apply to all Strategy windows that you open.|
- Note: to avoid potential errors, it's advised to keep from using the WealthSignals Setup dialog in multiple open Strategy windows.
Link Strategy to WealthSignals TS
It's necessary to log in to Wealth-Lab.com
and use the Post-a-System page before linking to it:
Before Alerts can be transmitted to an existing WealthSignals TS, a Strategy must be linked to it. This is done from the already familiar Setup menu.
If you changed your mind for some reason, don't worry: any WSTS previously assigned to a Strategy can be linked with a different Strategy. To attach to a different account, follow these steps:
- Close all open Strategy windows (recommended)
- Open a new window for the Strategy you want to assign to a different WSTS
- Pick up the new TS and confirm the dialog message box:
Upload Historical Results
Now that a WSTS has been associated with the Strategy, you might want to upload its historical backtest results. By showcasing a system's historical results to your potential subscribers, you as the author demonstrate that you have performed system testing. Additionally, the system’s description is enhanced with the equity curve, trade history and performance metrics without the need for you to provide information “off site”.
If you click on “Upload”, the Strategy's equity curve data and trade history will be sent to your WSTS. You would do it only once per Strategy, if results have not already been uploaded before. When trades in this WSTS have been filled, you won't be allowed to overwrite prior results: the system has just started its forward trading track!Note:
As Raw Profit mode isn't supported, you will be prompted to switch to Portfolio Simulation mode before uploading.
Working with Signals (Alerts)
Through its multi-select list view, the WSP provides the ability to display and edit Alerts generated by your Strategy, enter and edit discretionary Signals, and submit them to your WealthSignals trading system:
After running a Strategy, all trading Alerts to be placed for the next bar will appear in the WealthSignals view. In addition, the WSP requests the actual Cash value of the trading system. The list is automatically refreshed each time the Strategy is executed, clearing all existing WealthSignals: original Strategy's Alerts, manually entered (discretionary) Signals, and edited Alerts alike.
If the respective option is enabled in the right-click context menu, the menu bar will show estimated buying power in the account after staging selected signals (exceptions: manually added AtMarket signals and Strategies that loop by DataSetSymbols
e.g. all symbol rotation strategies).
As the list of symbols supported by WealthSignals
changes over time, starting from v2016.10 the WSP will highlight signals in now unsupported symbols in gray. This should give author a heads-up on that he has to make adjustments to his WS DataSet.
How-To: Add a Discretionary Signal
Users can add discretionary Signals if they choose “Add WealthSignal...” from the context menu or on the toolbar:
How-To: Edit a Signal
Your TS's existing WealthSignals can be edited, if you want to tweak them for whatever reason or attach an extra condition. This is accomplished by choosing “Edit WealthSignal...” from the context menu or on the toolbar, or by double-clicking on a Signal in the list view.
A dialog will be launched to allow you to change the Signal's properties.
For both added (discretionary) and edited Signals, these properties are editable: Symbol, Shares, Order Type, Price (except AtMarket and AtClose Signals), Action. The Strategy, Scale and Date columns are provided for indicative purposes only.
The WS Publisher supports all order types available within Wealth-Lab: Buy, Sell, Short, and Cover. Each order can be either AtMarket, AtLimit, or AtStop. AtClose orders are currently not supported. If your system generated an AtClose order, it will be displayed and highlighted in orange, but before being able to transmit it into your WealthSignals Trading System, you should convert it into a supported order type first (see How-To: Edit a Signal
The following extra conditions can be attached to any Wealth-Signal via manual modification:
- OCA – One Cancels All: When editing an existing or adding a new Alert, specifying a non-empty string in the OCA Group field will automatically cancel all other open orders in the same account that belong to the same OCA group. OCA is supported for all order types except AtMarket.
- GTC – Good Til Canceled: An Alert with active GTC status remains in play until the user decides to cancel it or the trade is executed. If the GTC checkbox wasn't enabled, the Signal will expire at the end of the trading day when it was placed. Currently, all GTC signals that did not execute during closest trading session will be converted into Staging signals and will require that you Place them again each day from the Wealth-Lab.com website.
Good After Time: Enabling Good After Time for an order makes it placed in the market only after the date and time indicated. Not supported currently.
Submitting Signals through the WSP
Signals must be manually selected before staging, placing or deleting them. Use the Ctrl and Shift combinations with the mouse for multiple selections. Multiple Signals can be selected by highlighting them. Additionally, from the Select... dropdown on the Toolbar you can select all Signals or invert an existing selection.
Place – places selected Signal(s) directly to the linked WS TS, bypassing the author review page. Placed signals are distributed/marketable immediately. Placing orders is not currently supported; will appear in an upcoming release, please stay tuned.
- Stage – stages selected Signal(s) to the linked WS TS, requiring that the author review and place the order from the System page.
in initial release of WealthSignals, signals will always be staged and then auto-published 15 minutes after "staging complete". This intends to provide the author 15 minutes to catch errors without the need of an additional set of orders, before they are sent to the subscribers. Publishing additional signals or submitting NST during the 15-minute grace period, restarts the grace period. One exception
: after 09:00 AM ET time, signals will be auto-published to subscribers immediately.
When you stage
Signal(s), the Publisher will attempt send them to the website:
The message displayed next to the "Stage" button indicates the general operation status i.e. successful, login failed, exception etc.
The Result column shows individual signal
upload status – i.e. was the Signal successfully sent or there was an error of some sort (network issue, login failed due to incorrect password, signal rejected by server etc.) As instances of same Strategy in different windows are independent, be careful not to submit a duplicate order unintentionally.
After entering signal(s), the Publisher's work is finished. A Signal's status can be tracked on the WealthSignals website.
No Signals Today
When their system has not produced an Alert for the next trading session (before 9:25 EST: today, after: next trading day), authors must post a No Signals Today
notice (NST). The WSP allows to claim NST status for the next trading day for the system by clicking on the "NST" icon (pause icon) on the toolbar. Posting a NST notice cancels all placed and staged
orders. Note that placing signals will not succeed if author has already declared NST for next trading session.
- Auto-placement. Currently, Auto-Placement of WealthSignals is not supported but this feature may become available in a future release.
- AtClose and Good After Time orders are currently not supported by WealthSignals.
- Currently, all GTC signals that did not execute during closest trading session will be converted into Staging signals and will require that you Place them again each day from the WealthSignals website. Note: Posting a "No Signals Today" will cancel existing GTC signals.
- Stock splits. Because stock splits not always occur on the announcement date and the system could be selling a partial position, WealthSignals will not auto adjust position sizing due to a stock split. In other words, splits occur on the ex-date but Alerts are generated the day before. As signal sizes for exits will not match, you as the system author must manually adjust trade size for exits based on actual shares held in an account.
As time goes by it's possible that you have an occasional "orphaned Position", which is either a Position that you're holding in a WealthSignals account that your Strategy is not aware of, or vice versa:
- Stale exit order is a Wealth-Lab exit order not backed by position(s) in the symbol in WealthSignals
- Orphaned position is a position in a WealthSignals account not backed by open position(s) in the symbol in Wealth-Lab Strategy
The most popular reasons are:
- Limit and stop order rounding vs. setting used in Wealth-Lab
- Failure to assign a Position priority in your Strategy:
- Signal entered using stale data (symbol missed an update, or user forgot to update DataSet)
- Modifying the DataSet composition
- A dividend adjustment applied to data while holding a live position. The condition to enter a trade may exist prior to a diviend adjustment in the data, but the same condition may not trigger after the adjustment. More: Orphaned Positions: Dividend -adjustment effects
- Loading "Fixed N bars" might alter historical trades, making old trades disappear and hence affect more recent trades (depends on system logic)
- Buying power (margin) / TOS execution order. More: Margin Exhaustion Behavior
- Operator error: mistakenly sending some signal(s) twice
It's advised that authors assign a priority to positions, pay attention to divivends in dividend-adjusted data, and preferably use Raw Profit mode
for keeping in sync with WSTS.
Starting from version 2013.05
, the WealthSignals Publisher detects both types of orphaned positions and notifies author, displaying a warning label on its toolbar and
highlighting "stale" exit orders in red. The number of orphaned positions in WealthSignals and/or Wealth-Lab Strategy is provided in tooltip message that appears after mousing over the "broken link" icon. Clicking on it will result in the following actions:
- Stale exit orders (highlighted in red) will be removed from the queue.
- For orphaned positions, new exit orders will be inserted to liquidate the entire position in the symbol. Each one is highlighted in blue and marked as "Closeout".
The idea is that authors review the proposed changes before
sending their daily signals (or claiming NST). Before liquidating orphaned positions, authors should understand/investigate why they have an orphaned position to begin with.
On a closing note, there's a special case that authors should be aware of: different position size between a WealthSignals position and its counterpart in Wealth-Lab Strategy. The WSP is not able to detect this scenario because it's very similar to making a partial exit which is perfectly valid.
Your trading system code never
leaves your PC. The WSP does not upload a Strategy's code anywhere.
The WSP stores its preferences in two XML files located in user's AppData directory (see the Wealth-Lab User Guide > Data > “Where data are stored?” for the exact placement):
- WealthSignalsConfig.xml: your wealth-lab.com username (in plain text) and password (as a string strongly encrypted with AES-256 algorithm), and a cache of WealthSignals Trading Systems that were associated with your website account last time you performed “Refresh” in WSP Setup dialog (to minimize interaction with the WebService).
- WealthSignalsLinkedAccounts.xml: the relationships between your WSTS and the Strategies. Strategies are uniquely identified with WSTS by their GUID sequence.
The username and password are required for any WealthSignals task such as requesting the list of WealthSignals Trading Systems you have created on the website, uploading backtest performance results to a W-S account, and every time you stage or place Signals.
Although the XML files are editable, it is not recommended to mangle with them in an editor unless you have a good reason. Should something go wrong, you can start from scratch by closing all open Strategy windows and deleting the XML files, even while Wealth-Lab is running.
Issues and limitations
- Before assigning a WealthSignals Trading System to a Strategy after performing "Save As", re-run the Strategy by hitting F5, clicking "Go" or "Backtest on all symbols".
- In the Setup dialog, make sure you've entered your Wealth-Lab.com account exactly. Otherwise you'll get a "General failure" message during upload and "Access denied" error when trying to stage signals. For example, if your username is JohnDoe, do not type it in as johndoe and vice versa.
- If after uploading backtest results only the performance statistics window contains data but the equity curve, monthly results, and drawdown windows are not populated, this is most likely an issue related to the corrupt historical price data on author's machine. Suggestion: truncate and reload all of the price data for the selected DataSet in Wealth-Lab, then choose "Reset system data" from the Admin dropdown list on the website, and re-upload.
Portions © Luis Alonso Ramos - MultiColumnSortManager
and Eddie Velasquez - ListViewSortManager
MultiColumnSortManager was modified to suit Wealth-Lab's SystemPerformance
output on open trades.