Cálculo de RSI para múltiples fechas y tickers en SQL Server 2012
Puedo calcular el RSI para una fecha de finalización específica:
DECLARE @StartingDate smalldatetime
DECLARE @EndingDate smalldatetime
DECLARE @StockID char(15)
DECLARE @DAYS INT
DECLARE @AG FLOAT
DECLARE @AL FLOAT
DECLARE @RS FLOAT
SET @StartingDate = '20180301'
SET @EndingDate = '20180403'
SET @StockID = 'ACE'
SET @DAYS = 14
SET @AG =(
SELECT SUM([px_close]-[px_open])
FROM [dbo].[daily_data]
WHERE [Ticker] = @STOCKID
AND ([Date] BETWEEN @StartingDate AND @EndingDate)
AND ([px_close]-[px_open])>0)/@DAYS
SET @AL =(
SELECT SUM([px_close]-[px_open])
FROM [dbo].[daily_data]
WHERE [Ticker] = @STOCKID
AND ([Date] BETWEEN @StartingDate AND @EndingDate)
AND ([px_close]-[px_open])<0)/@DAYS
SET @RS = @AG/ABS(@AL)
SELECT @StockID AS Ticker, @EndingDate AS Date, 100 - (100/(1+@RS)) RSI
Aquí está mi resultado:
Ticker Date RSI
ACE 2018-04-03 48.7307
¿Cómo puedo calcular el RSI para múltiples fechas y múltiples tickers?
Mostrar la mejor respuesta