Zum Inhalt springen

RSI für Bitcoins auf Kraken Berechnen?


Empfohlene Beiträge

Hallo zusammen,

seit fast einer Woche versuche ich nun den RSI Indikator für Bitcoins auf Kraken zu berechnen und bekomme es einfach nicht hin.
Da ich hier leider keine Bilder einfügen kann, wird die Erklärung etwas schwer, aber ich hoffe ich bekomme es hin ..

Also die Ausgangssituation ist:

RSI(14) bei einer Auflösung von 1 min.

# id, time_stamp, date_time, close, close_balance, gain, loss, AG, AL, RS, RSI
'150189', '1563962160', '2019-07-24 11:56:00', '8775.60', '5.7000', '5.7000', '0.0000', '1.457142857', '0.178571428', '8.160', '89.083'
'150187', '1563962100', '2019-07-24 11:55:00', '8769.90', '8.5000', '8.5000', '0.0000', '1.050000000', '0.192857142', '5.444', '84.482'
'150185', '1563962040', '2019-07-24 11:54:00', '8761.40', '0.1000', '0.1000', '0.0000', '0.442857142', '0.221428571', '2.000', '66.667'
'150183', '1563961980', '2019-07-24 11:53:00', '8761.30', '0.1000', '0.1000', '0.0000', '0.450000000', '0.221428571', '2.032', '67.018'
'150181', '1563961920', '2019-07-24 11:52:00', '8761.20', '-0.5000', '0.0000', '0.5000', '0.492857142', '0.221428571', '2.226', '69.002'
'150179', '1563961860', '2019-07-24 11:51:00', '8761.70', '1.2000', '1.2000', '0.0000', '0.492857142', '0.242857142', '2.029', '66.986'
'150177', '1563961800', '2019-07-24 11:50:00', '8760.50', '0.1000', '0.1000', '0.0000', '0.407142857', '0.721428571', '0.564', '36.061'
'150175', '1563961740', '2019-07-24 11:49:00', '8760.40', '4.5000', '4.5000', '0.0000', '0.400000000', '1.078571428', '0.371', '27.061'
'150173', '1563961680', '2019-07-24 11:48:00', '8755.90', '0.0000', '0.0000', '0.0000', '0.078571428', '1.092857142', '0.072', '6.716'
'150171', '1563961620', '2019-07-24 11:47:00', '8755.90', '-0.1000', '0.0000', '0.1000', '0.078571428', '1.092857142', '0.072', '6.716'
'150169', '1563961560', '2019-07-24 11:46:00', '8756.00', '0.2000', '0.2000', '0.0000', '0.392857142', '1.085714285', '0.362', '26.579'
'150167', '1563961500', '2019-07-24 11:45:00', '8755.80', '-0.1000', '0.0000', '0.1000', '0.378571428', '1.100000000', '0.344', '25.595'
'150165', '1563961440', '2019-07-24 11:44:00', '8755.90', '-0.1000', '0.0000', '0.1000', '0.378571428', '1.100000000', '0.344', '25.595'
'150163', '1563961380', '2019-07-24 11:43:00', '8756.00', '-1.7000', '0.0000', '1.7000', '0.671428571', '1.092857142', '0.614', '38.042'
'150161', '1563961320', '2019-07-24 11:42:00', '8757.70', '-0.2000', '0.0000', '0.2000', '1.442857142', '0.971428571', '1.485', '59.759'
'150159', '1563961260', '2019-07-24 11:41:00', '8757.90', '-0.4000', '0.0000', '0.4000', '1.485714285', '0.957142857', '1.552', '60.815'
'150157', '1563961200', '2019-07-24 11:40:00', '8758.30', '0.2000', '0.2000', '0.0000', '1.621428571', '0.928571428', '1.746', '63.583'
'150155', '1563961140', '2019-07-24 11:39:00', '8758.10', '0.7000', '0.7000', '0.0000', '1.607142857', '1.414285714', '1.136', '53.184'
'150154', '1563961080', '2019-07-24 11:38:00', '8757.40', '-0.8000', '0.0000', '0.8000', '1.557142857', '1.492857142', '1.043', '51.052'

"Close" bekomme ich von der Kraken API, also behaupte ich mal die Daten Stimmen.
gain, loss, AG, AL, RS und RSI sind meine Berechnungen

Kraken hat für 11:56 einen RSI Wert von 70,82 Berechnet
in diesem beispiel nutze ich also die 14 werte id = 150189 -> 150161

Was und wie habe ich gerechnet
Die Differenz zwischen 2 Closewerten überprüfe ich auf <> 0 ist der wert Positive kommt er zu gain, andernfalls zu loss, der jeweils andere wert ist 0
jetzt summiere ich gain und loss auf, und teil es durch 14

das ergebnis kommt in AG und AL
also:
AG = SUM(gain) / 14
AL = SUM(loss) / 14

RS = AG / AL
RSI = (100 - (100 / (1+RS)))

Wie ihr sehen könnt komme ich auf 89,083 und nicht 70,82 also was zur Hölle mache ich Falsch.
Ich habe jetzt schon wirklich alles versucht, verschiedene Formeln usw. aber ich komme nicht mal annähernd auf ein richtiges Ergebnis.

Könnt ihr mir vielleicht einen Tipp geben wo mein Fehler liegt ?

Tekkies unter euch:
MySQL Code zu meinen Berechnungen:


 

SELECT id, time_stamp, date_time, close, close_balance, gain, loss, 
	@AG:=(
				SELECT IF((SUM(gain) / intervall) IS NULL, 0, (SUM(gain) / intervall)) 
                FROM ohlc_data 
                WHERE id <= oclc.id  AND TIMESTAMPDIFF(MINUTE, date_time, oclc.date_time) < intervall
                ORDER BY date_time DESC
			) as AG,
	@AL:=(
			SELECT IF((SUM(loss) / intervall) IS NULL, 0, (SUM(loss) / intervall) ) 
            FROM ohlc_data 
            WHERE id <= oclc.id  AND TIMESTAMPDIFF(MINUTE, date_time, oclc.date_time) < intervall
            ORDER BY date_time DESC
		) as AL,
        @RS:=ROUND((@AG / @AL),3) as RS,
		ROUND((100-(100 / (1 + @RS))), 3) as RSI
	FROM ohlc_data as oclc
	ORDER BY date_time DESC;

 

Über ein wenig Unterstützung würde ich mich sehr freuen

Grüße

Link zu diesem Kommentar
Auf anderen Seiten teilen

On 7/24/2019 at 12:12 PM, Husker said:

RS = AG / AL
RSI = (100 - (100 / (1+RS)))

Das könntest du auf jeden Fall vereinfachen zu

RSI = 100*(AG/(AG+AL))

Löst aber leider dein Problem mit den unterschiedlichen Werten nicht.

Ich habe es jetzt mal manuell nachgerechnet, deine  89,083 für 11:56 sind richtig, insofern scheint dein SQL-Statement auch richtig zu sein.

Der Fehler muss wohl an anderer Stelle liegen. Bloss was?

Kann es sein, dass dir die Kraken-Oberfläche MESZ anzeigt, die Kraken-API dir aber die Zeiten in UTC angibt? Sprich, du berechnest den RSI von 11:56 UTC und vergleichst den mit dem Kraken-RSI von 11:56 MESZ?

Oder umgekehrt? Der Timestamp 1563962160  deiner obersten Zeile ist 9:56h UTC und somit 11:56 MESZ. Vielleicht zeigt dir die Kraken-Oberfläche UTC-Uhrzeiten an?

Sorry, hätte dir gerne besser geholfen ...

Link zu diesem Kommentar
Auf anderen Seiten teilen

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden
×
×
  • Neu erstellen...

Wichtige Information

Wir haben Cookies auf Deinem Gerät platziert. Das hilft uns diese Webseite zu verbessern. Du kannst die Cookie-Einstellungen anpassen, andernfalls gehen wir davon aus, dass Du damit einverstanden bist, weiterzumachen.