Calculates the linear slope on a given row, looking backwards for a user-defined window of periods.
Pass in a partition_col, an order_col, and a lookback window size.
NOTE: Your data should be a properly formatted timeseries dataset before applying this transformation. In other words, each period should only appear once, and periods considered zero should be imputed with 0 already. NOTE: Slope calculations are notoriously sensitive to large outliers, especially with smaller windows.
Example use case: On daily stock data, calculate SLOPE by TICKER, with a 14-period lookback window.
ds = rasgo.get.dataset(fqtn="RASGOCOMMUNITY.PUBLIC.ZEPL_DAILY_STOCK_FEATURES")
ds2 = ds.sliding_slope(partition_col = 'TICKER',
order_col = 'DATE',
value_col = 'CLOSE',
window = 14)