Zum Inhalt springen
View in the app

A better way to browse. Learn more.

#T/N/X/T

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Mythos

Moderatoren
  • Benutzer seit

  • Letzter Besuch

Alle Inhalte von Mythos

  1. Mythos erstellte ein Blogbeitrag in Exchange - Developement
    Is wiedermal Zeit für einen "Tagebucheintrag". Hallo zusammen, Es ist einiges weitergegangen. Es gab ein paar böse Bugs im Clearing (hat mir Short positionen nicht geschlossen sondern vergrößert... nit gut ;) und ein paar Designtechnische Verbesserungen (hoffentlich). So sieht man jetzt wenn der Chart gerade neue Daten ladet, wieviele Daten vorhanden sind und er ladet die Daten jetzt auch wirklich *G* Zum besseren Feeling hab ich auch einen Logout Button eingebaut und die faden Standardlogos der Fenster durch provisorische eigene ersetzt. (Wenn jemand künstlerisch begabt ist und eine gute Idee hat: immer her damit ;) Achja, der Chart hat endlich auch ein Volumen (also der Server schickts endlich mit ;) und inzwischen gibts eine Trafficbegrenzung pro User. Wenn zuviele Daten innerhalb von 5 Sekunden gesendet werden, wird erstmal zurückgeschalten und nur mehr das nötigste an den User gesendet (damit nicht einer mit Unmengen an Chart und LEvel2 Anfragen das ganze blockiert). Jo, php hab ich auch ein bissl was weitergewerkelt. Der Login wird jetzt geprüft BEVOR das Applet startet und ohne korrekten Login kommt man gar nicht zum Applet. Und es gibt endlich eine Möglichkeit das Passwort zu ändern. Alles in allem ist das web-teil aber sehr einfach gehalten, ich kenn mich ja auch nit wirklich aus damit. In Summe kann man sagen: Server stabil, Code nicht schön aber ok, Client besser aber noch nicht perfekt. Spass am damit rumspielen testen: garantiert ;) no worries mythos
  2. Mythos antwortete auf Bull68's Thema in MQL Einsteiger
    Vorsicht: ich hab schon von Brokern gehört die um Mitternacht die OrderTickets irgendwie neu verteilen. Also wenn man sich das Ticket speichert kann das auch zu Problemen führen. Nur als Warnung. Edit: Man kann natürlich auch jedesmal die gesamte History durchgehen und schaun was als letztes geschlossen wurde, merkt sich die OrderCloseTime() der zuletzt geschlossenen Order, und das nächste mal sind alle Orders deren CloseTime darüber liegt "neu". Dann noch checken ob ausgestoppt oder TP oder einfach so geclosed.
  3. Mythos antwortete auf Mythos's Thema in TEFEx Labs
    Das Orderbuch und Level2 Wird eine neue Order bei der Exchange hinzugefügt/gesendet, so wird zuerst versucht diese sofort auszuführen. Ist dies nicht möglich so wird die Order im Orderbuch gespeichert. Zur Vereinfachung werden sie gleichmal nach Limit/Triggerpreis sortiert. Die MarketOrders die nicht ausgeführt werden können (was normal nicht vorkommen sollte, kann aber passieren) kommen in einen Topf (hier gibt es ja keinen Limit oder Triggerpreis). Zum Glück kann es nie vorkommen das Kauf- UND Verkaufsorders gleichzeitig im Topf liegen. Für die Limitorders gilt: Das höchste Limit bei den unausgeführten LimitBuys ist immer kleiner als das kleinste Limit bei den unausgeführten LimitSells. Denn würden sie sich überlappen könnten diese Orders ausgeführt werden. Dadurch kann man das Orderbuch immer in den Käuferbereich und den Verkäuferbereich trennen. Bei den Stops sind die Bereiche genauso getrennt aber vertauscht: über dem Preis sind die StopBuys darunter die StopSells. Was aber sehr wohl sein kann, ist das sich zB StopSells und LimitSells überschneiden (obwohl sie eigentlich auf unterschiedlichen Seiten liegen). Das passiert zB wenn es wenig LimitBuys gibt (vor allem keine knapp unter dem letzten Preis) aber die LimitSells immer tiefer wandern (also immer neue mit tieferen Limits dazukommen). In dem Fall liegt dann auch der letzte Preis nicht mehr zwischen LimitBuys und LimitSells. Deswegen spricht man auch vom letzten Preis (bzw. letzten gehandelten Preis). Denn er ist genau das und nicht mehr. Es gibt keine Garantie das man zu diesem Preis wieder handeln kann, noch das man überhaupt in der Nähe davon wieder handeln kann, es ist nur ein Hinweis wo gerade was passiert ist. Level2 Information Diese Information aus dem Orderbuch will der Trader jetzt natürlich sehen und das kann er in eingeschränktem Maße in der Level2 Information, teils auch als DOM bezeichnet. Aus Datenschutzrechtlichen Gründen zeigt man natürlich nicht wer genau was kaufen will, dafür fasst die Level2 Info alle Limits bei einem Preis zusammen. Zu jedem Preis gibt es also die Anzahl (genauer gesagt die Summer der Positionsgrößen) der noch offenen Limitorders bei diesem Preis. Achtung: In der Level2 werden nur die Limits angezeigt, nicht die Stops und auch keine Markets (die es normal eh nicht unausgeführt gibt). Man muss natürlich unterscheiden können ob die angezeigte Zahl zu LimitBuys oder LimitSells gehört (beides kann es ja nicht sein). Das passiert meist (auch bei der Exchange) durch eine Farbmarkierung. Grün bedeutet LimitBuy, Rot LimitSell. Level2 Info gibt damit einen sehr guten Überblick über die aktuelle Marktlage bzw. die Verteilung von Angebot und Nachfrage. Vor allem sieht man sehr schön gewisse Widerstände wo sich der Kurs erst durch einen größeren Block an Orders "durchfressen" müsste um weiter zu steigen oder zu sinken. Aber nicht vergessen: Orders können auch wieder gelöscht werden und es kann sein, das ein Großer nur den Anschein erwecken will das hier ein Widerstand herrscht, aber sobald der Kurs in die Nähe kommt seine große Order einfach rauslöscht. In der Exchange gibt es noch 2 zusätzliche Spalten in denen die eigenen Limits und Stops als zusätzliche Hilfe mitangezeigt werden. Dadurch sieht man schnell wo man noch welche Orders im Markt hat.
  4. Mythos erstellte Thema in TEFEx Labs
    Die Orderarten (die es bei der Exchange derzeit gibt) Lt. meines Wissen gibts im wesentlichen 3 Orderarten, die jedoch teils dann noch kombiniert werden. Derzeit sind genau die 3 "Grundarten" eingebaut die da wären: MarketOrder Vermutlich die Order die die meisten "kleinen" Trader verwenden. Jedesmal wenn man einfach nur auf KAUFEN oder VERKAUFEN drückt sendet man eine Marketorder. Der Name an sich ist hier auch Programm, man geht auf den "Markt" und sagt (zB) "Ich will 3 Stück kaufen, für den besten Preis den ich bekomme!". Man merkt hier schon das "besten Preis" nicht sehr spezifisch ist. Es kann ja passieren das gerade sehr wenige Leute etwas anbieten (wenn überhaupt). Dadurch kann es bei dieser Orderart auch zu sehr hoher Slipage führen. Wenn zB der letzte Preis bei 1000 stand, man will 3 kaufen, aber es werden nur 1 für 1050 und 2 erst bei 1100 angeboten. Dann kriegt man mit der MarketBuy genau diese "besten" 3 Stück, obwohl man die Order bei 1000 abgesetzt hat. Ich hab schon öfter erlebt das sich die Leute bei Kiwee geärgert haben das sie nicht verkaufen konnten bevor der Kurs gefallen ist, ohne zu merken das ihre Marketorder selbst den Kurs nach unten gerissen hat. LimitOrder Vermutlich die meistverwendete von den Pros, zumindest wie ich das verstanden hab. Hier geht man auf den Markt und sagt "Ich will 3 Stück kaufen für maximal 1000 Euro" bzw. im Verkaufsfall eben "mindestens x Euro". Also ein sehr natürliches Verhalten, man hat einen Bedarf und ein Limit wieviel man zahlen will. Wenn man jetzt eine solche Order in den Markt stellt, kann es passieren das es passende Angebote gibt die den eigenen Wünschen entsprechen (also im Fall einer LimitBuy entsprechende Verkaufsangebote unter meinem Limit) oder auch nicht. Wenn es bereits Angebote gibt, kann es sein das man einen besseren Preis bekommt als sein Limit war. Kann die Order aber nicht sofort ausgeführt werden, so wird sie ins Orderbuch gehängt und wird Teil der Level2 Info. Ab dem Zeitpunkt wird man sicher nur zum Limitpreis ausgeführt, denn jede neue Verkaufsorder, bekommt den eigenen Limitpreis als bestmöglichen Preis. StopOrder beim Stop geht es darum zu sagen "Wenn der Preis über 1000 Euro steigt, will ich kaufen". Das geht natürlich weder mit einer Limit (die würde sofort ausgeführt solange der Preis unter dem Limit ist) noch mit der Market, weil die wird sofort ausgeführt. Bei der Exchange sind Stoporders eigentlich Market-if-touched Orders. Sprich wenn der Stoppreis (trigger) erreicht wird (also bei Stopbuy Preis >= trigger, bei Stopsell Preis
  5. Die Grundidee der Exchange: Das "Experiment" einen Börsenplatz zu Erzeugen wo fiktive Assets ohne jeden Bezug zur Realität aber nach den realen Regeln der Börse gehandelt werden können. Sprich es ist kein Börsenspiel im klassischen Sinn wo jeder Teilnehmer reale Aktien kaufen kann und dann das theoretische Portfolio aufgrund der realen Kurse läuft. Sondern der Kurs bewegt sich, wenn es Kauf und Verkauforders gibt die ein matching erlauben. Der Kurs wird also von den aktiven Usern produziert und nur von den Usern. Die Motivation für die Exchange: Im wesentlichen gibt es 3 wichtige Motivationen für die Entwicklung: Das Thema Börse ist derzeit viel in den Medien und im Blickpunkt der Öffentlichkeit. Die einen verteufeln sie, die anderen wollen Millionen verdienen aber die meisten wissen nicht wie sie funktioniert. Selbst "Börsenteilnehmer" wissen teils nicht wie der Kurs wirklich entsteht. Die Exchange soll hier zur Aufklärung mithelfen. Denn hier kann man als User völlig frei die Mechanismen selbstständig erforschen, direkt erfahren welchen Einfluss die eigenen Orders haben, was die Ordertypen wirklich bedeuten und damit wie der Kurs eigentlich entsteht. Als "Anhänger" der technischen Analyse finde ich die Frage spannend "Was passiert mit einem Kurs der frei von realen Einflüssen ist?". Welche Faktoren spielen eine Rolle? Gibt es ähnliches Verhalten wie an der realen Börse oder komplett neue Muster? Bewegt sich der Kurs überhaupt? Es ist ein spannendes Spiel und für Börsensüchtige ein top Ersatz fürs Wochenende, denn die Exchange wird 24/7 laufen. Das waren zumindest die Hauptmotivationen als das Projekt gestartet ist, inzwischen ist es zusätzlich noch ein gutes Programmierübungsprojekt. Was ist die Exchange? rein technisch gesehen ein Java Applet das sich zum Server verbindet auf dem ein Clearingalgorithmus läuft. Also im wesentlichen Börsensoftware, Brokersoftware und Handelsplattform in Einem. Die Exchange ist somit eine voll funktionsfähige Börse (wenn auch mit weniger Möglichkeiten als zB die EUREX ;) auf der man mit virtuellen Credits, virtuelle Assets handeln kann. Es werden nur Endlosfutures gehandelt, man muss sich also keine Gedanken um auslaufende Kontrakte machen und kann völlig frei long und short gehen (also kaufen und auch leerverkaufen). Unterschied zwischen der Exchange und einem Börsenspiel: Bei der Exchange entsteht der Kurs rein aufgrund von Angebot und Nachfrage. Wie an der echten Börse werden Kauf- und Verkaufsaufträge gegeneinander abgeglichen und sofern möglich ausgeführt wodurch sich der Preis bewegt. Der Kurs ist also nur durch das Verhalten der User beeinflusst. Zusätzlich gibt es keinerlei fundamentale Daten über die Assets die das Verhalten der User beeinflussen könnten. Es geht also rein um technische Analyse und Emotionen.
  6. Mythos erstellte Thema in TEFEx Labs
    Wie alles begann Vor etwas längerer Zeit (weiss gar nicht mehr genau wann) ist im Rahmen eines der vielen Gespräche in meiner alten Studenten WG von einem WG Kollegen plötzlich die "blöde Idee" gekommen so eine Börse selber zu schreiben und User im kleinen Kreis gegeneinander traden zu lassen. (Genaugenommen wars als Gegenaktion zu den LAN Parties meines anderen WG Kollegen geplant ;) Die Idee hat uns beide so fasziniert das wir das Projekt gleich angingen. Von Anfang an wars klar das es ein größeres Ding ist und wir noch viel lernen mussten, aber wir hatten ja Zeit. Schnell war klar das mit wenigen Usern das ganze sehr fad werden würde und wir eine Art "simulierte kritische Masse" brauchen die im Hintergrund zufällig mit sich selbst handelt und dadurch einen Kursverlauf erzeugt bis genug User aktiv sind. Wir nannten das Ding MarketMaker und es war ein toller Moment als wir das erste Mal einen zuckenden Kurs unserer eigenen Börse auf dem Schirm hatten. Exchange goes Web? Aber mit ein paar Freunden in der WG kommt man nie auf eine kritische Masse. Also entstand der Wunsch das Ding webbasiert zu machen. Da es sowieso schon fürs Netzwerk ausgelegt und DB-basiert war, war der Schritt an sich nicht weit... Nur das keiner von uns sich mit web-programmierung auskannte. Tjo blöd. Nach ein paar Versuchen und einem sehr primitiven, ersten, Typo3-basierten Interface das nicht wirklich unseren Vorstellungen entsprach, versuchten wir einen neuen WG Kollegen ins Boot zu holen der (angeblich) Ahnung davon hatte. Leider war er von dem Projekt nicht ganz so Feuer und Flamme und dieses Interface kam nie wirklich zustande. Kiwee@TradeScout(Damals gab es nur ein Symbol zu handeln, die Kiwees. Deswegen der ursprüngliche Name "Kiwee Börse") Dann kam die Idee das ganze in TradeScout zu integrieren (die Plattform die ich damals gerade mit ein paar Freunden startete) einerseits weil hier schon die Plattform vorhanden war, es gut ins Konzept passte und unser super Admin tarator über das nötige Know How verfügte! An dieser Stelle nochmals ein großes Danke an ihn für die Mithilfe. Kleine Anmerkung: Die Exchange ist inzwischen MultiCommunity und sowohl von TradeScout als auch von TomNext erreichbar, frei nach dem Motto "Mehr User, mehr Spaß" ;) Hier war die Begeisterung und Motivation größer und bald ging die erste Version (html basiert) online. Nach einigen Weiterentwicklungen wurde aber bald klar das ein HTML basiertes Interface eine solche App nicht aushält da der Apache schon bei "wenigen" Usern in die Knie geht, und das ohne realtime sondern mit bis zu 3 Sek Verzögerung (also 3 Sekunden Intervall der Requests, nicht Wartezeit auf die Replys). Zusätzlich entstand bei mir der Wunsch mehr als ein Symbol handeln zu können um Abwechslung zu schaffen und sowohl erfahrenen Tradern wie auch Neulingen Interessantes zu bieten. Also mussten wieder Alternativen her. Exchange meets Java (nein nicht die Insel) Schließlich entschied ich mich ein bissl Java zu lernen und zu versuchen einmal das ganze HTML Zeug in ein Applet zu packen das dann nur mehr einen Request pro Aktualisierung schickt. Aber natürlich ist auch das nicht ausreichend, denn Realtime bedeutet auch keine 1s Verzögerung, und jeder webadmin wird mit Beipflichten (hoff ich zumindest) das selbst konstante 10 Request pro Sekunde einen normalen Webserver deutlich beanspruchen. (Selbst bei rocketscience Tom Next brauchen die Replys schnell mal 0.3 Sekunden...) Tjo also wieder rein in die Java Bücher und Tutorials, und tata: das Einzige was bleibt ist eine ausgewachsene Client/Server App. Leider nicht die einfachen im Lehrbuch wo der Client einen Request stellt und der Server antwortet (AFAIK nennen sie das synchron) sondern der Client muss Request schicken können die beantwortet werden (zB neue Orders oder Chart/Level2 Abfragen) und unabhängig davon muss der Server jedem Client Updates schicken sobald sich was geändert hat (also asynchron). Also im so genannten Push-Verfahren. Sonst hat man wieder Unmengen Request ohne Sinn. Es ging also immer tiefer in die Materie. Ich hab viel gelernt und der Source ist gewachsen und gewachsen und gewachsen. Inzwischen schrecken mich Begriffe wie Multithreading, Threadpools, DBPools, asynchrone Kommunikation etc. weit weniger als noch vor 2 Jahren ;) Dann kam die erste Version die lokal toll funkte aber über einen realen Server irgendwie nicht so ganz rund lief. Also wieder ran und debuggen. Als es dann endlich "rund" lief, stand Australien vor der Tür und es war erstmal Pause angesagt. "Leider" hatte ich in Oz viel Zeit zum Nachdenken und ich bin mit einer ganzen Liste an Verbesserungsmöglichkeiten nach Hause gekommen, die jetzt alle eingebaut werden wollten. Dafür wurde das ganze Projekt jetzt immer "runder" und schöner. Tjo und dann gings online und seither wird mehr geschraubt und verbessert als je zuvor ;)
  7. Hi Bernd, klingt nach einem tollen Tool. Vor allem super das du es hier frei zur Verfügung stellst d.h. du arbeitest rein über die Dll? Vermutlich einen tick schneller oder? lg
  8. Klingt als würdet ihr denken das der BetaTest nur ein paar Stunden dauert ;) Das ganze läuft so ab: Sobald er offiziell startet sind die Betatester als User angelegt und können je nach eigenem Terminplan mit der Exchange rumspielen. Der einzige Unterschied zum Echtbetrieb ist, das es noch "wahrscheinlicher" ist das etwas nicht 100% funkt, und das solche Fehler dann bitte gemeldet werden. So ein Betatest kann schon mal ein paar Wochen dauern, es gibt Apps die eigentlich nie aus der Betaphase rauskommen, weil ständig was verbessert wird ;)
  9. Eigentlich ist schon genug gesagt worden, aber ich hab versprochen das ich antworte ;) Ja, jörg hat sich hier vertan und Finger hats übersehen (und wir anderen auch). An alle Neuen und SilentReader sei dieser Beitrag auch nochmal eine Demonstration, das man vor allem hier (in diesem Thread, aber auch im restlichen Forum) auch in einem angestaubten Thread jederzeit nachfragen darf wenn was unklar ist! Traut euch einfach, wie ihr seht lauern hier manche regelrecht in den Startlöchern und wetteifern wer schneller hilft ;) @WOGO und RAiNWORM:
  10. Wenn schon so bunt und "laut" dann bitte auch korrekt. Aktien werden an der Börse ge- und verkauft. Aber eben nicht nur dort. Wusste ich auch nicht, also danke für die Info. Aber wenns geht bitte das nächste mal die ganze Wahrheit. Seiten mit reißerischen Halbwahrheiten gibts im Netz schon genug.
  11. Javadoc kenn ich danke ;) Ok dann wars nicht das ResultSet sondern nur das Statement.
  12. Soda, der Server ist endlich soweit stabil das man in dauerhaft laufen lassen kann. Und da ich als Entwickler schon ein bissl betriebsblind bin was das GUI angeht, und leider nicht die Zeit hab alles selber zu testen, such ich Betatester. der offizielle Start des Betatests wird irgendwann kommende Woche sein. Wer kann Betatester werden? Einfache Antwort: Jeder (der das lesen kann). Die Exchange ist schon voll funktionsfähig (sollte es zumindest sein ;) und die Betatester haben die exklusive Chance sich bereits einen Kapitalbuffer zu erstellen und zu üben, bevor die "Masse" darauf losgelassen wird. Was muss ein Betatester tun? Müssen eigentlich nix. Ihr bekommt einen Exchange Account und könnt ganz normal traden. Meine einzige Bitte ist, das jedes unerwartete Verhalten an mich gemeldet wird. Also nit zögern und mir eine PM schicken oder per Kommentar "anmelden" ;) Wer Wünsche bzgl. Username oder Passwort hat gleich dazusagen, sonst übernehm ich den TomNext Username. no worries mythos
  13. Jein, wenn du davon begeistert warst, dann haut dich die neue App hoffentlich vom Hocker ;) Bau grad an einer neuen Version. Schneller, besser, cooler und mit mehr Symbolen. Im Blog gibts Details und demnächst kommt der Betatest ;)
  14. (Dabei ist die App noch gar nicht public zugänglich) Stimmt, letztendlich bleibt die Frage wie es die Börsensoftware wirklich implementiert. Ich freu mich natürlich das Thema zu vertiefen, muss nur gleich sagen: ich hab keine Ahnung wie es in Realität abläuft (hab leider noch nie den Source von der EUREX Clearing gesehen ;). An dieser Stelle nochmal ein herzliches Danke. War mir ein Volksfest. Sobald ich wieder freie Zeit hab, werd ich meine Exchange noch um T&S erweitern ;) lg mythos
  15. Ah ok, klar. Aber die Annahme war ja das es sonst keine Orders im Orderbuch gibt, also auch keine Markets. Und das nur die angegebenen neu dazukommen. Das ist dann aber Tickbasis, und das bedeutet das einfach jeder Eintrag im T&S doppelt stehen würde. Heißt in Summe ich muss mir wieder selber überlegen wie ich es bei meiner Börse konkret mach... Auf jeden Fall danke für Einblicke wies bei deinem Broker angezeigt wird. Aus meiner Erfahrung muss ich dir da widersprechen. Wenn du pollst muss jeder Client regelmäßig Abfragen senden, egal ob was passiert oder nicht. Machst du das vollautomatisiert und in kleinen Zeitabschnitten kriegst du massig Traffic. Da wäre ein Push vom Server wenn was passiert deutlich effektiver (zumindest aus meiner Sicht). Also der Teil ist nicht so schwer, den hab ich sogar selber zusammengebracht (hab ja meine eigene Börse gebaut). Es ist ja auch nicht so das die Börsensoftware einen Block von neuen Orders auf einmal kriegt, sondern die Orders kommen ja der Reihe nach daher. Und dann ist es nicht schwer die beste Order zu finden: Zuerst die Markets geordnet nach Zeit/Priorität, dann die Limits geordnet nach Preis und Zeit/Priorität. Nur sicherheitshalber: du meinst hier die Limit Orders oder? Die dürfen ja nicht nur zu diesem Preis ausgeführt werden, sondern "zu diesem oder besser" oder? Nochmal danke für die vielen Antworten, hab viel gelernt ;)
  16. ? Nö ;) Ok, es war ein wenig fiktiv weil man normal vermutlich nicht die Situation hat, das nur eine Limit im Orderbuch steht. Es war natürlich so gemeint das die LimitBuy vor 12:00 im Orderbuch (also auch im DOM) steht und sonst nichts, und die Limit vorher nicht ausgeführt werden konnte, deswegen noch im Orderbuch steht. Und dann geben andere Trader zu den angegebenen Zeiten MarketSells ein. Ich versteh nicht ganz was du meinst mit "Market-Orders in umliegenden Preisregionen" oder das MarketOrders im Tape stehen. Deine Ausführung hat mir aber insofern geholfen, das scheinbar doch mehr als 1 Eintrag pro Ausführung ins T&S kommt, jedoch nicht fix wieviele. Und die Ausführungen bzgl. einer Order die innerhalb einer Sekunde (und vermutlich auch zum gleichen Preis) passieren werden zusammengefasst. Für mich stellt sich nur immer noch die Frage warum Sekundenweise zusammengefasst wird und nicht zB im 100ms Takt etc. Erscheint mir etwas willkürlich. Bzgl. Ausführung: Wenn man nach der Preis-Zeit Priorität geht gibt es für jede neue Order die in den Markt kommt max 1 bestes Gegenangebot (das am längsten zum besten Preis im Orderbuch ist), sobald die abgearbeitet ist gibts eine nächste beste Order. Oder irr ich mich? bzgl. MarketOrders im DOM: Ich versteh ja das MarketOrders (sofern sie nicht fill-or-kill sind) im Orderbuch bleiben wenn sie nicht ausgeführt werden, aber inwiefern siehst du sie im DOM? Da müsste es dann einen eigenen Eintrag im DOM geben wo einfach nur das Volumen der nichtausgeführten Markets steht oder? Weil einer Market kannst du normal keinen Preis zuordnen oder? wiedermal danke für Antwort mythos
  17. In Ordnung, dann hak ich gleich nochmal nach;) Hmm, wenn es immer 2 Einträge (pro Ausführung) gibt, dann machts mMn nicht viel Sinn und es würde ein Eintrag reichen. (weil dann steht einfach jeder Eintrag doppelt da). Es bekommt ja auch bei einer Eintragung jeder seine Ausführung quittiert, halt in der Stückelung wie sie wirklich ausgeführt wurde. zum besseren Verständniss (und damit wir nicht theoretisch aneinander vorbeireden) konkrete Situation: Es steht eine LimitBuy 100@1000 im Orderbuch (und der Einfachheithalber sonst nix ;). Jetzt kommen folgende MarketSells daher: 12:00:01 MarketSell 5 12:00:02 MarketSell 10 12:00:05 MarketSell 5 12:00:05 MarketSell 20 12:15:00 MarketSell 50 13:00:00 MarketSell 10 also sollten in Summe 100 sells sein und damit ist die LimitBuy um 13:00 vollständig ausgeführt. Wie sieht hier das T&S aus? Ich hätte vermutet so: 12:00:01 1000 5 12:00:02 1000 10 12:00:05 1000 5 12:00:05 1000 20 12:15:00 1000 50 13:00:00 1000 10 also immer wenn Kontrakte über den "Ladentisch" gehen kommt ins T&S wann wieviele zu welchem Preis gehandelt wurden. Wenn jeder seine Quittung kriegt wenn er ausgeführt ist, müsste eigentlich nur noch dazukommen 13:00:00 1000 100 weil hier die 100 LimitBuy vollständig ausgeführt wurden. Aber das würde dann den Anschein erwecken das um 13:00:00 100 Kontrakte gehandelt wurden, was aber nicht der Fall ist. Sprich ich hätte vermutet das die Summe der Volumespalte im T&S genau dem Gesamtvolumen des Tages entspricht. lg mythos
  18. Hi there, es gibt sie doch! Egal was man euch in der Schule erzählt hat, man kann in Java Speicherlöcher erzeugen! GC hin oder her. Im konkreten Fall durch Verwendung des JConnectors für MySQL. Wie? ganz einfach: hol dir eine Connection, lass ein stmt erzeugen (für die übereifrigen auch ein rs) und verwirf die referenz drauf ohne es zu schließen. Vor allem ein gemeiner Fehler wenn man an sich jeden Datenbankzugriff in einer schönen Methode kapselt und bei diesen Methoden der Body immer mit einem try-catch ummantelt ist, in dessen finally result, statement und connection geschlossen werden. Weil wenn man dann in der Entwicklung mal eine Abfrage hat, die aus mehr als einer Abfrage besteht (zB für die Accountinfo die Userinfo aus der einen Tabelle und die Positioninfo aus der anderen) und sich denkt das es eigentlich Sinn macht das in einer Methdoe zusammen zu lassen (weils ja eigentlich von außen eine Abfrage is), dann darf man halt auch nicht vergessen zwischendrin das result und statement zu schließen bevor man es neu zuweist... weil das merkt weder der Compiler noch gibt es unerwartetes Verhalten. Auch im Profiler fällts nicht direkt auf wenn man nicht weiss wonach man sucht (es werden soviele andere Objekte erzeugt etc...) Nur wenn man das Ding ein paar Stunden laufen lässt und regelmäßig diese Methode aufgerufen wird (so alle paar Sekunden) bläst sich schön gemütlich der RAM auf... Wenn das ganze dann auch noch in einer Server Applikation steckt die sowieso schon soviele Punkte enthält die man noch nit 100% versteht, macht die Fehlersuche noch mehr Spass ;) So, genug ausgeschimpft. Ne doch nicht: für alle die sich auch mal so ein Client/Server ding bauen wollen: Es gibt deutlich unterschiedliches Verhalten zwischen lokal und übers Netz. So krieg ich am VPS am Ende immer ein EndOfStream (wie erwartet), lokal hab ichs nie gekriegt (nur ein Timeout im versuch Daten zu lesen...). Zusammenfassend: Der Alphatest am Server läuft. Mal sehen wie langs bis zum Betatest dauert. Ich lern täglich Unmengen über Serververhalten dazu und weiß inzwischen warum solche Projekte normal keiner allein macht... Aber mei, Hauptsache Spass an der Freude ;) no worries mythos
  19. Thx für ein weiteres hochinformatives Video. Muss leider trotzdem noch ein paar Fragen stellen (Für den normalen Trader vermutlich langweilig, aber wenn man sich eine eigene Börse schreiben will kommt man auf neue Fragen ;). Welche Auflösung hast du zeitlich? Detailierter: Gibt es teils mehr als 1 Eintrag im T&S in der kleinsten Zeiteinheit? (Ich versuch herauszufinden ob "gleichzeitige" Ausführungen zum gleichen Preis zusammengefasst werden oder nicht) Bist du dir sicher das es pro Ausführung bis zu 2 Einträge ins T&S gibt? Ich frag einerseits weils mir sehr inkonsistent vorkommt: Wenn du viele kleine gegeneinander ausführst, kommen viele Einträge ins T&S, wenn ein großer dagegen kommt deutlich weniger (bei gleich vielen Ticks). Zusätzlich ist die Frage welche Ausführungen bei der großen Order zusammengefasst werden. Wenn mans wieder mit dem klassischen Einzelhandel vergleicht und deinem Bsp mit den Quittungen: Wenn einer 200 verkauft und 100 wollen 1 kaufen. Möglichkeit 1 ist, das der Große die Quittung erst kriegt wenn alle verkauft sind, dann hat aber die Ausführungszeit eigentlich keinen Wert mehr. Oder er kriegt auf der Quitting aufgeschlüsselt wann die einzelnen verkauft wurden was 200 Einzelquittungen gleichkommt. Sobald die Einzelverkäufe zusammengefasst werden ist die Frage "Wie?". Ich frag auch weil ich manche Erklärungen gefunden hab, lt. denen es pro Ausführung immer nur 1 Eintrag ins T&S gibt (Nach dem Motto "um X wurden y Kontrakte ausgeführt" und die "Richtung" entschieden wird je nachdem obs ein Uptick, Downtick oder Sidetick war. Freu mich natürlich wenn du meine Fragen beantworten willst, kann aber auch verstehen wenn ich langsam lästig werde ;) auf jeden Fall großes Danke für deine bisherigen Mühen Mythos
  20. Mythos kommentierte Mythos's Blogbeitrag in Exchange - Developement
    genau, in windows ist ein "Zeilenumbruch" zwei Zeichen lang, Cr und Lf. Das Linuxscript versteht das Cr zeichen aber nit sondern schreit dann einfach nur. das will als "Zeilenumbruch" nur das lf...
  21. Ahhhm das erklärt einiges, klingt aber irgendwie komisch. d.h. es gibt nicht pro Ausführung 1 Eintrag im T&S sondern mehrere? Würde aber auch bedeuten das im Fall das eine Große nicht voll gefüllt wird, zb 45 von den 50 ausgeführt werden, dafür je ein 5er ins T&S kommt (Annahme das sie gegen kleine 5er gefüllt wurde) und dann dauerts (weil viele kleinen zu besserem Preis dazwischen kommen zB) beliebig lang bevor die letzten 5 ausgeführt werden und die 50 ins T&S kommt? Aber dann passt ja die Time überhaupt nicht dazu...?! Sprich die 50 wurden eigentlich zB vor 5 Minuten zu 90% gefüllt, aber du siehst sie erst jetzt? Das wär doch blöd oder? Und was passiert wenn meine Order halb gefüllt ist und ich sie dann lösche? Wird sie dann gar nicht im T&S angezeigt? Sorry wenn ich blöd frag... Muss nur die Chance nutzen wenn schon ein Experte am Rohr is ;)
  22. Erstmal Danke für die ausführliche Antwort, Unterschied zwischen DOM und T&S is schon klar und du hast mir meine Frage implizit beantwortet. Du scheinst nur ein bissl was bei mir überlesen zu haben deswegen zur Klarstellung für die Anderen: (Korrigier mich wenn ich mich täusche) Die Zahlen wurden bewusst gewählt das Ausführung möglich. Wenn 10 LimitBuys 5@1000 stehen steht 50@1000 LimitBUY im DOM. Wenn jetzt eine LimitSELL 50@1000 kommt, kann die doch sofort ausgeführt werden und (angenommen es gibt sonst keine Orders in der Nähe) kommt dann 5,5,5,5,5,5,5,5,5,5 ins T&S richtig? Jein, nur das die Orders die da waren LimitSELLS waren, damit wird die LimitBuy wieder ausgeführt und es kommt wieder die 5er Reihe ins T&S nur diesmal mit aufsteigenden Preisen oder? Perfekt dann hab ichs richtig verstanden ;) Bedeutet aber auch das du manche große Orders "versäumst" wenn sie "blöderweise" gegen viele kleine ausgeführt werden. Sprich der Filter den du hast zeigt dir an wo große gegen große ausgeführt wurden? (Keine Kritik oder sonstwas, nur für mich eine Verständnissfrage) nochmal danke für die Antworten, bin mir sicherviele SilentReader sind dir riesig dankbar!
  23. thx für die Info, aber ganz check ichs immer noch nicht. (muss auch den neuen zeigen das es bei uns ok ist öfter nachzufrage ;) Die Annahme ist schon klar. Mir gehts mehr darum wie die Zahlen zustande kommen. Konkretes Beispiel: Im Orderbuch stehen bei Preis 1000 10 LimitSells von unterschiedlichen Tradern, jeweils Volume 5. Also in Summe stehen bei 1000 50 Kontrakte (würde also so im DOM angezeigt werden oder?). Wenn jetzt ein großer kommt und LimitBuy 50@1000 stellt, was kommt ins T&S? Eigentlich gibt es ja 10 Ausführungen zu je 5 Kontrakten. Oder werden hier Ausführungen die "gleichzeitig" (also innerhalb von zB einer Sek) und zum gleichen Preis passieren zusammengefasst? Beispiel 2: Wenn die LimitSells nicht alle bei 1000 wären sondern 5@1000, 5@1001 etc. bis 1009 rauf (also wieder 50 Stück) und es kommt das LimitBuy 50@1010. Dann müssten im T&S eigentlich 10 Einträge zu je 5 kommen bei den entsprechenden Preisen oder? Sprich hier siehst dann nicht das es ne große Order war. Ich frag so genau nach weils mich einerseits interessiert, und andererseits ichs womöglich bei der Exchange einbaue und da wär gut wissen wies an der realen Börse läuft... thx mythos
  24. Mythos antwortete auf whipsaw's Thema in EPA-Labs
    Also ich sags gleich, mir is wurscht ;) Ich kann auch ohne Credits leben.

Account

Navigation

Suche

Suche

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.