Hallo,
laut Expresshandbuch gibt es
- dateTime Datum und Uhrzeit des Perioden-Endes
- dateTimeOpen Datum und Uhrzeit des Perioden-Beginns
Nun möchte ich per Express Script prüfen, ob 'dateTime' innerbalb eines Zeitraumes liegt.
Beispiel:
if (datetime < '2014 04 21 14:00') and
(datetime > '2014 04 18 10:00') then beginn
...
end
In den Expresshandbücher sind nur Beispiele für date und time,
aber keines für datetime oder datetimeopen enthalten.
Frage1: Wie lautet die richtige Formatangabe von '2014 04 21 14:00' ?
__________________________________________________________________________
Nun möchte ich einen Zeitpunkt z.B. '2014 04 21 14:00' einer Variable zuweisen ?
Wie muss ich diese Variable definieren ?
Wenn es nicht möglich, einen Zeitpunkt einer Variablen zuzuweisen, ist es dann möglich
ein Datum einer Variablen und eine Uhrzeit einer anderen Variablen zuzuweisen ?
Wie lauetet die Syntax, um im VARS Abschnitt eine Datums- bzw. Zeitvariablen zu definieren ?
Viele Grüße,
Programmfuchs
Timestampabfragen in Express
- WHS Support
- Posts: 2443
- Joined: 14 Feb 2013 10:27
Re: Timestampabfragen in Express
Hallo Programmfuchs,
Sie können den Datum in Express in folgenden Form deklarieren (hier z.B. für 16 April, 2013):
dateopen = 16_04_2013
Für die Uhrzeit geht das folgendermaßen (hier z.B. wenn der Zeit nach 13:45 ist):
(time > NumericToTime(1345)
Hier ein kurzen Beispiel in Express. Sie sehen im Screenshot was genau im Chart passiert:
//////////////////////////////////////////////////////
express dateopentest
vars
calculation
if (dateopen = 16_04_2013) then
begin
if (time > NumericToTime(1345)) and (time < NumericToTime(1400)) then Highlight("slot", "green");
end
interpretation
begin
end
//////////////////////////////////////////////////////
Sie können für die Uhrzeit eine Variabele zuweisen durch ein Input zu verwenden. Anstatt die festen Uhrzeiten 1345 und 1400 könnten Sie die mit Input Variabelen umtauschen:
Unter die Vars geben Sie die folgende Inputs ein:
input $time1(0800, 2200, 1600);
input $time2(0800, 2200, 1600);
und Sie könnten die Berechnung folgendermaßen anpassen:
if (time > NumericToTime($time1)) and (time < NumericToTime($time2)) then Highlight("slot", "green");
Für das Datum gibt es momentan keine Möglichkeit eine Variabele zu nutzen. Allerdings wird das beim nächsten Update in kurzem verfügbar sein mit die NumericToDate() Funktion. Bitte beachten Sie, dass das Datum dann nicht mehr als Tag_Monat_Jahr deklariert wird sondern JahrMonatTag.
Freundlichen Grüßen,
Bastiaan
WHS
Sie können den Datum in Express in folgenden Form deklarieren (hier z.B. für 16 April, 2013):
dateopen = 16_04_2013
Für die Uhrzeit geht das folgendermaßen (hier z.B. wenn der Zeit nach 13:45 ist):
(time > NumericToTime(1345)
Hier ein kurzen Beispiel in Express. Sie sehen im Screenshot was genau im Chart passiert:
//////////////////////////////////////////////////////
express dateopentest
vars
calculation
if (dateopen = 16_04_2013) then
begin
if (time > NumericToTime(1345)) and (time < NumericToTime(1400)) then Highlight("slot", "green");
end
interpretation
begin
end
//////////////////////////////////////////////////////
Sie können für die Uhrzeit eine Variabele zuweisen durch ein Input zu verwenden. Anstatt die festen Uhrzeiten 1345 und 1400 könnten Sie die mit Input Variabelen umtauschen:
Unter die Vars geben Sie die folgende Inputs ein:
input $time1(0800, 2200, 1600);
input $time2(0800, 2200, 1600);
und Sie könnten die Berechnung folgendermaßen anpassen:
if (time > NumericToTime($time1)) and (time < NumericToTime($time2)) then Highlight("slot", "green");
Für das Datum gibt es momentan keine Möglichkeit eine Variabele zu nutzen. Allerdings wird das beim nächsten Update in kurzem verfügbar sein mit die NumericToDate() Funktion. Bitte beachten Sie, dass das Datum dann nicht mehr als Tag_Monat_Jahr deklariert wird sondern JahrMonatTag.
Freundlichen Grüßen,
Bastiaan
WHS
-
- Posts: 3
- Joined: 21 Apr 2013 14:21
Re: Timestampabfragen in Express
Hallo,
um in einem bestimmten Zeitraum und in einem bestimmten Indexbereich nur in eine Richtung zu handeln und dabei auch die Uhrzeit zu berücksichhtigen,
habe ich mir nachfolgenden Express-Code ausgedacht, der auch gut funktioniert.
//* Short
if (
((dateopen = 02_04_2013) and (timeopen > 18:00)) or
(dateopen > 02_04_2013)
)
and
(
((dateopen = 07_04_2013) and (timeopen < 18:00)) or
(dateopen < 07_04_2013)
)
and
(
(open <= 8000) and
(close >= 7600) )
then begin
flag_Handel[0] = -1;
end
If flag_Handel[0] = -1 then Highlightat(0, "slot", "lightred");
Gibt es eine Möglichkeit die Angaben zu parametrisieren, damit ich die Daten (Zeitangaben, Bereichangaben, Handelsrichtung) in einem Array ablegen kann, um über eine Schleife dann zu prüfen, ob ich eher long oder short gehe ?
um in einem bestimmten Zeitraum und in einem bestimmten Indexbereich nur in eine Richtung zu handeln und dabei auch die Uhrzeit zu berücksichhtigen,
habe ich mir nachfolgenden Express-Code ausgedacht, der auch gut funktioniert.
//* Short
if (
((dateopen = 02_04_2013) and (timeopen > 18:00)) or
(dateopen > 02_04_2013)
)
and
(
((dateopen = 07_04_2013) and (timeopen < 18:00)) or
(dateopen < 07_04_2013)
)
and
(
(open <= 8000) and
(close >= 7600) )
then begin
flag_Handel[0] = -1;
end
If flag_Handel[0] = -1 then Highlightat(0, "slot", "lightred");
Gibt es eine Möglichkeit die Angaben zu parametrisieren, damit ich die Daten (Zeitangaben, Bereichangaben, Handelsrichtung) in einem Array ablegen kann, um über eine Schleife dann zu prüfen, ob ich eher long oder short gehe ?
- WHS Support
- Posts: 2443
- Joined: 14 Feb 2013 10:27
Re: Timestampabfragen in Express
Hallo Programmierfuchs,
wir haben leider auf Anhieb keine Idee wie man dieses Vorhaben schnell und sauber über einen Array lösen könnte. Je nach dem wie ernst es Ihnen mit diesem Code ist können wir Ihnen einen professionellen Programmierer empfehlen, der dies evtl. für Sie umsetzen kann. Schauen Sie bei Interesse doch mal bei Signalworks.de vorbei.
Dort kann man Ihnen bei der Programmierung eines individuellen Indikators sicherlich behilflich sein.
Freundliche Grüße,
Timo
WH SelfInvest
wir haben leider auf Anhieb keine Idee wie man dieses Vorhaben schnell und sauber über einen Array lösen könnte. Je nach dem wie ernst es Ihnen mit diesem Code ist können wir Ihnen einen professionellen Programmierer empfehlen, der dies evtl. für Sie umsetzen kann. Schauen Sie bei Interesse doch mal bei Signalworks.de vorbei.
Dort kann man Ihnen bei der Programmierung eines individuellen Indikators sicherlich behilflich sein.
Freundliche Grüße,
Timo
WH SelfInvest