2 Moving Averages | Trend Following
Oct 31, 2023

The 2 Moving Averages | Trend Following indicator provides a systematic trend-following framework that combines dual moving averages with Parabolic SAR confirmation to identify high-probability entries while managing risk via ATR-based stop losses.
Usage
The Usage section describes how the script can be used to identify market trends and execute trades based on specific technical criteria.
The strategy identifies a bullish trend when the Fast MA is positioned above the Slow MA and the current market price remains above the Fast MA. Conversely, a bearish trend is identified when the Fast MA is below the Slow MA and the price is trading below the Fast MA.
Traders can use the Parabolic SAR (PSAR) as an additional filter to confirm momentum before entering a position. For risk management, the script automatically calculates position sizes based on a user-defined percentage of equity at risk and sets stop-loss levels derived from the Average True Range (ATR). Users can toggle long or short positions independently to suit specific market biases or regimes.
Details
The script utilizes a multi-layered confirmation approach to minimize whipsaws common in trending strategies. By requiring both an MA crossover and price proximity to the Fast MA, it ensures that entries occur during active momentum.
The integration of the Parabolic SAR adds a secondary volatility-based filter, ensuring that the trade direction aligns with shorter-term price acceleration. The implementation uses a flexible movAvgType function, allowing the user to select from nine different moving average types (SMA, EMA, WMA, HMA, RMA, SWMA, ALMA, VWMA, and VWAP) to better fit the volatility profile of different assets.
Settings
Backtest Time Period
- Filter Date Range of Backtest: Enables or disables the strategy execution within a specific timeframe.
- Start Date: Sets the beginning timestamp for backtesting data.
- End Date: Sets the concluding timestamp for backtesting data.
Long & Short Position
- On/Off Long Position: Enables or disables long entry signals.
- On/Off Short Position: Enables or disables short entry signals.
Moving Average Inputs (Slow & Fast)
- MA Type: Selects the calculation method (e.g., SMA, EMA, VWAP).
- MA Length: Determines the lookback period for the average (Slow defaults to 160, Fast defaults to 40).
- MA Source: Sets the price data point used for the calculation (e.g., Close).
Parabolic SAR Inputs
- Use Parabolic Sar?: Toggles the PSAR as a mandatory entry filter.
- Display Parabolic Sar?: Controls the visibility of the PSAR dots on the chart.
- Start/Increment/Maximum: Standard parameters for adjusting the sensitivity of the PSAR calculation.
Risk Management Inputs
- ATR Length: The lookback period for the Average True Range used in stop-loss calculations.
- Stop Loss - ATR Multiplier: Sets the distance of the stop loss from the entry price based on ATR volatility.
- % of Equity at Risk: Determines the position size based on the total account equity.
FAQ
How do I adjust the strategy for different timeframes? You can modify the Slow and Fast MA lengths in the settings menu to better capture trends on shorter (intraday) or longer (daily/weekly) charts.
What moving average type is recommended? While the default is SMA, many trend-followers prefer EMA for its faster reaction to recent price changes or VWAP for intraday institutional volume confirmation.
How can I access this tool? You can get access on the LuxAlgo Library for charting platforms like TradingView, MetaTrader (MT4/MT5), and NinjaTrader for free.
Trading & investing are risky and many will lose money in connection with trading and investing activities. All content on this site is not intended to, and should not be, construed as financial advice. Decisions to buy, sell, hold or trade in securities, commodities and other investments involve risk and are best made based on the advice of qualified financial professionals. Past performance does not guarantee future results.
Hypothetical or Simulated performance results have certain limitations. Unlike an actual performance record, simulated results do not represent actual trading. Also, since the trades have not been executed, the results may have under-or-over compensated for the impact, if any, of certain market factors, including, but not limited to, lack of liquidity. Simulated trading programs in general are designed with the benefit of hindsight, and are based on historical information. No representation is being made that any account will or is likely to achieve profit or losses similar to those shown.
Testimonials appearing on this website may not be representative of other clients or customers and is not a guarantee of future performance or success.
As a provider of technical analysis tools and strategies, we do not have access to the personal trading accounts or brokerage statements of our customers. As a result, we have no reason to believe our customers perform better or worse than traders as a whole based on any content, tool, or platform feature we provide.
Charts used on this site are by TradingView in which the majority of our technical indicators are built on. TradingView® is a registered trademark of TradingView, Inc. www.TradingView.com TradingView® has no affiliation with the owner, developer, or provider of the Services described herein.
Market data is provided by CBOE, CME Group, BarChart, Massive, CoinAPI. Select U.S. equities data is provided through Massive. CBOE BZX real-time U.S. equities data is licensed from CBOE and provided through BarChart. Real-time futures data is licensed from CME Group and provided through BarChart. Select cryptocurrency data, including major coins, is provided through CoinAPI. All data is provided “as is” and should be verified independently for trading purposes.
This does not represent our full Disclaimer. Please read our full disclaimer.
© 2026 LuxAlgo Global, LLC.

