Donnerstag, 18. April 2024, 14:48 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.

Vatie Männlich

Profi

Registrierungsdatum: 4. Oktober 2002

Beiträge: 191

Wohnort: 14 km nordwestlich vom Millerntor Stadion

1

Dienstag, 3. Mai 2011, 11:31

Änderung von mehreren Berechnungen in einem Schritt

Calc Mo: DatePart(w)=1;
Calc Di: DatePart(w)=2;
Calc Mi: DatePart(w)=3;
Calc Do: DatePart(w)=4;
Calc Fr: DatePart(w)=5;

GD(ValueWhen((high-low)*100/LastDP(C), Fr, 1, V), 300, S)

Hallo, durch die obige Berechnung erhalte ich die ungefähre Schwankungsbreite eines Titels in Prozent an einem Freitag für die letzten 300 Tage. Für die anderen Wochentage führe ich die gleiche Berechnungen durch (ersetze FR mit Do oder Mi etc.) und lasse mir dann die 5 Grafiken im Chart anzeigen. Möchte ich nun den GD beispielsweise auf 200 Tage ändern, muß ich im Chart sämtliche Linien manuell auf einen GD Wert von 200 ändern. Geht das auch eleganter, so wie man das in einem HS durch globale Variablen lösen könnte? In diesem Projekt wird kein Handelssystem verwendet, ich nutze es rein visuell im Chart.

Viele Grüße
Eckhard

Wiwu Weiblich

Experte

Registrierungsdatum: 4. September 2002

Beiträge: 1 752

Wohnort: Neuenhagen b. Berlin

2

Dienstag, 3. Mai 2011, 11:56

Hallo Eckhard,

was spricht denn dagegen, dass Du Dir ein Dummy-Handelssystem ins Projekt legst und dort im Definitionsbereich die GD-Perioden mit:

Quellcode

1
const Perioden: 300;


definierst ?

Deine Berechnungen im Chart änderst Du dann wie folgt:

Quellcode

1
2
3
4
5
6
7
#_loaddefs#
Calc Mo: DatePart(w)=1;
Calc Di: DatePart(w)=2;
Calc Mi: DatePart(w)=3;
Calc Do: DatePart(w)=4;
Calc Fr: DatePart(w)=5;
GD(ValueWhen((high-low)*100/LastDP(C), Fr, 1, V),Perioden, S)


Sollen die Perioden dann geändert werden, musst Du im Definitionsbereich des Dummy-Handelssystems immer nur einmal den Wert ändern, damit alle Charts angepasst werden.

Die Handelssignale des Systems lässt Du Dir nicht anzeigen und wenn Du außerdem eine passende Fenstereinteilung wählst, wirst Du visuell kaum bemerken, dass überhaupt noch ein Dummy-System mit im Projekt liegt.
Viele Grüße von Anke

http://www.ascunia.de

Investox

Administrator

Registrierungsdatum: 31. August 2002

Beiträge: 5 680

3

Dienstag, 3. Mai 2011, 14:33

Hallo,

das wäre auch eine mögliche Anwendung für den "globalen Datenspeicher" von Investox vbscript:

Im ersten Indikator definiert man:

Zitat


Calc Mo: DatePart(w)=1;
Calc Di: DatePart(w)=2;
Calc Mi: DatePart(w)=3;
Calc Do: DatePart(w)=4;
Calc Fr: DatePart(w)=5;
const Per: 300;
global calc dummy: VBScript(#>>
if GlobalData.KeyExists("MyWoTagGD_Para1")=false then
GlobalData.Add "MyWoTagGD_Para1", Per
else
GlobalData.Item("MyWoTagGD_Para1")= Per
end if
<<#);
GD(ValueWhen((high-low)*100/LastDP(C), Fr, 1, V), Per, S)
In den nachfolgend eingefügten Indis kann man dann den gespeicherten Wert verwenden:

Zitat


Calc Mo: DatePart(w)=1;
Calc Di: DatePart(w)=2;
Calc Mi: DatePart(w)=3;
Calc Do: DatePart(w)=4;
Calc Fr: DatePart(w)=5;
const Per: #>>_vbs_const consterg=GlobalData.Item("MyWoTagGD_Para1")<<#;
GD(ValueWhen((high-low)*100/LastDP(C), Do, 1, V), Per, S)
Die Speicherung muss in der ersten Berechnung erfolgen und der Chart nach einer Änderung aktualisiert werden.

Viele Grüße
Andreas Knöpfel