WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Matching von Datums- und Zeitstempel für Aktienkursdaten

 

EnerGy96
Forum-Newbie

Forum-Newbie


Beiträge: 2
Anmeldedatum: 19.01.22
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 19.01.2022, 13:21     Titel: Matching von Datums- und Zeitstempel für Aktienkursdaten
  Antworten mit Zitat      
Liebe Mitglieder,

ich bräuchte dringend eure Hilfe.

Ich möchte gerne von Xetra und Lang&Schwarz die Aktienkurse vergleichen und muss dazu den Datums- und Zeitstempel matchen. Den Zeitstempel jedoch nur für die Stunden und Minuten die Sekunden werden vernachlässigt. Im Nachgang soll in der Zeit von 9-17.30 die Abweichung zwischen den Aktienkursen der beiden Handelsplätze berechnet werden und dann danach ein ttest2 gemacht werden.

Die Idee ist dass man zu dem jeweiligen Aktienkurs in Xetra den Datumsstempel mit dem Zeitstempel (Stunde+Minute) extrahiert und dann in der Kursdatei von Lang&Schwarz den passenden Gegenwert findet und final die Abweichungen aller berechnet und sich ausgeben lässt. Danach soll dann ein ttest2 gemacht werden um festzustellen ob die Mittelwerte der beiden signifikant voneinander verschieden sind.

Leider bekomme ich den Datumsstempel einfach nicht gemacht vllt kann mir jemand weiterhelfen.

Ich darf aus datenschutzrechtlichen Gründen leider nicht die ganze Excel Datei hochladen, füge aber einen Ausschnitt bei.

Vorab vielen Dank

[% Alles loeschen
clear; clc;

% Pfade setzen
sOldPath = path;

% Lang & Schwarz Kursdaten einlesen
cPricesLS = readtable('Data_L&S.xlsx');

% Xetra Kursdaten einlesen
cPricesXetra = readtable('1_TickDataCashTrades.xlsx');

% Datum- + Zeitstempel zusammen extrahieren bei L&S und in nummerische
% Ziffern ändern
cDateTimeLS = cPricesLS(1:end,1);
cDateTimeLS = table2array(cDateTimeLS);
cDateTimeLS = datenum(cDateTimeLS);


% Datumstempel gesondert extrahieren bei Xetra und nummerisch umwandeln
cDateXetra = cPricesXetra(1:end,1:1);
cDateXetra = table2array(cDateXetra);
cDateXetra = datenum(cDateXetra);


% Zeitstempel gesondert extrahieren bei Xetra ist bereits nummerisch
cTimeXetra = cPricesXetra(1:end,2);
cTimeXetra = table2array(cTimeXetra);

% Datum und Zeitstempel für Xetra zusammenführen
cDateTimeXetra = cDateXetra+cTimeXetra;

%Überschneidungen der Zeitstempel finden dabei sind 15 sec Abweichung in
%beide Richtungen zulässig; 15 sec = 0.000173611111111111 in nummerischer
%Schreibweise
lIsMember = ismembertol(cDateTimeLS,cDateTimeXetra,0.000173611111111111);
lIsMember2 = ismembertol(cDateTimeXetra,cDateTimeLS,0.000173611111111111);

]

Daten.pdf
 Beschreibung:

Download
 Dateiname:  Daten.pdf
 Dateigröße:  216.63 KB
 Heruntergeladen:  128 mal
Private Nachricht senden Benutzer-Profile anzeigen


Harald
Forum-Meister

Forum-Meister


Beiträge: 24.432
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 19.01.2022, 14:14     Titel:
  Antworten mit Zitat      
Hallo,

ich würde möglichst mit datetime und vor allem Timetables arbeiten. synchronize bietet schöne Möglichkeiten, Timetables zusammenzuführen.

Bei deinem bestehenden Code ist mir noch nicht klar, welcher Teil inwiefern nicht funktioniert.

Wenn du die Ausschnitte als Excel-Datei (ggf. gezippt) hochladen kannst, wäre das einfacher, weil man dann den Code auch laufen lassen kann.

Grüße,
Harald
_________________

1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
Private Nachricht senden Benutzer-Profile anzeigen
 
EnerGy96
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 2
Anmeldedatum: 19.01.22
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 20.01.2022, 17:49     Titel:
  Antworten mit Zitat      
Lieber Harald,

ich danke dir vorab vielmals für die Tipps.

Der Code läuft an sich fehlerfrei durch, das stimmt. Jedoch besteht das Problem, dass aufgrund der unterschiedlichen Formatierung der Zeit- und Datumsstempel beider Aktienkursdaten, sich die Kurse nicht richtig matchen. Dies ist auch logisch dar ich aktuell noch den Tag die Stunden die Minuten und die Sekunden beider Aktienkursdaten einlese und versuche zu matchen. Ich müsste hier nur die Tage, Stunden und Minuten auslesen und die Sekunden vernachlässigen. Leider komme ich da aber nicht weiter, gerade weil beide Daten unterschiedliche Formatierungen der Stempel haben.

PS: ich füge eine Beispieldatei beider Dateien in Excel bei und trenne diese in der Excelmappe durch zwei verschiedene Blätter ab. Ich habe gesehen, dass ich gestern leider die falsche Datei angefügt habe….

Im ersten Blatt sieht man die Kurse von Xetra im zweiten die des Handelsplatzes Lang & Schwarz. Die Daten von Xetra habe ich selbst gecrawlt leider darf ich bei den Xetra Daten nur die Musterdatei schicken, da ich hier einen Vertrag unterschrieben habe, der mir die Veröffentlichung verbietet, aber die Daten, die ich besitze, sind vom Aufbau identisch.

Es geht für mich also nun darum, dass ich zu jedem Xetra Kurs (anhand des einmaligen Datums- und Zeitstempels) die passenden Lang & Schwarz Kurse finde und dann berechnen kann wie hoch die Abweichungen in dem Intervall von 9-17.30 sind in welchem beide Börsenplätze aktiv handeln.

Ganz liebe Grüße

2_TickDataCashBBBA.rar
 Beschreibung:

Download
 Dateiname:  2_TickDataCashBBBA.rar
 Dateigröße:  451.35 KB
 Heruntergeladen:  134 mal
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.432
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 22.01.2022, 15:10     Titel:
  Antworten mit Zitat      
Hallo,

hat das 0D in der einen Tabelle irgendeine besondere Bedeutung? Ich habe es jetzt erstmal einfach rausgelöscht.

Import als Timetables mit:
Code:
opts = detectImportOptions("2_TickDataCashBBBA.xlsx", "Sheet","Kurse Xetra");
opts = setvartype(opts,["MAsk","Bid"],"double");
T1 = readtimetable("2_TickDataCashBBBA.xlsx", opts);
T1.EntryTime = duration(erase(T1.EntryTime, "0D"));
T1.date = T1.date + T1.EntryTime;
T1.EntryTime = [];
opts = detectImportOptions("2_TickDataCashBBBA.xlsx", "Sheet","Kurse L&S");
T2 = readtimetable("2_TickDataCashBBBA.xlsx", opts);


Ein Vergleich ist wegen vollkommen unterschiedlicher Zeiträume schwierig.

Grüße,
Harald
_________________

1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2024 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.