Einzelnen Beitrag anzeigen
  #19 (permalink)  
Alt 12.01.17
traderdoc traderdoc ist offline
Elite Mitglied
 
Registriert seit: Apr 2011
Beiträge: 2.735
traderdoc befindet sich auf einem aufstrebenden Ast
Standard

Mal was prinzipielles: Wenn man die Kreuzung bzgl. der Kerze [1] und Kerze [2] betrachtet, dann braucht man
1. die for-Schleife nicht vom Index 0 aus laufen zu lassen, denn die Indikator-Werte der aktuellen Kerze [0] interessieren ja nicht.
2. die Abfrage nach der Kreuzung auch nicht mit jedem Tick machen, sondern es reicht aus, diese Abfrage einmalig direkt nach dem Kerzenwechsel vorzunehmen.
Dazu baut man folgendes ein:

datetime OldBar; //Deklaration der Einfachheit in den globalen Variablen

In der OnTick()-Funktion steht dann am Anfang:

Code:
if (OldBar != Time[0]) {
   //von hier aus wird die Funktion der Ermittlung der Indikatorwerte und die der Überprüfung angesprungen
   //bei Bedarf wird dann je nach Kreuzungsergebnis weiter verfahren
   OldBar = Time[0];
}
Die Kreuzung als solche zwischen dem Main- und dem Signal des Stochastic funktioniert in der Regel so:

if (M2 > S2 && M1 < S1)
bzw.
if (M2 < S2 && M1 > S2)

traderdoc
__________________
Ich erfülle Euch gern Eure EA-, Indikator- und Script-Programmierungswünsche auf Honorarbasis.