PINE LIBRARY

TimeSeriesGrammianAngularField

Library "TimeSeriesGrammianAngularField"
provides Grammian angular field and associated utility functions.
___

Reference:
*Time Series Classification: A review of Algorithms and Implementations*.
researchgate.net/figure/IMU-sensor-data-imaging-via-Gramian-Angular-Field-in-MMTSA_fig1_364439514

method normalize(data, a, b)
  Normalize the series to a optional range, usualy within `(-1, 1)` or `(0, 1)`.
  Namespace types: array<float>
  Parameters:
    data (array<float>): Sample data to normalize.
    a (float): Minimum target range value, `default=-1.0`.
    b (float): Minimum target range value, `default= 1.0`.
  Returns: Normalized array within new range.
___

Reference:
*Time Series Classification: A review of Algorithms and Implementations*.

normalize_series(source, length, a, b)
  Normalize the series to a optional range, usualy within `(-1, 1)` or `(0, 1)`.\
*Note that this may provide a different result than the array version due to rolling range*.
  Parameters:
    source (float): Series to normalize.
    length (int): Number of bars to sample the range.
    a (float): Minimum target range value, `default=-1.0`.
    b (float): Minimum target range value, `default= 1.0`.
  Returns: Normalized series within new range.

method polar(data)
  Turns a normalized sample array into polar coordinates.
  Namespace types: array<float>
  Parameters:
    data (array<float>): Sampled data values.
  Returns: Converted array into polar coordinates.

polar_series(source)
  Turns a normalized series into polar coordinates.
  Parameters:
    source (float): Source series.
  Returns: Converted series into polar coordinates.

method gasf(data)
  Gramian Angular Summation Field *`GASF`*.
  Namespace types: array<float>
  Parameters:
    data (array<float>): Sampled data values.
  Returns: Matrix with *`GASF`* values.

method gasf_id(data)
  Trig. identity of Gramian Angular Summation Field *`GASF`*.
  Namespace types: array<float>
  Parameters:
    data (array<float>): Sampled data values.
  Returns: Matrix with *`GASF`* values.
Reference:
*Time Series Classification: A review of Algorithms and Implementations*.

method gadf(data)
  Gramian Angular Difference Field *`GADF`*.
  Namespace types: array<float>
  Parameters:
    data (array<float>): Sampled data values.
  Returns: Matrix with *`GADF`* values.

method gadf_id(data)
  Trig. identity of Gramian Angular Difference Field *`GADF`*.
  Namespace types: array<float>
  Parameters:
    data (array<float>): Sampled data values.
  Returns: Matrix with *`GADF`* values.
Reference:
*Time Series Classification: A review of Algorithms and Implementations*.
arraysgramianMATHmatrixpatternsstatisticstimeseries

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.

Disclaimer