EMA Slope Cross Trend Following Strategy
Overview
This strategy uses the cross of the slopes of two EMAs with different lengths to generate trend following signals. By default, 130 and 400 are used, which perform very well.
The conditions that make the strategy enter the market are:
- Fast Slope > Slow Slope and price > EMA 200: go Long
- Fast Slope < Slow Slope and price < EMA 200: go Short
When the simple slopes cross in the opposite direction, it closes the position.
The strategy performs best on Bitcoin and the most liquid and capitalized altcoins, but works greatly on volatile assets as well, in particular if they often go trending.
Works best on the 4h timeframe.
There is also an optional Volatility filter, which opens the position only if the difference between the two slopes is more than a specific value. The purpose is to avoid opening positions when the price is going sideways and the noise is much greater than the signal.
Enjoy it!
Strategy Logic
The core of this strategy is to compare the slopes of two EMAs with different lengths.
First, EMAs with lengths of 130 and 400 are calculated, then the slopes of each are calculated, then EMAs of length 3 are calculated on each slope to get smoothed slope curves.
When the fast EMA slope crosses above the slow EMA slope, a buy signal is generated. When the fast EMA slope crosses below the slow EMA slope, a sell signal is generated.
To filter out noise, a 200 period EMA can be used as a trend filter, considering long signals only when the price is above the EMA, and short signals only when below.
In addition, a volatility filter can be used, generating signals only when the difference between the two slopes is greater than a threshold, to avoid cases where the slopes cross but volatility is insufficient.
When the fast and slow slopes cross inversely, positions are closed to stop profits/losses.
Advantage Analysis
-
Using slope crosses to generate signals can effectively track trends
-
Adjusting EMA period combinations can adapt to different market conditions
-
The trend filter avoids being misled by choppy price action
-
The volatility filter filters out false signals
-
Simple and clear logic, easy to understand and implement
-
Can be used on multiple timeframes
Risk Analysis
-
Frequent opens and closes may occur in large ranging markets
-
Inappropriate EMA periods could miss trend turning points
-
Parameters should be tuned to adapt to changing market conditions
-
Like MA systems, large trends may reverse at extremes
Optimization Directions
-
Try different EMA period combinations to find optimal parameters
-
Choose parameters according to asset characteristics and market conditions
-
Consider adding stop loss strategies to control risk
-
Consider dynamically adjusting EMA periods
-
Test different volatility threshold values
-
Test effectiveness across timeframes
Summary
The strategy has clear, easy to understand logic, using EMA slope crosses to generate signals and effectively track trends. The trend and volatility filters reduce noisy trades. Tuning EMA period combinations adapts it to varying market conditions. Overall a simple and practical trend following strategy that is worth testing and optimizing in live trading.
/*backtest
start: 2023-10-09 00:00:00
end: 2023-10-16 00:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
// strategy(title="Slopes",initial_capital=1000, default_qty_type=strategy.percent_of_equity, commission_type=strategy.commission.percent, commission_value=0.06, slippage = 2, default_qty_value=30, overlay=false)
//definizione input- 1

