Trades mit Kauf & Verkauf am gleichen Tag fehlerhaft wegen "Kein Bestand" seit Version 0.56.4

Hallo liebe Community,

seit dem Update werden bei mir Trades, wo Kauf und Verkauf auf den selben Tag fallen nicht mehr richtig ausgewertet. Die Fehlerbeschreibung sagt “Kein Bestand für die Verkaufsbuchung…”.

Dies war bei den vorherigen Versionen kein Problem.

Einzige Ausnahme ist mein letzter Trade. Der fand heute statt. Da habe ich ebenfalls heute gekauft und verkauft. Dieser wird richtig dargestellt.

Ist das schon jemand aufgefallen?

Gruß,
ATK

Hast Du bei Kauf/Verkauf auch Uhrzeiten angegeben?

Nein, bisher nur das Datum. Ich habe einen Datensatz als csv den ich einlese. Da sind keine Uhrzeiten drin, müsste ich manuell machen. Mit dem Datensatz gab es bisher keine Probleme, hat so funktioniert.

Die Uhrzeit würde das Problem sofort lösen, denke ich. Da hat sich in v0.56.4 wohl was an der Logik geändert. Wollte darauf hinweisen und fragen, ob das gewollt ist…

Gruß!

Ja, an der Sortierung der Buchungen innerhalb eines Tages hat sich etwas geändert, das war mir auch aufgefallen.

Eigentlich sollte die Sortierung der Buchungen am gleichen Tag (wenn man keine Uhrzeit setzt) jetzt in der Reihenfolge erfolgen, wie sie angelegt werden. In welcher Reihenfolge stehen denn die Buchungen in der CSV?

1 Like

In der csv zuerst der Kauf und dann der Verkauf eine Zeile darunter. In PP sind diese bei “alle Buchungen” anders rum drin. Da erscheint der Verkauf vor dem Kauf.

Ja, das ist natürlich doof. Ich fand die alte Sortierung für Buchungen am gleichen Tag ohne Uhrzeit extrem unverständlich und die neue Reihenfolge nach Änderungsdatum klang nach einem Fortschritt. Aber mit solchen Konsequenzen hatte ich jetzt nicht gerechnet.

Mal sehn was wir da jetzt machen…

Ich bin kein Entwickler. Aber intuitiv wäre es evtl so was:
Ich vermute, dass es eine Art fortlaufende ID der Buchungen gibt. Vermutlich nach der Reihenfolge, wie sie der User einpflegt…

Wie wäre eine Sortierung nach DateTime, ID.
Das heißt, es wird erst nach DateTime sortiert und “innerhalb” eines bestimmten DateTimes nach ID…

Das würde zumindest mein Problem lösen… :slight_smile:

Gruß,
ATK

Ja, schön wäre es. Es gibt aber aktuell weder eine fortlaufende Nummer noch einen Anlege-Zeitpunkt für die Transaktionen. Es gibt nur das Datum (ggf. ohne Uhrzeit wie bei dir) und ein Änderungsdatum.

Die alte Sortierung hat wohl dafür gesorgt, dass Käufe immer vor Verkäufen in der Liste waren unabhängig wie der User sie eingegeben hat.

Nachtrag:
Da das eigentliche Problem, das ich durch meinen Sortier-Fix lösen wollte, zukünftig eh anders gelöst wird (man kann optional automatisch die Uhrzeit setzen), bin ich versucht das hier zurück zu bauen. Mal sehen was @AndreasB meint.

2 Likes

wenn ich so darüber nachdenke:
Falls ihr für einen Trade alle Käufe VOR einem Verkauf wählt, evtl. reicht schon zu sagen alle Käufe VOR / GLEICH Verkauf.

Wäre das was?

Grüße,
ATK

Mir ist die Reihenfolge im Prinzip egal. Aus gegebenem Anlaß mußte ich allerdings gerade eine Buchung ändern; daß sich dadurch plötzlich und nachträglich die Reihenfolge ändert, finde ich störend.

Naja, ein Creation-Date wäre natürlich schöner. Das gibt es aber nicht.
Ich leg mal ein GitHub-Ticket für den Rückbau an:

Mensch, da hat man sich nach dem letzten Update so gefreut, dass man endlich verstanden hat, wie man zeitgleiche Transaktionen in der gewünschten Reihenfolge auflisten kann, macht sich fast zwei Stunden die Mühe die Transaktionen “zu bearbeiten” und die richtige Reihenfolge herzustellen, nur um beim nächsten Update wieder ein komplettes durcheinander vorzufinden. :frowning_face:
Und noch schlimmer, jetzt wo anscheinend die letzte Änderung wieder rückgängig gemacht wurde, habe ich keinen Plan ,wie ich meine Transaktionen wieder so ordnen könnte, wie ich es mir wünsche.

Also hier mal meine Frage, wie aktuell die Sortierung funktioniert, wenn man die Umsätze chronologisch ordnen lässt und Transaktionen hat, die zur selben Uhrzeit stattfinden???

Ich habe nämlich sehr viele solche Transaktionen, da ich meine Kryptowährungen auch in Portfolio Performance eintrage und jeder Tausch von Kryptowährung A in Kryptowährung B dort zu drei Einträgen führt: Verkauf von A, Kauf von B, Verkauf von A oder B, je nach Börse, zur Abbildung der Gebühr. Bei diesen zeitgleichen Dreierblocks möchte ich, dass der Gebührenverkauf immer am Ende steht, der Verkauf immer am Anfang und der Kauf in der Mitte.
Kann ich das mit dem aktuellen Version irgendwie beeinflussen oder geht das nicht?

Tut mir leid für den Ärger. Die richtige Sortierung zu finden, die alle Anforderungen erfüllt ist gar nicht so einfach. So wie ich das sehe, wird die jetzige Variante bestand haben. Ich kann dir nur den Rat geben, in den Preferences das automatische Setzen der Uhrzeit zu aktivieren und ggf noch manuell die Uhrzeit zu verändert, um dann zu der gewünschten Sortierung zu kommen.

Alle anderen zwischenzeitlich diskutierten Arten der Sortierung (Anlege-Datum, Änderungsdatum, etc) haben noch mehr Nachteile oder sind unverständlicher.

Danke für deinen Rat, aber ich schätze, dass mich das nicht weiter bringen wird, da ich bereits mit genauen Uhrzeiten arbeite.
Im Gegensatz zum Themenersteller bezieht sich mein Wunsch einer speziellen Sortierung nämlich auf Einträge die am selben Tag und zur selben Uhrzeit sein sollen (besagte Dreierblöcke für Kryptowährungen).
Demnach habe ich wohl scheinbar keine Möglichkeit die gewollte Reihenfolge herzustellen und werde wohl oder übel mit der Reihenfolge leben müssen, die mir das Programm ausspuckt.

Ich versteh zwar, dass es extrem problematisch, vermutlich sogar unmöglich sein dürfte eine Standardsortierung zu finden, die alle Anforderungen erfüllt, aber ich sehe nicht, warum es schwierig ist einen Ansatz zu finden, bei dem der User, wenn gewollt, nach Belieben von der Standardsortierung abweichen kann.
Gibt es die Diskussion zu dieser Sortierungsfrage hier irgendwo im Forum?

Das kannst du ja, indem du eine Uhrzeit einträgst. Damit hast du an jedem Tag 1440 mögliche Positionen.

Bei mehr als 1440 Buchungen am Tag wird es dann in der Tat schwierig.

Ich arbeite ja bereits mit Uhrzeiten, das ist ja das Problem. Hier mal ein Beispiel fürs bessere Verständnis:
Ich tausche am 01.01.2022 um 15:00 Uhr x Einheiten von Kryptowährung A, welche zu diesem Zeitpunkt einen Wert von p haben, gegen y Einheiten von Kryptowährung B und dabei entstehen z Einheiten von Kryptowährung A als Gebühren, welche zu diesem Zeitpunkt einen Wert von g haben.
Um diesen Tausch nun korrekt, vollständig und sinnig abzubilden, brauche ich drei Einträge:

Datum, Typ, Wertpapier, Stück, Betrag, Gebühr
01.01.2022 15:00, Verkauf, Kryptowährung A, x, p, 0
01.01.2022 15:00, Kauf, Kryptowährung B, y, p, 0
01.01.2022 15:00, Verkauf, Kryptowährung A, z, g, g

Gut jetzt könnte man sagen, setz doch den erstem Eintrag einfach auf 14:59 Uhr und den dritten Eintrag auf 15:01 Uhr, dann hast du die richtige Reihenfolge, was für diese drei Einträge isoliert betrachtet dann auch stimmt.
Allerdings habe ich nicht selten Szenarien wie Tausch von A gegen B um 15:00 Uhr, Tausch von A gegen C um 15:00 Uhr, Tausch von A gegen D um 15:01 Uhr, …

Wieso hat mir keiner verraten, dass das Feature, um Transaktionen, die am gleichen Tag und zur gleichen Uhrzeit stattgefunden haben, bereits als hidden Feature existiert?!
:rofl:

Hab zufällig rausgefunden, dass man in Portfolioperformance nicht nur die Stunden und Minuten bei der Uhrzeit eintragen kann, sondern auch die Sekunden. Gut, beim Anlegen einer Transaktion kann man zwar zunächst nur die Minuten eintragen, aber wenn man dann in der Liste der Umsätze die Transaktion sucht, auf das entsprechende Datum einen Doppelklick macht und dann die Sekunden an die Uhrzeit dran hängt, dann klappt das tatsächlich. In der Anzeige in Portfolio Performance werden weiterhin nur die Minuten angezeigt, aber intern werde dann in der XML die Sekunden mitgespeichert. So konnte ich meinen Einträgen heimlich die Uhrzeiten 15:00:01, 15:00:02 und 15:00:03 verpassen und damit schließlich die Ordnung wie gewünscht herstellen, weil Portfolio Performance bei der Sortierung nach Datum auch die nicht angezeigten Sekunden berücksichtigt.

Vielleicht wäre die optimale Lösung für das Sortierproblem, wenn man in dem Erstelldialog für eine Transaktion ein neues Feld namens Ordnungspriorität oder so hinzufügt, wo der Nutzer eine beliebige Zahl eintragen kann. Diese wird dann intern als Millisekunde zur Uhrzeit hinzugefügt. Auf diese Weise könnte auch die Sortierung von Einträgen, die ohne Uhrzeit am selben Tag sein sollen, so wie @anwert es ja gern gewollt hätte, ebenfalls realisiert werden.