Neue Module 95_Shares.pm und 95_ShareMaster.pm

Begonnen von Prof. Dr. Peter Henning, 08 April 2022, 15:08:46

Vorheriges Thema - Nächstes Thema

Prof. Dr. Peter Henning

Nun, dann haben wir die Antwort: Irgendetwas stimmt nicht mit den Einstellungen des Browsers, das hat also mit den Modulen Share und ShareMaster gar nichts zu tun.

LG

pah

curt

Das ist ja toll! Danke für die beiden Module @pah!

Einige Kleinigkeiten habe ich - und einen Vorschlag (ganz unten, mit der Bitte um freundliche Prüfung):

Fast alle Positionen beider Depots lauten auf EUR. In beiden Depots gibt es die Position Berkshire Hathaway B (BRK-B), ich kaufte in EUR, Yahoo liefert aber in USD. Die Erläuterung zu Währungen habe ich nicht verstanden: Nur eine Währung pro Depot (Share), ja?

Beim Modul 95_ShareMaster.pm stimmt bei mir im Standard-Layout (f18) das Layout der Tabelle nicht. Komisches Sonderzeichen, Wert und Anzahl links- statt rechtsbündig, Trend und Kategorie wird nicht angezeigt. [FF mint-001 - 1.0 ( 105.0(64bit)] Siehe Anhang.

Mein Wunsch:
Wäre es bitte möglich, das 52-Wochen-Hoch jeder Position als Reading zu bekommen?
RPI 4 - Jeelink HomeMatic Z-Wave

Prof. Dr. Peter Henning

Werde ich mir ansehen, dauert aber ein paar Tage.

LG

pah

curt

#48
Zitat von: Prof. Dr. Peter Henning am 25 September 2022, 17:37:52
Werde ich mir ansehen, dauert aber ein paar Tage.

Überhaupt kein Problem, ich warte geduldig.

Zwischenzeitlich halte ich einige Infos fest; da hakt noch mehr.
* uname -a # uname -a
Linux fhem 5.10.103-v7l+ #1529 SMP Tue Mar 8 12:24:00 GMT 2022 armv7l GNU/Linux
* /etc/issue -> Raspbian GNU/Linux 10
* Perl 5.28.1
* via CPAN Finance::Quote VERSION: 1.52

list Kurse_test

Internals:
   FUUID      632fbac6-f33f-769b-3491-e33436c0a9cb02ea
   NAME       Kurse_test
   NR         1635
   STATE      22.18 EUR ( 14.80 % = 2.86 EUR)  2022-09-29 23:20:30
   TYPE       Shares
   eventCount 376
   DATA:
     categories:
       Aktie:
         depot_value 22.18
         depot_value_entry 19.32
         depot_value_prev 21.92
   OLDREADINGS:
   READINGS:
     2022-09-29 23:20:30   BC1P.BE_category Aktie
     2022-09-29 23:20:30   BC1P.BE_change  14.80
     2022-09-29 23:24:33   BC1P.BE_change_day 0
     2022-09-29 23:20:30   BC1P.BE_count   1
     2022-09-29 23:20:30   BC1P.BE_diff    2.86
     2022-09-29 23:20:30   BC1P.BE_last    22.18
     2022-09-29 23:20:30   BC1P.BE_name    BARCO N.V.
     2022-09-29 23:20:30   BC1P.BE_value   22.18
     2022-09-29 23:20:30   depot_change    14.80
     2022-09-29 23:20:30   depot_change_day 1.19
     2022-09-29 23:20:30   depot_diff      2.86
     2022-09-29 23:20:30   depot_diff_day  0.26
     2022-09-29 23:20:30   depot_value     22.18
     2022-09-29 23:20:30   depot_value_entry 19.32
     2022-09-29 23:20:30   exchangerate    1 EUR/EUR
     2022-09-29 23:20:30   state           22.18 EUR ( 14.80 % = 2.86 EUR)  2022-09-29 23:20:30
   helper:
Attributes:
   defaultSource yahoo_json
   depotCurrency EUR:€
   pollInterval 1800
   queryTimeout 120
   room       44 Börse
   shareCurrency EUR:€
   stocks     BC1P.BE:1:19.32:Aktie


list Kurse_alle_test

Internals:
   CFGFN     
   DEF        Kurse_test Kurse_test2
   DepotType  master
   FUUID      6334fab4-f33f-769b-e1a9-8e21f27bcb548698
   NAME       Kurse_alle_test
   NR         14790
   STATE      Initialized
   TYPE       ShareMaster
   eventCount 1192
   DATA:
     categories:
       automotive:
       bio:
       chemistry:
       commodity:
       energy:
       finance:
       h2:
       health:
       pharma:
       realestate:
       sales:
       software:
       tech:
   READINGS:
     2022-09-29 23:44:17   depot_cat_summary
     2022-09-29 23:44:17   depot_change    14.80
     2022-09-29 23:44:17   depot_change_day 1.19
     2022-09-29 23:44:17   depot_diff      2.86
     2022-09-29 23:44:17   depot_diff_day  0.26
     2022-09-29 23:44:17   depot_summary   22.18 19.32 14.80
     2022-09-29 23:44:17   depot_value     22.18
     2022-09-29 23:44:17   depot_value_entry 19.32
     2022-09-29 04:06:07   state           Initialized
   depots:
     Kurse_test
     Kurse_test2
   helper:
Attributes:
   categories Automotive,Bio,Chemistry,Commodity,Energy,Finance,H2,Health,Pharma,RealEstate,Sales,Software,Tech
   depotCurrency EUR
   pollInterval 60
   room       44 Börse


BC1P.BE_change_day (bei allen anderen Papieren auch) wird bei yahoo_json nicht gefüllt und auch nicht angezeigt (wurde schon bei Stockquotes erwähnt; ggf abhängig von Bibilotheksversion?). Andere Quellen (onvista, comdirect, europe) liefern bei Tests bei mir nichts zurück.
RPI 4 - Jeelink HomeMatic Z-Wave

curt

In der Zwischenzeit möchte ich erläutern, was mir fehlt (was ich mir wünsche) und das gern begründen. Das würde auch in den von Dir iniziierten Börsenthread passen, aber hier ist es wohl besser.

* Falls *_change_day (bezogen auf das einzelne Papier) fehlt, wäre es schön, wenn das Modul das selbst ermittelt. Dafür müsste das Modul jeweils um 2200 Uhr (Börsenschluss Deutschland) ein Reading der Art *_kurs_lastday füllen. Und dann natürlich die prozentuale Tages-Differenz des Papiers (das machst Du wohl sowieso, falls der Wert via Finanzschnittstelle kommt).

* Das 52-Wochen-Hoch *_52w könnte man auf ähnlichem Weg ermitteln: Man schaut täglich, ob der Tagesschlusskurs höher als *_52w ist, in diesem Fall wird *_52w neu geschrieben. (Zusätzlich wäre eine händische Eingabemöglichkeit schön - für den Fall, dass man das Papier gerade neu kaufte).

* Ausgehend von *_52w würde ich mir dann die tägliche prozentuale Abweichung als Reading wünschen.

Hintergrund: Ausgehend von den Thesen von Andreas Beck kann sich bei ETF bei persönlich definierten Schwellenwerten ein Kaufsignal ergeben (Beispielsweise 20% der freien Mittel einsetzen bei -20% vom 52-Wochen-Hoch.)

Eine Integration in Sharemaster ist (für mich) nicht notwendig; ich möchte mir das u.a. auf der FTUI/FTUI3-Oberfläche anzeigen lassen.

@pah Du hast gesagt, dass Du momentan eingespannt bist, völlig klar. Wenn Du dann mal Zeit hast, schaue ich Dich sehr freundlich an, es wäre schön, wenn Du Dir das mal ansiehst. Danke!
RPI 4 - Jeelink HomeMatic Z-Wave

ToKa

Hallo Pah,

ich habe im Log ein paar Warnungen - also eher kosmetisch. Falls Du sowieso mal am Modul etwas machst, kannst Du Dir das bitte mal anschauen.

2022.11.15 08:47:35 1:  PERL WARNING: Use of uninitialized value $estyle in concatenation (.) or string at ./FHEM/95_ShareMaster.pm line 509.
2022.11.15 08:47:35 1:  PERL WARNING: Use of uninitialized value $trend in numeric gt (>) at ./FHEM/95_Shares.pm line 1033.
2022.11.15 08:47:35 1:  PERL WARNING: Use of uninitialized value $trend in numeric eq (==) at ./FHEM/95_Shares.pm line 1033.
2022.11.15 08:47:35 1:  PERL WARNING: Use of uninitialized value $trend in concatenation (.) or string at ./FHEM/95_Shares.pm line 1033.
2022.11.15 08:47:35 1:  PERL WARNING: Use of uninitialized value $trend in numeric gt (>) at ./FHEM/95_Shares.pm line 1034.
2022.11.15 08:47:35 1:  PERL WARNING: Use of uninitialized value $trend in numeric eq (==) at ./FHEM/95_Shares.pm line 1034.
2022.11.15 08:47:35 1:  PERL WARNING: Use of uninitialized value $category in concatenation (.) or string at ./FHEM/95_Shares.pm line 1040.


Viele Grüße
Torsten
RaspberryPi3 mit RaZberry2 und Conbee II
Fibaro: FGWPE/F-101 Switch & FIBARO System FGWPE/F Wall Plug Gen5, FGSD002 Smoke Sensor
EUROtronic: SPIRIT Wall Radiator Thermostat Valve Control
Shelly2.5 Rollladenaktoren
Zipato Bulb 2, Osram und InnrLight

ergerd

Hallo zusammen,

seit dem 19.04.2023 ca. 18:30 Uhr funktionert Shares nicht mehr, ich bekomme in allen Readings nur 0.

Ist da näheres bekannt?

Grüße
ergerd
FHEM auf RasPi 4, CUNO, ZigBee, 1Wire2WLAN, DS2423, C-Control II, Buderus KM200, LaCrosseGateway, PCA301, ConBee II, LuftdatenInfo, OneWireGW, Div. ESPs u. Shellys

ToKa

#52
Du nutzt wahrscheinlich Yahoo finance als Quelle.

Yahoo hat da etwas an der API geändert. Wenn du in Finance::Quote in der yahooJson.pm in der URL von v7 auf v6 umstellst, geht es wieder.

Wie lange ist allerdings die Frage und ggf muss Finance::Quote angepasst werden.
Alternativ kannst Du auch eine andere Quelle verwenden.

VG
Torsten

Edit: v7 geht aktuell wieder
RaspberryPi3 mit RaZberry2 und Conbee II
Fibaro: FGWPE/F-101 Switch & FIBARO System FGWPE/F Wall Plug Gen5, FGSD002 Smoke Sensor
EUROtronic: SPIRIT Wall Radiator Thermostat Valve Control
Shelly2.5 Rollladenaktoren
Zipato Bulb 2, Osram und InnrLight

ergerd

Danke Torsten!

Bei mir läuft es auch wieder.

Grüße
Rainer
FHEM auf RasPi 4, CUNO, ZigBee, 1Wire2WLAN, DS2423, C-Control II, Buderus KM200, LaCrosseGateway, PCA301, ConBee II, LuftdatenInfo, OneWireGW, Div. ESPs u. Shellys

curt

Zitat von: ToKa am 20 April 2023, 18:54:58Du nutzt wahrscheinlich Yahoo finance als Quelle.
Yahoo hat da etwas an der API geändert. Wenn du in Finance::Quote in der yahooJson.pm in der URL von v7 auf v6 umstellst, geht es wieder.

Auch das scheint nicht mehr zu gehen, bei mir ist alles auf Null (bitte keine Scherze...).

Zitat von: ToKa am 20 April 2023, 18:54:58Alternativ kannst Du auch eine andere Quelle verwenden.

Das hatte ich anfangs versucht, ging aber nicht - oder ich war zu doof.
Welcher würde denn funktionieren, sagen wir für ETF, in/ausländische Aktien, deutsche Fonds?

Und ist da das Symbol des Papiers wie bei Yahoo? Oder wie geht das?
RPI 4 - Jeelink HomeMatic Z-Wave

ToKa

#55
Hallo zusammen,

bei mir tritt der Fehler auch wieder auf. Ich habe noch nicht weiter probiert, aber wenn die v6 auch nicht mehr funktioniert, bleibt nur die Hoffnung, dass Yahoo es korrigiert oder die Entwickler von Finance::Quote. Es gibt eine neue Version 1.5402, aber im changelog steht nichts zu Yahoo.

Für andere Tools, die auch die Yahoo API nutzen, gab es beim letzten Mal schon eine angepasste Version.

Die anderen Quellen funktionieren meist mit der ISIN oder WKN. Leider hat keinen der anderen Quellen so ein umfangreiches Portfolio auf Yahoo. Das musst du ausprobieren...

Edit:
Es ist wieder die gleiche Fehlermeldung
{"finance":{"result":null,"error":{"code":"Unauthorized","description":"Invalid Crumb"}}}

Mit der v6 geht es. Also in Finance Quote die "Yahoo" Datei anpassen.

VG
Torsten
RaspberryPi3 mit RaZberry2 und Conbee II
Fibaro: FGWPE/F-101 Switch & FIBARO System FGWPE/F Wall Plug Gen5, FGSD002 Smoke Sensor
EUROtronic: SPIRIT Wall Radiator Thermostat Valve Control
Shelly2.5 Rollladenaktoren
Zipato Bulb 2, Osram und InnrLight

curt

Zitat von: ToKa am 07 Mai 2023, 11:43:52Es ist wieder die gleiche Fehlermeldung
{"finance":{"result":null,"error":{"code":"Unauthorized","description":"Invalid Crumb"}}}

Also will Yahoo, dass ich mich da anmelde. Ich weiß weder wo - noch ob die dafür Geld wollen. Am Anmelden selbst würde es ja nicht scheitern.

Zitat von: ToKa am 07 Mai 2023, 11:43:52Mit der v6 geht es. Also in Finance Quote die "Yahoo" Datei anpassen.

Ähmm, nein. Bei mir nicht. Ich soll doch $YIND_URL_HEAD ändern, ja? (Ich habe da Version 1.47)

Zitat von: ToKa am 07 Mai 2023, 11:43:52Es gibt eine neue Version 1.5402, aber im changelog steht nichts zu Yahoo.

Ich weiß leider nicht, wie ich die installierte Version lösche und diese neue installiere.

Zitat von: ToKa am 07 Mai 2023, 11:43:52Die anderen Quellen funktionieren meist mit der ISIN oder WKN. Leider hat keinen der anderen Quellen so ein umfangreiches Portfolio auf Yahoo. Das musst du ausprobieren...

Schaut mal bitte auf die Primärquellen: https://github.com/finance-quote/finance-quote/tree/master/lib/Finance/Quote
Sehe ich da ganz neu XETRA und Onvista? Also wenn die beiden neuen Quellen gehen sollten, wären alle (bzw. die meisten) Probleme gelöst. Also wenn ich das installieren könnte: Ich bitte im Hilfe, Erklärung, Handlungsanweisung.
RPI 4 - Jeelink HomeMatic Z-Wave

Prof. Dr. Peter Henning

ZitatYahoo hat da etwas an der API geändert. Wenn du in Finance::Quote in der yahooJson.pm in der URL von v7 auf v6 umstellst, geht es wieder.
Hm, es wäre nett, wenn Du uns anderen Nutzern viel Sucharbeit ersparen könntest und etwas mehr Details zu Umstellung sagen könntest. eine yahooJSON.pm gibt es auf keinem meiner Systeme.

LG

pah

curt

Ich antworte mal, hoffentlich richtig. Gemeint ist YahooJSON.pm, bei mir in Version 1.47 unter /usr/share/perl5/Finance/Quote. Dort

my $YIND_URL_HEAD = 'https://query1.finance.yahoo.com/v7/finance/quote?symbols=';
Mit der URL kann man spielen, in dem man das Symbol anhängt.

Mir wäre die neueste Version dieses Perl-Modules lieber, weil da Onvista und Xetra als Quellen dabei sind. Ich weiß leider nicht, wie ich das machen soll.
RPI 4 - Jeelink HomeMatic Z-Wave

Prof. Dr. Peter Henning

#59
Die Datei kann auch an anderer Stelle liegen, kommt darauf an, wie man Finance::Quote installiert hat.

Also erstmal mit find / -name YahooJSON.pm -print suchen. Wenn ich in der URL v7 -> v6 ändere, geht es wieder, Danke für den Hinweis.

Bei Gnucash brauche ich das nicht zu machen: Mit gnc-fq-update wird die neueste Version von Finance::Quote installiert, die bei Yahoo auf v7 zugreift. Mal sehen, ob man das nicht auch bei Stockquotes irgendwie nachziehen kann.

LG

pah

Edit: Na, irgendwas ist noch faul. Die ganzen ausländischen Währungen werden falsch geholt.