The MAD indicator

As an application to the windowing technique described the the previous article, John Ehlers proposed a new trend indicator that he claimed is robust and yet simple. The latter is certainly true, as the MAD (Moving Average Difference) oscillator is, as the name says, just the difference of two moving averages normalized to +/-100. Continue reading “The MAD indicator”

Better Indicators with Windowing

If indicators didn’t help your trading so far, just pimp them by preprocessing their input data. John Ehlers proposed in his TASC September article the windowing technique: multiply the input data with an array of factors. Let’s see how triangle, Hamming, and Hann factor arrays can improve the SMA indicator.

Continue reading “Better Indicators with Windowing”

The Price Wave Radio

Price curves consist of much noise and little signal. For separating the latter from the former, John Ehlers proposed in the Stocks&Commodities May 2021 issue an unusual approach: Treat the price curve like a radio wave. Apply AM and FM demodulating technology for separating trade signals from the underlying noise. Continue reading “The Price Wave Radio”

The Trend Persistence Indicator

Financial markets are not stationary: Price curves swing all the time between trending, mean reverting, or entirely random behavior. Without a filter for detecting trend regime, any trend following strategy will bite the dust sooner or later. In Stocks & Commodities February 2021, Richard Poster proposed a trend persistence indicator for avoiding unprofitable market periods.

Continue reading “The Trend Persistence Indicator”

Petra on Programming: Get Rid of Noise

A major problem of indicator-based strategies is that most indicators produce more or less noisy output, resulting in false signals. The faster the indicator reacts on market situations, the noisier is it usually. In the S&C December issue, John Ehlers proposed a de-noising technology based on correlation. Compared with a lowpass filter, this method does not delay the signal. As an example, we will apply the noise elimination to Ehlers’ MyRSI indicator, a RSI variant that he presented in an earlier article. Continue reading “Petra on Programming: Get Rid of Noise”

Petra on Programming: Truncated Indicators

Cumulative indicators, such as the EMA or the MACD, are affected by a theoretically infinite history of candles. In finite backtests, these indicators return slightly different results depending on the test period. This effect is often assumed negligible. But John Ehlers demonstrated in his July S&C article that it is not so. At least not for some indicators, such as a narrow bandpass filter. We have to truncate the indicator’s ‘internal history’ for getting consistent results. How do we do that in C? Continue reading “Petra on Programming: Truncated Indicators”

Petra on Programming: A Unique Trend Indicator

This months project is a new indicator by John Ehlers, first published in the S&C May 2020 issue. Ehlers had a unique idea for early detecting trend in a price curve. No smoothing, no moving average, but something entirely different. Lets see if this new indicator can rule them all.

Continue reading “Petra on Programming: A Unique Trend Indicator”

Petra on Programming: A New Zero-Lag Indicator

I was recently hired to code a series of indicators based on monthly articles in the Stocks & Commodities magazine, and to write here about the details of indicator programming. Looking through the magazine, I found many articles useful, some a bit weird, some a bit on the esoteric side. So I hope I won’t have to code Elliott waves or harmonic figures one day. But this first one is a very rational indicator invented by a famous algo trader.

Continue reading “Petra on Programming: A New Zero-Lag Indicator”

Build Better Strategies! Part 2: Model-Based Systems

Trading systems come in two flavors: model-based and data-mining. This article deals with model based strategies. Even when the basic algorithms are not complex, properly developing them has its difficulties and pitfalls (otherwise anyone would be doing it). A significant market inefficiency gives a system only a relatively small edge. Any little mistake can turn a winning strategy into a losing one. And you will not necessarily notice this in the backtest.  Continue reading “Build Better Strategies! Part 2: Model-Based Systems”

The Market Meanness Index

This indicator can improve – sometimes even double – the profit expectancy of trend following systems. The Market Meanness Index tells whether the market is currently moving in or out of a “trending” regime. It can this way prevent losses by false signals of trend indicators. It is a purely statistical algorithm and not based on volatility, trends, or cycles of the price curve. Continue reading “The Market Meanness Index”