Library "TimeSeriesRecurrencePlot"
In descriptive statistics and chaos theory, a recurrence plot (RP) is a plot showing, for each moment i i in time, the times at which the state of a dynamical system returns to the previous state at `i`, i.e., when the phase space trajectory visits roughly the same area in the phase space as at time `j`.
A recurrence plot (RP) is a graphical representation used in the analysis of time series data and dynamical systems. It visualizes recurring states or events over time by transforming the original time series into a binary matrix, where each element represents whether two consecutive points are above or below a specified threshold. The resulting Recurrence Plot Matrix reveals patterns, structures, and correlations within the data while providing insights into underlying mechanisms of complex systems.

distance_matrix(series1, series2, max_freq, norm)
  Generate distance matrix between two series.
    series1 (float): Source series 1.
    series2 (float): Source series 2.
    max_freq (int): Maximum frequency to inpect or the size of the generated matrix.
    norm (string): Norm of the distance metric, default=`euclidean`, options=`euclidean`, `manhattan`, `max`.
  Returns: Matrix with distance values.

method normalize_distance(M)
  Normalizes a matrix within its Min-Max range.
  Namespace types: matrix<float>
    M (matrix<float>): Source matrix.
  Returns: Normalized matrix.

method threshold(M, threshold)
  Updates the matrix with the condition `M(i,j) > threshold ? 1 : 0`.
  Namespace types: matrix<float>
    M (matrix<float>): Source matrix.
    threshold (float)
  Returns: Cross matrix.

rolling_window(a, b, sample_size)
  An experimental alternative method to plot a recurrence_plot.
    a (array<float>): Array with data.
    b (array<float>): Array with data.
    sample_size (int)
  Returns: Recurrence_plot matrix.
Pine library

In true TradingView spirit, the author has published this Pine code as an open-source library so that other Pine programmers from our community can reuse it. Cheers to the author! You may use this library privately or in other open-source publications, but reuse of this code in a publication is governed by House Rules.


The information and publications are not meant to be, and do not constitute, financial, investment, trading, or other types of advice or recommendations supplied or endorsed by TradingView. Read more in the Terms of Use.

Want to use this library?

Copy the following line and paste it in your script.