Machine Learning : Cosine Similarity & Euclidean Distance

May 31, 2023

Static chart image
Signals
Machine Learning
Dashboard
Moving Averages

The Machine Learning : Cosine Similarity & Euclidean Distance indicator utilizes advanced classification algorithms and distance metrics to identify market patterns and generate directional signals. It combines multiple machine learning techniques with custom moving averages to filter market noise and improve signal accuracy across various timeframes.

Usage

The Usage section describes how the script can be used to identify market trends and potential reversal points.

  • Signal Interpretation: The indicator generates long and short signals based on the selected machine learning method. These appear as visual cues on the chart.
  • Trend Filtering: By enabling the "Trend Filter," users can refine signals to align with the overarching market direction, reducing "whipsaw" trades in range-bound conditions.
  • Dynamic Backtesting: Users can define specific "Start" and "End" dates to evaluate the historical performance of the classification method on a specific asset.
  • Moving Average Selection: Users can choose between CPMA, FRMA, or Rational Quadratic smoothing to serve as the baseline for trend detection.

Details

The script functions by comparing current market features against historical data stored in arrays. It employs three primary mathematical approaches for classification:

  • Cosine Similarity: Measures the cosine of the angle between two vectors. It focuses on the orientation of the data points rather than their magnitude, ranging from -1 (dissimilar) to 1 (identical).
  • Lorentzian Distance: A robust distance metric often used in machine learning to handle outliers more effectively than standard linear metrics by measuring the logarithmic similarity between data points.
  • Euclidean Distance: Calculates the straight-line distance between two points in a multi-dimensional space, providing a classic "nearest neighbor" approach to pattern recognition.

The indicator also incorporates the Conceptive Price Moving Average (CPMA) and Fractal Adaptive Moving Average (FRMA) to provide adaptive support and resistance levels. Signal processing is further enhanced via Rational Quadratic and Sigmoid transformations to smooth the data output without significant lag.

Settings

General Settings

  • History Lookback: The number of historical bars the algorithm considers when searching for similar patterns.
  • Nearest Probable Distance: Determines the proximity threshold for a historical match to be considered valid for prediction.
  • Stats Location/Size: Customizes the visual placement and scale of the performance dashboard.

Moving Averages

  • Moving Average Selection: Choose between CPMA, FRMA, or RationalQuad for the primary trend baseline.
  • CPMA/FRMA Length: Adjusts the lookback period for the respective adaptive moving averages.

Filter

  • Enable Trend Filter: Toggles the requirement for signals to align with the underlying moving average trend.
  • Use Rational/Sigmoid Smoothing: Applies advanced mathematical smoothing functions to the trend line to reduce volatility.

Machine Learning Methods

  • Distance Calculation: Selection menu for the classification algorithm (Lorentzian, Euclidean, or Cosine Similarity).

Backtesting

  • Start/End Date: Defines the temporal window for calculating win rates and trade statistics displayed in the dashboard.

FAQ

What is the difference between Cosine Similarity and Euclidean Distance in this tool? Euclidean distance measures the physical distance between data points (magnitude), while Cosine Similarity measures the angle between vectors (direction). Cosine Similarity is often more effective at identifying structural patterns regardless of price volatility.

How does the Trend Filter improve signals? The Trend Filter ensures that long signals only occur when the price is above the selected moving average and short signals only occur when below it, helping traders stay on the right side of the primary market momentum.

How can I access this indicator? You can get access on the LuxAlgo Library for charting platforms like TradingView, MetaTrader (MT4/MT5), and NinjaTrader for free.

Free access on the following platforms
tradingviewSymbolTradingView
Open in your browser

This in-app browser is not compatible with Get Access from the library.

Tap the menu (...) at the top of your screen and select "Open in Browser", "Open in Safari", or "Open in Chrome" to continue.

ninjatraderNinjaTrader
Open in your browser

This in-app browser is not compatible with Get Access from the library.

Tap the menu (...) at the top of your screen and select "Open in Browser", "Open in Safari", or "Open in Chrome" to continue.

metatrader4MetaTrader 4/5
Open in your browser

This in-app browser is not compatible with Get Access from the library.

Tap the menu (...) at the top of your screen and select "Open in Browser", "Open in Safari", or "Open in Chrome" to continue.

thinkorswimThinkorswim
Open in your browser

This in-app browser is not compatible with Get Access from the library.

Tap the menu (...) at the top of your screen and select "Open in Browser", "Open in Safari", or "Open in Chrome" to continue.

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.