Donnerstag, 18. April 2024, 04:58 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.

Kai

unregistriert

1

Freitag, 22. Februar 2013, 18:24

GetGlobalVar / SetGlobalVar

Hallo zusammen,

ich habe die Funktion, dass man mehrere Outputs erzeugen kann schon mal getestet und es funktionierte.
Ich weiß nicht, wo ich hier falsch denke :baby:
Um es hier zu posten habe ich es jetzt reduziert auf nur den Indikator TT mit einem Parameter Daten, praktisch 1 zu 1 das Beispiel aus der Hilfe.

#####################################

GetGlobalVar "MyCalc", a
StartI = ErsteDatenPeriode(Daten)
EndI = LetzteDatenPeriode(Daten)


For i = StartI To EndI
if IsArray(a) then
if a(i)<>NoValue then
a(i) = a(i) * 1.02
end if
end if


Ergebnis(i) = Daten(i)

Next


SetGlobalVar "MyCalc",a

###################################################


Dann habe ich ein Handelssystem wo unter Definitionen folgendes steht:


Global Calc MyCalc: Close;
Calc Output: TT(Close);


Im Chart lasse ich mir MyCalc und Output anzeigen. Erwartungshaltung wäre, dass MyCalc in der Indikatorberechnung angepasst und zurückgeschrieben wird. Oder mache ich hier einen Denkfehler? Ich bin mir ziemlich sicher, dass es bei meinen ersten Tests so funktionierte.
Zurück kommt aber nur als Output Close und als MyCalc auch Close, keine Berechnung, kein zurückschreiben.


Gibt es dazu auch vollständige Beispiele in der Anwendung? Die Funktion müsste doch recht häufig verwendet werden (z.B. Fibonaccis nach neuen Kriterien anpassen, etc.)?

Viele Grüße
Kai

Bernd

Experte

Registrierungsdatum: 5. Juni 2005

Beiträge: 4 070

Wohnort: Iringsweg

2

Freitag, 22. Februar 2013, 19:06

Hallo Kai

Ich verwende dieses Feature in einigen Indikatoren und spare damit enorm Rechenzeit. Also es funktioniert "eigentlich" schon.

Auf den ersten Blick kann ich nicht erkennen, wo der Fehler leigt. Eine Vermutung: funktioniert es, wenn Du den Indikator TT() im globalen Kontext aufrufst statt im lokalen?

Also

Zitat

global calc output: TT(Close);

?
Gruss
Bernd

Kai

unregistriert

3

Freitag, 22. Februar 2013, 19:25

aaaaahhhhhhh!

Ja, danke!!!

:thumbsup:

Bei dem kleinen Skript klappt es mit globalen Kontext.
Jetzt muss ich erstmal weiter eroieren, ob es das tatsächlich alles löst ;-)

Viele Grüße
Kai

Bernd

Experte

Registrierungsdatum: 5. Juni 2005

Beiträge: 4 070

Wohnort: Iringsweg

4

Donnerstag, 28. Februar 2013, 21:25

Freut mich, dass es jetzt geht. Bitte sehr :)
Gruss
Bernd

Ähnliche Themen