Here you can search through the pages of this Namespace, their attachments and the files uploaded to the system.
Note: the results will only display the items you have permissions to read.
[...] already) the library from the www.wealth-lab.com site to its latest version 2013.04 or higher. Figure 1. A Wealth-Lab 6 chart pinpoints Engulfing, Downstep and Upstep patterns that occurred at reversal points on a chart of AAPL (Apple Inc).
using System;
using System.Collections.Generic;
using System.Text;
using System.Drawing;
using WealthLab;
using WealthLab.Indicators;
using WealthLab.Rules.Candlesticks;
using TASCIndicators; namespace WealthLab.Strategies
{
public class IRSTS_StepPattern : WealthScript
{
private StrategyParameter paramPercent;
private StrategyParameter [...]
[...] the ADX is below its threshold for a trending market, the system would enter the trade. Figure 1. Bearish divergence between the SRSI and price which formed in January 2014 triggered a short trade in KO (Coca Cola). After updating the TASCIndicators library to v2015.06 or later, the SRSI indicator can be found under the TASC Magazine Indicators group. You can plot it on a chart or use it as an entry or exit condition in a Rule-based Strategy without having to program a line of code yourself.
using System;
using System.Collections.Generic;
using System.Text;
using [...]
[...] application to spot medium-term divergences on the chart if you run enclosed C# Strategy code. Figure 1 . A divegence in Procter & Gambler stock (PG) with three tops that formed in a year. C# Code
using System;
using System.Collections.Generic;
using System.Text;
using System.Drawing;
using WealthLab;
using WealthLab.Indicators;
using TASCIndicators; namespace WealthLab.Strategies
{
/*
Divergence: price sets a lowest low but the indicator fails to confirm the new low and turns up
*/
public class WDMACD_Divergence : WealthScript
{
private StrategyParameter [...]
[...] Rule-based strategies The condition list for Date/Time only includes conditions for dates. How do I include a "time of the day" rule? Either use the "Intraday Rule: Time is later (earlier) than HHmm" in Community.Rules library or see a tip in the WealthScript section below. After generating strategy code with "View Strategy Code", there are strings like "Group1" and "Group1|". What do they mean? This is a string used to match up entries with exits. From the technical standpoint, the String.Contains( string ) method does the job here. Is it possible to add an ATR-based [...]
[...] Trades from the short side are deliberately not taken as their performance seems poor. Figure 1. Bullish divergence between the MFO and price formed in June 2015 triggered a long trade in KO (Coca Cola). After updating the TASCIndicators library to v2015.09 or later, the MoneyFlowOscillator indicator can be found under the TASC Magazine Indicators group. You can plot it on a chart or use it as an entry or exit condition in a Rule-based Strategy without having to program a line of code yourself.
using System;
using System.Collections.Generic;
using System.Text;
using [...]
Traders' Tip text
The IRSTS 1-2-3 rule, presented by author Sylvain Vervoort in June 2013 issue, originates from classic swing trading philosophy. With our simplified rendition of Vervoort’s quite complex system in our C# code, based on fixed percentage swings, we laid out a framework for detecting the 1-2-3 waves. The system marks each Wave on the chart, connecting them with colored lines, and enters on pullbacks in the direction of the primary trend (Wave 1). Its exits are simple profit target and stop [...]
[...] WealthScript can be found in the TASC Traders’ Tips section at the Wealth-Lab.com Wiki site. Figure 1. The Trend Vigor’s ominous corona in June provided a good warning that MSFT’s March-April rally had lost its steam.
Strategy Code Revised: 20090611
Thanks to Wealth-Lab.com user "htg1", the calculation for the Trend variable used for "Trend Vigor" is now correct. Additionally, the starting loop variable was changed from 12 to 51, and DataSeries initializations have been simplified. // WAS:
double Trend = ds bar - ds cycPeriod ;
// SHOULD BE (IS):
double Trend [...]
[...] choose any type of trade: inside S3/R3, outside S3/R3, and breakouts from S4/R4 levels. Figure 1. This 5-minute chart of QQQ illustrates the application of the multi-timeframe Camarilla Points breakout & reversion trading system. The two trades was caused by the market opening inside S3/R3 thresholds. The system's unabridged C# code for Wealth-Lab can be found below. On a closing note, motivated traders may also want to explore “Woodies Pivots” – whose difference from the rest of the breed (floor trader pivots, Camarilla points or Fibonacci pivots) is that they [...]
[...] Strategy rules: Enter long next bar at open if following conditions are met:
Stock price greater than $1 50-day simple moving average of volume is greater than 100,000 Yesterday’s close was less than the day before Yesterday’s close was less than its open Today’s open is greater than yesterday’s close Today’s close is greater than yesterday’s open Today’s open is less than yesterday’s open As of yesterday’s close, price had been closing lower for three days Sell short next bar at open if following conditions are met: Stock price is greater than $10 50-day simple moving [...]
[...] setups aimed at identification of the start of a trending move and top/bottom-picking. ''Figure 1. Weekly chart of PFE (Pfizer) illustrating the application of the TAC-DMI approach.
WealthScript Code (C#)
using System;
using System.Collections.Generic;
using System.Text;
using System.Drawing;
using WealthLab;
using WealthLab.Indicators; namespace WealthLab.Strategies
{
public class TAC_DMI_Strategy : WealthScript
{
#region Convergence functions
double Average(List lst)
{
double total = 0.0;
double average = 0.0;
int period = lst.Count;
if( [...]
PosSizers (position sizing) I'm using 100% Equity position sizing and strategy doesn't seem to use all capital and/or there are trades not included due to insufficient capital. Also, when using 10% Equity on a portfolio of 10 stocks, same rules apply. The reason is that when Wealth-Lab determines the number of shares for an order, it does so with regard to the so called "basis price". For the whys and wherefores of it and specifically how this can cause skipped trades with trade sizes near 100% equity, refer to the User Guide: Strategy Window > Backtesting Strategies [...]
[...] right will change between the six choices and make the chart update with backtested trades.
Figure 1. Sample entries on a Daily chart of QLD. Data provided by Yahoo! Finance. For example, Figure 1 illustrates a bearish and two bullish key reversal trades created on the next open following the pattern and exiting 3 days after. Through another parameter slider you can control exits after N bars in a trade. To avoid copy/paste, hitting Ctrl-O and choosing “Download…” in Wealth-Lab gets you the downloadable Strategy under the “Chart patterns” [...]
[...] 0.0000001, as for the JPY base currency (JPY/other). Fractional Pip: Forex pricing shown in tenths of 1 Pip, allowing greater transparency into electronic markets and cost savings on a forex transaction. Tick: The same as a pip. Point: Sometimes the same as a pip. Sometimes the same as a change of one percent of price (Big Point). Big Point: The same as a "point" The Symbol Info Manager uses its own terminology which stems from futures trading: Tick: The smallest amount a price can change. This is the pip of a forex symbol. Point Value: This is the "dollar" [...]
Bars, Loops, and Bar + 1
Original article by Robert Sucher in the legacy Knowledge Base here .
Wealth-Lab Developer has features such as order slippage and variable commissions to bring trading simulation as close to reality as possible. Likewise, your task as a trading system designer is to express your system in C# code that validly recreates security orders as they would have been and will be executed in real life. Bar Definition
A bar is any interval of time that has an open, high, low, and closing price, whose values may be different or equivalent. These [...]
[...] an arbitrary Fibonacci period of 55 and an ATR coefficient of 3.0 increased profitability of trading 1 contract (8.1% vs. 6.7% APR) and win rate (63.5% vs. 52.1%) while decreasing number of trades (63 vs. 71) and drawdown (6.13% vs. 6.55% based on $100K Starting Equity). Figure 1 illustrates how the new exit strategy generally helped to keep trades active longer with a well-defined risk.
Figure 1. The strategy that used the Chandelier exit (top) often [...]
[...] while still reaping a good profit with a better Recovery Factor and less market exposure. Figure 1. Here's how the rating technique avoids taking investing decisions in downtrends - as can be seen on this chart of GS (Goldman Sachs). To execute the included trading system, Wealth-Lab users need to install (or update) the latest version of two indicator libraries, TASCIndicators and Community Indicators , from the Extensions section of our website and restart Wealth-Lab. Figure 2 . For DAX stocks, the optimum trade duration was between roughly 2 to 5 months [...]
[...] catches bullish divergences of Asymmetric RSI with price based on the 2nd approach. As seen on Figure 1, two potentially profitable opportunities could be taken as a result of timely signaling from the 14-period ARSI, which in its turn seems to be really responsive -- as much as the half-period RSI.
Figure 1. Illustrating on a long trade in OIH ETF, the ARSI turns out to signal two timely bullish divergence trades. Traders might like to explore the ARSI crossovers and crossunders, because the threshold levels are reached more timely than [...]
[...] sensitivity by triggering a trading signal after one, two or three divergences on the same bar. Figure 1 illustrates the application of the system's rules on the Daily chart of QQQ. The lower pane shows the 5-, 8-, and 13-day linear regression slope of the recent close price.
using System;
using System.Collections.Generic;
using System.Text;
using System.Drawing;
using WealthLab;
using WealthLab.Indicators; namespace WealthLab.Strategies
{
enum Side { Buy = 1, Sell = -1, NA = 0 }
public class TASC201406_Kaufman [...]
[...] first 100 bars, the initial trades can still be sensitive to the length of the seed data. Figure 1. The strategy presciently reversed near the top and held the Aussie short from July - Dec 2008. Download the attachment for the ASCII Data used for the article and the Strategy below. (Attachments are available only to registered Wealth-Lab Pro/Developer customers). If using your own data, be sure to make the secondary symbol changes in the code as required. Strategy Code
using System;
using System.Collections.Generic;
using System.Text;
using System.Drawing;
using [...]
[...] purpose. The Equity Curve for the Portfolio Simulation with $100,000 starting equity is shown in Figure 1. As a reminder, Wealth-Lab users should install the CBOE Provider extension from Wealth-Lab.com to easily access and update Put/Call Ratio data directly from the CBOE website.
Figure 1. The strategy was able to avoid Buy & Hold’s large drawdown in 2008 (blue) by trading from the short side (red), which compensated the drawdown in long positions (black).
Note: The indicator was added to the TASCIndicators library, version 2011.11.0.0 [...]
[...] depending on the phase angle. We define an uptrend when the CorrelationAngleÆs state ôflatlinesö at 1 for 2 bars (or -1 for a downtrend). The logic is simple. An uptrend switches the system into trend following mode, with entries and exits made via channel breakout. If permitted, short trades are done in the same manner in a downtrend -- yet with a shorter lookback period for the channel. An absense of trend directs the system to take cyclic trades: buying small dips and selling at the high of the channel. Here are the rules: Buy at stop [...]
[...] paramExitDays;
public ARSI_Divergence()
{
paramPeriod = CreateParameter("ARSI period", 14, 1, 100, 1);
paramHighest = CreateParameter("Highest high of", 20, 5, 50, 1);
paramExitDays = CreateParameter("Exit after", 20, 1, 50, 1);
}
protected override void Execute()
{
bool trough = false; int troughBar = -1;
int low = paramHighest.ValueInt;
int period = paramPeriod.ValueInt;
int days = paramExitDays.ValueInt;
ARSI [...]
[...] Indicators library which should be installed additionally from our website's Extensions section. Figure 1 illustrates trades taken by all the four trading systems at the same time on the Daily chart of USO (U.S. Oil Fund). using System;
using System.Collections.Generic;
using System.Text;
using System.Drawing;
using WealthLab;
using WealthLab.Indicators;
using Community.Indicators; namespace WealthLab.Strategies
{
public class TASC201610Katsanos : WealthScript
{
private StrategyParameter paramStrategy2Run;
public TASC201610Katsanos()
{
paramStrategy2Run [...]
[...] Daily scale and then save the information in the Intraday scale so that it can be charted. Figure 1 illustrates the usual “floor trader” pivots as well as the new “SvePivots”
Code using System;
using System.Collections.Generic;
using System.Text;
using System.Drawing;
using WealthLab;
using WealthLab.Indicators; namespace WealthLab.Strategies
{
public class SvePivots : WealthScript
{
private StrategyParameter paramSwitch;
public SvePivots()
{
paramSwitch = CreateParameter("Show SvePivots?", 1, 0, 1, [...]
[...] program: simply click the “Download...” button in the application's “Open Strategy” dialog. Figure 1. Daily chart of QQQ illustrating the application of the DMI Oscillator/DMI Stochastic. The additional library is available for download to Wealth-Lab customers from our site www.wealth-lab.com ("Extensions" section). To avoid copy/paste, we suggest that Wealth-Lab users would download the code of the trading strategy (see below) by simply clicking the "Download" button in Wealth-Lab's "Open Strategy" dialog (Figure 2). Figure 2. How to download trading strategies [...]
[...] entering in a trend continuation following a pullback after a breakout. This pattern (widely known as "1-2-3 pattern") could be programmed to apply to intraday or daily charts alike. Our rendition targets daily charts. Since the rules didn't put much emphasis on exits, leaving this to the trader, we added a simple profit target. Below you can find the complete trading system's rules: Entry:
Wait for a 5-day close-to-close uptrend. If the closing prices retrace 50% of the uptrend's distance (±1 percentage point) over the next 10 bars, a valid [...]
[...] series and its components, so it’s a trivial matter to make use of them in a trading strategy. Figure 1. In this daily chart of cyclical price action, you can just about verify the dominant cycle measurement (plotted in lime on the heat map) by visual inspection. Strategy Code using System;
using System.Collections.Generic;
using System.Text;
using System.Drawing;
using WealthLab;
using WealthLab.Indicators; namespace WealthLab.Strategies
{
public class MyStrategy : WealthScript
{
public class ArrayHolder
{ // current, old, older
internal double I, [...]
[...] Community.Components
If the bool methods IsSwingHi() and IsSwingLo() do not return a match(false), then -1 is returned in their ‘out’ prameters. The minimum value for ‘farback’ should be RightBars + 1.
Example
using System;
using System.Collections.Generic;
using System.Text;
using System.Drawing;
using WealthLab;
using WealthLab.Indicators;
using Community.Indicators;
using Community.Components;
/*** Requires installation of Community.Components Extension from www.wealth-lab.com > Extensions ***/ namespace WealthLab.Strategies { using [...]
[...] HighlightPattern that you might find useful in other pattern-recognition scripts. As can be seen in Figure 1, the three-bar pattern occurs more frequently that you otherwise might expect in the CL, SI, and GC (shown) electronic sessions. Figure 1. The light gray and blue boxes highlight the short and long setups, respectively.
While testing the code, we noticed that short trade triggers (the last bar in the pattern) whose Close was below the Low of the previous bar had a better success rate than if the Close were simply lower than the previous [...]
[...] profit factor for the last 6 years of trading on the Dow 30 and Nasdaq 100 index components.
Figure 1. Representative trades from the sample Strategy. WealthScript Code (C#)
using System;
using System.Collections.Generic;
using System.Text;
using System.Drawing;
using WealthLab;
using WealthLab.Indicators; namespace WealthLab.Strategies
{
public class EmpiricalModeDecomp : WealthScript
{
StrategyParameter _period;
StrategyParameter _delta;
StrategyParameter _fraction;
public EmpiricalModeDecomp()
{
_period = CreateParameter("Period", [...]