Wählen Sie ein Symbol in den Einstellungen - Seite 4

 
Alexey Viktorov:

... "Wer braucht das schon??"

...Es gibt hier genug Leute, die auch Karikaturen auf der Terminalkarte zeichnen können.

Genau, es gibt die offensichtlichen Dinge des Handels und dann gibt es die Exzesse.

Die Leute hier beschweren sich, dass das Terminal die von der Moskauer Börse zurückgegebenen Fehler nicht kennt! (Und beschweren sich schon seit Jahren...).

Außerdem besteht ein eindeutiger Bedarf an einer Liste aktiver Paare (zumindest im Marktübersichtsfenster), die jedoch nicht vorhanden ist.

Es gibt keine Möglichkeit, explizit einen Tick von einem Paar aus dem Marktübersichtsfenster zu erhalten - Sie müssen irgendwo ein paar Spione hinschicken... (Ich weiß, welche und wie, es ist einfach, aber es ist absurd)

Oder es gibt keine triviale Möglichkeit, Optimierungsergebnisse auszusortieren... Jeder, der etwas optimiert, hat ständig ein solches Bedürfnis... (Ja, Excel ist gut, aber es ist kein Terminal und es ist umständlich, Einstellungen zurück zu übertragen. Auch die Möglichkeit, einen bestimmten Parameter aus den Optimierungsergebnissen zu kopieren, wurde entfernt).

Was soll das alles?

Wozu brauche ich Cartoons im Terminal... (oder zumindest die potenzielle Möglichkeit einer Vervielfältigung), wenn es keine offensichtlichen Handelsgüter gibt!

Metaquotes, nichts für ungut, aber mit der Platzierung stimmt etwas nicht... ist eine Tatsache. Dies schreibe ich auf der Grundlage meiner Erfahrungen mit mql5. Hatte ich bei mql4 das Gefühl, dass C um Handelsfunktionen erweitert wurde, so sind bei mql 5 sowohl die Sprache als auch die Handelsfunktionen im Labyrinth der intra-terminalen Logik untergegangen. Bald wird es so sein, als würde man mit einer API unter Windows programmieren...

Aber imho muss man sich dem Leben nähern. Und das Leben ist die Notwendigkeit des Handels. Zum Beispiel ist es eine großartige Gelegenheit, ein Geschäft im Terminal mit einem Klick zu eröffnen! Das ist großartig.

Das heißt, Sie schauen auf den Bildschirm und erhalten die erforderlichen Informationen. Klicken Sie mit der Maus - öffnen Sie eine Position. Nichts Unnötiges!

Warum muss ich wissen, wie ein Auftrag schrittweise in eine Position umgewandelt wird? Dies ist keine Frage eines Händlers, sondern ein internes Problem! Man gibt den Gefäßen nicht den Befehl, nach jedem Herzschlag eine Mikrokompression durchzuführen. Und man gibt den Därmen keinen Befehl, wie sie zu arbeiten haben. In mql werden alle derartigen Probleme innerhalb eines Terminals auf die Programmierer abgewälzt. Und das ist mit viel Aufwand verbunden. Und es gibt keine offensichtlichen Dinge.

Und wollen Sie noch einen lustigen Fakt? Wenn Sie alle Prozesse richtig ausführen, von denen einige bereits in Artikeln beschrieben wurden, werden Sie den Handelsalgorithmus in einem solchen Handelsroboter nicht finden... Das ist ernst! Dies ist eine Art Ungleichgewicht. Bislang ist mql5 ein Spielzeug, das von Programmierern für Programmierer entwickelt wurde... Mit beeindruckenden Programmierfähigkeiten um des Programmierens willen.

Nun, okay, ich denke, viele Leute haben den Metaquotes bereits davon erzählt, also ist es wahrscheinlich sinnlos, etwas zu schreiben. Aber die Eindrücke häuften sich... Ich musste sie äußern)). Es ist gut für das Nervensystem)).

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

OK, dieses Thema war irgendwie unvollständig.

Also musste ich den Prüfer dazu bringen, zusätzlich zu den anderen Werten ein Paar zu nehmen.

Und um nicht eine wilde Konstruktion aus manuellem Schreiben von jedem Paar und Meer von Variablen zu schreiben, war ich auf der Suche nach einem Weg, dies entweder durch Standard-Mittel oder irgendwie kürzer zu tun.

Und hier ist die letzte Variante - vielleicht ist sie für jemanden nützlich... Das habe ich geschrieben und es funktioniert.

1- Schalten Sie im Marktübersichtsfenster alle Symbole ein und klicken Sie mit der rechten Maustaste - Speichern. Wir erhalten eine Textdatei mit einer Liste. In meinem Fall war nur Forex vorhanden. Wenn Sie also etwas anderes haben, fügen Sie die Verarbeitung selbst hinzu...

2- Paare aus der Datei, fügen Sie sie in die Aufzählung ein. Schreiben Sie in die Deklaration der Expert Advisor-Variablen:

enum Enum_Symbol {AUDJPY,AUDUSD,CHFJPY,EURAUD,EURCAD,EURCHF,EURGBP,EURJPY,EURRUR,EURUSD,GBPAUD,GBPCAD,GBPCHF,GBPJPY,GBPUSD,USDCAD,USDCHF,USDJPY,USDRUR};
input Enum_Symbol       SIMBOL_1          = AUDUSD;   // Выбор пары для ...
input Enum_Symbol       SIMBOL_2          = AUDJPY;   // Выбор пары для ...

...

Das war's, der Prüfer kann nun Zeichen aus der Liste suchen.

Es ist auch bequem, das Paar aus der Dropdown-Liste in den Einstellungen auszuwählen. Bitte beachten Sie, dass Sie zum Optimieren die gesamte Liste vor der ersten Kompilierung sofort in das Programm installieren müssen, da später hinzugefügte Symbole in den endgültigen Optimierungseinstellungen möglicherweise nicht mehr sichtbar sind... Dies ist eine solche "Nuance". Wenn einer der Metaquotes dies liest - Sie können diesen Fehler korrigieren... Die aufmerksamen Moderatoren werden es bestimmt lesen...

Außerdem muss OnInit noch etwas hinzugefügt werden:

int OnInit()
{
...
//--- подключаем символы для тестера 
for(int i=0;i<SymbolsTotal(false);i++)
   {
   string name = SymbolName(i,false);
   SymbolSelect(name,false);
   Print (" i = ", i,"     name = ", name);   
   }
...
}

Im Programm selbst sieht es so aus, dass das ausgewählte Zeichen in eine String-Variable übertragen wird:

string SymbolCur = SymbolName(DoubleToString(SIMBOL_1,0),false);


Natürlich gibt es Nuancen, ich bringe die Umsetzung für meine Zwecke...

Von manuellen Operationen, nur einmal (für jeden Makler) Speichern der Textdatei und Anordnen von Kommas darin, vor dem Kopieren in enum.

Документация по MQL5: Основы языка / Переменные
Документация по MQL5: Основы языка / Переменные
  • www.mql5.com
Переменные должны быть объявлены перед их использованием. Для идентификации переменных используются уникальные имена. Описания переменных используются для их определения и объявления типов. Описание не является оператором. Индексом массива может быть только целое число. Допускаются не более чем четырехмерные массивы. Нумерация элементов...
 
Зачем мне знать, как там ордер превращается постепенно в позицию. Это не трейдерский вопрос, это внутритерминальный вопрос!
Dies ist keine Frage eines Händlers, sondern eine Frage der Software. Wenn Sie ein reiner Händler sein wollen, halten Sie sich aus der Programmierung heraus und schreiben Sie Ihre TOR für Profis. Für die meisten Probleme, über die Sie sich in den obigen Beiträgen beschwert haben, gibt es eine einfache Lösung.
 
Aleksey Mavrin:

Erzählen Sie mir davon!

Wenn Sie ein Programmierer sind und hierher kommen, um etwas Geld mit dem Programmieren zu verdienen - dann Zweifelsohne!

Aber wenn man eine Idee auf die einfachste Art und Weise beschreiben muss, dann haben wir eine Verschlechterung! Aber ich möchte ehrlich gesagt nicht darüber diskutieren. Sie selbst sind sich dessen wohl bewusst. Und Sie schreiben - und verteidigen Ihre Programmier-Nische.

Ich habe mich als Freiberufler beworben und schreibe selbst... Das eine verhindert das andere nicht!

Ups)) Und was würde passieren, wenn ich die Ergebnisse von freelancing)))) bekannt geben würde? Aber Shhh Solche Dinge kann man nicht laut sagen)))

Und die Meta-Zitate - im Allgemeinen natürlich gut gemacht. Sie wollen es selbst schreiben. Wenn Sie wollen - bestellen Sie es! Alle sind zufrieden, sowohl die Programmierer als auch die Händler)) So sollte es auch sein, sie geben mit ihren Aktivitäten allen eine Chance.

Vielen Dank für eine gute Geschichte! Sie haben mehr als genug, um all die anderen Fehler zu kompensieren. Aber es wäre schön, auch sie zu reparieren.

Ich würde sogar empfehlen, noch nichts zu verbessern, und dopilit zur Verfügung.

Aber sie wissen es besser))

 
Михаил:

Was gibt es da zu diskutieren, wenn man die Zeichen in einer Datei speichert und von dort in den Code kopiert, bevor man sie kompiliert?

Und auf der Grundlage solcher Aktionen sprechen Sie von "Mängeln" des Terminals.

Nichts Persönliches, Sie sind nur sehr schwach als Programmierer, ich wünsche Ihnen, dass Sie wachsen und sich entwickeln. Viel Glück!

 
Aleksey Mavrin:

Was gibt es da zu diskutieren, wenn man die Zeichen in einer Datei speichert und von dort in den Code kopiert, bevor man kompiliert.

Und auf der Grundlage solcher Aktionen sprechen Sie von "Mängeln" des Terminals.

Nichts Persönliches, Sie sind nur sehr schwach als Programmierer, ich wünsche Ihnen, dass Sie wachsen und sich entwickeln. Gut!

Das haben Sie falsch verstanden! Ich bin kein Programmierer, weder von Beruf noch von Ausbildung her!

Das hindert mich nicht daran, alles zu schreiben, was ich für Mikrocontroller oder für Android oder für mql4 mql5 brauche. Ich habe sogar 16er Code und Assembler geschrieben... Haben Sie einen Code geschrieben? In echten, 16 Reichtumscodes? Es ist keine Hochsprache, man muss wissen, wie die CPU aufgebaut ist und funktioniert...

Einen lokalen Eintrag als Code zu bezeichnen, ist ein Witz...

Ich brauche keine Tricks, sondern einfach nur optimalen Code. Aber in meinem Code ist die Logik in der Regel komplexer als in anderen, und er ist effizienter. Obwohl ich natürlich nicht mit professionellen Programmierern konkurrieren kann)) Aber es ist ihr Brot und Butter, während es für mich nur ein zweites Hobby ist. Nicht einmal mein Haupthobby. Ich kann dünnes Metall mit einem Schweißgerät schweißen, ohne es zu verbrennen, ich kann ein Programm mit vielen Dingen schreiben... einfache elektronische Geräte entwerfen und zusammenbauen... Das alles ist nicht meine Aufgabe! )) Ich meine, ich bin nicht daran interessiert, mich in sinnlose Sprachregeln zu fügen, sondern ich bin an dem Ergebnis interessiert. Und wenn Sie in Schleifen gehen müssen, ist das schade. In µl4 war es einfacher. Und ich sehe keinen objektiven Grund, es noch komplizierter zu machen.

Was das Thema dieses Threads betrifft: Schlagen Sie eine bessere Lösung vor.

Der Zweck, den ich beschrieben - so dass vor der Ausführung des Programms, können Sie in der Optimierung Parameter Paare aus der Liste auswählen.

Und auch, damitder Prüfer die Paare durchgehen kann- das ist das Wichtigste!

Bieten Sie keine Varianten von kodobase Spezialisten an)) Meine Lösung ist die Spitze der Eleganz im Vergleich zu kodobase Lösungen...

Es ist leicht, Kritik zu üben!

Sie sagten, meine Umsetzung sei schlecht! Schlagen Sie eine bessere Lösung vor. Ich werde mich bei Ihnen bedanken!

Denn eines Tages werde ich zu den Mehrfachwährungen zurückkehren... vielleicht.

Oder schreiben Sie: "Mir fällt nichts Besseres ein - sorry!"

Und ja - ich nehme keine Aufträge an, umProgramme zu schreiben, ich esse keine Programmierer))
Как заказать торгового робота на MQL5 и MQL4
Как заказать торгового робота на MQL5 и MQL4
  • www.mql5.com
Главным преимуществом торговых терминалов MetaTrader является возможность создания автоматических торговых систем, способных совершать торговые операции без вмешательства трейдера, что позволяет исключить влияние психологии на результаты торговли. Для этого нужно сформулировать торговую стратегию и реализовать ее в виде программы на языке MQL...
 
Михаил:

Du verstehst es nicht! Ich bin kein Programmierer, weder von Beruf noch von Ausbildung her!

Das hält mich aber nicht davon ab, alles, was ich brauche, für Mikrocontroller oder für Android zu schreiben, oder in mql4 mql5. Ich habe sogar 16er Code und Assembler geschrieben... Haben Sie einen Code geschrieben? In echten, 16 Reichtumscodes? Es ist keine Hochsprache, man muss wissen, wie die CPU aufgebaut ist und funktioniert...

Einen lokalen Eintrag als Code zu bezeichnen, ist ein Witz...

Ich brauche keine Tricks, sondern einfach nur optimalen Code. Aber in meinem Code ist die Logik in der Regel komplexer als in anderen, und er ist effizienter. Obwohl ich natürlich nicht mit professionellen Programmierern konkurrieren kann)) Aber es ist ihr Brot und Butter, während es für mich nur ein zweites Hobby ist. Nicht einmal mein Haupthobby. Ich kann dünnes Metall mit einem Schweißgerät schweißen, ohne es zu verbrennen, ich kann ein Programm mit vielen Dingen schreiben... einfache elektronische Geräte entwerfen und zusammenbauen... Das alles ist nicht meine Aufgabe! )) Ich meine, ich bin nicht daran interessiert, mich in bedeutungslose Sprachregeln einzufügen, ich bin an Ergebnissen interessiert. Und wenn Sie in Schleifen gehen müssen, ist das schade. In µl4 war es einfacher. Und ich sehe keinen objektiven Grund, es noch komplizierter zu machen.

Was das Thema dieses Threads betrifft, schlagen Sie eine bessere Lösung vor.

Der Zweck, den ich beschrieben - so dass vor der Ausführung des Programms, können Sie in der Optimierung Parameter Paare aus der Liste auswählen.

Und auch, damit der Prüfer die Paare durchgehen kann- das ist das Wichtigste!

Bieten Sie keine Varianten von kodobase Spezialisten an)) Meine Lösung ist die Spitze der Eleganz im Vergleich zu kodobase Lösungen...

Es ist leicht, Kritik zu üben!

Sie sagten, meine Umsetzung sei schlecht! Schlagen Sie eine bessere Lösung vor. Ich werde mich bei Ihnen bedanken!

Denn eines Tages werde ich zu den Mehrfachwährungen zurückkehren... vielleicht.

Oder schreiben Sie: "Mir fällt nichts Besseres ein - sorry!"

Und ja - ich nehme keine Aufträge an, umProgramme zu schreiben, ich esse keine Programmierer))

Falls Sie sich wundern, ich habe mich in meiner Studienzeit auch mit Assembler beschäftigt, aber ich habe ernsthaft nur in C, C++, mit SQL auf Postgre geschrieben. Und das war nur für meine Diplomarbeit, aber das Projekt war mehr oder weniger ernst, CAD-System, was auch immer)

Ich bin froh, dass Sie ein vielseitiger Mensch sind) Sie wissen, dass Bibeln in C und anderen Sprachen viel komplizierter sind als MQL5, es ist viel einfacher imho. Sie wissen, über Ihr Niveau - in Ihren Beiträgen wurden die Probleme erwähnt, deren Lösung ist einfach, aber Sie schimpfte das Terminal und MQL, dh statt zu lernen, wie zu tun und zu entwickeln, schimpfen Sie die Arbeit der anderen, auch wenn nicht ohne Fehler, aber eine solche harte Arbeit. Dieser Ansatz ist mir fremd und unverständlich. Aber vielleicht war es nur ein Eindruck und ich habe mich geirrt.

Wie für das Thema - Ich habe schon vergessen, die Nuancen, und ich bin zu faul zu lesen und zu verdauen. Kurz gesagt - wenn Sie eine Suche nach allen Zeichen während der Optimierung machen wollen - dann in OnInit von Nummer, ist der Eingabeparameter nur die Nummer eines Symbols, zwei, drei, wie in der Eule verwendet.

Wenn Sie manuell wählen Sie bestimmte Symbole zu automatisieren - dann ist Ihre Lösung schlecht, weil, wenn Sie Broker mit anderen Symbolen ändern müssen, um den Code zu ändern. Es ist einfacher, zwei Symbole manuell einzugeben. Wenn Sie zu faul sind, die Symbole einzugeben, können Sie deren Nummer in der Marktübersicht eingeben.

 
Aleksey Mavrin:

Wenn Sie zu faul sind, die Zeichen einzugeben, nummerieren Sie sie in der Marktübersicht.

Sie befinden sich erst dann im Marktübersichtstester, wenn sie direkt namentlich abgefragt werden.


Michael:

Sie sagten, meine Umsetzung sei schlecht! Schlagen Sie eine bessere Lösung vor. Ich werde Ihnen danken!

Kombination aller bekannten Währungen in enum + Suffix als String-Parameter?

 
Aleksey Mavrin:

Was das Thema anbelangt, so habe ich die Feinheiten bereits vergessen und bin zu faul, es zu lesen und zu vertiefen.

Gute Gesprächspartnerin))) Und du urteilst über mich))

Ihre Art... die Zahlen sind weit von Paaren entfernt. Das ist unangenehm. Und es ist gut, wenn es nur ein paar Paare sind, aber wenn Sie alle Paare brauchen?! Und übrigens, sind Sie sicher, dass Sie es nicht brauchen?

Ja, Sie können herausfinden, wie viele Paare sich im Fenster befinden, und die vom Prüfer gelieferten zusätzlichen Werte verwerfen... Aber es ist bereits Läufe in die Röhre geworfen, dh weniger nützliche Optimierungsmöglichkeiten.

Außerdem weiß man während der Optimierung nicht, auf welchem Paar der Prozess gerade läuft. Sie müssen ein Fenster öffnen und zählen, zählen und zählen! Sie werden sich nicht verzetteln?

In meinem Fall genügt es, die Daten zu kopieren und einzufügen, einmal für den Makler und das war's...

Kritisierst du mich etwa?

Entweder einmal kopieren und in Zukunft frei, bequem und übersichtlich arbeiten, oder ständig die Zahlen im Marktübersichtsfenster zählen... Das ist eine Art von Workaholismus, auf der Seite ))))

Aleksey Mavrin
Aleksey Mavrin
  • www.mql5.com
Добавил тему Оптимизация. Граничные Условия Параметров Решаю задачку о автоматизации проверки стратегий, это типа как тут в соседней ветке описывалось, но по другому. Проблема :Разные стратегии имеют разный набор по кол-ву и типам оптимизируемых параметров. Решение:Нормировать все параметры к диапазону Добавил тему Вечерние размышления о...
 
Andrey Khatimlianskii:

Kombination aller bekannten Währungen in enum + Suffix als String-Parameter?

Ja, auch eine Option, die anschaulicher ist als die von Alexey. Für Makler gelten jedoch andere Regeln. Wahrscheinlich wird es ungenutzte Kombinationen geben, die die Effizienz des Prüfgeräts verringern...

Ja, und die Währungen müssen alle gefunden und gepunktet werden, das ist schwieriger als ein einmaliges Kopieren. Ich persönlich)) Ich habe über diese Möglichkeit nachgedacht.

Vielleicht kennt jemand anderes eine andere Möglichkeit)))

Grund der Beschwerde: