Einzelnen Beitrag anzeigen
  #3 (permalink)  
Alt 10.03.18
Ceo Ceo ist offline
Mitglied
 
Registriert seit: Jan 2018
Beiträge: 47
Ceo befindet sich auf einem aufstrebenden Ast
Standard

Ich hab mir mal paar Anleitungen angeschaut und mal denn Code verbessert.

Code:
int LongTicket = 0;
extern int StopLoss = 1000;


void OnTick()
{
  double StopLossLevel;
  
  StopLossLevel = Bid - StopLoss*Point;
  
  //---
  
 bool Ord = OrderSelect(LongTicket,SELECT_BY_TICKET);
  if(OrderCloseTime() != 0 || LongTicket == 0)
   {
   if(Open[2] < Close[2] && Open[1] < Close[1])
   {
   
  LongTicket = OrderSend(Symbol(),OP_BUY,1.0,Ask,0,StopLossLevel,0.0,"Buy Order");
  
  if(LongTicket < 0)
   {
    Print("Error");
    
   }
   else
     {
      Print(" Ticket # ist: " +string(LongTicket));
     }
   }
   }

   //---
   double val; 
   int val_index=iLowest(NULL,0,MODE_LOW,14,4); 
   if(val_index!=-1) val=Low[val_index]; 
   else PrintFormat("Error in call iLowest. Error code=%d",GetLastError());
   
   Comment("Low ist: ",val_index);
      
    //---
  
            
         
       
      
      
      
   //---
  if(Volume[0]==1)
  if(LongTicket > 0)
  if(StopLossLevel < val_index)
   {
    bool res=OrderModify(OrderTicket(),OrderOpenPrice(),val_index,0,0,clrAliceBlue); 
    if(!res)
      Print("OrderModify ERROR. ErrorPR: ",GetLastError());
      else
        {
         Print("OrderModify hat funktioniert!");
        }
   }
Jetzt hab ich nur das Problem ich möchte gerne bei Korrekturen das Stoploss nachziehen aber das kommt bei mir nicht ganz hin mit dem ZIGZAG Indikator geht es irgendwie nicht weil die "value" immer falsch ist jetzt möchte ich es mit iLowest probieren aber das bekomme ich auch nicht so ganz hin was mache ich falsch?