Jump to content


Photo
- - - - -

Datum und Zeit im Systemtrading


Wichtiger Hinweis für Besucher der Community!

Das Erstellungsdatum des von Dir aufgerufenen Themas liegt bereits einige Zeit zurück. Wir möchten darauf hinweisen, den Inhalt der Diskussion auf seine Aktualität hin zu prüfen. Weitere Informationen findest Du auf dieser Seite.

  • Please log in to reply
6 replies to this topic

#1 Forex1+

Forex1+

    Floor Broker

  • Addict
  • PipPipPipPipPipPip
  • 290 posts
  • 1457 thanks

Posted 23 April 2017 - 04:25 PM

Hallo,

hiermit eröffne ich mal ein Thread rund um das Thema Datum und Zeit und wie damit Systemtrader beim Programmieren umgehen.
Zwei Aspekte sind, in welchem Format liegt die Zeit vor und wie verarbeite ich es zum Abgleich zwischen Zeitpunkten oder die Ermittlung gewisser Zeitspannen, Wochentage oder sonstigen Zeitfiltern.

Meißt liegt die Zeit in den Historys im Timestamp Format YYYYMMDDHHMMSS(NNN) vor.
Intern in den Codes wird aber meißt die Unixzeit für die Filter verwendet.

Das finde ich irgendwie naja komisch denn das Timestampformat der History muss zuerst in Unixzeit umgerechnet werden. Und dann um aus der Unixzeit Wochentage, Stunden und weiteres rauszuholen bedarf es einer Zeitstruktur um die Komponenten für den gregorianischen Kalender zu erhalten (in zb cpp struct tm). Um Filter zu bauen kommen schon ansatzweise komplexe Funktionen dabei raus um die gewünschten Abfragen durchzuführen.

Interessanterweise wird in Tradingbüchern zur Entwicklung automatisierter Systeme so gut wie nicht auf das Thema eingegangen.

Die Umwandlungen führen natürlich zu einer Performancebremse, nicht im Livetrading aber schon deutlich spürbar im Backtesting. Da drängt sich mir der Gedanke auf, wieso die Zeit nicht in effektiverer Form zur Verfügung stellen, sodass die Filter einfacher gestaltet werden können. Ohne permanente Umwandlungen von Unixzeit zu den Infos aus dem gregorianischen Kalender wäre es schneller aber man erkauft sich diesen Vorteil evt. durch mehr Speicherverbrauch.

Jetzt würde mich interessieren wie andere Systemtrader damit umgehen oder dazu sagen? Es sollte doch nicht sein das die Timestampverarbeitung und Zeitfilter so einen Flaschenhals erzeugen.

Grüße

 


  • 1
It's a losing game, without passion !

Thanked by 6 Members:
whipsaw , ajkonly , Vola , oldschuren , Rumpel , chimbonda

#2 Rumpel

Rumpel

    Floor Broker

  • *_skilled
  • 1,344 posts
  • 7638 thanks

Posted 23 April 2017 - 09:06 PM

Welchen Vorteil bietet dir denn das YYYYMMDDHHMMSS(NNN)-Format? Keinen. Bis darauf dass du es leichter lesen kannst. Du kannst damit absolut nicht rechnen.


  • 0
Aus technischen Gründen steht meine Signatur auf der Rückseite dieses Posts!

Thanked by 6 Members:
whipsaw , ajkonly , Vola , oldschuren , chimbonda , Forex1+

#3 Forex1+

Forex1+

    Floor Broker

  • Addict
  • PipPipPipPipPipPip
  • 290 posts
  • 1457 thanks

Posted 24 April 2017 - 12:40 AM

Der Vorteil ist, dass die Daten in dem Format vorliegen wie sie auch verarbeitet werden.

Ein Filter der Trades nur von 9-17 Uhr zulässt braucht dann nur die Abfrage if((Stunde>=9)&&(Stunde<17) und fertig. Stunde dann zb als char in einem Struct.

Per Unixzeit wird die if Abfrage wesentlich komplexer da erst die Stunde aus den Unixsekunden ermittelt werden muss und dieser Vorgang braucht Zeit zumindest in cpp deutlich spürbar wie ich festgestellt habe.


  • 0
It's a losing game, without passion !

Thanked by 6 Members:
whipsaw , ajkonly , Vola , Rumpel , oldschuren , chimbonda

#4 conglom-o

conglom-o

    Heatball User

  • *_skilled
  • 2,175 posts
  • 13680 thanks
  • Wohnsitz:O-Town

Posted 24 April 2017 - 12:36 PM

Ich habe aktuell das "größere" Problem, dass mitunter nicht klar ist in welchem Zeitformat / welcher Zeitzone Daten vorliegen. Bisher habe ich meine Daten immer von forextester.com gezogen aber die scheinen die Datenquelle geändert zu haben so dass es eben nicht mehr GMT Daten sind sondern sich die Zeitzone innerhalb der Daten verändert hat. Das ist natürlich großer Mist. Wenn jemand also vernünftige Forex M1 Daten hat freue ich mich über einen Hinweis.


  • 0

Marktgedanken - ...denn der Markt vergisst nie!

Meine Trophäen (dedicated to Vola *g*): conglom-o.gif b2m.gif lukas.gif licens.gifmarcus.gif germano.gif


Thanked by 7 Members:
whipsaw , ajkonly , Vola , chimbonda , Forex1+ , Rumpel , oldschuren

#5 oldschuren

oldschuren

    Floor Broker

  • *_skilled
  • 1,457 posts
  • 7935 thanks
  • Wohnsitz:Brandenburg

Posted 24 April 2017 - 03:38 PM

Schon mal bei Dukascopy nachgeschaut? Scheint was zu sein wenn man Kunde bei denen ist...

https://www.dukascop...tch/historical/


  • 0
ich raube, also bin ich....

Thanked by 5 Members:
whipsaw , ajkonly , Vola , chimbonda , Forex1+

#6 Rumpel

Rumpel

    Floor Broker

  • *_skilled
  • 1,344 posts
  • 7638 thanks

Posted 24 April 2017 - 06:35 PM

Ein Filter der Trades nur von 9-17 Uhr zulässt braucht dann nur die Abfrage if((Stunde>=9)&&(Stunde<17) und fertig.

 

 

Ja, das ist natürlich ein sehr idealisiertes Beispiel.

Jetzt schreib mal sowas wie: "Gib mir alle Werte der letzten 2 Wochen zurück". Das machst du weil du zB. einen Indikator draus bauen willst oder so.  


  • 0
Aus technischen Gründen steht meine Signatur auf der Rückseite dieses Posts!

Thanked by 6 Members:
whipsaw , ajkonly , Vola , chimbonda , Forex1+ , oldschuren

#7 Forex1+

Forex1+

    Floor Broker

  • Addict
  • PipPipPipPipPipPip
  • 290 posts
  • 1457 thanks

Posted 24 April 2017 - 10:16 PM

Ja, das ist natürlich ein sehr idealisiertes Beispiel.

Jetzt schreib mal sowas wie: "Gib mir alle Werte der letzten 2 Wochen zurück". Das machst du weil du zB. einen Indikator draus bauen willst oder so.  

 

Ich würde die Periode des Indikators so einstellen das sie entsprechend der gewählten Zeiteinheit dem Zeitraum entspricht. Der Zeitraum ergibt sich aus der gewählten Periode und der Zeiteinheit der Kerzen.

Es gibt sicher auch den Usecase, wo es mit der Unixzeit besser klappt. Für mich ist meistens interessant welcher Wochentag und welche Zeitspanne von Stunden am Tag daher die Präferenz  diese Werte direkt vorliegen zu haben.


  • 0
It's a losing game, without passion !

Thanked by 4 Members:
whipsaw , ajkonly , Vola , chimbonda

Wichtiger Hinweis für Besucher der Community!

Das Erstellungsdatum des von Dir aufgerufenen Themas liegt bereits einige Zeit zurück. Wir möchten darauf hinweisen, den Inhalt der Diskussion auf seine Aktualität hin zu prüfen. Weitere Informationen findest Du auf dieser Seite.


0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users