Dienstag, 16. April 2024, 21:46 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.

Registrierungsdatum: 4. September 2007

Beiträge: 311

Wohnort: Stuttgart

1

Freitag, 1. Juli 2016, 18:56

Lowest Low merken

Hallo zusammen,

hiermit bestimme ich das Lowest Low von 9.00-9.29 Uhr:

Quellcode

1
2
3
4
calc Stunde: DatePart(h);
calc Minute: DatePart(n);
calc LL: LowestSince(Low, Stunde=9 And Minute=0, 1);
ValueWhen(LL, Stunde=9 And Minute=29,  1, V)


Code ist für die Chart-Formel-Funktion.
Jetzt habe ich das Problem das es manchmal um 9.00 Uhr keinen Kurs gibt, sondern erst um 9.02 Uhr. Und schon tillt die Berechnung. Wenn es kein 9.00 Uhr gibt, wieso beginnt die Berechnung dann nicht einfach zum nächsten Balken? Habe diese Formel schon ein paar mal verwendet und erst jetzt viel mir dieser Fehler auf.
Grüße aus dem Schwabenland
Arend

Registrierungsdatum: 4. September 2007

Beiträge: 311

Wohnort: Stuttgart

2

Freitag, 1. Juli 2016, 19:12

Gelöst

Problem gelöst:

Nahm jetzt einfach statt 9.00 Uhr den Tageswechsel. Aber dennoch würde es mich interessieren wieso er nicht einfach zum nächst möglichen Balken beginnt.

Quellcode

1
2
3
Calc Tageswechsel: ROC(DatePart(y), 1, $) <> 0;
calc LL: LowestSince(Low, Tageswechsel, 1);
ValueWhen(LL, Stunde=9 And Minute=29,  1, V)


Falls andere das gleiche Problem haben.
Grüße aus dem Schwabenland
Arend

Bernd

Experte

Registrierungsdatum: 5. Juni 2005

Beiträge: 4 070

Wohnort: Iringsweg

3

Sonntag, 3. Juli 2016, 11:33

würde es mich interessieren wieso er nicht einfach zum nächst möglichen Balken beginnt.

Weil ValueWhen() auf das genaue Zutreffen der formulierten Bedingung programmiert ist.

Du könntest es Dir natürlich auch einfacher machen, dies sollte das erwartete Resultat bringen mit der gewünschten Fehler-Toleranz bezogen auf fehlende Daten:

Quellcode

1
2
// Describe() aus der Investox Forumsdatenbank laden
Describe(Low, B, 0900, 0930)
Gruss
Bernd

Registrierungsdatum: 4. September 2007

Beiträge: 311

Wohnort: Stuttgart

4

Sonntag, 3. Juli 2016, 14:15

Hi Bernd,

Danke, das funktioniert.
Hatte den Describe auch schon in meinen Indis gespeichert - aber an den hätte ich nicht mehr gedacht.
Grüße aus dem Schwabenland
Arend

Bernd

Experte

Registrierungsdatum: 5. Juni 2005

Beiträge: 4 070

Wohnort: Iringsweg

5

Dienstag, 5. Juli 2016, 12:09

Ich schon :D

Als ich vor ähnlichen Probleme stand, fand ich die Lösung über mehrere bis viele ValueWhen() Konstrukte nicht so prikelnd. Dazu kam das von Dir geschilderte Problem, wenn die Bedingung bezogen auf die vorliegenden Kurs-Daten nicht genau zutrifft (weil z.B. Daten fehlen oder zur erwarteten Minute, Stunde, Basis-Periode usw. gerade wirklich nicht gehandelt wurde)

Also: immer wenn es um Zeitfenster geht: dann könnte es ein Fall sein, den man mit Describe() wahrscheinlich einfach und übersichtlich mit einer einzigen Investox Coding-Zeile lösen kann ^^ Packt man die Uhrzeiten als Optimierungs-Listen rein, kann man das Zeitfenster dann auch noch bequem optimieren oder robtesten

Dies, weil Intraday Handelszeitfenster pro Handelstag neben Handelstagen pro Woche oder Monat und vorteilhafte Monate pro Kalenderjahr nach meiner Erfahrung auch sonst ein wichtiger Schlüssel zum Erfolg sind. Aber das ist ein langes und umfangreiches anderes Thema, die Seasonals

Freut mich, wenn ich helfen konnte
Gruss
Bernd

Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »Bernd« (5. Juli 2016, 12:28)