R&D Blog
Adjusted TD Sequential | Trading Indicator (Countdown & Exit)
I. Trading Indicator
Developer: Thomas DeMark. Concept: Trend reversal using exhaustion points. Source: (i) Perl, J. (2008). DeMark Indicators. New York: Bloomberg Press; (ii) Kaufman, P. J. (2005). New Trading Systems and Methods. New Jersey: John Wiley & Sons, Inc. Research Goal: Benchmarking of the adjusted TD Sequential™ pattern (Perl, 2008) against the original TD Sequential pattern (DeMark, 1994). TD Sequential™ is a trademark of Market Studies, LLC. Specification: Table 1. Results: Figure 1-2. Trade Setup: There are two stages explained in the Table 1 (Setup and Countdown) . Trade Entry: There are two entry methods explained in the Table 1. We apply the 2nd method. Long Trades: Enter on the close if Close[i] > Close[i − 4]; Short Trades: Enter on the close if Close[i] < Close[i − 4]. Index: i ~ Current Bar. Trade Exit: Table 1. Portfolio: 42 futures markets from four major market sectors (commodities, currencies, interest rates, and equity indexes). Data: 33 years since 1980. Testing Platform: MATLAB®.
II. Sensitivity Test
All 3-D charts are followed by 2-D contour charts for Profit Factor, Sharpe Ratio, Ulcer Performance Index, CAGR, Maximum Drawdown, Percent Profitable Trades, and Avg. Win / Avg. Loss Ratio. The final picture shows sensitivity of Equity Curve.
Tested Variables: Countdown_Length & Time_Index (Definitions: Table 1):
Figure 1 | Portfolio Performance (Inputs: Table 1; Commission & Slippage: $0).
INDICATOR | SPECIFICATION | PARAMETERS |
Auxiliary Variables: | N/A | |
Pattern: | Source: (i) Perl, J. (2008). DeMark Indicators. New York: Bloomberg Press; (ii) Kaufman, P. J. (2005). New Trading Systems and Methods. New Jersey: John Wiley & Sons, Inc. Note: The adjusted TD Sequential changes the original TD Sequential in several areas (e.g. intersection is eliminated; new qualifiers are introduced). TD Sequential: Setup Long Trades: At least 9 consecutive closes are lower than the corresponding closes 4 trading days earlier (Close[i] < Close[i − 4]; Index: i ~ Current Bar). In the case where today’s close is equal or greater than the close 4 trading days before, the setup must begin again. Short Trades: At least 9 consecutive closes are higher than the corresponding closes 4 trading days earlier (Close[i] > Close[i − 4]; Index: i ~ Current Bar). In the case where today’s close is equal or smaller than the close 4 trading days before, the setup must begin again. Note: Each day in a look back period is a trading day. TD Sequential: Countdown Long Trades: Once the setup is satisfied, we count the number of days in which the close is lower than, or equal to, the low 2 days earlier (Close[i] ≤ Low[i − 2]; Index: i ~ Current Bar). The days that satisfy this requirement do not need to be in a row. When the countdown reaches 13, the countdown is completed and we get a buy signal if the qualifiers below are satisfied. Short Trades: Once the setup is satisfied, we count the number of days in which the close is higher than, or equal to, the high 2 days earlier (Close[i] ≥ High[i − 2]; Index: i ~ Current Bar). The days that satisfy this requirement do not need to be in a row. When the countdown reaches 13, the countdown is completed and we get a sell signal if the qualifiers below are satisfied. Countdown Qualifier: Bar #13 Long Trades: (a) The low of countdown bar #13 must be lower than, or equal to, the close of countdown bar #8 (variable Bar13_Lookback = 13 − 8), and (b) The close of countdown bar #13 must be lower than, or equal to, the low two bars earlier. When the market fails to meet these conditions, the bar #13 is deferred. Short Trades: (a) The high of countdown bar #13 must be higher than, or equal to, the close of countdown bar #8, and (b) The close of countdown bar #13 must be higher than, or equal to, the high two bars earlier. When the market fails to meet these conditions, the bar #13 is deferred. Countdown Cancellation Long Trades: Developing countdown is canceled when: (a) The price action rallies and generates a sell setup, or (b) The market trades higher and posts a true low (i.e. min(Close[i − 1], Low[i])) above the resistance level of the prior setup. Short Trades: Developing countdown is canceled when: (a) The price action falls and generates a buy setup, or (b) The market trades lower and posts a true high (i.e. max(Close[i − 1], High[i])) below the support level of the prior setup. Countdown Cancellation & Recycling Rule I: Compare the true range (i.e. the difference between the highest true high and the lowest true low) of the previous setup (“TR1” ~ the true range #1) with the true range of the most recently completed setup (“TR2” ~ the true range #2). When comparing TR1 and TR2, setups can extend beyond nine bars. The recently completed setup replaces the previous setup if: 1.618*TR1 > TR2 ≥ TR1 (variable Recycle_Multiplier = [1.000, 1.618]). Rule II: A setup within a setup rule: If the most recent setup has an extreme close-to-close range within the true range of the prior setup then the prior setup stays active. Rule III: If a setup extends to eighteen bars then the countdown is canceled (variable Recycle_Count = 18). | Default Values: Setup_Length = 9; Setup_LookBack = 4; Countdown_Length = 13; Countdown_LookBack = 2; Bar13_Lookback = 5; Recycle_Multiplier = [1.000, 1.618]; Recycle_Count = 18; Sensitivity Test: Countdown_Length = [6, 25], Step = 1; |
Filter: | N/A | |
Entry: | There are two methods of entry: (a) Enter on the close of the day on which the countdown is completed; (b) Long Trades: After the countdown, enter on the close if Close[i] > Close[i − 4]; Short Trades: After the countdown, enter on the close if Close[i] < Close[i − 4]. Index: i ~ Current Bar. In this test we apply the 2nd method. | |
Exit: | Time Exit: nth day at the close, n = Time_Index. | Time_Index = [1, 40], Step = 1; |
Sensitivity Test: | Countdown_Length = [6, 25], Step = 1 Time_Index = [1, 40], Step = 1 | |
Position Sizing: | Initial_Capital = $1,000,000 Fixed_Fractional = 1% Portfolio = 42 US Futures ATR_Stop = 6 (ATR ~ Average True Range) ATR_Length = 20 | |
Data: | 42 futures markets; 33 years (1980/01/01−2013/05/31) |
Table 1 | Specification: Trading Indicator.
III. Sensitivity Test with Commission & Slippage
Tested Variables: Countdown_Length & Time_Index (Definitions: Table 1):
Figure 2 | Portfolio Performance (Inputs: Table 1; Commission & Slippage: $100 Round Turn).
Related Entries: TD Sequential (Setup & Countdown) | TD Sequential (Countdown & Exit) | TD Setup – Trend (Setup & Exit)
Related Topics: (Public) Trading Strategies
CFTC RULE 4.41: HYPOTHETICAL OR SIMULATED PERFORMANCE RESULTS HAVE CERTAIN LIMITATIONS. UNLIKE AN ACTUAL PERFORMANCE RECORD, SIMULATED RESULTS DO NOT REPRESENT ACTUAL TRADING. ALSO, SINCE THE TRADES HAVE NOT BEEN EXECUTED, THE RESULTS MAY HAVE UNDER-OR-OVER COMPENSATED FOR THE IMPACT, IF ANY, OF CERTAIN MARKET FACTORS, SUCH AS LACK OF LIQUIDITY. SIMULATED TRADING PROGRAMS IN GENERAL ARE ALSO SUBJECT TO THE FACT THAT THEY ARE DESIGNED WITH THE BENEFIT OF HINDSIGHT. NO REPRESENTATION IS BEING MADE THAT ANY ACCOUNT WILL OR IS LIKELY TO ACHIEVE PROFIT OR LOSSES SIMILAR TO THOSE SHOWN.
RISK DISCLOSURE: U.S. GOVERNMENT REQUIRED DISCLAIMER | CFTC RULE 4.41
Codes: matlab/demark/sequential-3/