Die Sprache MQL5 von Grund auf selbst erlernen - Seite 69

 
MrBrooklin:

Wenn das Handbuch der MQL5-Programmiersprache es gleich so geschrieben hätte:

dann gäbe es nicht so viele unnötige Fragen. Zumindest würden Anfänger weniger Fragen haben.

Mit freundlichen Grüßen, Vladimir.

Dort ist alles gut geschrieben. Wenn keine Klammern vorhanden sind, bezieht sich die for-Anweisung nur auf den nächsten Ausdruck.
Sie sind nicht dumm, versuchen Sie, jemanden in Ihrem Alter zu finden, der das Programmieren von Grund auf lernen will.
 
Aliaksandr Hryshyn:
Dort ist alles gut geschrieben. Wenn keine Klammern vorhanden sind, bedeutet dies, dass sich der for-Operator nur auf den nächsten Ausdruck bezieht.
Und sagen Sie nicht, er sei dumm, sondern versuchen Sie, jemanden in Ihrem Alter zu finden, der das Programmieren von Grund auf lernt.

Vladimir hat nicht gesagt, dass er dumm ist, sondern dass es ihm schwer fällt, weil die zeitlich begrenzte Expressmethode des Lernens nicht einfach ist.

Er schnappte sich die "Werkzeuge", ohne die "Gebrauchsanweisung" zu lesen und zu verstehen, und man hatte ihm bereits davon erzählt; wenn er die Syntax verstanden hätte, wäre es viel einfacher, das "Puzzle" zusammenzusetzen.

Und es ist nie zu spät, etwas zu lernen, wenn man es will. Es gibt Beispiele dafür, dass man mit 65 Jahren noch ein Dessert verteidigen oder Fremdsprachen lernen kann...

 
MrBrooklin:

Igor, der Wunsch, die Sprache MQL5 zu lernen, ist nicht verschwunden, im Gegenteil, er hat sich nur verstärkt. Ich bin nur hin- und hergerissen, warum ich so dumm bin und einfache Dinge mit diesem Schleifenoperator nicht verstehe

Sie sind nicht dumm, sondern ungeduldig. Sie versuchen, "die englische Sprache" mit einem Wörterbuch zu lernen - Sie versuchen, Fremdwörter in die von Ihnen gewünschten Kombinationen zu bringen, ohne zu bedenken, dass die sprachlichen Strukturen unterschiedlich sein können.

Ich meine, Sie müssen die Syntax und die Grundlagen der C-Programmierung lernen, aber Sie werden nicht in der Lage sein, etwas Nützliches zu schreiben .... Neben dieser "mysteriösen" Aussage wird es ein Missverständnis geben... z.B. Geltungsbereich von Variablen? - verstehen, was es ist? - Das ist nicht schwer, aber Sie müssen verstehen, was die Maschine sieht, wenn sie Ihr Programm liest.


Ich weiß nicht, welches Tutorial ich dir empfehlen kann. Ich schaue manchmal hier scharf nachhttps://metanit.com/sharp/tutorial/1.1.php

Es gibt auch C und C++https://metanit.com/cpp/

Wenn Sie es verwenden, können Sie die Abschnitte über Zeiger, Klassen und OOP überspringen. Sie müssen es nicht lernen, Sie müssen nur Ihr Wissen organisieren (systematisieren).

 
MrBrooklin:

Igor, der Wunsch, die Sprache MQL5 zu erlernen, ist nicht verloren, im Gegenteil, er wird nur noch stärker. Ich bin nur hin- und hergerissen, warum ich so dumm bin und einfache Dinge mit diesem Schleifenoperator nicht verstehe. Die Hauptsache ist, dass der Code ohne den Schleifenoperator perfekt funktioniert, aber mit der Schleife ist es ein völliges Durcheinander. Ich werde der Sache trotzdem auf den Grund gehen. Allerdings habe ich viel weniger Zeit für das Selbststudium, da die Quarantänezeit vorbei ist und ich bei der Arbeit nur noch selten Zeit habe, die Sprache zu lernen. Meistens lerne ich die Sprache am Abend und spät in der Nacht.

Ich muss 2 Aufgaben lösen, um endlich den Trailing-Stop-Code schreiben zu können:

  1. Ich muss einen Code schreiben, der den Operator for loop verwendet, um alle offenen Positionen für alle Symbole zu suchen, und wenn es keine gibt, dann eine Kaufposition zwischen 09:00:00 und 09:01:00 zu eröffnen und sie um 23:50:00 zwangsweise zu schließen, wenn während des Handelstages ein Stop Loss nicht ausgelöst wurde. Ohne den for-Schleifenoperator, wie ich zuvor geschrieben habe, funktioniert alles perfekt. Jetzt möchte ich das gleiche Ergebnis erzielen, aber mit einer Schleife.
  2. Schreiben Sie 2 Funktionen, die die Richtung der Positionseröffnung durch den ersten Tick bestimmen, der im Zeitrahmen von 09:00:00 bis 09:01:00 erscheint. Wenn der erste Tick nach oben zeigt, sollte eine Kaufposition eröffnet werden; wenn der erste Tick nach unten zeigt, sollte die Verkaufsposition entsprechend eröffnet werden. Es ist keine Strategie, es ist nur mein "Wunsch", die Zufallsbedingung nicht zu verwenden.
Mit freundlichen Grüßen, Vladimir.
Es sieht schon ein bisschen wie eine ToS aus. Das ist das Ziel. Nun muss der Lösungsalgorithmus Schritt für Schritt formuliert werden
Wenn etwas nicht klar ist, fragen Sie bitte nach. Manchmal brauchen einfache Dinge mehr Zeit als komplizierte.
 
VVT:

Vladimir hat nicht gesagt, dass er dumm ist, sondern dass es ihm schwer fällt, weil die zeitlich begrenzte Expressmethode des Lernens nicht einfach ist.

Er hat sich die "Werkzeuge" geschnappt, ohne die "Gebrauchsanweisung" zu lesen und zu verstehen. Ihm wurde bereits gesagt, dass es viel einfacher sein wird, das "Puzzle" zusammenzusetzen, wenn er die Syntax verstanden hat.

Und es ist nie zu spät, um zu studieren, wenn man den Wunsch dazu hat. Es gibt Beispiele dafür, dass man mit 65 Jahren ein Dessert verteidigt oder Fremdsprachen studiert...

Wir müssen alles beim Namen nennen - im Moment bin ich so dumm wie ein Korken beim Programmieren! Ich verstehe elementare Dinge nicht. Obwohl, hier in der Elektronik helfen mir die Kenntnisse, die ich in meiner Jugend erworben habe, immer noch, um z.B. einen Fernbedienungsknopf einer Türklingel zu reparieren. Letztes Wochenende habe ich mit einem Multimeter und der Lupe meines Großvaters einen defekten SMD-Kondensator mit mikroskopisch kleinen Abmessungen gefunden. Es zeigte eine Panne, einen Kurzschluss oder "koza", wie das Akronym für Kurzschluss früher hieß. Kurzschluss. Hier ist ein Bild des "durchstochenen" SMD-Kondensators mit 4-facher Vergrößerung auf einem Smartphone und anschließender Bearbeitung in Paint, da es sich um ein zu mikroskopisches Element handelt.


Ich beschloss, ein wenig abzuschweifen und wenigstens etwas zu zeigen!

Und was den Wunsch angeht, die Sprache zu lernen, so habe ich ihn, ebenso wie die Hoffnung, die Grundlagen der Programmierung zu beherrschen.

Mit freundlichen Grüßen, Vladimir

 
Igor Makanu:

nicht dumm, sondern ungeduldig sind und versuchen, "die englische Sprache" nur mit einem Wörterbuch zu lernen - Sie versuchen, Fremdwörter in Kombinationen zu verwenden, die Sie sehen, ohne zu bedenken, dass die Sprachkonstruktionen unterschiedlich sein können

Ich meine, Sie müssen die Syntax und die Grundlagen der C-Programmierung lernen, aber Sie werden nicht in der Lage sein, etwas Nützliches zu schreiben .... Neben dieser "mysteriösen" Aussage wird es ein Missverständnis geben... z.B. Geltungsbereich von Variablen? - verstehen, was es ist? - Das ist nicht schwer, aber Sie müssen verstehen, was die Maschine sieht, wenn sie Ihr Programm liest.


Ich weiß nicht, welches Tutorial ich dir empfehlen kann. Ich schaue manchmal hier scharf nachhttps://metanit.com/sharp/tutorial/1.1.php

Es gibt auch C und C++https://metanit.com/cpp/

Wenn Sie es benutzen wollen, können Sie die Abschnitte über Zeiger, Klassen und OOP überspringen. Sie müssen es nicht studieren, Sie müssen nur Ihr Wissen organisieren.

Danke, Igor, für deine ständige Unterstützung und deinen Rat. Ich habe sowohl C als auch C++ gegoogelt, aber ich habe das Gefühl, dass ich mich wieder einmal ein wenig ausruhen, verdauen und festigen muss, was ich bereits verstanden habe. Und dann fangen Sie wieder an, Bücher zu lesen.

Mit freundlichen Grüßen, Vladimir.

 
Valeriy Yastremskiy:
Sie befinden sich bereits im TOR. Das ist der Zweck. Nun soll der Algorithmus der Lösung Schritt für Schritt formuliert werden
Sollte etwas unklar sein, fragen Sie bitte nach. Manchmal sind einfache Dinge zeitaufwändiger als komplexe.

Valery, ich habe die ToR(Terms of Reference) schon lange in meinem Berater geschrieben, ich habe sie nur noch nicht für alle sichtbar in das Thema gestellt.

Mit freundlichen Grüßen, Vladimir.

/* Краткое описание советника Trailing_Stop. Код советника разрабатывается в соответствии с
   планом самообучения языку программирования MQL5. В советнике применена неттинговая система
   учёта позиций. Эта система учета подразумевает, что в один момент времени на счете может быть
   только одна открытая позиция по одному и тому же символу (финансовому инструменту). Алгоритм
   работы советника прост: один раз в торговый день ровно в 9 ч. 00 мин. по московскому времени
   будет открываться одна позиция в ту сторону, куда будет направлен первый тик. Например, если
   первый тик будет направлен вверх, то значит откроется позиция BUY, если первый тик будет вниз,
   то значит откроется позиция SELL. У открытой позиции сразу будет устанавливаться ордер Stop Loss
   фиксированного размера для минимизации потерь в том случае, если цена финансового инструмента
   станет двигаться в убыточном направлении. Если цена инструмента достигнет этого уровня, то
   позиция полностью закроется автоматически. Если цена финансового инструмента будет двигаться
   в прибыльном направлении, то тогда автоматически включится в работу Trailing_Stop (Трейлинг Стоп).
   Схема работы Трейлинг Стоп:
   1. С приходом новых котировок советник проверяет, прибыльна ли открытая позиция.
   2. Как только прибыль (в пунктах) станет равной либо большей той величины, которая указана во
      входном параметре советника "Уровень перестановки Stop Loss в безубыток", автоматически
      поступит команда для перемещения ордера Stop Loss на тот уровень цены, по которому открылась
      существующая позиция, т.е. в безубыток.
   3. Если цена и дальше продолжит движение с увеличением прибыльности позиции, то при превышении
      величины, указаной во входном параметре советника "Уровень перестановки Stop Loss в безубыток"
      на величину, которая указана во входном параметре "Шаг трейлинг стопа", Stop Loss вслед за
      текущей ценой автоматически переместится с уровня безубытка на величину этого шага.
   4. Если прибыльность позиции уменьшится, то модификации ордера происходить не будет. Таким
      образом, будет автоматически фиксироваться прибыль торговой позиции.
   Если в течении торгового дня открытая позиция не закроется по Stop Loss или Trailing_Stop, то в
   23 ч. 50 мин. советник принудительно закроет эту позицию.

   ВАЖНО!!! Советник создан для демо-счёта исключительно в учебных целях!
            Не предназначен для торговли на реальном счёте и извлечения прибыли!*/
 
MrBrooklin:

Valery, ich habe die ToR(Terms of Reference) schon lange in meinem Berater geschrieben, ich habe sie nur noch nicht für alle sichtbar in den Thread gestellt.

Mit freundlichen Grüßen, Vladimir.

Der Arbeitsplan ist eher ein Ziel. Das ist nicht einmal eine Problemstellung. Die Lösung ist zunächst ein Algorithmus, ein allgemeiner Algorithmus. Es ist eine Problemstellung. Und dann die Algorithmen, um diese Probleme zu lösen.
 
Valeriy Yastremskiy:
Ein Arbeitsplan ist eher ein Ziel. Das ist nicht einmal eine Problemstellung. Die Lösung ist ein allgemeiner Algorithmus. Dies ist eine Problemstellung. Und dann die Algorithmen, um diese Probleme zu lösen.

Ich verstehe.

Hochachtungsvoll, Vladimir.

 
Valeriy Yastremskiy:

Der Schleifenoperator und die Operatoren im Schleifenkörper. Nicht gerade klassisch russisch.

Alles ist natürlich gut, aber wo ist der Iterator i im Schleifenkörper? Und um das Positionssymbol und seine magische Zahl zu erhalten, muss es zuerst ausgewählt werden. Die Positionsbeschreibung ist eine Struktur (in µl5 alle Strukturen und Aufträge und Zeit und Geschäfte) und wird durch Auswahl ausgefüllt, durch den Iterator, der nicht das Positionsticket, sondern die Positionsnummer ist. Und wir sollten daran denken, dass in der Struktur der Positionsbeschreibung immer die letzte Positionsauswahl ist.

MrBrooklin:

Guten Tag und gute Laune an alle!

Ich lerne weiter die Programmiersprache MQL5. Ich habe eine detaillierte Studie der for-Schleife-Operator begonnen ... Bitte beraten Sie mich, wie es zu verwenden, nicht mit korrigierten Code, aber mit Worten, oder ich werde nie studieren MQL5.

Mit freundlichen Grüßen, Vladimir.

Hier - lassen Sie mich mit Ihnen zu widersprechen, können und sollten Sie Code, was hindert Sie daran, sich in sein Wesen ... verstehen und so weiter ... auch IMHO, gibt es Artikel, gibt es Roboter in kodobase - lesen, parsen den Code bereits bereit - lernen Sie den Stil des Schreibens rechts weg. Warum sollten Sie das Rad neu erfinden wollen? Lernen Sie von Anfang an von lesbarem Code.

Hier ist ein Schleppnetz von V. Karputov - es ist in ROBOTS, schauen Sie - passen Sie es an Ihre Bedürfnisse (Begriffe und Ihre Phantasien).

P.S. Dank Ihnen, dem Thema dieses Zweiges, begann ich, den Code zu verstehen, seine Funktionen ..., Artikel zu studieren und grundlegende Dinge für mich zu wiederholen ...

Danke für den Tipp! :-) (kein Scherz)

TrailingStop
TrailingStop
  • www.mql5.com
Это простой пример советника с реализацией трейлинг-стопа. В нем всего два параметра: TrailingStop — собственно отступ между ценой и уровнем StopLoss. TrailingStep — защита от чрезмерно частой модификации позиции.  Как работает TrailingStop (трейлинг, TrailingStop) — на примере позиции Buy: ...
Grund der Beschwerde: