November 11th, 2016

A Stock Trading System – Part IV

In the previous 3 parts of this series was presented the output of any stock trading strategy using just 3 portfolio metrics: n*u*PT. The number of trades done, the bet size, and the profit margin, as if dealing with an inventory management problem. Only 3 numbers, two of which you can fix yourself, and the other, you can control to some extent.

To show that about any trading method could be used, I presented as example DEVX8 which operates using random-like entries which by itself is somehow showing that about anything could do the job. If you could get good results using random-like entry and exit functions, then any trading strategy that would act as if selecting its entry and exit points at random (which is about most of them) would behave under about the same constraints, and be able to generate as much profits, there too just by waiting for it. A very simple explanation which also justified doing it using random-like functions. Because if it could survive random-like time functions, it would survive random-like stock prices fluctuating in time.

I would say that from a static point of view, there is not that much you can do to greatly improve overall portfolio performance due to a trading strategy's signature. There are a number of measures you can take which overall will have no effect on the outcome of a particular trading strategy. You can write:

2*n*(u/2)*PT = 2*n*u*(PT/2) = n*2*u*(PT/2) = n*(u/2)*(PT*2) = n*u*PT

All have the same outcome, however, they are not necessarily easily executable. There is an impact. For instance, 2*n*(u/2)*PT, reduces the trade unit by half and requires to doubles the number of trades. It is very easy to reduce the trade unit, it is a number you set yourself in code, no program intervention. But, it is much harder to double the number of trades based on a strategy's signature, since it was proposed that a strategy's signature is a limiting factor. The same goes for the other scenarios requiring to double the number of trades.

Reducing the profit target by half would require either twice as many trades to get to the same point or doubling the trade unit. If you only reduce the trade unit, the program won't trade more, it will trade the same and will simply generate half the profits. Reducing the trade unit is not how you improve on performance. It can however be used as a measure to reduce market risk, market exposure. The signature of the program will only admit a certain number of entries, and if you reduce the profit target by half, you might end up with half as less profits.

You can increase the trade unit, the bet size, this won't change the strategy's signature, however, it will require double the capital. It will have the same impact as doubling the number of trades. The money, however, has to come from somewhere. It gets hard to increase a trading strategy signature. As if only more money could do the job. Nonetheless, a stock trading strategy can accept time as a currency. In the sense that if you can wait, you could get more.

Another solution is to change a trading strategy's signature by simply changing trading strategy. Which is what is done most often. We find better trading strategies with better metrics. But then, you have to design those too.

What is needed are functions that will affect the outcome of n*u*PT going forward, not just mix values around. What is needed is: A(t) = A(0) + n(t)*u(t)*PT(t). Time functions on the metrics themselves. Starting with no impact due to the limited capital, to then progressively as profits increase, to have these functions pulsate with the price movements of each stock in the portfolio.

The financing of trading operations can come in part from the ongoing profits generated by these time functions.

What is being sought is: n(t)*u(t)*PT(t) > n*u*PT, saying that the function metrics generate more profits than the trading strategy's signature.

To do so is relatively easy. Financing comes from you recycling profits to buy more shares, gradually raising the trade unit and requesting more as profit margin. All three can be done at the same time. And this is what you see in DEVX8. It might be a strange trading strategy due to its random-like entries and exits, but, still, it plays a different game than most. The way I see it is that it exchanges the notion of knowing when a trade in a stock will occur, and how much will be traded, for the assurance that it is part of a bigger long term plan than just looking for immediate profits.


What should be retained from this series of articles is that you have 3 metrics of importance. You can accept them as a trading strategy's signature and go on the quest of finding another trading strategy with the best 3 metrics you can find to replace the strategy you have. This will have you always chasing new and newer trading strategies until you finally settle on one with some acceptable metrics which could be replaced by yet another.

Or, transform one of your existing trading strategies with for objective to put your metrics on time functions as described above: n(t)*u(t)*PT(t) > n*u*PT. And thereby make your trading strategy perform better than trying to find a new one. That too, is a matter of choice. The math and the DEVX8 simulations showed that over the past 20 years, one course of action was better than the other, and it was measured as: A(t) = A(0) + n(t)*u(t)*PT(t).

Related articles part of this series, as they were written:

A Stock Trading System – Part I 
A Stock Trading System – Part II 
A Stock Trading System – Part III 

November 11th, 2016 © Guy R. Fleury. All rights reserved.


Alpha Project