Einzelnen Beitrag anzeigen
  #1 (permalink)  
Alt 06.04.18
Neueinsteiger Neueinsteiger ist offline
Neues Mitglied
 
Registriert seit: Mar 2018
Beiträge: 14
Neueinsteiger befindet sich auf einem aufstrebenden Ast
Standard Buystop und Sellstop an horizontalen Linien

Hallo zusammen,

ich habe Dank traderdoc und next user es nun geschafft das meine beiden horizontalen Linien auf dem Chart zu sehen sind und sich auch nach oben und unten verschieben lassen.

Als nächstes möchte ich lernen, wie kann ich gleichzeitig eine Buystop und Sellstop Order an die "obereLinie" bzw "untereLinie" setzen. Habe gelesen - probiert und studiert - aber komme nicht mehr weiter.

Ist offenbar für einen Neueinsteiger vllt doch eine Nummer zu groß. Trotzdem möchte ich es gerne lernen, würde auch gerne Unterricht nehmen - vllt wäre traderdoc oder next user bereit (gegen Bezahlung natürlich) einem Oldie wie mir ein paar Stunden zu geben.

Und bis hier bin ich - denke ist etwas Chaos drin -

Danke[HTML]//setze Lotgroesse
double LotGroesse=0.01;

void OnTick()
{


// finde den hoechsten Preis fuer 30 Kerzen
double HighestPrice = High[iHighest(NULL,0,MODE_HIGH,30,0)];

// Erstelle eine horizontales Linien-Objekt fuer Hoechstpreis ("ObereLinie")
ObjectCreate("ObereLinie",OBJ_HLINE,0,0,HighestPri ce);

// Setze die Objektfarbe
ObjectSetInteger(0,"ObereLinie",OBJPROP_COLOR,clrG old);

// Setze Linienbreite
ObjectSetInteger(0,"ObereLinie",OBJPROP_WIDTH, 3);



// finde den niedrigsten Preis fuer 30 Kerzen
double LowestPrice = Low[iLowest(NULL,0,MODE_LOW,30,0)];

// Erstelle ein horizontales Linien-Objekt fuer Niedrigstpreis ("UntereLinie)
ObjectCreate("UntereLinie",OBJ_HLINE,0,0,LowestPri ce);

// Setze die Objektfarbe
ObjectSetInteger(0,"UntereLinie",OBJPROP_COLOR,clr Gold);

// Setze Linienbreite
ObjectSetInteger(0,"UntereLinie",OBJPROP_WIDTH,3);



// automatische Order aufgeben mit TP und SL





// Wenn aktueller Preis groesser oder gleich Hoechstpreis
if (Close[0] >= HighestPrice)

// Wenn keine offenen Orders existieren
if (OrdersTotal()==0)
{
// Kaufe LotGroesse zum Askpreis, 3 Punkte Toleranz,Stop 300 Punkte unter Bid, Take Profit 150 Punkte ueber Ask
int buyticket = OrderSend(Symbol(),OP_BUY,LotGroesse,Ask,3,(Bid-300*_Point),(Ask+150*_Point),NULL,NULL,0,Green);
}

// Wenn aktueller Preis kleiner oder gleich Niedrigstpreis
if (Close[0] <= LowestPrice)

// Wenn keine offenen Orders existieren
if (OrdersTotal()==0)
{
// Verkaufe LotGroesse zum Bidpreis, 3 Punkte Toleranz,Stop 300 Punkte ueber Ask, Take Profit 150 Punkte unter Bid
int sellticket = OrderSend(Symbol(),OP_SELL,LotGroesse,Bid,3,(Ask+3 00*_Point),(Bid-150*_Point),NULL,NULL,0,Green);



}
//+------------------------------------------------------------------+
HTML-Code:
input double Magic             = 1111;  //Magic Number


double LotSize;                                 
int ticket1;  // L 0.01                          
int ticket2;  // S 0.01
                               
//---                                           

             
                                                
//+------------------------------------------------------------------+
//| expert initialization function                                   |
//+------------------------------------------------------------------+
int init()
  {
//----

//----
   return(0);
  }
//+------------------------------------------------------------------+
//| expert deinitialization function                                 |
//+------------------------------------------------------------------+
int deinit()
  {
//----

//----
   return(0);
  }
//+------------------------------------------------------------------+
//| expert start function                                            |
//+------------------------------------------------------------------+
int start()
  {

//---Erkenne "obereLinie" und "untereLinie"
   int total=OrdersTotal();
   t=0;
   for(int i=total-1;i>=0;i--)
     {
      OrderSelect(i,SELECT_BY_POS);
      int type=OrderType();
      if(( OrderSymbol()==Symbol()) && (OrderMagicNumber()==Magic))
        {

         switch(type)
           {
            case OP_BUY       : t=1;
            case OP_SELL      : t=1;
            case OP_BUYLIMIT  : t=1;
            case OP_BUYSTOP   : t=1;
            case OP_SELLLIMIT : t=1;
            case OP_SELLSTOP  : t=1;
           }
        }
     }
   if(t<1)
     {
                                         
      
      
      
      
      
      
      //Öffne gleichzeitig zwei Pending Orders
      double t1 = Ask + PipsAway * Point; //BuyStop Entry Punkt
      double t2 = Bid - PipsAway * Point; //SellStop Entry Punkt
      
      
      
     // ticket1 = OrderSend( Symbol(),OP_BUYSTOP,LotSize,t1, Slippage,sl1,tp1,Magic,0,White);
      ticket1 = OrderSend( NULL,OP_BUYSTOP,0.01,t1,3,25,10,NULL,0,0,White);
      ticket2 = OrderSend( Symbol(),OP_SELLSTOP,LotSize,t2, Slippage, sl2,tp2,Magic,0,White);
     }
   
   
   
   
   
   
  
   return(0);
  }