Ich lerne gerade, einen Ratgeber zu schreiben... - Seite 2

 
Figar0 >> :

...Für den Nicht-Programmier-Anfänger könnte es einen Unterschied machen...

)) Das ist ein großes Wort für mich! Ich bin erst seit 2,5 Jahren im Devisenhandel tätig... Während dieser ganzen Zeit habe ich 2 Mal verdient: 1. Mal auf Demo (ich habe meine Einzahlung 50 Mal erhöht), 2. Mal auf echtem Konto (das Ergebnis ist bescheidener)

Ich habe nur eine Schlussfolgerung gezogen: Es gibt keine Disziplin! Ich habe beschlossen, zu versuchen, etwas zu schreiben, das nicht von meinen Gefühlen abhängt).

 
rid >> :

Und damit Sie schneller denken können, lassen Sie bitte zuerst Ihren Experten ALLE TICS und das Ergebnis hier durchlaufen.

Der Test ging trotzdem durch alle Zecken! Sie können es auf den Bildern sehen...

 

Ich scheine in diesem Code etwas durcheinander gebracht zu haben...

void ClosePos()
   {
      double pp;

        if (OrderType()==OP_BUY)
          {
            pp=MarketInfo(OrderSymbol(), MODE_BID);
            OrderClose( OrderTicket(), OrderLots(), Bid, 0, Blue);
          }
        if (OrderType()==OP_SELL)
          {
            pp=MarketInfo(OrderSymbol(), MODE_ASK);
            OrderClose(OrderTicket(), OrderLots(), Ask, 0, Red);
          }
   }


Ich erhalte immer wieder einen Fehler im Protokoll...

ungültiges Ticket für OrderClose-Funktion
OrderClose-Fehler 4051
OrderSend-Fehler 130

Diese Prüfung zum Schließen erfolgt vor dem entgegengesetzten Eingangssignal...

wenn es ein Kaufsignal gibt

(OrderType()==OP_BUY)
Schließen Sie den aktuellen Verkauf

OrderClose( OrderTicket(), OrderLots(), Bid, 0, Blue)

Und andersherum...

Aber das ganze Protokoll füllt sich mit einer Fehlermeldung...

Es sieht so aus, als ob es bei jedem Tick zu schließen versucht... Aber es gibt keine Bedingungen...



 
Wo ist OrderSelect?
 
Ich weiß es nicht. Deshalb bin ich hier... um es richtig zu machen...
 
sergeev >> :
Wo ist OrderSelect?

Lesen Sie über diese Funktion... umgewandelt in diese Variante:

void ClosePos()
   {
      double pp;
        if (OrderSelect(0, SELECT_BY_POS)==true) // Если есть открытый ордер
            { 
               if (OrderType()==OP_BUY)
                  {
                  pp=MarketInfo(OrderSymbol(), MODE_BID);
                  OrderClose( OrderTicket(), OrderLots(), Bid, 0, Blue);
                  }
               if (OrderType()==OP_SELL)
                  {
                  pp=MarketInfo(OrderSymbol(), MODE_ASK);
                  OrderClose(OrderTicket(), OrderLots(), Ask, 0, Red);
                  }
            }      
   }
 

Es hätte mir gefallen, wäre da nicht die Qualität der Modellierung gewesen.

 
Wovon hängt es ab?
 

suchen, müssen Sie den Verlauf herunterladen und neu berechnen

 
ALex2008 писал(а) >>
Wovon hängt es ab?

Laden Sie Minuten-Kerzen herunter (z.B. von Alpari) und testen Sie mit Minuten-Kerzen.

Sie können einen Stopp von 5 Pips nicht an 4-Stunden-Kerzen testen.