[ARCHIV!] Alle Fragen von Anfängern, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Ohne dich kann ich nirgendwo hingehen - 4. - Seite 491

 
pavel888:
Können Sie mir bitte sagen, ob es möglich ist, einen Multi-Currency Expert Advisor auf MT4 zu machen, so dass ich ihn nicht auf jedes Paar separat setzen würde, sondern nur auf einen Chart.

Ja.

 
merkulov.artem:
Guten Abend, Frage: Wenn ich einen EA verwende. Kann mein Maklerunternehmen den Algorithmus seiner Arbeit und die Art und Weise, wie er Werte berechnet (Indikatoren, Analyse historischer Daten), d.h. den gesamten Code des Expert Advisors einsehen? Oder erhält das Maklerunternehmen nur Informationen über Befehle: Eröffnung, Änderung und Schließung von Positionen?
Nein, der DC kann nicht in den Arbeitsprozess des Expert Advisors eingreifen. Der Server der Maklerfirma empfängt nur Befehle von Ihrem MT (Kauf, Verkauf usw.).
 
guys!!!!!! wo kann ich einen einfachen MA-Berater für das Kreuzen von 2 Linien auf den neuesten Daten herunterladen? die meisten von ihnen arbeiten auf der durchschnittlichen Linie, die von der Kursgeschichte genommen wird. und vorzugsweise der gleiche Indikator
 
bikrus13:
guys!!!!!! wo kann ich einen einfachen MA-Berater für das Kreuzen von 2 Linien nach den neuesten Daten herunterladen? die meisten von ihnen arbeiten auf der durchschnittlichen Linie, die aus der Kursgeschichte genommen wird. und vorzugsweise der gleiche Indikator
Was meinen Sie mit "aktuellen Daten"? Die neuesten Daten sind was. Nicht aus der Geschichte, sondern aus der Zukunft?) Was sind die neuesten Daten? Ich bin nur neugierig, weil ich zum ersten Mal davon "höre".
 
kakin:
Was meinen Sie mit "aktuelle Daten"? Was sind die neuesten Daten? Spezifizieren. Ich bin nur neugierig, weil ich zum ersten Mal davon "höre".

Zum Beispiel, wenn Sie die Geschichte aus dem Terminal vollständig zu löschen. wenn Sie ein Diagramm zu öffnen, müssen Sie Ihre eigenen Geschichte, indem Sie zurück in die Vergangenheit zu erstellen. in diesem Fall ist die durchschnittliche Komponente beginnt bei Null auf dem Datum der Geschichte begann. es ist etwa zwei Monate. wenn Sie MA mit einer Periode von 1000 in der Ein-Minuten-Chart mit einer Woche und einem Monat Geschichte nehmen, werden sie abweichen. das ist das Problem. wenn Sie einen Indikator auf der Grundlage der neuesten Notierungen Daten erstellen, wird es mehr wahrheitsgemäß zeigen
 

Können Sie mir sagen, ob es möglich ist, dem EA das Senden von Druckern zum richtigen Zeitpunkt auf einem Demochart zu verbieten? Vielleicht sogar, indem man sie aus der Tabelle entfernt. Ich denke, diese Funktion wird es nicht vollständig stoppen, nur bis zum nächsten Tick, oder wird es aufhören? BreakPoint();

void BreakPoint(){//if (!IsVisualMode()) return(0);
keybd_event(19,0,0,0);
Sleep(10);
keybd_event(19,0,2,0);}                    
 
Offensichtlich wird er nicht gestoppt, aber ist es überhaupt möglich, den Roboter zum richtigen Zeitpunkt programmgesteuert aus dem Diagramm zu entfernen?
 
bikrus13:

Zum Beispiel, wenn Sie die Geschichte aus dem Terminal vollständig zu löschen. wenn Sie ein Diagramm öffnen, müssen Sie Ihre eigenen Geschichte durch Scrollen in der Zeit zurück zu erstellen. die durchschnittliche Komponente beginnt bei Null auf das Datum der Geschichte begann. es ist etwa zwei Monate. wenn Sie eine MA mit einer Periode von 1000 in der Ein-Minuten-Chart mit einer Woche und Monat Geschichte nehmen, werden sie unterschiedlich sein. das ist das Problem. wenn Sie einen Indikator mit den neuesten Notierungen Daten erstellen, wird es mehr wahrheitsgemäß zeigen
))))))))) Ich kann Ihnen nur raten, sich im Internet über den gefürchteten gleitenden Durchschnitt und dessen Berechnung zu informieren. Legen Sie einen Schwerpunkt auf die Untersuchung des Mittelungszeitraums. Ich weiß, dass es für das Gehirn sehr anstrengend ist, aber viele Fragen werden von selbst verschwinden.
 

Ich lerne gerade, wie man einen EA in Bezug auf das Verständnis des Quellcodes schreibt, da der EA sehr gut geschrieben ist.

Aber eine Sache ist dort seltsam.

void FindOrders()
{
// - 1 - == Инициализация переменных перед поиском ======================================
   int total = OrdersTotal() - 1;
   g_type = -1;                                    // На текущий момент у нас нет позиций
// - 1 - == Окончание блока =============================================================
 
// - 2 - == Непосредственно поиск =======================================================
   for (int i = total; i >= 0; i--)                // Используется весь список ордеров
      if (OrderSelect(i, SELECT_BY_POS))           // Убедимся, что ордер выбран
         if (MathFloor(OrderMagicNumber()) == i_magicNumber &&// Ордер открыт
             OrderSymbol() == Symbol())            // ..экспертом, который прикреплен к..
         {                                         // ..текущей паре
            g_ticket = OrderTicket();              // Запишем данные ордера
            g_type = OrderType();
         } 
// - 2 - == Окончание блока =============================================================
}

Warum wird die Anzahl aller AufträgeOrdersTotal() - 1 zugewiesenund nicht nurOrdersTotal()?

Denn wenn wir insgesamt 0 Aufträge haben, dann ist der Wert von total -1 statt 0.

 
hoz:

Ich lerne gerade, wie man einen EA in Bezug auf das Verständnis des Quellcodes schreibt, da der EA sehr gut geschrieben ist.

Aber eine Sache ist dort seltsam.

Warum wird die Anzahl aller AufträgeOrdersTotal() - 1 zugewiesenund nicht nurOrdersTotal()?

Denn wenn wir insgesamt 0 Aufträge haben, dann ist der Wert von total -1 statt 0.

Prüfen Sie anschließend, wo die Summe verwendet wird. Höchstwahrscheinlich wird dann eine Schleife durch die Aufträge gezogen for (i=0; i<=Gesamt; i++).