Dienstag, 16. April 2024, 17:19 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.

jones

Profi

Registrierungsdatum: 22. Oktober 2011

Beiträge: 230

Wohnort: Österreich

1

Dienstag, 17. April 2012, 15:16

Verbinde zwei Bedingungen mit einer Linie

Hallo Leute, ich bitte Hilfe.
Problem - siehe Screenshot im Anhang.
Wie kann ich sofern die Bedingung1 (gelbe Candle) erfüllt ist, z.B. das High der aktuelle Bed1 mit dem High der Vorletzten Bed1, das High der vorletzte Bed1 mit dem High der vorvorletzten Bed1 .... mittels einer Linie verbinden.



Danke
jones
lg jones

Ganesha

unregistriert

2

Dienstag, 17. April 2012, 16:45

Vermutlich gar nicht.

Investox zeichnet nur dann Linien, wenn in der betreffenden Periode der Wert gefüllt ist.
Du könntest jetzt allerdings die Zwischenwerte berechnen. Dann hast Du in jeder Periode einen Wert und es wird auch was angezeigt. Das ganze geht natürlich nur im Backtest und ist nicht handelbar.

Mario

unregistriert

3

Dienstag, 17. April 2012, 17:01

Hallo Jones,
gib einfach in der Suche
Support / Resist variabel ein. Manfred Wahl hat dort 2009 ein Skript veröffentlicht, das denke ich genau das kann was Du suchst.

Viele Grüsse
Mario

Investox

Administrator

Registrierungsdatum: 31. August 2002

Beiträge: 5 680

4

Dienstag, 17. April 2012, 18:41

Hallo,

eine Möglichkeit wäre z.B (vorsicht, blickt in die Zukunft!):


Calc Bed1: Cross(GD(MOM(Close, 20), 5, S), 100, 1) ;
Calc Datum1: BarsUntil(Bed1, 1)+1;

calc Startwert: ValueWhen(High, Bed1, 1, V);
calc Diff: RefVar(High, Datum1-1)-Startwert;
Startwert+CumSince(diff / ValueWhen(Ref(Datum1,1), Bed1,1,V),Bed1,0)

Viele Grüße
Andreas Knöpfel

jones

Profi

Registrierungsdatum: 22. Oktober 2011

Beiträge: 230

Wohnort: Österreich

5

Dienstag, 17. April 2012, 18:46

@ Mario
ich glaube das Skript gefunden zu haben und der Indikator der dort zu verwenden war paßt eigentlich nicht ganz oder ich hab da was falsch verstanden.
Das kam dabei raus.



das muß was anderes sein.

@Ganesha
Die Linien sollten vorläufig mal als optisches Hilfsmittel eingesetzt werden. Mit den Zwischenwerten berechnen ist keine schlechte Idee aber dies würde ich dann nur ab der letzten der letzt Bed machen und das aber nur so lange bis das eine neue Bed wahr ergibt und somit die Linie Fixiert. Kann man da was machen?


danke Euch für die Hilfestellung !!!!
...hab gerade gesehn das auch Herr Knöpfel was geschrieben hat. Bedanke mich schon mal und werd das auch gleich mal testen.
lg
jones
lg jones

jones

Profi

Registrierungsdatum: 22. Oktober 2011

Beiträge: 230

Wohnort: Österreich

6

Dienstag, 17. April 2012, 18:56

Die Idee von Herrn Knöpfel sieht fürs erst schon super aus - DANKE
Ich werde noch einige tests machen und melde mich dann wieder.

danke Euch
jones
lg jones

jones

Profi

Registrierungsdatum: 22. Oktober 2011

Beiträge: 230

Wohnort: Österreich

7

Dienstag, 17. April 2012, 21:40

Kann mir jemand sagen warum die Linie nicht bis zur Kerze gezogen wird? Kann da bei meiner Bedingung was nicht stimmen?
lg jones
lg jones

Mario

unregistriert

8

Mittwoch, 18. April 2012, 08:09

Hallo Jones,

ich denke schon , dass das das richtige ist. Schau Dir mal den Code an, es werden lokale Maxima und Minima berechnet abhängig, wieviele Punkte/ ATR sich der aktuelle Kurs von diesen Extrema wegbewegt hat. Du musst halt einen höheren Wert angeben, und in einem zweiten Schritt die Variablen des Indikators auf deine Bedürfnisse anpassen.

Viele Grüsse

Mario

jones

Profi

Registrierungsdatum: 22. Oktober 2011

Beiträge: 230

Wohnort: Österreich

9

Mittwoch, 18. April 2012, 11:31

Hallo Jones,

ich denke schon , dass das das richtige ist. Schau Dir mal den Code an, es werden lokale Maxima und Minima berechnet abhängig, wieviele Punkte/ ATR sich der aktuelle Kurs von diesen Extrema wegbewegt hat. Du musst halt einen höheren Wert angeben, und in einem zweiten Schritt die Variablen des Indikators auf deine Bedürfnisse anpassen.

Viele Grüsse

Mario
Hi Mario,
ich werde das mit meinen Bed prüfen - dann berichte ich. Komme aber erst am Abend dazu an der Sache weiter zu arbeiten.
Danke!
lg jones

Mario

unregistriert

10

Mittwoch, 18. April 2012, 11:58

Hallo Jones,

Du könntest wenns funktionieren sollte , mittels globaler Variablen, Die Resist/Supportpunkte in einem Aufwasch über ein Handelssystem im Chart anzeigen.

Viele Grüsse Mario

Mario

unregistriert

11

Mittwoch, 18. April 2012, 12:15

- Falls Du in VBS nicht so fit bist, ändere einfach in der Berechnung des Indikators den Parameter Sensitivy, der derzeit den Wert Close ausweist in den Typ Wert und gib im Standardwert mal zum Spielen mal x -Punkte an. In der Moduseinstellung kannst Du S eingeben. Leg dann den Indi nochmals über den Chart gehe vor wie eben beschrieben und gib dann im Modus R an. Dann müsste es funktionieren.

Da deine Bedingungen wahrscheinlich von einem einfachen Punkteabstand abweichen, wirst Du in einem zweiten Schritt den Indi entsprechend einfachhalber per HS aufrufen und dann der Sensitivy per Datenreihe deine Berechnung übergeben. Du kannst den Indikator so anpassen dass er per glob. Var. beide Werte für Resist und Support in einem Aufwasch anzeigt.

Die Problematik der Lösung per INV - Formelsprache liegt in der Verwendung von Barssince, Valuewhen.. das funktioniert sehr gut im Backtest, und falls Du im Lifebetrieb ausreichend Perioden zur Berechnung mitgeben kannst.

Viele Grüsse
Mario

Mario

unregistriert

12

Mittwoch, 18. April 2012, 12:28

ist doch nicht so trivial musst Du musst den Indikator um zu testen über ein HS aufrufen und der Sensitivy deine Berechnungen zuweisen. Sorry.

Mario

unregistriert

13

Mittwoch, 18. April 2012, 12:42

Ok. hab ihn mal kurz umgeschrieben Faktor ist 10. Statt einer Berechnung wie ATR (hier als Parameter d abgelegt hab ich im Script einfach 1 (1Punkt) angeben. D. h. ein lokaler Hochpunkt ist definiert wenn der aktuelle Kurs 10 Punkte von Hochpunkt entfernt ist. Ein lokaler Tiefpunkt wird entsprechend berechnet.

Jetzt kannst Du mal spielen.
VG Mario
»Mario« hat folgende Datei angehängt:
  • Test.Inn (2,32 kB - 470 mal heruntergeladen - zuletzt: 3. Februar 2024, 00:01)

jones

Profi

Registrierungsdatum: 22. Oktober 2011

Beiträge: 230

Wohnort: Österreich

14

Mittwoch, 18. April 2012, 21:02

wauuuu Mario,
da brauch ich jetzt erst recht noch´n bischen. Aber du hast den Sinn dahinter erfaßt ... relHigh/rel.Low.
VB ist für mich immer noch so ne Sache ;( .
DAAAAANKE!
Jones
Ich muß mir das erst noch in ruhe reiziehen und erst recht den VB Code dahinter.
Zum Faktor: bedeutet das , wenn ich im skript (Faktor * 1) auf (Faktor * 0.1) ändere das dann ein lokal H/L dann wahr ist wenn der Kurs 1 Pkt vom H/L entfernt ist?
lg jones

Mario

unregistriert

15

Mittwoch, 18. April 2012, 21:54

Hallo Jones freut mich, wenn es das war was Du wolltest. Es macht mehr Sinn den Faktor in den Einstellungen des Indikators entsprechend zu verändern. d1 in den Parametereinstellungen ist der Aufruf der ATR aus dem HS. Wenn Du mit den absoluten Punkten nicht weiterkommst und mit weiteren Ableitungen wie MOM, ATR... experimentieren willst kannst Du diese vor der Schleife mit scriptberechneformel aufrufen und definieren. und diese statt dem punktwert einsetzen.

Beispiel:

Dim i, StartIndex, EndIndex
Dim High, Low, HH, LL, Trend, resist, support
Dim Perioden, Startwert, myATR, d
Dim Fo
''Index berechnen, ab dem Daten und bis zu dem Daten vorliegen
Startindex=ErsteDatenPeriode(Daten)
EndIndex=LetzteDatenPeriode(Daten)

''High und Low Datenholen
getdaten "High", High
getdaten "Low", Low

''Hilfsvariablen dimensionieren und initialisieren
redim HH(endindex), LL(endindex), Trend(endindex), Support(endindex), Resist(endindex)
hh(startindex) = high(startindex)
resist(startindex) = high(startindex)
ll(startindex) = low(startindex)
support(startindex) = low(startindex)
trend(startindex) = 0

if ScriptBerechneFormel("ATR(100)", myATR) then

d = myATR

''Große Schleife, um die Untere Grenze LL bzw die obere Grenze HH im Abstand der Sensitivity nachzuführen, bzw den aktuellen Trend zu messen
For i = Startindex+1 To endindex
'For i = 1 to AllePerioden
trend(i) = trend(i-1)
hh(i) = hh(i-1)
ll(i) = ll(i-1)
if high(i) > hh(i-1) then
hh(i) = high(i)
trend(i) = 1
if high(i) - (Faktor * d(i)) > ll(i) then
ll(i) = high(i) - (Faktor * d(i))
end if
else hh(i) = hh(i-1)
if low(i) < ll(i-1) then
ll(i) = low(i)
trend(i) = -1
if low(i) + (Faktor * d(i)) < hh(i) then
hh(i) = low(i) + (Faktor * d(i))
end if
end if
end if
...

jones

Profi

Registrierungsdatum: 22. Oktober 2011

Beiträge: 230

Wohnort: Österreich

16

Sonntag, 22. April 2012, 17:54

das mit supp/res vom Test.ini läuft aber der 2.Code von dir schreibt dann "Bezeichner erwartet eine Linie, oder End erwartet eine Linie".
Was muß ich da machen?
jones
lg jones

Mario

unregistriert

17

Montag, 23. April 2012, 07:47

Hallo,
hinter next noch ein end if um die if scriptberechne.. Geschichte abzuschliessen.

Mario

unregistriert

18

Montag, 23. April 2012, 08:55

Hi Jones, anbei die fehlerlose Variante.
»Mario« hat folgende Datei angehängt:
  • TestATR.Inn (2,37 kB - 444 mal heruntergeladen - zuletzt: 29. März 2024, 03:21)