Dienstag, 16. April 2024, 11:03 UTC+2

Sie sind nicht angemeldet.

  • Anmelden
  • Registrieren

Lieber Besucher, herzlich willkommen bei: INVESTOX-Forum. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

Yoggi

unregistriert

1

Dienstag, 20. April 2010, 18:36

ORM Exit zu bestimmter Zeit mit MOC Order verbinden können

Hallo Herr Knöpfel,

folgendes Problem lässt in mir den Wunsch nach einer kleinen Erweiterung aufkommen: Es passiert bei mir alle paar Monate (gestern abend war es mal wieder so weit - war aber nicht weiter schlimm, da ich keine offenen Trades hatte), dass bei mir um kurz vor 22 Uhr die Verbindung zu IB aussetzt. Ich starte mittlerweile IB jeden Tag neu, aber das Problem tritt sporadisch mal auf. Gerade die Zeit um kurz vor Toresschluss an der Eurex ist für Verbindungsprobleme fatal, da ein Teil meiner Systeme nicht MOC rausgeht, sondern um kurz vor 22 Uhr. (Aus der Überlegung, dass es gerade an Tagen mit einer starken Bewegung oft einen deutlichen Unterschied macht, ob man um 21.59 oder MOC seine Positionen glatt stellt. Wenn allerdings um 21.59 gerade ein Verbindungsproblem vorliegt, bin ich plötzlich overnight investiert, da der exit ja dann nicht geroutet wird. (Auch dieses Jahr schon vorgekommen)
Um diesem Problem abzuhelfen wäre mir (und vielleicht ja auch anderen) sehr damit gedient wenn es eine Kombiorder gäbe: Schließe die Position um x Uhr, wenn diese Order aber nicht geroutet wurde, dann aber zum MOC. Wenn ich also um 21.55 glattstellen will, dann soll um 21.55 eine marketorder erteilt werden und gleichzeitig die MOC-Order gelöscht werden (da ich ja ansonsten um 21.55 meine Position mit der marketorder glattstelle um dann zum Close in die Gegenrichtung einzusteigen). Sollte aber - wegen Verbindungsproblemen - die eigentlich glattzustellende Position nach der vorgesehenen Exitzeit noch ohne Exitorder sein, dann soll diese Position MOC glattgestellt werden. MOC wäre also bei dieser Kombination ein Notfallschutz für den Fall des unerwarteten "Ausfalls" der eigentlich geplanten Exitorder zu einer bestimmten Zeit.
Verständlich ausgedrückt? Ich hoffe doch, ansonsten nochmal nachfragen.
Alles Gute
Yoggi

Lenzelott Männlich

Experte

Registrierungsdatum: 30. Dezember 2002

Beiträge: 3 050

Wohnort: Giessen

2

Dienstag, 20. April 2010, 19:29

klingt vernünftig.

Ich hatte neulich auch mal durch einen andere Merkwürdigkeit bedingt (bin noch am forschen dazu wie es genau passiert ist) auf einmal einige Kontrakte von Donnerstag über Ostern long im estx50.

Die Market Austiegsorder war von IV an die TWS übertragen worden, stand dort allerdings als unbearbeitet.

Ich habe mich dann im ES gehedged, was rückwirkend betrachtet natürlich ne Scheißidee war.
If you think it´s expensive to hire a professional, wait until you hire an amateur.

cnolte

Profi

Registrierungsdatum: 23. November 2006

Beiträge: 399

3

Dienstag, 20. April 2010, 21:09

Hallo Yoggi,

kannst Du denn das nicht heute schon erreichen?

Vorschlag: Im ORM stellst Du die MOC Order ein zum Exit, im Handelssystem setzt Du einen TD-Stop, max. Dauer 1 Periode mit Zusatzbedingung Uhrzeit > z.B. 21:58.

Der Uhrzeit-Stop greift normalerweise, wenn nicht liegt die MOC Order schon bei IB und greift dann.

Viele Grüße
Cornelius

Investox

Administrator

Registrierungsdatum: 31. August 2002

Beiträge: 5 680

4

Mittwoch, 21. April 2010, 09:11

Hallo,

das sehe ich auch so: wenn die MOC-Order als zeitbasierter Stop eingesetzt wird, wird sie ja (von Investox) gestrichen, wenn der normale Exit per HS erfolgt.

Viele Grüße

Andreas Knöpfel

Bernd

Experte

Registrierungsdatum: 5. Juni 2005

Beiträge: 4 070

Wohnort: Iringsweg

5

Mittwoch, 21. April 2010, 10:00

Hallo

Ein interessanter Fall! Manche Börsen haben ja bestimmte Cancelation-Rules für MOC Orders, so dass eine MOC Order 10 oder 20 Minuten vor Beginn der Schlussauktion nicht mehr reduziert oder gecancelt werden kann. Was wird denn passieren ...
wenn die MOC-Order als zeitbasierter Stop eingesetzt wird, wird sie ja (von Investox) gestrichen, wenn der normale Exit per HS erfolgt.

... wenn Yoggi eine MOC Order draussen hat, der Börsen Schluss 22 Uhr ist und im Normalfall (also wenn es zu keinem Verbindungsunterbruch kommt) der Exit um 21:55 den Trade schliesst? Investox wird versuchen, die MOC Order zu streichen, das wird abgelehnt werden und dann schätze ich mal, MOC dreht ihm die Position overnight, gerade was Yoggi verhindert wollte :thumbsup:

Oder habe ich da jetzt was übergesehen?
Gruss
Bernd

Lenzelott Männlich

Experte

Registrierungsdatum: 30. Dezember 2002

Beiträge: 3 050

Wohnort: Giessen

6

Mittwoch, 21. April 2010, 14:57

da muss man dann seine Exits und die Sicherheitsschleife wohl an den gehandelten Markt anpassen, wie jeder Marktteilnehmer.

Aber ansonsten hat Cornelius und Herr Knöpfel recht.

Die Eurex macht so sperenzchen zum Glück nicht, da darf man in der laufenden Auktion Orders streichen und reinstellen.
If you think it´s expensive to hire a professional, wait until you hire an amateur.

Yoggi

unregistriert

7

Mittwoch, 21. April 2010, 19:36

Hallo,

vielen Dank für Euer Mitdenken! Auf die bereits gegebenen Möglichkeiten war ich noch nicht gekommen. Prima, das werde ich mal bei einem System testen.
Alles Gute
Yoggi

Yoggi

unregistriert

8

Sonntag, 25. April 2010, 21:06

Hallo Herr Knöpfel,



es hat sich jetzt doch noch eine Nachfrage ergeben. Ich hatte bislang angenommen, dass man unter "Ordereinstellungen bearbeiten" - "Stops" - "Zeitbasierte Stops: Position schließen" nur ENTWEDER "Immer zu dieser Uhrzeit" ODER "Zum Close" mit einem Häkchen versehen könnte. Jetzt habe ich aber festgestellt, dass man beides zusammen ankreuzen kann.

Bewirkt denn die Aktivierung von "Immer zu dieser Uhrzeit" auch, dass eine - durch die gleichzeitige Aktivierung von "Zum Close" - im Markt liegende MOC Order gelöscht wird, wenn die angegebene Uhrzeit erreicht ist? Dann wäre ja genau das erreicht, was ich wollte und ich müsste meine Handelssysteme nicht auf eine kleinere Komprimierung umstellen, um mittels eines Tradedauerstops kurz vor Handelsschluss noch auszusteigen.

Danke schonmal für die nochmalige Auskunft

Alles Gute

Yoggi

Investox

Administrator

Registrierungsdatum: 31. August 2002

Beiträge: 5 680

9

Montag, 26. April 2010, 09:58

Hallo,

das sollte schon so sein: wenn die Market-Order durch den Zeitstop ("Immer zu dieser Uhrzeit", läuft unabhängig von der HS-Komprimierung) platziert wird, werden die Sicherheitsstops gestrichen.

Viele Grüße

Andreas Knöpfel

Rubelroller

unregistriert

10

Montag, 26. April 2010, 19:12

Hallo Yoggi,

Es passiert bei mir alle paar Monate (gestern abend war es mal wieder so weit - war aber nicht weiter schlimm, da ich keine offenen Trades hatte), dass bei mir um kurz vor 22 Uhr die Verbindung zu IB aussetzt. Ich starte mittlerweile IB jeden Tag neu, aber das Problem tritt sporadisch mal auf.


könnte sein, dass dein Router die DSL-Zwangstrennung macht und du keine Internetverbindung hast. Dann dauert es schon 1-2 Minuten bis TWS wieder grün ist.
Wenn du eine FritzBox hast, gibt es dort eine Option "Zwangstrennung durch den Anbieter verschieben in die Zeit zwischen" (bei vielen anderen Router auch). Hier kannst du die Zeit für die Zwangstrennung einstellen, die FritzBox trennt die DSL-Verbindung jeden Tag 1-2 Minuten früher.
Um die Zwangstrennung währen der Handelszeiten zu umgehen, mach ich folgendes.
1. Option "Zwangstrennung durch den Anbieter verschieben in die Zeit zwischen" steht bei mir auf 23-24 Uhr
2. am So gegen 23:10 wird die FritzBox neu gestartet (Strom raus, nach 5 sec wieder rein). Bis nächsten So liegt die Zwangstrennung so gegen 23 Uhr.

Yoggi

unregistriert

11

Mittwoch, 5. Mai 2010, 09:16

Guten Morgen Herr Knöpfel, hallo an alle anderen,

gestern abend trat mein Problem mal wieder auf und es zeigte sich ein weiteres:
Zwischen 21.56.15 und 21.59.46 war die Verbindung zur TWS verloren gegangen (Fehlermeldungen 1100, danach 1102).
Bei meinen Handelssystem, bei denen ich einen zeitbasierten Stop im ORM eingegeben habe (und zwar 21.59.15 in diesem Fall) wurde eine ExitOrder durch zeitbasierten Stop des Depoteintrags ausgelöst, die aber als unbearbeitet in der Orderliste steht, weil eben zu dieser Zeit keine Verbindung zur TWS bestand.
Bei einem anderen Handelssystem hatte ich zu dem zeitbasierten Exit via ORM auch noch MOC via ORM aktiviert. Dort kam es zu einem besonders unangenehmen Verfahren: Durch die ExitOrder (hier 21.59.00) durch zeitbasierten Stop wurde die MOC Order gestrichen (21.59.00: Order wurde wegen Eingang neuer Order gestrichen; 21.59.00 Orderstreichung wurde in Auftrag gegeben; 21.59.46 Oder storniert - Grund:). Als die Verbindung zur TWS um 21.59.46 wieder funktionierte wurde die MOC-Order gestrichen, aber die zeitbasierte Exitorder gab es für die TWS garnicht, da sie ja zu ihrer Entstehungszeit (21.59.00 in diesem Fall) garnicht an die TWS weitergeleitet werden konnte. So war ich dann overnight investiert, was ich eigentlich nicht will.
Daraus schließe ich, dass es (noch) keinen Abfragemechanismus gibt, der die MOC Order dann und nur dann schließt, wenn eine Exitorder auch in der TWS ANGEKOMMEN ist. Denn jetzt scheint es ja so zu sein, dass INV sieht: aha, da ist ein zeitbasierter Stop, also kann ich alles andere streichen. Diese Streichung "wartet" dann aber "vor" der TWS solange, bis sie eine Verbindung hat, während der zeitbasierte Exit einmal "EXIT" "ruft" und danach nichts weiter mehr tut, also auch nicht kontrollieren, ob denn sein Rufen von der TWS überhaupt vernommen wurde.
Ist das programmiertechnisch zu lösen, dass durch eine Exitorder erst dann alle anderen diese Position bezüglichen Orders gestrichen werden, wenn diese Exitorder auch bei der TWS angekommen ist?

Gestern zeigte sich aber auch, warum ich nicht einfach alle Handelssysteme mit MOC Order versehen möchte, was mir diese Probleme ersparen würde. Die Kurse der letzten Minute lagen bei 2657 und 2658, der Kurs zu dem MOC abgerechnet wurde lag bei 2664, was ja immerhin 6 Punkte im ESTX50 sind. Gerade an Tagen, an denen es eine größere Range und einen eindeutigen Trend gibt, liegen die MOC Kurse oftmals deutlich von den letzten Kursen entfernt.
Danke schonmal fürs Mitüberlegen und eventuell Abhilfeschaffen
Yoggi

Investox

Administrator

Registrierungsdatum: 31. August 2002

Beiträge: 5 680

12

Mittwoch, 5. Mai 2010, 17:25

Hallo,

was mich dabei wundert ist, dass zwar die Exit-Order nicht angenommen wurde, die Streichung aber doch?

>>Ist das programmiertechnisch zu lösen, dass durch eine Exitorder erst dann alle
>>anderen diese Position bezüglichen Orders gestrichen werden, wenn diese Exitorder auch bei der TWS angekommen ist?

schwierig, und erhöht u.U. die Gefahr ein Doppelausführung. Es könnte ja auch umgekehrt passieren, dass die Exitorder ankommt, aber keine Rückbestätigung erfolgt. Es führt m.E. kein Weg drum herum: bei einer Unterbrechung sollte man überprüfen, was passiert ist - vor allem in der Nähe zum Marktschluß, wenn man overnight nicht investiert sein möchte.

Viele Grüße

Andreas Knöpfel

Lenzelott Männlich

Experte

Registrierungsdatum: 30. Dezember 2002

Beiträge: 3 050

Wohnort: Giessen

13

Mittwoch, 5. Mai 2010, 17:45

Hallo Herr Knöpfel,

IB bietet ja die Möglichkeit good after date/time orders einzugeben.
Bestünde nicht die Möglichkeit bei einem ORM Zeitexit diese als Marketorder bereits in die Braketorder einzubauen?

Wenn x Uhr erreicht ist, wird die Marketorder aktiv bei IB, die Stops werden von IB bei Ausführung gestrichen und alles ist gut ?
If you think it´s expensive to hire a professional, wait until you hire an amateur.

Yoggi

unregistriert

14

Mittwoch, 5. Mai 2010, 18:04

was mich dabei wundert ist, dass zwar die Exit-Order nicht angenommen wurde, die Streichung aber doch?
Ja, das wundert mich auch. Gibt es denn auch eine Möglichkeit herauszufinden, woran das gelegen hat? Wieso also die Exitorder nur zu der einen Sekunde, zu der sie aktiviert wird, geroutet werden kann, wieso aber das Streichen der MOC-Order in INV angestoßen wird und dann solange wartet, bis es übertragen werden kann?
Alles Gute
Yoggi

Investox

Administrator

Registrierungsdatum: 31. August 2002

Beiträge: 5 680

15

Donnerstag, 6. Mai 2010, 12:39

Hallo,

das liegt wohl daran, dass die TWS (bzw. die API, beim Gateway ist es dasselbe) im Falle einer fehlenden Serververbindung so arbeitet: Streichungen werden angenommen und später umgesetzt, Orders verschwinden dagegen im Nichts.

Eine Möglichkeit der Anpassung wäre es, dass Investox optional keine Signale an IB umsetzt (also weder Platzierungen noch Streichungen), wenn keine Verbindung besteht (Status Abbruch) - nach dem Motto: lieber gar nichts ändern, als nur teilweise etwas ändern.

Viele Grüße

Andreas Knöpfel

Lenzelott Männlich

Experte

Registrierungsdatum: 30. Dezember 2002

Beiträge: 3 050

Wohnort: Giessen

16

Donnerstag, 6. Mai 2010, 12:42

also die Orders und Streichungen in einer Pipeline zwischenspeichern bis wieder ein Connect vorhanden ist?
If you think it´s expensive to hire a professional, wait until you hire an amateur.

Bernd

Experte

Registrierungsdatum: 5. Juni 2005

Beiträge: 4 070

Wohnort: Iringsweg

17

Donnerstag, 6. Mai 2010, 15:01

Hallo

Ich denke, bevor irgend welche Aufträge (Streichungen) umgesetzt werden und andere nicht (Orders), wäre es mir sympatischer, wenn nichts umgesetzt wird, aber ...
nach dem Motto: lieber gar nichts ändern, als nur teilweise etwas ändern.

... aber es braucht flankierende Massnahhmen!

Dies wäre ein Ansatz:

Zitat von »Lenzelott«

die Orders und Streichungen in einer Pipeline zwischenspeichern bis wieder ein Connect vorhanden ist

Und die flankierenden Massnahmen wären:
* ein vom Benutzer einstellbarer Timeout; kommt innerhalb der eingestellten Zeit die Verbindung zurück, dann schiebt Investox die Orders aus der Pipeline raus nach dem FiFo Prinzip
* nach dem Timout bleiben die Oders in der Pipeline stehen und der User wird über die üblichen Wege (eMail, SMS, Audio) benachrichtigt.
* es sollte eine Möglichkeit geben, in die Pipeline hineinzusehen, sie zu flushen oder einzelne Orders herauszunehmen und sie danach wieder freizugeben; alles was noch in der Pipeline wäre, würde Investox dann zu IB rüberschieben
* wenn der Timeout auf 0 gesetzt ist, dann wäre er deaktiviert: Investox würde sich dann stets verhalten wie beim ersten Punkt beschrieben
Gruss
Bernd

cnolte

Profi

Registrierungsdatum: 23. November 2006

Beiträge: 399

18

Donnerstag, 6. Mai 2010, 15:20

Verbesserte Abstimmung zwischen HS und TWS/Depot

Hallo zusammen!

Die Verbesserung der Abstimmung zwischen Handelssystem und Depot/TWS ist ein Thema, welches mir sehr (!) am Herzen liegt. Denn in den letzten Monaten ist es bei mir mehrmals und aus unterschiedlichen Ursachen vorgekommen, dass HS und Depot auseinander gelaufen sind, d.h. das HS war out, aber das Depot hatte einen Bestand.

Da dies für eine automatische Handelssoftware ein katastrophales Ergebnis ist (selbst wenn eine solche Situation zufällig mit Gewinn enden sollte), benötigt dieser Bereich der Abstimmungsmechanismen zwischen HS und Depot m. E. dringend eine Weiterentwicklung.

Für den von Yoggi beschriebenen Fall des Verbindungsabbruchs zur TWS könnte Lenzelotts Vorschlag eines Order-Zwischenspeichers eine Lösung sein, die das Auseinanderlaufen verhindert.

Es gibt aber noch weitere mögliche Ursachen des Auseinanderlaufens von HS und Depot (und ich habe sicher nicht alle Ursachen kennengelernt), welche einen Sicherheitsmechanismus im Sinne einer weitergehenden Abstimmung zwischen HS und Depot erforderlich machen.

Hierzu folgendes Beispiel aus meiner Erfahrung:

Ein Breakout System geht Long mit einer StopLimit Order. Mit dieser Enter Order werden ORM Sicherheitsstops geroutet (Verluststop, Gewinnlimit, MOC Exitorder). Die Orderausführung erfolgt in der Signalperiode. Zu Beginn der Folgeperiode werden die ORM Sicherheitsstops von Investox "automatisch" neu gesetzt. Gleichzeitig erzeugt das HS zu Beginn der Folgeperiode durch einen Stop eine Exitorder, weil ein False Breakout wahrscheinlich ist. Diese Exitorder konfligiert in der TWS mit dem Neusetzen der ORM Stops. Ergebnis: sämtliche Stops und Orders werden gelöscht, das HS ist out, der Bestand völlig ungeschützt im Depot (und das nach einem wahrscheinlichen False Breakout).

Hier braucht es m.E. systemseitig eine Prüfung, welche den Zustand des HS und des Depots abgleicht und ggf. eine Übereinstimmung wiederherstellt.

Viele Grüße
Cornelius

Investox

Administrator

Registrierungsdatum: 31. August 2002

Beiträge: 5 680

19

Donnerstag, 6. Mai 2010, 17:27

Hallo,

>>Hierzu folgendes Beispiel aus meiner Erfahrung:
Das Beispiel habe ich nicht verstanden bzw. nachvollziehen können.

>>Diese Exitorder konfligiert in der TWS mit dem Neusetzen der ORM Stops.

Was meinen Sie mit "Neusetzen"? Was genau meinen Sie mit konfligieren (welche Fehlermeldungen)?

Prinzipiell ist es ja so, dass eine Exit-Limitorder in die bestehenden Sicherheitsstops eingebaut wird, diese also nicht gestrichen werden.

Viele Grüße

Andreas Knöpfel

cnolte

Profi

Registrierungsdatum: 23. November 2006

Beiträge: 399

20

Freitag, 7. Mai 2010, 11:08

Verbesserte Abstimmung zw. HS und TWS/Depot

Guten Morgen Herr Knöpfel, guten Morgen Investoxgemeinde!

Beim o. g. Trade handelt es sich um einen der beiden, welche ich Ihnen per eMail mit Signal- und Orderdetails in einem beigefügten Spreadsheet am 11.02.10 beschrieben habe. Das "Neusetzen" der ORM Stops erfolgt zu Beginn der zweiten Periode, m.W. ohne dass der Anwender dazu eine Einstellung vornehmen kann/muss. Im Orderbuch sind die mit der Enter Order gerouteten ORM Stops dann gestrichen, gleiche Stops werden zu Beginn der zweiten Periode neu gesetzt.

Die TWS Fehlermeldungen dazu weiß ich nicht mehr auswendig, erinnere mich aber an die Aussage, dass das Aufeinandertreffen der neu zu setzenden ORM Stops mit der durch das HS generierten Market Order einen Konflikt bedeutete, welcher durch Streichen sämtlicher Orders in der TWS gelöst wurde.

Sie empfahlen mir damals freundlicherweise, die Exit Order des HS generell auf Limit (ggf. mit Sicherheitsabstand zum aktuellen Kurs) umzustellen, so dass dann jede (als Limit Order generierte) Exit Order eine Anpassung des ORM Sicherheitsstops (oder ORM Gewinnlimits?) bewirkt. Diese generelle Umstellung der Exit Order von Market auf Limit für sämtliche Signale erscheint mir allerdings problematisch, da Limit Orders an der Börse anders behandelt werden als Market Orders und die Auswirkungen dieser Umstellung, vor allem in schnellen Marktphasen, für mich nicht vollständig absehbar sind.

Im konkreten Fall wäre diese von Ihnen vorgeschlagene Lösung m. E. dann sehr gut einsetzbar, wenn man die Orderart für jeden Stop definieren könnte. Dann würde ich es als unproblematisch ansehen, speziell den False Breakout Stop auf Limit Order (mit Sicherheitsabstand) umzustellen. Die Erweiterung, Orderarten für einzelne Stops definieren zu können, steht ja - glaube ich - auf Ihrer Liste.

Eigentlich geht es mir mit meinem obigen Posting aber weniger um den konkreten Trade als um die Tatsache, dass wir alle zusammen nicht alle Möglichkeiten kennen, die ein Auseinanderlaufen von HS und TWS/Depot bewirken können. Und da sich alle beteiligten Systeme laufend ändern, wird das wohl auch nie der Fall sein. Da ein solches Auseinanderlaufen für eine automatische Handelssoftware den Katastrophenfall darstellt, sollte in Investox, soweit irgend möglich, eine Vorkehrung dafür getroffen werden.

Betrachten wir den von mir geschilderten Fall. Was "weiß" Investox bzw. kann des über die TWS API erfahren:

1. Das HS ist out.
2. Die letzte Aktion des HS war, eine bestehende Depotposition durch Market Order zu schließen.
3. Seit dem Routing der Market Order haben Markttransaktionen stattgefunden.
4. Die Market Order wurde nicht ausgeführt, sondern gestrichen.
5. Die Depotposition besteht noch (ohne sonstige Orders).

Damit kann (eigentlich will ich schreiben: MUSS) man doch etwas machen!

Welche Aktion Investox dann durchführt (Sirene/Text vorlesen, eMail/SMS, sofortige oder nach Prompt verzögerte neue Market Order), sollte man wohl dem Anwender überlassen. Aber es sollte jedenfalls eine Sicherheitsvorkehrung geben.

Viele Grüße
Cornelius