Regeln in ASCII
Hier kommen die Regeln in ASCII Format.
Den Vorschlag mit dem GD auf die Kapitalkurve muss ich mir später mal anschauen; klingt interessant.
***** Definition *****
Global Const VorlaufUSD: [Vorlauf USD:15,1,200,5,100,1,3];
Global Const VorlaufOel: [Vorlauf Öl:6,1,100,5,20,1,3,I];
Global Const VorlaufRendite: [Vorlauf Rendite:38,1,200,5,100,1,3,I];
Global Const VorlaufKursUP: [Vorlauf Kurs UP:13,1,200,5,100,1,3,I];
Global Const VorlaufKursDown: [Vorlauf Kurs Down:18,1,200,5,100,1,3,I];
{ZeitraumBezug: In Abwandlung vom Original Konzept werden
statt Monaten die Kalenderwochen verwendet.}
Global Const GuenstigBeginn: [Beginn Guenstig:38,30,52,30,52,1,3,I];
Global Const GuenstigEnde:[Ende Guenstig:21,1,30,2,26,1,3,I];
{Pro Einflußfaktor nach Uwe Lang wird ein Indikator berechnet.
diese Indikatoren haben den Wert 1, wenn sie ein EnterLong
Signal geben}
Global Calc IndiUSD:
{Der USD Indikator hat den Wert 1 nach einem Tief
und 0 nach einem Hoch}
If(BarsSince(HHVBars("USD Forex EUR/US$", Close, VorlaufUSD)=0,1) > BarsSince(LLVBars("USD Forex EUR/US$", Close, VorlaufUSD)=0,1), 1, 0);
Global Calc IndiOel:
{Der Öl Indikator hat den Wert 1 nach einem Tief
und 0 nach einem Hoch}
If(BarsSince(HHVBars("CRUDE OIL -%(Pinnacle)", Close, VorlaufOEL)=0,1) > BarsSince(LLVBars("CRUDE OIL -%(Pinnacle)", Close, VorlaufOEL)=0,1), 1, 0);
Global Calc IndiRendite:
{Der Anleihen Rendite Indikator hat den Wert 1, wenn
die Umlaufendite oder die Rendite der TBonds ein Tief
melden}
If(
BarsSince(HHVBars("DE, Umlaufrendite", Close, VorlaufRendite)=0,1) >
BarsSince(LLVBars("DE, Umlaufrendite", Close, VorlaufRendite)=0,1)
or
BarsSince(HHVBars("US, Rendite 10j.Anleihen", Close, VorlaufRendite)=0,1) >
BarsSince(LLVBars("US, Rendite 10j.Anleihen", Close, VorlaufRendite)=0,1)
, 1, 0);
Global Calc Zeit:
NOT Zwischen(DatePart(ww), guenstigende, guenstigbeginn);
{die Hochs und Tiefs des Nasdaq und Dow Utilities werden
zu erst separat berechnet}
Global Calc KursN:
If(BarsSince(HHVBars("Nasdaq Composite", Close, VorlaufKursUp)=0,1) < BarsSince(LLVBars("Nasdaq Composite", Close, VorlaufKursDown)=0,1), 1, -1);
Global Calc KursU:
If(BarsSince(HHVBars("US: Dow Jones Utility", Close, VorlaufKursUp)=0,1) < BarsSince(LLVBars("US: Dow Jones Utility", Close, VorlaufKursDown)=0,1), 1, -1);
{Der Gesamtwert ergibt sich daraus, wann beide Indizes zuletzt
gemeinsam ein Enterlong oder Exitlong Signal gegeben haben}
Global Calc Kurs: If(BarsSince(KursU=1 and KursN = 1,1) < BarsSince(KursU=-1 and KursN=-1,1),1,0);
{Enterlong wird entsprechend den Vorgaben von Uwe
Lang berechnet}
Global Calc Enterlong: (((zeit + indiusd + indioel) > 1) + Indirendite + Kurs) > 1;
{Der Indikator ist eine Hilfsgöße; es ist eine Näherung an
Enterlong, die besser zu visualisieren ist }
Global Calc Indikator: zeit + indiusd + indioel + IndiRendite + Kurs;
****** EnterLong *****
Enterlong
{ende der Coding Strecke}