Einzelnen Beitrag anzeigen
  #1 (permalink)  
Alt 14.01.19
Flocky Flocky ist offline
Neues Mitglied
 
Registriert seit: Sep 2017
Beiträge: 6
Flocky befindet sich auf einem aufstrebenden Ast
Unhappy EA - Smash-Day von Larry Williams

Hallo Leute,

ich habe heute versucht, meinen ersten EA zu programmieren.
Ich wollte den Smash-Day von Larry Williams testen.

Aber der Strategietester hängt sich immer auf und beendet den Test nicht.

Kann mir jemand helfen, warum das so ist?

Vielen Dank!
Flocky

Hier der Code:

Code:
//+------------------------------------------------------------------+
//|                                      smash-day            |
             |
//+------------------------------------------------------------------+
#property copyright ""
#property link      ""
#property version   "1.00"
#property strict

//Globale externen Variablen


extern double HandelsLots = 1;
extern double SL_inPunkten = 20;
extern double TP_inPunkten = 20;
extern int MagicNummer = 1974;

//Globale Variablen
datetime PeriodenStartZeit;
bool NeuePeriodeBegonnen;
bool LongSignal;
bool ShortSignal;
int LongOrder;
int ShortOrder;
double TakeProfit;
double StoppLoss;
bool OrderAngepasst;
bool LongOrderGeclosed;
bool ShortOrderGeclosed;


//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---
      PeriodenStartZeit = Time[0];
//---
   return(INIT_SUCCEEDED);
  }
  
  
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
//---
   
  }
  
  
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
//---
      //Überprüfen ob neuer Periodenbeginn vorliegt
      if (PeriodenStartZeit != Time[0])
        {
            NeuePeriodeBegonnen = true;
            PeriodenStartZeit = Time[0];
        }
     else NeuePeriodeBegonnen = false;
 
      
      
      //Handelssignale ermitteln
      if(NeuePeriodeBegonnen == true)
         {
            //Buy Signal
            if(iClose(NULL,0,0) < iLow(NULL,0,1))
              {
                  LongSignal = true;
              }
            else LongSignal = false;
         }
      else
         {
            LongSignal = false;
            ShortSignal = false;
         }
     
     
      //Long Signale umsetzen
      if(LongSignal == true)
         {  
                TakeProfit = iHigh(NULL,0,1)+TP_inPunkten;
                StoppLoss = iHigh(NULL,0,1)-SL_inPunkten;
        
           //Long Order eröffnen
           while(LongOrder<=0)
             {

                LongOrder = OrderSend(Symbol(),OP_BUYSTOP,HandelsLots,iHigh(NULL,0,1),10,StoppLoss,TakeProfit,"Longorder eröffnet",MagicNummer,0,Green);
                   }
           //Alarm ausgeben
             {
                Alert("Long-Trade wurde gestartet!");
             }        
         }

        
       //Ticketnummern nach Closing auf 0 zurück setzen
       if(OrderSelect(LongOrder,SELECT_BY_TICKET) == true)
         {
           if(OrderTicket()>0 && OrderCloseTime()>0) LongOrder=0;
           
         }
         
      
 }
//+------------------------------------------------------------------+