The Keltner channel is a trading system invented by Chester W. Keltner in the 1960s. Its core idea is the average line theory. And at that time the system had achieved remarkable results for a very long time. Although the original Keltner channel system was not as effective as it was when it first appeared, its core idea has so far had a profound impact on the trading community.
Speaking of the channel type strategy, you may think of the famous Bollinger Band (BOLL), but the difference is that the Keltner channel uses the average of the highest price, the lowest price, and the closing price as the base price, and then calculates The N-period average of this base price, which is the middle rail of the Keltner channel. The upper rail is the multiple of the middle rail plus the fluctuation amplitude, and the lower rail is the multiple of the middle rail minus the fluctuation amplitude.
So how is this fluctuation amplitude calculated? That is, the average value of the N period (highest price - lowest price), multiplied by a certain number. In this way, you will find that it is similar to the Bollinger Band (BOLL), there is also the price of the middle rail, and the upper and lower rails calculated according to the price of the middle rail. However, the Keltner channel is smoother than the Bollinger Band (BOLL).
Later on, the Keltner channel was improved by Linda Raschke. Linda Raschke is a well-known trader in commodity futures in the US and president of LBR Asset Management. The original Keltner strategy Middle rail is a normal moving average that was changed to an exponential average. In addition, the calculation method of the fluctuation range is also changed to the average true fluctuation range (ATR). Its calculation formula is:
We know that prices don’t always run in a trend or turbulent way, but in a way that trends and oscillations do not completely alternate randomly. Then Keltner uses the channel as a dividing line to separate the trend market from the turbulent market. When the price runs between the upper and lower rails, we can think of it as a turbulent market. When the price breaks above the upper limit, it shows that a stronger buying pressure has emerged, and the price will continue rise in the future. When the price breaks the lower rail, it shows that there is already a stronger selling pressure, and the price may continue fall in the future.
Through the above trading logic, we can build this strategy on the FMZ Quant platform. Let’s using the Mylanguage as an example. Following these steps: fmz.com > Login > Dashboard > Strategy Library > New Strategy > Click the drop-down box in the upper left corner to select My language, start writing the strategy, and pay attention to the comments in the code below.
// parameter MAN:=20; ATRN:=50; JG:=(HIGH+LOW+CLOSE)/3; // base price ZG:MA(JG, MAN); // Middle rail TRUEHIGH1:=IF(HIGH>REF(C,1),HIGH,REF(C,1)); TRUELOW1:=IF(LOW<=REF(C,1), LOW, REF(C,1)); TRUERANGE1:=IF(ISLASTBAR,H-L,TRUEHIGH1-TRUELOW1); // Calculate the true fluctuation range SG: ZG+MA (TRUERANGE1, ATRN); // Upper rail XG: ZG-MA (TRUERANGE1, ATRN); // Lower rail ZG>REF(ZG,1)&&C>SG,BK; // The middle rail is up, and the price rises above the upper rail. open long position C<ZG, SP; // When holding long position, the price falls below the middle rail, close long position ZG<REF(ZG,1)&&C<XG,SK; // The middle rail is down, and the price falls below the lower rail, open short position C>ZG, BP; // When holding short position, the price rises above the middle rail, close short position AUTOFILTER; // Set the signal filtering method
In order to get closer to the real trading environment, we used the 2 pips of slippage and 2 times the normal transaction fee to test the pressure during the backtest. The test environment is as follows:
Backtest environment Profit report Fund curve
The above figures are the backtest results of the XBTUSD perpetual contract on the BitMEX exchange. In the trend market, Keltner strategy still maintains valid. Although its efficiency is not too high, the overall fund curve is upward. Even in the retracement of the market trend in July 2019, the net value curve did not have a large retracement.
For the complete source code of this strategy, please click it : https://www.fmz.com/strategy/159285
Although Keltner is an old trading method, we have restored its value through coding its logic and improved it. It turns out that this strategy is still valid today. Especially in the field of low and medium frequency CTA strategy, Keltner strategy still has something to dig from, that is, cut off losses and let profits run!
It can be said that most successful trading methods adhere to the trading philosophy of “Less loss when losing, earn a little more when earing”, and then consistently implement this concept. Therefore, as a long-term trading strategy, the short-term loss will inevitably bear the cost, and short-term profit is not our goal.