Samstag, 20. April 2024, 00:56 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.

bernd

Experte

Registrierungsdatum: 5. Juni 2005

Beiträge: 4 070

Wohnort: Iringsweg

1

Sonntag, 22. Oktober 2006, 16:27

Stopp-Handling

Hallo zusammen

Ich habe derzeit zwei Probleme, vielleicht Verständniss-Probleme mit Stopps in Investox:

1) Ich möchte eine HS Idee umsetzen, bei der ich in die Trades eingestoppt werde. Hier im Forum fand ich be der Suche nach Fragen zum Thema einstoppen immer Antworten zu Enter-Regeln. Die Online-Hilfe kennt den Terminus Einstoppen ebenfalls nicht. Sehe ich das richtig, dass Stopps in Investox nur zum Beenden einer Position verwendet werden können?

2) In einem anderen HS versuche ich, "Absolute" Stops mit dynamischen Stoplevels zu realisieren. Meine Tests zeigen, dass der von Investox in Zusammenhang mit Dynamischen Stops verwendete Ausdruck "Absolut" eigentlich einen in Punkte (statt in Proizent) angegebenen relativen Stop zu einem aktuellen Kurs darstellt. Also nichts von "Absolut" hat.
Nun habe ich aber einen externen Indikator geschrieben, der am Ende einer Periode den zu setzenden Stop für die nächste Periode exakt vorgibt; ich würde also wollen, dass unanhängig vom Kurs oder vom Kapital etc. der Stop für die nächste Periode genau auf z.B. 23,80 gesetzt wird. Wie ist es möglich, diesen Stop als dynamischen Stop zu setzen? Ich schaffe es irgendwie nicht und ein Anwender Stop ist zu teuer (CPU Verbrauch ..).
Gruss
Bernd

Vuego

Meister

Registrierungsdatum: 30. August 2002

Beiträge: 999

2

Sonntag, 22. Oktober 2006, 18:41

RE: Stopp-Handling

Hallo Bernd,

Zitat

Nun habe ich aber einen externen Indikator geschrieben
was verwendest Du denn? VB oder VB.net?

Zu Punkt 2:
Tradedauerstop + Zusatzbedingung. Dort Bezug auf Deinen Indi nehmen mit Ref(-1). Die Ausformulierung dürfte kein Problem sein. Man kann den Stop zwar nicht direkt visualiiseren, aber das sollte nicht so schlimm sein.
Gruß, Vuego

bernd

Experte

Registrierungsdatum: 5. Juni 2005

Beiträge: 4 070

Wohnort: Iringsweg

3

Sonntag, 22. Oktober 2006, 19:30

RE: Stopp-Handling

... dachte, der Browse wäre abgetaucht, und habe nach dem Absenden dieser ursprünglichen Nachricht Abbrechen gedrückt. Aber es lag wohl nur daran, dass das Investoxforum heute mal wieder nur schleppend antwortet. Nun gab's die Antwort 2x. Die nächste im Thread ist gültig :rolleyes:
Gruss
Bernd

Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »bernd« (22. Oktober 2006, 19:38)


bernd

Experte

Registrierungsdatum: 5. Juni 2005

Beiträge: 4 070

Wohnort: Iringsweg

4

Sonntag, 22. Oktober 2006, 19:31

RE: Stopp-Handling

Hallo Vuego

Ich nehme VB.net. Zur Zeit habe ich die 180 Tage Testversion auf der Platte. VB Express ginge zwar auch, aber da geht mir der JIT Modus (Just in Time Debugger) ziemlich ab. Ist halt sehr bequem mit JIT zu entwickeln. Und genau das fehlt bei VB Express.

Das mit demTradedauerstop werde ich sobald als möglich probieren. Gute Idee. Dass ich das Ergebniss nicht werde visualisieren im Chart geht mir schon ab: ich habe den Indikator so geschrieben, dass er keine Ergebnisse in die Zukunft liefert; nun bin ich nicht sicher, ob ich Ref( , -1) brauche oder nicht. Wenn ich's nicht visualisieren kann wird's mühsam. Mal sehen. Nicht, dass ich dann eine Periode zuviel in der Vergangenheit liege mit meinem Stop ...

Bei diesem Indikator handelt es sich übrigens um die Innenstäbe aus dem Markttechnik Buch von Michael Vogt. Hatte so einfach ausgesehen, aber dann steckte der Teufel im Detail. Aber jetzt läuft er rund, wie ich meine 8:) Bin sehr auf die Ergebnisse in passenden HSen gespannt.

@all
Weiss noch jemand was zum Thema Einstoppen mit Investox zu sagen?
Gruss
Bernd

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »bernd« (22. Oktober 2006, 19:42)


Snoopy

unregistriert

5

Sonntag, 22. Oktober 2006, 19:57

Hallo Bernd,
du hattest geschrieben das in der nächste Periode der Stop auf 23,80 greifen soll, deshalb Ref(-1).

Kannst du nicht den Indikator zum Visualisieren einblenden?

Die Stops dienen zum Trade beendet.
Im Ordermodul kannst du dich aber einstoppen lassen.

Gruß Snoopy

Vuego

Meister

Registrierungsdatum: 30. August 2002

Beiträge: 999

6

Sonntag, 22. Oktober 2006, 20:59

RE: Stopp-Handling

@Bernd

Zitat

JIT-Modus / Und genau das fehlt bei VB Express.
sagt mir noch nicht viel, will demnächst mal schauen ob es für mich überhaupt Sinn macht. Mittlerweile kann man ja fast alles auch in Investox sehr sparsam machen. Nicht alles, was man extern macht muß unbedingt schneller sein.
Gruß, Vuego

Registrierungsdatum: 30. August 2002

Beiträge: 8 155

Wohnort: Trade-Planet

7

Sonntag, 22. Oktober 2006, 21:32

>>>>Nicht alles, was man extern macht muß unbedingt schneller sein....

oder besser...;)
Happy Trading

bernd

Experte

Registrierungsdatum: 5. Juni 2005

Beiträge: 4 070

Wohnort: Iringsweg

8

Sonntag, 22. Oktober 2006, 22:16

Hallo

@snoopy
Du schreibst, "Im Ordermodul kannst du dich aber einstoppen lassen.". Meinst Du, ich könnte die Order im ORM von Hand
eingeben, zum halbautomatischen Trading? Oder könnte ich das auch per INV automatisieren?

Der Grund, warum ich es per automatischen Einstoppen machen möchte, ist, ich würde die Slippage nicht verlieren. Denke
ich.

Ich bin froh über Deine Antwort; zu technischen Fragen versuche ich selbst zu helfen, weil ich mich da auskenne. Aber
in "Handelsfragen" brauche ich wirklich Hilfe, wenn das mit meiner Trader-Laufbahn was werden soll :]

> du hattest geschrieben das in der nächste Periode der Stop auf 23,80 greifen soll, deshalb Ref(-1).
Da bin ich eben nicht so sicher bei meinem Indikator. Ich versuche das mal in Pseudo-Code so zu beschreiben:

* Loop auf der Kursreihe
* Ermitteln der Stops auf Basis der Variablen des vorhergehenden Durchlaufes
* Umsetzten der internen Variablen ("State-Machine") auf die aktuelle Periode
* Berechnen der für die INV Chart-Engine vorgesehenen Ergebnisse
* zurück zum Loop Anfang

Je- nachdem, welches Ergebniss gerade vom Indi angefragt wird, gibt er dieses zurück. Das Ergebiss kann dann z.B. so aussehen, wie in anhängendem Bild.

Und nun bin ich mir eben nicht sicher, ob ich da Ref(, -1) brauchen werde, wenn der Indikator im Rahmen der INV Stop
Formel gerufen wird. Any idea?


@vuego. @udo
Euch auch einen herzlichen Dank!

> Mittlerweile kann man ja fast alles auch in Investox sehr sparsam machen. Nicht alles, was man extern macht muß
unbedingt schneller sein.
Naja, ich wollte es nicht schneller machen, als Herr Knöpfel normale interne Formel-Indikatoren berechnen kann. Der
Grund ist vielmehr: ich habe viele Stunden versucht, den Innenstab-Indikator inklusive nochmals verschachtelter Innenstäbe
mit INV Bordmitteln zu schreiben. Möglicherweise fehlt mir das Mathe-Studium: ich habe es jedenfalls nicht geschafft.
Also habe ich gemacht, was ich schon kann: programmieren.


@vuego

Zum JIT Modus, mein "Lieblings-Entwicklungszyklus" sieht so aus:

* Entwicklungsumgebung (EWS) starten
* an meinem Indi weiterprogrammieren
* den Debuggen-Knopf drücken
** nun wird das Projekt neu kompiliert
** es wird automatisch eine .BAT Datei gestartet die den geänderten Indi im Windows neu registriert
** falls Iinvestox läuft wird es automatisch vom Script gestoppt und neu gestartet (weil es sonst die neu kompilierte
.dll nicht einliesst, jedenfalls habe ich in INV noch eine Funktion gefunden, dies bei laufendem Programm zu erzwingen)
* nun freue ich mich am neuen/geänderten Indi
* dann stelle ich noch einen Fehler fest
* also setzte ich in Investox eine Variable meines Indis von OFF auf START oder einen anderen Wert, der intern in
meinem Indi einen STOP Befehl ansteuert (STOP ist hier ein Programm-Befehl, und hat nichts mit Stops aus Investox zu
tun)
* und während Investox meinem Indi die Kontrolle gibt zwecks Neuberechnung der Indikator-Werte wird der Stop
durchlaufen. Habe ich VB.net mit JIT (also nicht die Express-Version), so startet ein Debugger, der mir meinen Original
Code zeigt. Ich stehe im Programm auf dem STOP, kann interaktiv weitere STOPs setzen, kann mit der Maus einfach auf
Variable zeigen und sehe den gerade aktuellen Wert. Kann den Indi im Einzelschritt-Modus fortsetzen. Kann kanze
Programmteile überspringen usw. Bis mir klar ist, was falsch war.

Ohne JIT sieht der Entwicklungszyklus trauriger aus:
* Entwicklungsumgebung (EWS) starten
* an meinem Indi weiterprogrammieren
* den Debuggen-Knopf drücken
** nun wird das Projekt neu kompiliert
** es wird automatisch eine .BAT Datei gestartet die den geänderten Indi im Windows neu registriert
** falls Iinvestox läuft wird es automatisch vom Script gestoppt und neu gestartet (weil es sonst die neu kompilierte
.dll nicht einliesst, jedenfalls habe ich in INV noch eine Funktion gefunden, dies bei laufendem Programm zu erzwingen)
* nun freue ich mich am neuen/geänderten Indi
* dann stelle ich noch einen Fehler fest
* also gehe ich zurück ins Coding, bestücke das Indikator-Ergebniss mit Ausgaben EINER internen Variablen
* beginne mit dem Entwicklungsprozess von vorne und versuche, aus dem ausgegeben Wert (den ich mir in INV ja nur
grafisch anzeigen lassen kann), den Fehler zu finden. Vielleicht kapiere ich's nicht, also muss ich die Prozedur mit der
Ausgabe eines anderen Wertes wiederholen
* jedenfalls DAS DAUERT
»bernd« hat folgendes Bild angehängt:
  • Innenstab-Demo.png
Gruss
Bernd

bernd

Experte

Registrierungsdatum: 5. Juni 2005

Beiträge: 4 070

Wohnort: Iringsweg

9

Sonntag, 22. Oktober 2006, 22:22

Ach, noch eine Anmerkung zum Bild: die Enter-Exit Fahnen habe nichts mit dem Indi zu tun; sie stammen einfach aus dem Projekt, in das ich testweise meinen neuen Indi hineingemurkts habe.

Aber die ganze sonstige Ausgabed leistet ein einziger externer Indi.

Und übrigens: obwohl er für die Ausgabe im gezeigten Bild 19 mal mit jeweils anderen Parameter-Werten aufgerufen wird, erfolgt die Darstellung praktisch in Null-Zeit und die CPU geht nichtmal merklich oder messbar in die Höhe, sogar auf meinem Notebook für unterwegs. Soviel noch zum Thema Geschwindigkeit =) Aber natürlich ist Geschwindigkiet ja nicht alles :rolleyes:
Gruss
Bernd

Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »bernd« (22. Oktober 2006, 22:40)


Vuego

Meister

Registrierungsdatum: 30. August 2002

Beiträge: 999

10

Sonntag, 22. Oktober 2006, 22:42

Hallo Bernd,
das schaut schon sehr komplex aus was Du da extern machst. VB.net kenne ich noch überhaupt nicht. Habe das Programm zwar auf Platte und ein paar mal gestartet, aber andere Sachen sind zur Zeit wichtiger. Ich habe auch nicht die Absicht irgendwelche neuen Sachen zu programmieren. Es geht mir einfach nur darum gewisse Dinge, die in Investox bereits gemacht sind schneller ablaufen zu lassen. Interne Indikatoren wird man wohl auch nicht schneller machen können, aber evtl. Verknüpfungen/Verschachtelungen. Vielleicht bringt es ja auch nicht allzu viel. Mal schauen. Danke für die Aufklärung zum JIT-Modus.
Gruß, Vuego

Vuego

Meister

Registrierungsdatum: 30. August 2002

Beiträge: 999

11

Sonntag, 22. Oktober 2006, 22:44

Zitat

obwohl er für die Ausgabe im gezeigten Bild 19 mal mit jeweils anderen Parameter-Werten aufgerufen wird, erfolgt die Darstellung praktisch in Null-Zeit
das hört sich aber jetzt sehr interessant an! Geschwindigkeit ist ja das A und O an der Börse und nichts ist schlimmer als TimeLag...

Vuego

Meister

Registrierungsdatum: 30. August 2002

Beiträge: 999

12

Sonntag, 22. Oktober 2006, 22:48

...die Frage ist aber auch mit wieviel Daten Du den Indikator verarbeitest. Sind's 3 Tage oder 3 Monate? Denn davon hängt ja die Gesamtberechnungsdauer ja auch ab. Oder irre ich mich da?

bernd

Experte

Registrierungsdatum: 5. Juni 2005

Beiträge: 4 070

Wohnort: Iringsweg

13

Sonntag, 22. Oktober 2006, 22:59

Hallo Vuego

Wie gesagt bin ich noch nicht in dem Stadium, dass für mich die Geschwindigkeit das Mass der Dinge ist. Aber ein paar Indis habe ich schon programmiert, immer dann, wenn ich es aufgrund der Komplexität nicht mit INV Bord-Mitteln schaffe.

Hat man erst mal das Gerüst und sein Vorgehen gefunden, muss man sich nur noch mit der Sache auseinander setzen. Schwierig ist eigentlich nur 1x-lig, bis man seinen Entwicklungs-Zyklus im Griff hat (wie vorne ausgeführt).

Aber schnell, ja ich denke, die sind schnell die Dinger.

Vielleicht ist jemand hier im Forum in der Lage, diese verschachtelten Innenstäbe mit INV Bord-Mitteln zu schreiben. Dann könnte man ja mal versuchen, die Zeiten zu stoppen src=" src="http://www.investoxforum.de/images/gold/smilies/cool.gif">

Nun bin ich wieder Techniker, der gerne was "vom Fach" erfahren möchte: wo genau siehst Du ein TimeLag (das nicht von den Latenz-Zeiten des Internet verursacht ist), bei dem so schnelle Berechnungen hilfreich wären? Hängt es von der Anzahl parallel Laufender HSe ab? Wieviele kann man INV parallel handeln lassen mit einer aktuellen Rechnerausstattung, bevor man einen zweiten PC daneben stellen muss? Welche Berechnungen (auf welche Handelswerte?) sind komplex, dass sie den Rechner so auslasten?
Gruss
Bernd

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »bernd« (22. Oktober 2006, 23:13)


Vuego

Meister

Registrierungsdatum: 30. August 2002

Beiträge: 999

14

Sonntag, 22. Oktober 2006, 23:14

Hallo Bernd,
> verschachtelten Innenstäbe in Investox programmieren
wer sie nicht braucht, wird auch nicht die Zeit investieren

TimeLag
es gibt für mich 2 primäre Varianten:

a) Kursversorgung (Datenanbieter > PC)
b) Zeit Kursempfang/Kursausgabe Investox via ORM

Wieviel man mit einem Rechner machen kann hängt wirklich davon ab was man genau macht (EOD / intraday / Komprimierung ...).

Gruß, Vuego

Manfred Wahl

unregistriert

15

Sonntag, 22. Oktober 2006, 23:19

RE: Stopp-Handling

Hallo Bernd,

1) ich denke Du verstehst unter "Einstoppen" ein Limit mit dem Zusatz StopBuy. StopBuy habe ich wie folgt realisiert: Für Long bzw Short berechne ich unter DEFINITION jeweils meinen gewünschten StoppLevel. Die Enterlong Bedingung ist: High() > stopbuy
Dei Entershort Bedingung ist: Low() < stopsell
In den Testbedingungen definiere ich die Enterbasis getrennt für Short und Long mit Delay 0.
Die EnterBasis für Long ist: MAX(Open, Stopbuy)
Die Enterbasis für Short ist: MIN(Open, StopSell)

2) den Dynamischen Stopp habe ich bereits auf zwei Arten realisiert:
2a) über eine Exit Regel analog zum Entry wie oben beschrieben mit Delay 0
Definition:
global calc Limit_L: Ref(LLV(low, 2),-1);
global calc Limit_S: Ref(HHV(high,2),-1);
ExitLong: low < limit_l
ExitShort: high > limit_S
ExitBasis Long: If(open < limit_l , Open, limit_l)
ExitBasis Short: If(open > limit_s , Open, limit_s)

Parallel hierzu können weitere Exit Strategien existieren.

2b) über einen Intraday-Trailing Stop.
Berechung des StopLevels in Punkten unter Definition zB:
{Trailing Stops im RSI Extrembereich}
global calc RSI_L:
Ref(HHV(high, 3)-Low() + [RSI Stop Puffer Long:7.569,0,100,0,10,1,0.6913,], -1);
global calc RSI_S:
Ref(High()-LLV(low, 3) + [RSI Stop Puffer Short:7.951,0,100,0,10,1,2.4899,],-1);
Verwendet wird diese Berechung in je einem Stop für Long und Short mit der Berechnungsart absolut. In das Feld Maximal Verlust trägst Du einfach die unter Defintion berechnete Variable RSI_L bzw RSI_S ein.
Ein schöner Nebeneffekt ist, daß man die Position bei einem Stop einfach drehen kann (Slippage beachten !)


Gruß MAnfred

PS bin wieder aktiv und werde mich im Laufe der Woche persönlich melden

bernd

Experte

Registrierungsdatum: 5. Juni 2005

Beiträge: 4 070

Wohnort: Iringsweg

16

Sonntag, 22. Oktober 2006, 23:28

Nochmals hallo Vuego

Bestimmt irrst Du nicht, sicher gibt es einen kausalen Zusammenhang zwischen der Anzahl der zu berechnenden Werte und dem CPU Verbrauch allgemein und der Performance im Besonderen.

Die Rahmenwerte für meine Aussage zu der Grafik sind:
Ich habe in diesem HS die Tickdaten von Pfizer seit 18.05.06 00:12:13. Das sind 770391 Kursdaten; Das betreffende HS läuft auf 60-Minuten Basis. Mein Indikator hat genau 692 60-Minuten Verdichtungen zu berechnen, 19x mal natürlich. Mein Notebook (zu dem die Aussage stammt, "ich sehe keinen merklichen CPU Verbrauch") ist ein Dell Inspiron 9300 mit einem einzelnen CPU 760J Kern im Netzbetrieb bei 2GHz.
Gruss
Bernd

bernd

Experte

Registrierungsdatum: 5. Juni 2005

Beiträge: 4 070

Wohnort: Iringsweg

17

Sonntag, 22. Oktober 2006, 23:33

Halle Manfred

Schön von Dir zu hören. ich werde Deine Ausführungen heute nicht mehr durcharbeiten können und mir das Ganze morgen zu Gemüte führen.


PS: wenn Du "zufällig" nächstens auf der TradersWorld 2006 ist, könnten wir uns dort mal treffen? Sonst telefonieren wir dieser Tage mal wieder.
Gruss
Bernd

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »bernd« (22. Oktober 2006, 23:34)


Snoopy

unregistriert

18

Sonntag, 22. Oktober 2006, 23:49

Hallo Bernd,
im Ordermodul kannst du manuell oder automatisch einen Stopbuy an der Börse setzen.
In dem Backtestsystem muss aber dieses Limit berücksichtigt werden, was Manfred schon schön beschrieben hat.

Wenn du mit dem Loop auf die vorherigen Variablen -Durchlauf beziehst sollte es ohne Ref(-1) möglich sein.
Zur Überprüfung kannst du auch ein System nur mit deinem Indikator und den Stop anlegen und in der Datensimulation laufen lassen.

Auf die Auswertung bin ich gespannt. Ist auch noch der 1-2-3 Trend dafür erforderlich. Muss ich mir noch mal durchlesen.

Snoopy

bernd

Experte

Registrierungsdatum: 5. Juni 2005

Beiträge: 4 070

Wohnort: Iringsweg

19

Montag, 23. Oktober 2006, 01:10

Hallo Vuego

Zitat

Original von Vuego
> verschachtelten Innenstäbe in Investox programmieren
wer sie nicht braucht, wird auch nicht die Zeit investieren


Ich bin noch nicht in dieser glücklichen Lage, zu wissen was ich brauche und was nicht. Ich suche halt noch. Wenn Du eine Abkürzung weisst?
Gruss
Bernd

Vuego

Meister

Registrierungsdatum: 30. August 2002

Beiträge: 999

20

Montag, 23. Oktober 2006, 02:34

Hallo Bernd,
eine mögliche Abkürzung ist das MarktPlus-Modul.
Gruß, Vuego