470 lines
11 KiB
Transact-SQL
470 lines
11 KiB
Transact-SQL
|
|
CREATE PROCEDURE [dbo].[USP_CRT_GetData]
|
|
@pair varchar(50),
|
|
@start DATETIME,
|
|
@end DATETIME,
|
|
@resolution varchar(10)
|
|
AS
|
|
|
|
SET NOCOUNT ON
|
|
SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED
|
|
|
|
/*
|
|
---- Example :
|
|
Exec [USP_CRT_GetData] 'EURUSD','2015-06-01', '2015-06-05','1'
|
|
*/
|
|
|
|
|
|
IF @resolution = '5'
|
|
Begin
|
|
SELECT
|
|
[CRTD_Period] as 'Timestamp'
|
|
,[CRTD_BidOpeningValue] as 'BidOpen'
|
|
,[CRTD_BidClosingValue] as 'BidClose'
|
|
,[CRTD_BidLowValue] as 'BidLow'
|
|
,[CRTD_BidHighValue] as 'BidHigh'
|
|
|
|
,[CRTD_MidOpeningValue] as 'MidOpen'
|
|
,[CRTD_MidClosingValue] as 'MidClose'
|
|
,[CRTD_MidLowValue] as 'MidLow'
|
|
,[CRTD_MidHighValue] as 'MidHigh'
|
|
|
|
|
|
FROM [CRT_Data_5Minutes]
|
|
WHERE [CRTD_Period] >= @start
|
|
AND [CRTD_Period] <= @end
|
|
AND [CRTD_PairSymbol] = @pair
|
|
ORDER BY [CRTD_Period]
|
|
|
|
|
|
SELECT
|
|
[CRTD_CreationDate] as 'Timestamp'
|
|
,[CRTD_BidOpeningValue] as 'BidOpen'
|
|
,[CRTD_BidClosingValue] as 'BidClose'
|
|
,[CRTD_BidLowValue] as 'BidLow'
|
|
,[CRTD_BidHighValue] as 'BidHigh'
|
|
|
|
,[CRTD_MidOpeningValue] as 'MidOpen'
|
|
,[CRTD_MidClosingValue] as 'MidClose'
|
|
,[CRTD_MidLowValue] as 'MidLow'
|
|
,[CRTD_MidHighValue] as 'MidHigh'
|
|
|
|
FROM [dbo].[CRT_Data_LiveChart]
|
|
WHERE [CRTD_PairSymbol] = @pair
|
|
and [CRTD_TargetName] = '5Minutes'
|
|
|
|
|
|
|
|
End
|
|
ELSE IF @resolution = '15'
|
|
Begin
|
|
SELECT
|
|
[CRTD_Period] as 'Timestamp'
|
|
,[CRTD_BidOpeningValue] as 'BidOpen'
|
|
,[CRTD_BidClosingValue] as 'BidClose'
|
|
,[CRTD_BidLowValue] as 'BidLow'
|
|
,[CRTD_BidHighValue] as 'BidHigh'
|
|
|
|
,[CRTD_MidOpeningValue] as 'MidOpen'
|
|
,[CRTD_MidClosingValue] as 'MidClose'
|
|
,[CRTD_MidLowValue] as 'MidLow'
|
|
,[CRTD_MidHighValue] as 'MidHigh'
|
|
|
|
|
|
FROM [CRT_Data_15Minutes]
|
|
WHERE [CRTD_Period] >= @start
|
|
AND [CRTD_Period] <= @end
|
|
AND [CRTD_PairSymbol] = @pair
|
|
ORDER BY [CRTD_Period]
|
|
|
|
SELECT
|
|
[CRTD_CreationDate] as 'Timestamp'
|
|
,[CRTD_BidOpeningValue] as 'BidOpen'
|
|
,[CRTD_BidClosingValue] as 'BidClose'
|
|
,[CRTD_BidLowValue] as 'BidLow'
|
|
,[CRTD_BidHighValue] as 'BidHigh'
|
|
|
|
,[CRTD_MidOpeningValue] as 'MidOpen'
|
|
,[CRTD_MidClosingValue] as 'MidClose'
|
|
,[CRTD_MidLowValue] as 'MidLow'
|
|
,[CRTD_MidHighValue] as 'MidHigh'
|
|
|
|
FROM [dbo].[CRT_Data_LiveChart]
|
|
WHERE [CRTD_PairSymbol] = @pair
|
|
and [CRTD_TargetName] = '15Minutes'
|
|
|
|
|
|
|
|
End
|
|
ELSE IF @resolution = '30'
|
|
Begin
|
|
|
|
SELECT
|
|
[CRTD_Period] as 'Timestamp'
|
|
,[CRTD_BidOpeningValue] as 'BidOpen'
|
|
,[CRTD_BidClosingValue] as 'BidClose'
|
|
,[CRTD_BidLowValue] as 'BidLow'
|
|
,[CRTD_BidHighValue] as 'BidHigh'
|
|
|
|
,[CRTD_MidOpeningValue] as 'MidOpen'
|
|
,[CRTD_MidClosingValue] as 'MidClose'
|
|
,[CRTD_MidLowValue] as 'MidLow'
|
|
,[CRTD_MidHighValue] as 'MidHigh'
|
|
|
|
|
|
FROM [CRT_Data_30Minutes]
|
|
WHERE [CRTD_Period] >= @start
|
|
AND [CRTD_Period] <= @end
|
|
AND [CRTD_PairSymbol] = @pair
|
|
ORDER BY [CRTD_Period]
|
|
|
|
|
|
SELECT
|
|
[CRTD_CreationDate] as 'Timestamp'
|
|
,[CRTD_BidOpeningValue] as 'BidOpen'
|
|
,[CRTD_BidClosingValue] as 'BidClose'
|
|
,[CRTD_BidLowValue] as 'BidLow'
|
|
,[CRTD_BidHighValue] as 'BidHigh'
|
|
|
|
,[CRTD_MidOpeningValue] as 'MidOpen'
|
|
,[CRTD_MidClosingValue] as 'MidClose'
|
|
,[CRTD_MidLowValue] as 'MidLow'
|
|
,[CRTD_MidHighValue] as 'MidHigh'
|
|
|
|
FROM [dbo].[CRT_Data_LiveChart]
|
|
WHERE [CRTD_PairSymbol] = @pair
|
|
and [CRTD_TargetName] = '30Minutes'
|
|
|
|
|
|
|
|
End
|
|
ELSE IF @resolution = '60'
|
|
Begin
|
|
|
|
SELECT
|
|
[CRTD_Period] as 'Timestamp'
|
|
,[CRTD_BidOpeningValue] as 'BidOpen'
|
|
,[CRTD_BidClosingValue] as 'BidClose'
|
|
,[CRTD_BidLowValue] as 'BidLow'
|
|
,[CRTD_BidHighValue] as 'BidHigh'
|
|
|
|
,[CRTD_MidOpeningValue] as 'MidOpen'
|
|
,[CRTD_MidClosingValue] as 'MidClose'
|
|
,[CRTD_MidLowValue] as 'MidLow'
|
|
,[CRTD_MidHighValue] as 'MidHigh'
|
|
|
|
|
|
FROM [CRT_Data_1Hour]
|
|
WHERE [CRTD_Period] >= @start
|
|
AND [CRTD_Period] <= @end
|
|
AND [CRTD_PairSymbol] = @pair
|
|
ORDER BY [CRTD_Period]
|
|
|
|
|
|
SELECT
|
|
[CRTD_CreationDate] as 'Timestamp'
|
|
,[CRTD_BidOpeningValue] as 'BidOpen'
|
|
,[CRTD_BidClosingValue] as 'BidClose'
|
|
,[CRTD_BidLowValue] as 'BidLow'
|
|
,[CRTD_BidHighValue] as 'BidHigh'
|
|
|
|
,[CRTD_MidOpeningValue] as 'MidOpen'
|
|
,[CRTD_MidClosingValue] as 'MidClose'
|
|
,[CRTD_MidLowValue] as 'MidLow'
|
|
,[CRTD_MidHighValue] as 'MidHigh'
|
|
|
|
FROM [dbo].[CRT_Data_LiveChart]
|
|
WHERE [CRTD_PairSymbol] = @pair
|
|
and [CRTD_TargetName] = '1Hour'
|
|
|
|
|
|
|
|
|
|
End
|
|
ELSE IF @resolution = '120'
|
|
Begin
|
|
SELECT
|
|
[CRTD_Period] as 'Timestamp'
|
|
,[CRTD_BidOpeningValue] as 'BidOpen'
|
|
,[CRTD_BidClosingValue] as 'BidClose'
|
|
,[CRTD_BidLowValue] as 'BidLow'
|
|
,[CRTD_BidHighValue] as 'BidHigh'
|
|
|
|
,[CRTD_MidOpeningValue] as 'MidOpen'
|
|
,[CRTD_MidClosingValue] as 'MidClose'
|
|
,[CRTD_MidLowValue] as 'MidLow'
|
|
,[CRTD_MidHighValue] as 'MidHigh'
|
|
|
|
|
|
FROM [CRT_Data_2Hours]
|
|
WHERE [CRTD_Period] >= @start
|
|
AND [CRTD_Period] <= @end
|
|
AND [CRTD_PairSymbol] = @pair
|
|
ORDER BY [CRTD_Period]
|
|
|
|
|
|
SELECT
|
|
[CRTD_CreationDate] as 'Timestamp'
|
|
,[CRTD_BidOpeningValue] as 'BidOpen'
|
|
,[CRTD_BidClosingValue] as 'BidClose'
|
|
,[CRTD_BidLowValue] as 'BidLow'
|
|
,[CRTD_BidHighValue] as 'BidHigh'
|
|
|
|
,[CRTD_MidOpeningValue] as 'MidOpen'
|
|
,[CRTD_MidClosingValue] as 'MidClose'
|
|
,[CRTD_MidLowValue] as 'MidLow'
|
|
,[CRTD_MidHighValue] as 'MidHigh'
|
|
|
|
FROM [dbo].[CRT_Data_LiveChart]
|
|
WHERE [CRTD_PairSymbol] = @pair
|
|
and [CRTD_TargetName] = '2Hours'
|
|
|
|
|
|
End
|
|
ELSE IF @resolution = '240'
|
|
Begin
|
|
|
|
SELECT
|
|
[CRTD_Period] as 'Timestamp'
|
|
,[CRTD_BidOpeningValue] as 'BidOpen'
|
|
,[CRTD_BidClosingValue] as 'BidClose'
|
|
,[CRTD_BidLowValue] as 'BidLow'
|
|
,[CRTD_BidHighValue] as 'BidHigh'
|
|
|
|
,[CRTD_MidOpeningValue] as 'MidOpen'
|
|
,[CRTD_MidClosingValue] as 'MidClose'
|
|
,[CRTD_MidLowValue] as 'MidLow'
|
|
,[CRTD_MidHighValue] as 'MidHigh'
|
|
|
|
|
|
FROM [CRT_Data_4Hours]
|
|
WHERE [CRTD_Period] >= @start
|
|
AND [CRTD_Period] <= @end
|
|
AND [CRTD_PairSymbol] = @pair
|
|
ORDER BY [CRTD_Period]
|
|
|
|
|
|
SELECT
|
|
[CRTD_CreationDate] as 'Timestamp'
|
|
,[CRTD_BidOpeningValue] as 'BidOpen'
|
|
,[CRTD_BidClosingValue] as 'BidClose'
|
|
,[CRTD_BidLowValue] as 'BidLow'
|
|
,[CRTD_BidHighValue] as 'BidHigh'
|
|
|
|
,[CRTD_MidOpeningValue] as 'MidOpen'
|
|
,[CRTD_MidClosingValue] as 'MidClose'
|
|
,[CRTD_MidLowValue] as 'MidLow'
|
|
,[CRTD_MidHighValue] as 'MidHigh'
|
|
|
|
FROM [dbo].[CRT_Data_LiveChart]
|
|
WHERE [CRTD_PairSymbol] = @pair
|
|
and [CRTD_TargetName] = '4Hours'
|
|
|
|
|
|
End
|
|
ELSE IF @resolution = '480'
|
|
Begin
|
|
SELECT
|
|
[CRTD_Period] as 'Timestamp'
|
|
,[CRTD_BidOpeningValue] as 'BidOpen'
|
|
,[CRTD_BidClosingValue] as 'BidClose'
|
|
,[CRTD_BidLowValue] as 'BidLow'
|
|
,[CRTD_BidHighValue] as 'BidHigh'
|
|
|
|
,[CRTD_MidOpeningValue] as 'MidOpen'
|
|
,[CRTD_MidClosingValue] as 'MidClose'
|
|
,[CRTD_MidLowValue] as 'MidLow'
|
|
,[CRTD_MidHighValue] as 'MidHigh'
|
|
|
|
|
|
FROM [CRT_Data_8Hours]
|
|
WHERE [CRTD_Period] >= @start
|
|
AND [CRTD_Period] <= @end
|
|
AND [CRTD_PairSymbol] = @pair
|
|
ORDER BY [CRTD_Period]
|
|
|
|
|
|
SELECT
|
|
[CRTD_CreationDate] as 'Timestamp'
|
|
,[CRTD_BidOpeningValue] as 'BidOpen'
|
|
,[CRTD_BidClosingValue] as 'BidClose'
|
|
,[CRTD_BidLowValue] as 'BidLow'
|
|
,[CRTD_BidHighValue] as 'BidHigh'
|
|
|
|
,[CRTD_MidOpeningValue] as 'MidOpen'
|
|
,[CRTD_MidClosingValue] as 'MidClose'
|
|
,[CRTD_MidLowValue] as 'MidLow'
|
|
,[CRTD_MidHighValue] as 'MidHigh'
|
|
|
|
FROM [dbo].[CRT_Data_LiveChart]
|
|
WHERE [CRTD_PairSymbol] = @pair
|
|
and [CRTD_TargetName] = '8Hours'
|
|
|
|
|
|
End
|
|
ELSE IF @resolution = 'D'
|
|
Begin
|
|
|
|
SELECT
|
|
[CRTD_Period] as 'Timestamp'
|
|
,[CRTD_BidOpeningValue] as 'BidOpen'
|
|
,[CRTD_BidClosingValue] as 'BidClose'
|
|
,[CRTD_BidLowValue] as 'BidLow'
|
|
,[CRTD_BidHighValue] as 'BidHigh'
|
|
|
|
,[CRTD_MidOpeningValue] as 'MidOpen'
|
|
,[CRTD_MidClosingValue] as 'MidClose'
|
|
,[CRTD_MidLowValue] as 'MidLow'
|
|
,[CRTD_MidHighValue] as 'MidHigh'
|
|
|
|
|
|
FROM [CRT_Data_1Day]
|
|
WHERE [CRTD_Period] >= @start
|
|
AND [CRTD_Period] <= @end
|
|
AND [CRTD_PairSymbol] = @pair
|
|
ORDER BY [CRTD_Period]
|
|
|
|
|
|
SELECT
|
|
[CRTD_CreationDate] as 'Timestamp'
|
|
,[CRTD_BidOpeningValue] as 'BidOpen'
|
|
,[CRTD_BidClosingValue] as 'BidClose'
|
|
,[CRTD_BidLowValue] as 'BidLow'
|
|
,[CRTD_BidHighValue] as 'BidHigh'
|
|
|
|
,[CRTD_MidOpeningValue] as 'MidOpen'
|
|
,[CRTD_MidClosingValue] as 'MidClose'
|
|
,[CRTD_MidLowValue] as 'MidLow'
|
|
,[CRTD_MidHighValue] as 'MidHigh'
|
|
|
|
FROM [dbo].[CRT_Data_LiveChart]
|
|
WHERE [CRTD_PairSymbol] = @pair
|
|
and [CRTD_TargetName] = '1Day'
|
|
|
|
|
|
|
|
End
|
|
ELSE IF @resolution = 'W'
|
|
Begin
|
|
SELECT
|
|
[CRTD_Period] as 'Timestamp'
|
|
,[CRTD_BidOpeningValue] as 'BidOpen'
|
|
,[CRTD_BidClosingValue] as 'BidClose'
|
|
,[CRTD_BidLowValue] as 'BidLow'
|
|
,[CRTD_BidHighValue] as 'BidHigh'
|
|
|
|
,[CRTD_MidOpeningValue] as 'MidOpen'
|
|
,[CRTD_MidClosingValue] as 'MidClose'
|
|
,[CRTD_MidLowValue] as 'MidLow'
|
|
,[CRTD_MidHighValue] as 'MidHigh'
|
|
|
|
|
|
FROM [CRT_Data_1Week]
|
|
WHERE [CRTD_Period] >= @start
|
|
AND [CRTD_Period] <= @end
|
|
AND [CRTD_PairSymbol] = @pair
|
|
ORDER BY [CRTD_Period]
|
|
|
|
|
|
SELECT
|
|
[CRTD_CreationDate] as 'Timestamp'
|
|
,[CRTD_BidOpeningValue] as 'BidOpen'
|
|
,[CRTD_BidClosingValue] as 'BidClose'
|
|
,[CRTD_BidLowValue] as 'BidLow'
|
|
,[CRTD_BidHighValue] as 'BidHigh'
|
|
|
|
,[CRTD_MidOpeningValue] as 'MidOpen'
|
|
,[CRTD_MidClosingValue] as 'MidClose'
|
|
,[CRTD_MidLowValue] as 'MidLow'
|
|
,[CRTD_MidHighValue] as 'MidHigh'
|
|
|
|
FROM [dbo].[CRT_Data_LiveChart]
|
|
WHERE [CRTD_PairSymbol] = @pair
|
|
and [CRTD_TargetName] = '1Week'
|
|
|
|
|
|
End
|
|
ELSE IF @resolution = 'M'
|
|
Begin
|
|
|
|
SELECT
|
|
[CRTD_Period] as 'Timestamp'
|
|
,[CRTD_BidOpeningValue] as 'BidOpen'
|
|
,[CRTD_BidClosingValue] as 'BidClose'
|
|
,[CRTD_BidLowValue] as 'BidLow'
|
|
,[CRTD_BidHighValue] as 'BidHigh'
|
|
|
|
,[CRTD_MidOpeningValue] as 'MidOpen'
|
|
,[CRTD_MidClosingValue] as 'MidClose'
|
|
,[CRTD_MidLowValue] as 'MidLow'
|
|
,[CRTD_MidHighValue] as 'MidHigh'
|
|
|
|
|
|
FROM [CRT_Data_1Month]
|
|
WHERE [CRTD_Period] >= @start
|
|
AND [CRTD_Period] <= @end
|
|
AND [CRTD_PairSymbol] = @pair
|
|
ORDER BY [CRTD_Period]
|
|
|
|
SELECT
|
|
[CRTD_CreationDate] as 'Timestamp'
|
|
,[CRTD_BidOpeningValue] as 'BidOpen'
|
|
,[CRTD_BidClosingValue] as 'BidClose'
|
|
,[CRTD_BidLowValue] as 'BidLow'
|
|
,[CRTD_BidHighValue] as 'BidHigh'
|
|
|
|
,[CRTD_MidOpeningValue] as 'MidOpen'
|
|
,[CRTD_MidClosingValue] as 'MidClose'
|
|
,[CRTD_MidLowValue] as 'MidLow'
|
|
,[CRTD_MidHighValue] as 'MidHigh'
|
|
|
|
FROM [dbo].[CRT_Data_LiveChart]
|
|
WHERE [CRTD_PairSymbol] = @pair
|
|
and [CRTD_TargetName] = '1Month'
|
|
|
|
|
|
End
|
|
ELSE
|
|
Begin
|
|
---- 1 Minute
|
|
SELECT
|
|
[CRTD_Period] as 'Timestamp'
|
|
,[CRTD_BidOpeningValue] as 'BidOpen'
|
|
,[CRTD_BidClosingValue] as 'BidClose'
|
|
,[CRTD_BidLowValue] as 'BidLow'
|
|
,[CRTD_BidHighValue] as 'BidHigh'
|
|
|
|
,[CRTD_MidOpeningValue] as 'MidOpen'
|
|
,[CRTD_MidClosingValue] as 'MidClose'
|
|
,[CRTD_MidLowValue] as 'MidLow'
|
|
,[CRTD_MidHighValue] as 'MidHigh'
|
|
|
|
|
|
FROM [CRT_Data_1Minute]
|
|
WHERE [CRTD_Period] >= @start
|
|
AND [CRTD_Period] <= @end
|
|
AND [CRTD_PairSymbol] = @pair
|
|
ORDER BY [CRTD_Period]
|
|
|
|
|
|
SELECT
|
|
[CRTD_CreationDate] as 'Timestamp'
|
|
,[CRTD_BidOpeningValue] as 'BidOpen'
|
|
,[CRTD_BidClosingValue] as 'BidClose'
|
|
,[CRTD_BidLowValue] as 'BidLow'
|
|
,[CRTD_BidHighValue] as 'BidHigh'
|
|
|
|
,[CRTD_MidOpeningValue] as 'MidOpen'
|
|
,[CRTD_MidClosingValue] as 'MidClose'
|
|
,[CRTD_MidLowValue] as 'MidLow'
|
|
,[CRTD_MidHighValue] as 'MidHigh'
|
|
|
|
FROM [dbo].[CRT_Data_LiveChart]
|
|
WHERE [CRTD_PairSymbol] = @pair
|
|
and [CRTD_TargetName] = '1Minute'
|
|
|
|
|
|
|
|
End
|
|
|
|
RETURN 0 |