FOREX - Trends, Prognosen und Auswirkungen 2016 - Seite 721

 
DerZeitpunkt der Eröffnung der Kerze wahrscheinlich nicht übereinstimmen, weil der kleine Abstand auf der realen M1, aber warum das Terminal nicht zeichnen die Eröffnung Zeichen, eine Menge von Störungen natürlich, ich habe mich daran gewöhnt, so habe ich zu beobachten, einen Tag oder mehr und analysieren die Nuancen...)
 
Vladimir Zubov:

Rena! Der Witz an der Sache ist, dass ich bei einer Kerze keine Öffnung haben kann, da ist ein eiserner Haken dran. Warum gibt es eine solche Situation aufgrund der Lücke in den Kerzenleuchtern? Ich habe nicht einmal das Eröffnungssymbol im Screenshot, sondern das Terminal hat die Position geschlossen.

Als eine Version...

Erstens bedeutet das 5-stellige Symbol eine große Anzahl von Ticks und die Anzahl der Ausführungszyklen desselben Algorithmus. Es ist richtig, dass bei einem GEP aufgrund einer starken Änderung des Eröffnungskurses eines Auftrags ein Fehler auftreten kann. Der Auftrag wurde nicht geöffnet, der Algorithmus hat den Fehler nicht behandelt und der zweite Auftrag folgt. Und die erste könnte nach der ersten geöffnet worden sein. Achten Sie auf den Zeitpunkt der Auftragseröffnung.

 
new-rena:

Wie eine Version von...

Zunächst einmal handelt es sich um einen 5-stelligen Wert, was eine Menge Ticks und die Anzahl der Ausführungen desselben Algorithmus bedeutet. Es ist richtig, dass bei einem GEP aufgrund einer starken Änderung des offenen Preises eines Auftrags ein Fehler auftreten kann. Die Bestellung wurde nicht geöffnet, der Algorithmus hat den Fehler nicht verarbeitet und hier ist die zweite Bestellung.

Version von was? MT4 988

Code unter #property strict

Ich verarbeite nur den ersten Tick einer Candlestick-Eröffnung, ist diese Konstruktion korrekt?

//=============== Переменные =========================================

int prev_time = 0; // Arbeiten mit Candlestick-Eröffnungskursen

void OnTick()

{//Start-

======= Arbeit mit offenen Candlestick-Kursen ============================

if ( Time[0] <= prev_time ) {return;}

prev_time = (int)Time[0];

}//Start Ende-.

 
Vladimir Zubov:
Version von was? MT4 988
Version der Ursache für den von Ihnen beschriebenen Chip.
 
Vladimir Zubov:

...

Code unter #property strict

Dies ist eine Code-Fehlerprüfung, keine OrderSelect-Fehlerbehandlung. Haben Sie eine OrderSelect-Fehlerbehandlungsfunktion in Ihrem Code?
 
new-rena:
Hier wird auf Fehler im Code geprüft, nicht auf Fehler bei der Verarbeitung des OrderSelect-Befehls. Verfügen Sie über eine OrderSelect-Fehlerbehandlung in Ihrem Code?

als Kerzenständer hinzugefügt, vielleicht ist es das?

Aber es gab keine Diskotheken und keine Wiederinbetriebnahme des Terminals. Beim Neustart, ich weiß, dass die Methode nicht korrekt ist, kann in der Mitte einer Kerze zu öffnen, aber auf M1 ist es nicht so wichtig, und es gab keinen Neustart.

 
new-rena:
Dies ist eine Prüfung auf Fehler im Code, nicht auf Verarbeitungsfehler des OrderSelect-Befehls. Verfügen Sie über eine OrderSelect-Fehlerbehandlung in Ihrem Code?

OrderSelect ist mein Wächter für Kims Funktionen, so dass es keine Öffnung auf der Kerze gibt, scheint es kein Problem zu sein.

//+----------------------------------------------------------------------------+
//|  Автор    : Ким Игорь В. aka KimIV,  http://www.kimiv.ru                   |
//+----------------------------------------------------------------------------+
//|  Версия   : 19.02.2008                                                     |
//|  Описание : Возвращает номер бара открытия последней позиции или -1.       |
//+----------------------------------------------------------------------------+
//|  Параметры:                                                                |
//|    sy - наименование инструмента   ("" или NULL - текущий символ)          |
//|    tf - таймфрейм                  (    0       - текущий таймфрейм)       |
//|    op - операция                   (   -1       - любая позиция)           |
//|    mn - MagicNumber                (   -1       - любой магик)             |
//+----------------------------------------------------------------------------+
int NumberOfBarOpenLastPos(string sy="0", int tf=0, int op=-1, int mn=-1) {
  datetime t=0;
  int      i, k=OrdersTotal();

  if (sy=="" || sy=="0") sy=Symbol();
  for (i=0; i<k; i++) {
    if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
      if (OrderSymbol()==sy) {
        if (OrderType()==OP_BUY || OrderType()==OP_SELL) {
          if (op<0 || OrderType()==op) {
            if (mn<0 || OrderMagicNumber()==mn) {
              if (t<OrderOpenTime()) t=OrderOpenTime();
            }
          }
        }
      }
    }
  }
  return(iBarShift(sy, tf, t, True));
}
//End

Hier geht es nicht um die Funktion, sondern um die Feinheiten der Arbeit in der realen Welt.

 
Vladimir Zubov:

als Kerzenständer hinzugefügt, vielleicht ist es das?

Aber es gab keine Diskotheken und keine Wiederinbetriebnahme des Terminals. Beim Neustart weiß ich, die Methode ist nicht korrekt, kann in der Mitte einer Kerze zu öffnen, aber auf M1 ist es nicht so wichtig, und es gab keinen Neustart.

Das werden Sie bei jedem Ticken haben. Verwenden Sie iTime(...PERIOD_XX...). Wenn Sie das so machen, funktioniert es nur bei der Öffnung einer Kerze des von Ihnen angegebenen TF. Wenn der Befehl zum Öffnen/Schließen der Order jedoch einen Fehler ergibt, wiederholt der Roboter ihn in einem neuen Candlestick.

Oder iTime(...Period()...). - Dies gilt für die aktuelle TF, d.h. diejenige auf dem Diagramm, auf der sich der EA befindet

 
Vladimir Zubov:

OrderSelect ist mein Wächter für Kims Funktionen, so dass es keine Öffnung auf der Kerze gibt, scheint es kein Problem zu sein.

Es geht definitiv nicht um die Funktion, sondern um die Feinheiten der Arbeit am Realen.

charge....

Ich brauche es nicht wirklich...

 
new-rena:

Gerüst aus Holzkohle....

Ich brauche das nicht in der Realität...

1. wie man eine neue Candlestick-Steuerung zu machen, so dass eine Iteration am ersten Tick ist?

Ich scheine diesen Code zu haben, um die Auslösung bei der Öffnung der Kerze zu steuern :(

2. Warum nicht, es geht um Kims Funktion, den Balken einer offenen Position zu bestimmen?

P/S Hat MT4 gedreht, jetzt muss ich alles noch einmal schreiben ...