Dienstag, 16. April 2024, 07:57 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.

Klaus Männlich

Fortgeschrittener

Registrierungsdatum: 2. September 2002

Beiträge: 143

Wohnort: Südfrankreich

1

Freitag, 12. November 2004, 14:48

kann man einfacher 0 und 1 in eine Datenreihe schreiben ?

Hallo zusammen,

um abwechselnd 0 und 1 in der Datenreihe "Verteiler" auszugeben, habe ich jetzt eine Weile rumprobiert, bin aber mit dem Ergebnis nicht so recht glücklich (obwohl es funktioniert)

Deshalb meine Frage hier an die Programmierprofis: geht es auch eleganter, schneller, kürzer?

**********************
calc Zähler: CUM(1);
calc halberZählerGerundet: Round(zähler/2);
calc ZählerGerade: halberZählerGerundet = Ref(Zähler/2,-1);
calc Verteiler: (ZählerGerade = 1) or
(ZählerGerade = Ref(ZählerGerade,-1) and Ref(ZählerGerade, -2) = 1);

Verteiler
***********************

Grüße
Klaus

P.S. Habe eben festgestellt, daß die Datenreihe bei automatischer Aktualisierung falsch ausgegeben wird. Der letzte Wert ist immer 1, die Werte davor seit Einschalten der Aktualisierung sind 0, wenn man dann auf Chart-Anzeige aktualisieren klickt, ist die Datenreihe wieder korrekt dargestellt. Die Berechnungen aufgrund des "Verteilers" stimmen dann natürlich auch nicht ? Woran kann das liegen ???

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Klaus« (12. November 2004, 15:05)


Hans-Jürgen Männlich

Administrator

Registrierungsdatum: 10. Juli 2002

Beiträge: 1 712

2

Freitag, 12. November 2004, 17:53

Hallo Klaus,

dies müsste das gleiche Ergebnis bringen:

##############################
calc Zähler: CUM(1);
calc Verteiler: FRAC(Zähler/2)*2;

Verteiler

##############################
Viele Grüße,
Hans-Jürgen

Fritz

unregistriert

3

Freitag, 12. November 2004, 17:56

Hallo Klaus,

wie gefällt Dir dies:

Schalter(0, Frac(Cum(1)/2)>0, 1, Frac(Cum(1)/2)=0, 0)

Viele Grüße

Fritz

Hans-Jürgen Männlich

Administrator

Registrierungsdatum: 10. Juli 2002

Beiträge: 1 712

4

Freitag, 12. November 2004, 17:57

Hallo Klaus, hallo Fritz,

ich kann auch noch dies anbieten:

##############################
calc Zähler: CUM(1);
calc Verteiler: FRAC(Zähler/2) > 0;

Verteiler

##############################
Viele Grüße,
Hans-Jürgen

Klaus Männlich

Fortgeschrittener

Registrierungsdatum: 2. September 2002

Beiträge: 143

Wohnort: Südfrankreich

5

Freitag, 12. November 2004, 21:26

Danke

ich werde das mal am Montag ausprobieren und dann berichten.

Grüße
Klaus

Klaus Männlich

Fortgeschrittener

Registrierungsdatum: 2. September 2002

Beiträge: 143

Wohnort: Südfrankreich

6

Montag, 15. November 2004, 10:58

funktioniert, aber mit Cum() stimmt was nicht !!!!

wenn man
====================================
calc Zähler: CUM(1);
calc Verteiler: FRAC(Zähler/2) > 0;

Verteiler
====================================
als Formel in den Chart einfügt, dann fällt einem sofort auf, daß die Formel eigentlich Ref(Verteiler, -1) ausgibt. Löscht man die Formel bis auf
========
CUM(1)
========
sieht man, daß da CUM(1) verzögert ausgegeben wird und der Übeltäter ist. Das scheint noch andere Folgen zu haben:


fügt man die Formel in den Chart eines bestehenden Projektes mit einem nicht aktiven HS ein und schaltet die Aktualisierung ein, kann man folgendes Phänomen beobachten,
Die Formel gibt dann ab dem Einschalten (der Aktualisierung) 0 zurück (der letzte Wert ist immer korrekt)

Dupliziert man das Projekt, und löscht nacheinander alles bis auf den Titel, bleibt der Fehler bis zur Löschung des HS vorhanden.

Die unten abgebildeten Projekte sind also bis auf das HS(inaktiv)identisch.

Gibt es dafür eine Erklärung ?????

Gelöst habe ich diese fehlerhafte Ausgabe mit der Verwendung von CumSince statt Cum(). (wobei ich natürlich Cum wg. der Schnelligkeit vorziehen würde)

"Frac" ist m.M. die eleganteste Lösung (sorry Fritz, aber "Schalter" konnte ich noch nie leiden)

Grüße
Klaus
»Klaus« hat folgendes Bild angehängt:
  • temp.png

Investox

Administrator

Registrierungsdatum: 31. August 2002

Beiträge: 5 680

7

Montag, 15. November 2004, 13:26

RE: funktioniert, aber mit Cum() stimmt was nicht !!!!

Hallo,

>>Gibt es dafür eine Erklärung ?????

Ja: Sie haben die Perioden zur Aktualisierung begrenzt. Wenn Sie hier z.B. 50 angeben. Wird Cum() immer beginnend vor 50 Perioden berechnet (und das führt in Ihrer Berechnung zu einem konstanten Wert).
Wenn die Perioden begrenzt bleiben sollen ist der Ansatz mit CumSince() wohl sinnvoll (und aufgrund der Periodenbegrenzung auch nicht wesentlich langsamer).

Viele Grüße
Andreas Knöpfel