Fragen von Neueinsteigern zu MQL4 und MQL5, Hilfe und Diskussion über Algorithmen und Codes - Seite 811

 
Artyom Trishkin:
Haben Sie eine Kurve? Es ist nie zu spät, etwas zu lernen.

Eher ein Thema aus der Kategorie: Ich möchte mehr Wirkung erzielen und die Programme kompakter und strukturierter gestalten, was letztlich die Leistung der Programme verbessert.

 
Wie kann ich die Variablenadresse und das Indexelement einer Array-Zelle zurückgeben?
 
Seric29:
Wie gibt man die Adresse einer Variablen und eines Array-Zellenindexelements zurück?

https://docs.mql4.com/ru/basis/types/this

MQL-Programme haben keinen physischen Zugriff auf den Speicher, sie können nur einen Zeiger auf ein Objekt erhalten

Ссылки. Модификатор & и ключевое слово this - Типы данных - Основы языка - Справочник MQL4
Ссылки. Модификатор & и ключевое слово this - Типы данных - Основы языка - Справочник MQL4
  • docs.mql4.com
В MQL4 параметры простых типов можно передавать как по значению, так и по ссылке, в то время как параметры сложных типов всегда передаются по ссылке. Для указания компилятору на необходимость передачи параметра по ссылке, перед именем параметра ставится знак амперсанда Передача параметра по ссылке означает передачу адреса переменной, поэтому...
 

Bitte beraten Sie meine Freunde. Ich erhalte Requotes auf dem MT5 mit Marekt Execution.

Wie bearbeite ich diesen Fehler korrekt, um einen Handel zu eröffnen? Ich verstehe, dass mein Broker die Anfrage zurückschickt, das Geschäft bei 1,12875 zu eröffnen? Wie gehen Sie damit um?

CTrade::OrderSend: instant buy 0.01 EURUSD at 1.12879 sl: 1.12655 tp: 1.14879 [requote (1.12875/1.12881)]

 
Yury Smagin:

Bitte beraten Sie meine Freunde. Ich erhalte Requotes auf dem MT5 mit Marekt Execution.

Wie bearbeite ich diesen Fehler korrekt, um einen Handel zu eröffnen? Ich verstehe, dass mein Broker die Anfrage zurückschickt, das Geschäft bei 1,12875 zu eröffnen? Wie gehen Sie damit um?


Anfrage

   uint              ResultRetcode(void)                   const { return(m_result.retcode);            }
und entscheiden Sie über den Fehlercode. Aktualisieren Sie die Preise und versuchen Sie es erneut.
 

Hallo, während des Testens, identifizierte ich eine Situation, die mir nicht klar ist, wenn die Einstellung der Zeitrahmen des Graphen M30, Eintrag nicht auf die Reihenfolge passieren, wenn die Einstellung M1, Eintrag ist, in den Einstellungen ist die Prüfung auf jedem Tick. Ich dachte, dass diese Einstellung keinen Einfluss auf das Zeitrahmen-Diagramm hat und ich die Einstellung wählen kann, mit der ich mich bei der Überprüfung der Testergebnisse wohlfühle. Bitte helfen Sie mir zu verstehen.

Ich schreibe es auf. Ich habe gerade die Tests durchgeführt:

- Einstellung jedes Ticks, keine Visualisierung, 1M: Bruttogewinn 17695, Bruttoverlust -19836

- Einstellung jedes Ticks, ohne Visualisierung, 30M: Bruttogewinn 17634, Bruttoverlust -19227


Тестирование стратегий - Алгоритмический трейдинг, торговые роботы - MetaTrader 5
Тестирование стратегий - Алгоритмический трейдинг, торговые роботы - MetaTrader 5
  • www.metatrader5.com
Тестер стратегий позволяет тестировать и оптимизировать торговые стратегии (советники) перед началом использования их в реальной торговле. При тестировании советника происходит его однократная прогонка с начальными параметрами на исторических данных. При оптимизации торговая стратегия прогоняется несколько раз с различным набором параметров...
 
Igor Makanu:

MQL-Programme haben keinen physischen Zugriff auf den Speicher, sie können nur einen Zeiger auf ein Objekt erhalten

Das ist schlecht - deshalb haben wir all die Probleme. Und wie kann man sie bekommen, was kann man tun? Soweit ich weiß, ist es möglich, auf den Deskriptor zuzugreifen, aber ich weiß nicht, wie ich die Adresse der Speichervariablen über den Deskriptor beeinflussen kann. Ist es möglich, dies mit einem Deskriptor zu tun?

 

Gestern habe ich eine Aufzeichnung in folgendem Format erstellt.

int mas[0]=4,mas[1]=3;dann habe ich ein Array deklariert und versucht, es mit den Werten zu füllen, die in den Zellen dieses Arrays gespeichert sind

int Arr[]={mas[0],mas[1]}

und was denken Sie, wie hoch der Fehler sein wird. Wenn ich einen Vorschlaghammer zur Hand hätte, würde ich den Computer damit zertrümmern, nach Amerika oder sonst wohin gehen, diese idiotischen Entwickler finden, die mql eine Menge Beschränkungen auferlegen, und sie damit zertrümmern, es ist schrecklich. Sie können nur schreiben

int Arr[]={4,3} ist alles so statisch, dass es furchtbar ist.

Wer weiß, wie man einen Brief an die mql4-Entwickler schreibt, ist es möglich, auf Russisch zu schreiben, gibt es einen technischen Support-Service?

 
Seric29:

Das ist schlecht, das ist der Grund für all die Probleme. Und was kann man tun, um sie zu bekommen? Soweit ich weiß, gibt es eine Möglichkeit, auf den Deskriptor zuzugreifen, aber ich weiß nicht, wie ich die Speicheradresse der Variablen über den Deskriptor beeinflussen kann. Ist es möglich, dies mit einem Deskriptor zu tun?

Es gibt kein Problem

MQL ist zu 90 % wie C++, es gibt keine direkte Arbeit mit dem Speicher, wie z. B. die Zuweisung von Speicher, die Arbeit mit Speicher über Zeiger usw., da MQL unter der Kontrolle des Terminals arbeitet und kein unabhängiges Programm im Betriebssystem ist.

Wenn Sie einen Wert an eine Funktion übergeben müssen, übergeben Sie ihn als Wert oder als Referenz

https://www.mql5.com/ru/docs/basis/function


Zeiger werden nur bei der Arbeit mit Klassen verwendet


Sie sind auf der Suche nach einem kugelförmigen Pferd in einem Vakuum für mehrere Tage, gibt es eine bestimmte Aufgabe - es wird eine spezifische Umsetzung, MQL ist eine recht flexible Sprache, mit reicher Funktionalität und bietet eine vollständige Interaktion mit dem MT-Handels-Terminal - Holen und Verarbeiten von historischen Daten, Senden von Handels-Befehle, um Informationen über ein Handelsinstrument.... alle für den Handel erforderlichen Informationen

Wenn Sie in einer Software eines Drittanbieters schreiben müssen, unterstützt MQL die Verbindung von .dll - suchen Sie im Forum - es gibt etwa 20 Artikel zu diesem Thema

Документация по MQL5: Основы языка / Функции
Документация по MQL5: Основы языка / Функции
  • www.mql5.com
Всякая задача может быть разбита на подзадачи, каждую из которых можно либо непосредственно представить в виде кода, либо разбить на еще более мелкие подзадачи. Данный метод называется определения функции. Заголовок функции включает в себя описание типа возвращаемого значения, имени (идентификатора) и формальных параметров.  Количество...
 
Igor Makanu:

https://docs.mql4.com/ru/basis/types/this

MQL-Programme haben keinen physischen Zugriff auf den Speicher, sie können nur einen Zeiger auf ein Objekt erhalten

Ich habe dieses Thema gelesen, die Beschreibung ist sehr überladen und natürlich verstehe ich es nicht richtig. Die Beschreibung, wie man auf die Klasse zugreift, wie man die Klasse aufruft, auf welche ihrer Mitglieder zugegriffen werden soll oder wie man das ganze Formular aufruft oder über einen Punkt zugreift, ist nicht klar, wie man die Klasse separat oder innerhalb beschreiben kann, und viele andere Dinge scheinen vorhanden und cool zu sein, aber es ist nicht klar, wie es funktioniert. Wollen Sie damit sagen, dass man über eine Klasse und ein kaufmännisches Und auf eine Adresse zugreifen kann (das ist das Deskriptor-Prinzip, das über einen Prototyp als Vermittler funktioniert)?