Registrierung Kalender FAQ & Boardregeln Suche Mitgliederliste Moderatoren und Administratoren Linkdatenbank Startseite
Tradestation User Group Germany » freie Foren » Newbies » EL Signal programmieren » Hallo Gast [registrieren|anmelden]
« Vorheriges Thema Nächstes Thema » Druckvorschau | An Freund senden | Thema zu Favoriten hinzufügen
Neues Thema erstellen Antwort erstellen
Autor
Beitrag
stisa
Member



Dabei seit: 07 2012
Herkunft:
Beiträge: 1

stisa ist offline
  EL Signal programmierenAntwort mit Zitat Beitrag editieren/löschen Nach weiteren Beiträge von  suchen Diesen Beitrag einem Moderator melden        IP Adresse Zum Anfang der Seite springen

Hallo an alle,

ich beschäftige mich erst seit kurzem mit der Programmierung in EasyLanguage und daher weiß auch noch nicht so richtig was funktioniert und was nicht. Mein folgendes Signal soll ab einer bestimmten Barnummer in vorher festgelegten Abständen zur nächsten Barnummer springen und dort testen ob die Bedingung erfüllt ist oder nicht, dann zur nächsten barnummer und wieder testen usw. hier ein kleines Beispiel

Start Barnummer = 2; Abstand = 5
nächste Barnummer 7 und dann bei barnummer 12 schauen ob beding. stimmt, dann 17 usw.

Hier das Programm dazu:

Input: ZyklusBegin(2), ZyklusLaenge(5);

Var: Start(0), Abstand(0), PatC(0), Pat(false);

Start = 0;
Abstand= 0;
PatC = 0;

Pat = (Low[2] > Low[1] and Low[1] < Low);

if CurrentBar = ZyklusBegin then
Start = CurrentBar;

if (CurrentBar > Start) and (CurrentBar = ZyklusBegin + ZyklusLaenge) then
Abstand = Currentbar - Start;

if Abstand > 0 then
while lastbaronchart = false
begin
Start = Start + Abstand;
Print(File("C:...."), CurrentDate);
if Pat then
PlotPaintBar(Low,"Pat",green);
PatC = PatC + 1;
end
else
Abstand = 0;

if lastbaronchart then
Begin
Print(File("C:..."), numtostr(PatC,0));
End;

Erst kam eine Fehlermeldung das meine MaxBarsBack nicht stimmen, das habe ich geändert und jetzt kommt entweder die Fehlermeldung, dass ich durch Null dividieren würde und das (natürlich) nicht geht oder er bricht einfach ab.
Kann mir bitte jemand helfen und sagen warum das nicht geht, ich sitze jetzt schon geschlagene 7 Tagen an dem Problem und hau mir die Nächte um die Ohren, weil es einfach nicht geht. Schon mal im Voraus vielen vielen Dank.

05.07.2012, 17:36 Profil von Füge  deiner Freunde-Liste hinzu Email an stisa senden
Klaus
Administrator



Dabei seit: 12 2001
Herkunft: Herdecke
Beiträge: 1087

Klaus ist offline
  Antwort mit Zitat Beitrag editieren/löschen Nach weiteren Beiträge von  suchen Diesen Beitrag einem Moderator melden        IP Adresse Zum Anfang der Seite springen

Hallo Stisa,

ich vermute, Du hast eine komplett falsche Vorstellung wie die TS arbeitet? Die while-Schleife in Deinem Code macht so gar keinen Sinn und führt zu unendlichen Durchläufen - bis der Indikator abbricht. Tatsächlich wird Dein (bzw. jeder) Code automatisch für jeden Bar im Chart durchlaufen und Du musst (darfst) dafür keine Schleife machen!

Weiterhin ist es nicht sinnvoll die Barnummern absolut zu verwenden, da die erste Bar im sichtbaren Chart nicht BarNumber 1 ist, sondern das abhängig von den BarsBack ist. Besser wäre es dem Chart genügend Historie zu geben und ab einem bestimmten Datum mit der Zählung der Bars zu beginnen.

Orientier Dich doch einfach mal an den vorhandenen Indikatoren, die sind alle im ELA-Code vorhanden und man kann sie sich anschauen...

Gruss
-Klaus

08.07.2012, 16:30 Profil von Füge  deiner Freunde-Liste hinzu Email an Klaus senden
  « Vorheriges Thema Nächstes Thema »
Neues Thema erstellen Antwort erstellen
Gehe zu:

Powered by: Burning Board 1.1.1 © 2001 WoltLab GbR