Ich habe da ein erhebliches Performance-Problem mit KatSumme(), vielleicht mache ich was falsch oder es gibt eine bessere Lösung?
Was ich machen möchte, ist, in der Direktabfrage auf Titel verschiedener Kataloge eine Berechnung absetzen, welche mir mögliche Kandidaten für mein Trading aufzeigt.
Damit diese Berechnungen nur ausgeführt werden wenn die Grundstimmung positiv ist gehe ich wie folgt vor: handelt es es sich bei den Titeln z.B. um den S&P 500, so nehme ich zwei GDs auf den zugehörigen Index GSPC und schaue mal ob ich überhaupt weitermachen will.
Wenn es sich bei den Titeln aber um eine eigene Zusammenstellung handelt, habe ich keinen Index. Also dachte ich, ich "bastle" mir mit KatSumme einen Indikator der mir sagt, wie die "Grundstimmung" ist. z.B. so:
calc Marktindex:
KatSumme(#Close > GD(close,80,s)#, #USS health all#) /
KatSumme(#1#, #USS health all#) * 100;
// Gesamtmarkt bewerten, muss positiv sein, d.h. mindestens
// 60% aller Werte im Katalog müssen über der GD 80 Linie
// liegen
Marktindex >= 60 AND
... usw.
Nun, leider sind im Beispiel in diesem Katalog #USS health all# 822 Titel drin. Und obwohl mein PC nachgewiesenermassen (mit dem Investox Benchmark) nicht der langsamste ist, habe ich Performance-Probleme. D.h. es gibt eigentlich gar keine Performance. Irgendwie wird die Direkrabfrage statt nach wenigen Minuten nach Stunden noch nicht fertig.
Tja, die Frage ist also, kann ich die Berechnung besser/performanter formulieren - oder bietet sich gar eine ganz andere Lösung an?
ich würde empfehlen, für einen solchen Index einen Berechnungstitel anzulegen, der dann nur einmalig berechnet werden muss. Bei Ihrer Vorgehensweise muss der Index ja für jeden Titel der Abfrage erneut berechnet werden.