welldone
Mitglied seit 11 Jahre 11 Monate
Metastock: Listen Erstellung und Export
Hallo,
wie kann ich mit Metastock Listen erstellen? Also z.B. Export des jeweils aktuellen Kurses nebst Datum und des höchsten Kurs der letzten 200 Tage für alle 30 DAX-Werte nach Excel.
Gruß
Julian
Geschrieben von welldone
am
Hallo,
die Listenerstellung in MS wird mit dem Explorer gemacht, in Deinem Beispiel könnte ein Exploration dann wie folgt aussehen:
1) Neue Exploration anlegen
Name: Dax Performance
Column A: CLose
C
Column B: 200 Tage Hoch
x:=200; {Anzahl Tage}
y:=C; {oder O,H,L}
Tage:=LastValue(Cum(1));
Start:=If(Tage>x,Tage-x,1);{noetig, falls zu wenig Daten vorhanden}
HighestSince(1,Cum(1)=Start,y)
Column C: Tag
x:=200; {Anzahl Tage}
y:=C; {oder O,H,L}
Tage:=LastValue(Cum(1));
Start:=If(Tage>x,Tage-x,1);{noetig, falls zu wenig Daten vorhanden}
z:=HighestSinceBars(1,Cum(1)=Start,y);
ValueWhen(1,z=0,DayOfMonth())
Column D: Monat
x:=200; {Anzahl Tage}
y:=C; {oder O,H,L}
Tage:=LastValue(Cum(1));
Start:=If(Tage>x,Tage-x,1);{noetig, falls zu wenig Daten vorhanden}
z:=HighestSinceBars(1,Cum(1)=Start,y);
ValueWhen(1,z=0,Month())
Column E: Jahr
x:=200; {Anzahl Tage}
y:=C; {oder O,H,L}
Tage:=LastValue(Cum(1));
Start:=If(Tage>x,Tage-x,1);{noetig, falls zu wenig Daten vorhanden}
z:=HighestSinceBars(1,Cum(1)=Start,y);
ValueWhen(1,z=0,Year())
Column F: Datum
Month()*1000000 + DayOfMonth()*10000 + Year()
{Datum des letzten Hamdelstages}
2) Speichern
3) Explore
4) Aktien der Dax Werte aufnehmen
5) Exploration starten
6) Report anzeigen
7) Results anzeigen, rechte Maustaste und "save to file"
Anmerkungen:
1) Spalte C,D und E liefern das Datum des 200 Tage Hoch
2) Das Arbeiten mit einem Datum in MS ist etwas problematisch, da man das Datum nicht in einer Formel im Explorer ausgeben kann
Vielen Dank!
Nehmen wir an, ich möchte per Explorer nach großen weißen Kerzen (also Tage mit einer besonders starken positven Kursveränderung) fahnden und dazu anstatt der von Metastock vorgegebenen meine eigene Definition (eine "offizielle" gibt es ja nicht) verwenden.
Wenn ich es richtig verstanden habe lauten die Formeln/ Einträge dann z.B. für
Column A: CLOSE - OPEN >= 2* Mov(CLOSE-OPEN, 20, S) und für
Filter: CLOSE - OPEN >= 2* Mov(CLOSE-OPEN, 20, S).
Im Unterschied zum vorherigen Bsp. wird also der Filter mitverwendet. Klar es gibt ja auch nicht jeden Tag in jeden Wert eine große weiße Kerze.
Jetzt möchte ich die Sache so abwandeln, dass entweder
Variante a) das Datum und der Wert der jeweils letzten weißen Kerze für jedes Wertpapier ausgegeben wird [müsste dann darauf hinaus laufen, dass der Reiter "Filter" wieder frei bleibt] ODER dass
Variante b) für einen bestimmten Tag in der Vergangenheit nach großen weißen Kerzen gefahndet wird.
Ist das machbar?
Gruß
Julian
Man kann dies auf verschiedene Arten machen:
Beispiele
Column A:
a:=CLOSE - OPEN;
b:=a>= 2* Mov(a, 20, S);
Sum(b,5)
Column b:
a:=CLOSE - OPEN;
b:=Ref(a,-1)>= 2* Mov(Ref(a,-2), 20, S);
b
Column C:
a:=CLOSE - OPEN;
b:=Ref(a,-1)>= 2* Mov(Ref(a,-2), 20, S);
Sum(b,5)
Filter
colA or ColB or colC=3
Spalte A ist wahr (=1), falls die Bedingung gestern erfüllt ist
Spalte B ist wahr (=1), falls die Bedingung vorgestern erfüllt ist
Spalte C ist wahr (=1), falls die Bedingung in den letzten 5 Tagen wenigstens einmal erfüllt wurde
Filterbedingungen sollten nicht mit der Formel, sondern der Spalte angegeben (weitere Info siehe Online Hilfe/Handbuch)
Das Datum der Ereignisse kannst Du Dir wie im ersten Beispiel anzeigen lassen
Eine Exploration läuft immer über den letzten Handelstag, es sei denn, man definiert einen bestimmten Tag.