Capturing Market Moves Using Fully Automated Trading Systems

|
Includes: AAPL, FXA, FXB, FXC, FXE, FXF, FXY, GOOGL, GS, JPM, OIL, SPY, UDN, USO, UUP
by: Peter Knight
Summary

Current extreme economic fundamentals will generate major market moves.

This report introduces fully disclosed automated trading strategies to help you capture them.

Featured markets, Apple (AAPL), JP Morgan Chase (JPM), Google A (GOOGL), Swiss Franc (CHF), Eurodollar (EUR), Japanese Yen (JPY), Gold (GC), Crude Oil (CL), S&P 500 Mini (ES).

Each of the 9 markets trades 6 long/short fully automated systems, 3 Momentum and 3 Range trade programs.

I've included full disclosure of all systems, all supporting historical price data, every order generated 2007-2016 enabling you to verify past performance and monitor trades moving forward.

By diversifying not only the markets you trade but the way you trade them you can increase return on risk and softened up the swings in your equity curve, in up or down markets.

Combined performance for the automated systems disclosed in this report

2 January 2007 through 21 October 2016

$1,000,000 start balance

$5,107,417 cumulative net gain, no compounding of positions, withdrawing all profits annually.

-$41,738 greatest net drawdown from highest high to lowest low prior to recovery and new equity high.

+93.96% $939,630 best year 2008
+25.45% $254,472 worst year 2014
+51.72% $517,207 2007-2016 average
+78.81% $788,059 2015
+54.02% $540,248 2016 through 21 October

Monthly performance

Links to full disclosure of all trading methodologies in this portfolio.

I've included all supporting historical price data, every order generated, every trade entry, offset, profit, loss enabling you to verify past performance and monitor trades forward.

Market

Trade Size

AAPL (Apple)

1,000 shares

GOOGL (Alphabet Class A)

100 shares

JPM (JP Morgan Chase & Co.)

1,000 shares

EUR (Euro currency unit)

62,500 Eurodollars

CHF (Swiss Franc)

62,500 Swiss Franc

JPY (Japanese Yen)

6,250,000 Japanese Yen

GC (Gold-futures)

100 Troy Ounces

CL (Crude Oil-WTI-Futures)

1,000 Barrels

ES (E-Mini-S&P-500-futures)

$50.00 times the index

Sector performance using the disclosed strategies

Markets with higher margins (lower leverage)

2007-2016 Performance trading AAPL, GOOGL and JPM

Futures and spot markets with lower margins and unrestricted short sales

2007-2016 Performance trading GC, CL, ES, CHF, JPY and EUR

Currencies, lowest margin requirements and unrestricted short sales

2007-2016 Performance trading CHF, JPY and EUR

Strategy

Fully automated trading allows me to trade 54 different systems in 9 markets.

Each of the 9 markets trades 6 systems.

3 momentum traders, 1 short term, 1 intermediate and 1 longer term.

3 range traders, 1 short term, 1 intermediate and 1 longer term.

Introduction to momentum trend trading

Momentum traders automatically enter the market with price action long as a market aggressively rallies or, short with an aggressive sell off.

Momentum traders believe that there is a higher probability of capturing a piece of an aggressive move already in progress than the market pulling a 180 after aggressive price action engages, think of it as taking a little out of the middle.

Using the chart below to simplify this concept , above the red line you're long, below the red line short.

Example,

1) Net new short
2) Reverse from short to long
3) Reverse from long to short
4) Reverse from short to long
5) Reverse from long to short
6) Reverse from short to long
7) Profit objective achieved, exit to neutral

Momentum traders repeat this process indefinitely

Introduction to Range trading

Range traders attempt to sell a market when pushed above fair value or buy a market when pushed below fair value.

Using the chart below to simply this approach you'd trade the inside channel, the outside channel represents where you would be placing your protective stops.

Example;

1) New position long
2) Place a protective sell stop to neutral (not hit)
3) Sell objective and reversal to short (hit)
4) Place a buy stop to protect your net new short position taken in #3 (not hit)
5) Buy objective and reversal to long (hit)
6) Place a protective sell stop on the new long position taken in #5 (not hit)
7) Sell objective and net new short (hit)

Range traders repeat this process indefinitely

All strategies disclosed in this report are simple, all use constants for the life of the program 2007-2016, all have a maximum of 5 parameters.

System development

Keep your trading systems simple.

Diversify the markets you trade and how you trade them.

Apply your systems to multiple markets that have experienced up, down, sideways, volatile and non volatile price action to determine the durability of the system and the distribution of profits over the life of the program.

Always test your systems on out of sample data prior to trading them live. Example, do your optimization to develop your system using an "in sample" data period from Jan. 1995 to Dec. 2004, once the system is defined trade it on "out of sample" data from Jan. 1990 to Dec. 1994 and Jan. 2005 through Oct. 2016. Compare in and out of sample results.

Define risk tolerance for each system prior to trading it. Example, if the maximum life of program drawdown increases by 30%, suspend trading that system.

Define risk tolerance for the overall allocation prior to trading it. Example, if the maximum life of allocation drawdown increases by 30% suspend the allocation.

Always have multiple backup systems for each market and revised allocations on deck.

Always maintain your pre defined risk tolerance levels for both the individual systems and the overall allocation.

Always maintain your trading discipline.

The biggest mistake automated traders make

Example Gold.

Using the data for gold from January 1986 through December 2006 I'm going to develop two 100% objective fully automated trading systems.

The first, a simple system using a maximum of 5 parameters,total possible combinations of the 5 parameters 119,325,440.

The second 8 parameters, expanding the same 5 parameters in system 1 with three additional parameters in an attempt to make the system "better". Total possible combinations of the 8 parameters 347,170,997,796,864.

Gold 1987-2006

Once the trading parameters are defined on "in sample data" (1987-2006) I'm going to do a "walk forward" (trading the system on "out of sample" data from 2007 to 2016)

Gold 2007-2016

Then match "in sample" performance (1987-2006) with out of sample "walk forward" performance (2007-2016).

Model 1 optimization parameters

1) I've varied the number of data days from 1 to 5 in increments of 1 day

2) Volatility multiplier from 0.30 to 1.00 in increments of 0.01

8) Trailing stop from $2,500 to $5,000 in increments of $100

9) High volatility filter from 1,000 to 6,000 in increments of 25

11) Profit objective $2,500 to $10,000 in increments of $250

Total possible combinations 119,325,440

Model 1 in sample results (1987-2006)

Net profit +$85,335.00
Worst case drawdown -$18,256.99
Return on risk 4.67 to 1 (return on risk = cumulative total profit divided by maximum drawdown)

Model 1 out of sample results 2007 through 2016

Net profit $141,693.98
Worst case drawdown -$20,316.00
RR - Return on risk 6.97 to 1

In the case of model 1 the out of sample performance (2007-2016) was superior to in sample performance (1987-2006).

Model-1 spreadsheet including all supporting historical price data, every order generated (2007-2016) and full disclosure of this automated trading methodology.

Model 2

1) I've varied the number of data days from 1 to 10 in increments of 1 day.

2) Volatility multiplier from 0.30 to 3.00 in increments of 0.01.

4) Slope period from 10 to 90 days in increments of 2 days.

5) Slope multiplier 0.00 to 5.00, increments of 0.02. (makes entries dynamic to trend, quicker entries with the trend, slower entries, if any against the trend)

6) Slope filter in ticks -90 to 990, increments of 10 ticks (qualifies the strength of the trend)

8) Trailing stop from $2,500 to $5,000 in increments of $100

9) High volatility filter from 1,000 to 9,000 in increments of 100

10) Low volatility filter from 0 to 900 in increments of 100

11) Profit objective $1,500 to $10,000 in increments of $100, (slope can also make objectives dynamic to trend and volatility).

Total possible combinations 347,170,997,796,864 versus
119,325,440 combinations in model 1.

In this example I've expanded the parameters in model 1, added a slope filter to make the model dynamic to market trend and a low filter in an attempt to minimize "whipsaw" during uncertain trendless periods. My objective was achieving a higher return on risk in model 2 than achieved in model 1 of 4.67 to 1

Model 2 in sample results (1987-2006)

Net profit $149,005.00
Worst case drawdown -$8,560.00
RR - Return on risk 17.41 to 1

A return on risk of 17.41 for an individual system is about as good as it gets.

Model 2 out of sample results 2007 through 2016

Net profit +$78,219.97
Worst case drawdown -$45,345.00
RR - Return on risk trading "out of sample data" 1.72 to 1

For model 2 the out of sample performance RR = 1.72 was terrible relative to the in sample performance RR = 17.41 to 1.

Why?, because I curve fit the system on the data from 1987-2006 using the best set of parameters out of 347 trillion+ possible combinations.

Model-2 spreadsheet including all supporting historical price data, every order generated (2007-2016) and full disclosure of this automated trading methodology.

Lesson, out of sample performance will give you far more realistic performance expectations. Testing your systems "out of sample" on a minimum 5 years of data is essential. If you don't test your methodologies "out of sample" your just kidding yourself as to what you can expect from that system and risk exhausting all funds because you weren't prepared for the inevitable drawdowns that will occur trading any methodology technical or fundamental.

Second biggest mistake

Not diversifying your trading strategies in the markets you trade.

Many traders stop after they develop one system or fall in love with one methodology; experience will prove this is the wrong procedure to follow.

Don't get lazy, maintain your objectivity, keep researching additional trading strategies, find which ones complement one another and produce the highest (RR) return on risk. (return on risk = cumulative total profit divided by maximum drawdown)

For the additional systems qualify them using the same procedure of in and out of sample testing.

Objective

Try to find a minimum of 6 trading strategies that have performed out of sample on Gold over a 10 year period.

Example

3 momentum traders

1 short term GC01R
1 intermediate GC2T
1 longer term GC03T

3 range traders

1 short term GC01R
1 intermediate GC02R
1 longer term GC03R

Once you have qualified the systems use the mark to market out of sample daily performance data to determine the mixture of strategies that produces the highest return on risk

Example

A total of 6 systems produces 63 possible combinations

Linked here is the spreadsheet containing all 63 combinations for the 6 systems listed above.

The combination with the highest return on risk is set number 63

Qualify the allocation's daily and monthly out of sample distribution of profits for the life of the allocation. (in this case 2007-2016)

The objective is to ensure all gains were not generated in a given period or during specific market conditions.

Example

Set number 63 performance

Combined net profit, $788,308.00
Maximum combined drawdown, -$26,528.00
Current drawdown 20 October 2016, -$3,395.00

Defining allocations to trade

After you've found 20 to 100 systems that work out of sample you need to define an allocation to trade.

In this allocation I've covered stocks, metals, energy and currencies.

Market

Trade Size

AAPL (Apple)

1,000 shares

GOOGL (Alphabet Class A)

100 shares

JPM (JP Morgan Chase & Co.)

1,000 shares

EUR (Euro currency unit)

62,500 Eurodollars

CHF (Swiss Franc)

62,500 Swiss Franc

JPY (Japanese Yen)

6,250,000 Japanese Yen

GC (Gold-futures)

100 Troy Ounces

CL (Crude Oil-WTI-Futures)

1,000 Barrels

ES (E-Mini-S&P-500-futures)

$50.00 times the index

If you're trading 9 markets, 6 systems in each market there are a total of 54 systems active, defining an allocation can be challenging.

Lets assume you wanted to trade the best combination of 18 systems out of the 54 you have on deck, the total number of market sets combined 18 at a time = 96,926,348,578,604, doing an exhaustive enumeration could take over 70 years.

Genetic algorithms have to come into play, if programmed correctly you should be able to achieve a portfolio optimization efficiency of better than 80% taking several minutes rather than the 70+ years an exhaustive enumeration would require.

This report took less than 2 minutes to generate, click here for the spreadsheet containing the top combinations

Implementing your Automated trading strategies

Many trade desks can fully automate any 100% objective trading system eliminating your daily responsibility of canceling and replacing orders.

Most of these desks provide a daily summary of the cumulative total for each system in the allocation enabling you to match your actual performance to the system performance to ensure the system(s) are being traded by your clearing firm exactly as represented.

Example report

Date 161020, 16=Year 2016, 10=Month October, 20=Day
Cumulative performance for each active system in the allocation
TOT $5,110,843.50, cumulative total of trades, all active systems
Current drawdown -$12,632.00 (current distance from highest high)
Maximum drawdown -$41,738.00 (highest high to lowest low)

Many also provide "orders" reports enabling you to;

  • Match the system orders to those reported online for your account
  • Efficiently monitor the performance for every system in your account
  • Monitor drawdowns for each individual system to quickly identify any system that is problematic enabling you to eliminate that system and replace it.
  • Monitor systems you may want to add to your portfolio

Example

Gold, system GC01T

Reading the "orders" report

Looking at the "orders" report for GC01T

I should be long gold at $1,263.14 (actual price $1,263.20)

Orders are rounded to the nearest tic

The sell stop reversal should be $1,261.79 (actual order $1,261.80 stp)

The GC01T objective should be $1,363.14 (actual order $1,363.10 limit)

Cumulative net gain S/B +$142,418.14 net of $50.00 deducted for bid/ask spreads, order execution slippage and all fees per roundturn trade.

Current drawdown for GC01T as of 20 October 2016, -$1,194.00

The maximum drawdown for GC01T life of program 2007 through 2016, -$16,303.02,

For an example daily "orders" report trading the 54 systems in this allocation see 21-10-2016 orders-knight-allocation 47

Managing you systems

I think we all know there is no "holy grail" for trading

Automated trading systems eliminate emotion, react far faster than we would making a subjective trading decision but they can and do fail.

From personal experience the difference between successful automated trading and failure is how you diversify, qualify your systems and prepare for any potential outcome good or bad.

If you're trading 54 different systems in 9 markets if one fails it's nothing more than a bump in the road not the financial hemorrhage you may experience when you're trading 1 to 3.

Lesson, diversify not only the markets you trade but the way you trade them.

Define your risk tolerance for the system prior to trading it

Example, using the GC01T trading system (Gold trend momentum 1)

My rule

If the maximum drawdown increases by 30% growing from -$16,303.02 to -$21,193.94 all trades for GC01T will be suspended from the allocation.

The remaining 5 gold systems will remain active

2 remaining momentum traders

1 intermediate GC02T
1 longer term GC03T

3 range traders

1 short term GC01R
1 intermediate GC02R
1 longer term GC03R

Failed system replacement procedure

Always have multiple systems on deck for each active market

In the case of gold I track the daily performance of 15 objective trend and counter trend mythologies in addition to the ones I trade, the monthly performance of over 100.

Using the top 15 (out of the 100 systems on deck) I take the mark to market daily performance for the top 15 (.all files)

Total possible combinations of the 15 systems, 32,767.

In less than 3 seconds an exhaustive enumeration can be generated ranking the 2007-2016 performance and return on risk for all 32,767 possible combinations of the 15 systems.

Ranked by return on risk (R/R) in descending order.

In the event GC01T fails I could revise my gold allocation eliminating GC01T the same day as the drawdown violation occurred.

In this example,

I could replace GC01T, GC02T, GC03T with market set 4156 on the report above, trading GC04T, GC05T, GC06T.

All changes could be implemented on or before market on close

Once my instructions are sent to my desk, my desk confirms the automated order entry platform has been revised and all current gold positions are consistent with the revised system allocation for gold.

Qualify your systems, define your risk tolerance, maintain your discipline.

The purpose of these reports is to motivate all of us to share solutions to the challenges of making money during the coming major market moves generated by the current extreme fundamentals.

More on automated trading programs

If interest is high enough and commentaries are objective and productive I'll expand my reports to International markets and additional trading systems.

AAPL, GOOGL, JPM, SPY, FXF, (NYSEARCA:UUP), UDN, FXE, FXY, FXB, FXC, FXA, OIL USO, GS

Disclosure

I've been a professional trader and run a family office in Tortola, British Virgin Islands for the past 20+ years, zero income, corporate and inheritance tax and would like to keep it that way. Because of the potential tax implications I do not manage US accounts or sell advisory services to US clients. I do however manage funds for a limited number of qualified non U.S. investors. I may at times for my own accounts or for the accounts I manage have positions on that could be contrary to the ones mentioned in my reports.

Full disclosure

Disclosure: I/we have no positions in any stocks mentioned, but may initiate a long position in LONG AND SHORT IN ALL over the next 72 hours. I wrote this article myself, and it expresses my own opinions. I am not receiving compensation for it (other than from Seeking Alpha). I have no business relationship with any company whose stock is mentioned in this article.