A Trading Machine V

April 3, 2013

From the observations made in Designing a Trading Machine IV, it was said to find and select some n (ΔP > T) on a daily basis (or any trading interval for that matter) where n was the number of profitable trades exceeding a certain threshold T.

Stats on IBM were presented, as an example, over a 13 years period (some 3,316 trading days). Enough data to be able to extract generalities; some of which have already been stated. Many other stocks could have been selected in order to structure a portfolio of say 10 to 100 stocks or more if desired. But I found it more practical to look at a single stock as a representative of others that could or might have constituted a long-term managed portfolio. It also turns out to be one of my choices for the next 10 to 20 years, so studying its past might help in many ways.

Anyone wishing to start trading IBM some 13 years ago (period: Jan 3rd, 2000 to March 12th, 2013, initial price: $112.44) had from day one much data available: past historical prices, fundamental and technical data. Even a guess back then would not have been challenged by many. It was one of the top companies around and still showed much promise as an outstanding EPS earner. Even a Buy & Holder would have considered IBM as a desirable choice; not knowing beforehand that it was near its historical high; which would require over a decade to exceed.

Over the last 13 years, as was shown previously, IBM managed to provide a modest 6.1% CAGR; not what could be considered stellar performance. But the real question is: could anyone do better? Could anyone trade IBM and not only outperform the Buy & Holders, but outperform anyone playing IBM over this 13 years trading interval. One thing for sure, whatever the trading method one would like to use, he/she would have to contend with the same price series ΔP as everyone else.

In the market, you can only evaluate performance results after the fact, not before. So embarking on the IBM trading quest some 13 years ago might have been a reasonable choice but would not provide a guarantee of future out-performance. In following your choice, only time would tell if you wasted your time or not.

Depending on the trading strategy used, all that would really have mattered over the years would have been the final outcome: and that is the end result of IBM's payoff matrix: Σt(H(IBM).*ΔP). There was nothing that could be done concerning how price would evolve over time, all one could do to improve on the potential long-term CAGR was to adopt a trading strategy that might out-performed, as a bare minimum, the Buy & Hold: Σ(H(IBM).*ΔP) > Σ(H(B&H).*ΔP).

The Buy & Hold strategy is a one decision process after which there is absolutely nothing to do but wait, sitting on one's butt, almost no work at all except collect and reinvest the dividends, no need to spend time monitoring daily market gyrations. After this 13 years of waiting, IBM did produce in the end a 6.1% CAGR. This is the same as seeing one's portfolio grow by 2.16 times its original value over the period.

Based on whatever criteria, the initial capital at risk can make quite a difference in the end. If you start with 10k, 10M or more makes all the difference when you look at the long term. The first stake grows to 21.6k while the second grows to 21.6M. I'll get back to these numbers later.

A trading strategy H can be viewed as a series of trading decisions numbered from 1 to N, where N is the total number of trades being made over the trading interval. This series of trading decisions are to be applied over the 3,316 trading days; and if trading more than once a day will imply an even greater number of decisions to be made.

The more one trades, the more commissions have to be paid, the more slippage intervenes, the more it might reduce the overall performance. However, there is a compromise to be made; and as was stated previously, trades should be made with the objective: ΔP > T where T is taking into account all frictional costs and more.

Also, a trading strategy H has to contend with market exposure and market participation. If you put half your capital at work, one should not be surprised to get half the results. And if you participate only half the time, then this too will tend to affect overall performance.

Each inventory level change is the result of a trading decision being made. The reason behind the change could be anything: a discretionary trading method, a program using simple or complex trading procedures. Notwithstanding, whatever the trading strategy, it's outcome can be summarized in a payoff matrix: Σ(H.*ΔP). In the IBM case, it would result in something like:

Σ(H(IBM).*ΔP) = Σ(H(a) .+ (B(b) .- S(s)) .* ΔP) (1)

where the inventory level H will change according to the buying B and selling S matrices being applied. The math operations are element-wise.

Both the B and S matrices are often of the sparse type, the same size as the H matrix, with probably most of their entries being zero. The buying matrix B could be the result of a decision surrogate D which could be assisted by a quantity enhancer Q; a scaling factor used either to increase or decrease what would have been the usual buying order B as in B(b) = (B.*Db.*Qb). The same could be said for the selling matrix: S(s) = (S.*Ds.*Qs). The decision matrix Db and Ds are composed of: {0,1} with each entry in their respective matrix the result of a set of trading rules, software routines and/or decision sets.

From equation (1), we could design decision surrogates of all types with trade enhancers to play a Kelly-like type of game, meaning by this that there could be a deliberate wish to increase the inventory H as time goes by, and not that a real Kelly number would be used. The objective here would be to gradually increase the inventory before reaching terminal time T: the end of the trading interval. This would have the same effect as if increasing the bet size as the equity builds up.

We could scale the holding matrix H using a linear or exponential function, I usually prefer an exponential: H(1+g)t where g would be the desired inventory's growth rate over the trading interval. For the IBM payoff matrix case, this would translate into Σ(H(IBM) (1+g)t .*ΔP). And by opening this door we are adding the ability to exceed the Buy & Hold scenario.

This does not say that the strategy H you want to implement will be strictly increasing as a fixed exponential function, only that [H(T)/H(0)](1/t) -1 = g. This is a huge difference, formulated this way, there is no notion of the path taken to achieve the final results, only that the results were obtained and calculated at time = T, after the fact. It is not because you can write: H(1+g)t that you know what the g rate is or is going to be. This g rate can generate some real surprises.