[Archiv!] Ich schreibe jeden Experten oder Indikator kostenlos. - Seite 79

 
Mercyr:

Der Standardindikator zeichnet die Standard-Fibo-Levels in einer Farbe. Stufen in Farbe einstellen.

Ich möchte, dass die Ebenen 200, 150, 100, 50, 0, -50, -100 in roter Farbe gezeichnet werden - eine dünne Linie,

190, 160, 140, 110, 90, 60, 40, 10, -10, -40, -60, -90 Stufen in Grau - eine gepunktete Linie.

Die Funktionen des Indikators bleiben erhalten. (das Preisniveau sollte beibehalten werden).


Es ist einfacher und geht schneller, ein neues zu erstellen.
 

Lieber Vinin, ich sehe, dass du dich sehr gut mit Code auskennst und ein sehr aufgeschlossener und verständnisvoller Mensch bist. ) Könnten Sie einer großen Anzahl von Menschen mit einer kleinen Aktion auf einmal helfen? )) All unser Applaus wird Ihnen gehören. )

Viele Leute haben sich schon lange eine einfache Möglichkeit gewünscht, Diagramme zu verknüpfen, so dass sich, wenn Sie ein Symbol in einem Fenster ändern, die Symbole in den ausgewählten Fenstern ändern. In diesem Fall werden die Zeitrahmen auf den Charts nicht verändert - sie bleiben die, die vom Benutzer in den Fenstern eingestellt wurden. Es ist auch wünschenswert, dass ein Skript ein Master-Fenster an eine unbegrenzte Anzahl von benutzerdefinierten Slave-Fenstern (oder 1 bis 5) binden kann, anstatt die Installation eines separaten Skripts für jedes Fensterpaar zu empfehlen.

Der Zweck des Skripts besteht darin, bei vielen Fenstern die angegebenen Bilder verschiedener Zeiträume mit einer Bewegung (durch Ziehen des gewünschten Werkzeugs aus der Liste in ein Fenster) schnell zu ändern, anstatt drei oder vier (die gewünschten Blätter in der Liste der Blätter suchen). Und ein solches Skript gibt es nicht.

Im Allgemeinen sendet der Benutzer ein Skript an das Master-Chart, in dem die Slave-Fenster angegeben sind. Das ist alles. Er klickt einfach auf die Liste der Fenster und alles ändert sich von selbst.

Hier ein Beispiel: Das System von Elder hat 3 Bildschirme = Woche, Tag, 4 Stunden und 1 Stunde, um Einträge zu spezifizieren, also insgesamt 4 Bildschirme mit verschiedenen Skalen. Wir wählen das Fenster, das der Liste am nächsten liegt, als Hauptfenster aus, so dass es einfach ist, das Instrument dorthin zu ziehen. Angenommen, es ist 4 Uhr. Geben Sie in den Skripteigenschaften an, dass Master = 4 Stunden, Slave = Woche, Tag, 1 Stunde. Klicken Sie auf OK und das war's. Wenn nun ein neues Werkzeug auf 4 Uhr gezogen wird, ändern auch die anderen drei sofort das Werkzeug.

Können Sie uns helfen? Unsere Arbeit ist ohne sie unerträglich und hart... ((

8)) Ich danke Ihnen!

 
Vinin:

Es ist einfacher und geht schneller, ein neues zu erstellen.
Wäre das in Ordnung? Darf ich hoffen?
 
Mercyr: Würde es Ihnen etwas ausmachen? Darf ich das hoffen?


Immer noch mit einem ziemlich originellen System beschäftigt, oder besser gesagt, mit einem interaktiven System zur Steuerung der Parameter des Indikators. Ein wenig später.
 

Многим давно хочется иметь простую возможность возможность линковать графики, чтобы при смене символа в одном окне менялись символы в заданных выбранных окнах. Таймфреймы на графиках при этом не меняются - остаются те, которые в окнах настроены юзером. Ну и надо сказать, что желательно, чтобы один скрипт мог связывать 1 ведущее окно с неограниченным количеством конкретных ведомых, выбранных юзером (или от 1 до 5 штук), а не так, чтобы на каждую пару окон рекомендовалось цеплять свой скрипт.


Ich sehe einen EA (obwohl es sich um ein gelooptes Skript handeln könnte), der eine Einstellung Master oder Slave hat. Der Master schreibt in eine globale Variable ein Symbol auf die Karte, der Slave setzt das gewünschte Symbol auf seine Karte.

Das ist nur ein paar Zeilen Arbeit, und wenn es etwas komplizierter wird, zeigt der Master eine Liste von Währungen auf den Objekten an und wechselt automatisch zum gewünschten Symbol.

 
#include <ServicesMT4.mqh>
extern bool Master=False;
int init()  {return(0);}
int deinit(){return(0);}
int start()
  {
    string st="abcdefgh";
    if (Master)
         GlobalVariableSet("MasterSymbol",ServiceLineBySymbol(Symbol())); 
    else if (GlobalVariableGet("MasterSymbol")!=ServiceLineBySymbol(Symbol()))
            { 
               int hwndChart=WindowHandle(Symbol(), 0);
               ServiceSetToolChartNamePeriod(hwndChart, ServiceSymbolByLine(GlobalVariableGet("MasterSymbol"),st,10),"");
            }
  }

Wahnhaft, aber machbar. Bibliothek von Zhunko.

Master ist für das Hauptdiagramm auf true gesetzt, für Slaves auf false. Der Symbolwechsel erfolgt bei der Ankunft des Häkchens.

 

Programmierer sehen sich bitte das Thema https://www.mql5.com/ru/forum/135005 an.

 
splxgf:

Eine wahnwitzige Option, aber eine praktikable. Bibliothek von Zhunko.

Master ist für das Hauptdiagramm auf true gesetzt, für Slaves auf false. Der Symbolwechsel erfolgt bei der Ankunft des Häkchens.

Lieber SPLXGF, vielen Dank für Ihre Hilfe. Leider bin ich eine absolute Null in der MT-Programmierung, so dass ich Ihre Idee nicht selbst umsetzen kann. Ich bin mir aber auch sicher, dass eine sachkundige Person 15 Minuten braucht, um sie umzusetzen. Vor allem wird er in der Lage sein, sie selbst zu nutzen und nicht nur Beifall zu ernten. Ich hoffe, dass jemand, der es weiß, antworten wird. (
 
gorchakov:
Lieber SPLXGF, vielen Dank für Ihre Hilfe. Leider bin ich eine absolute Null in der MT-Programmierung, so dass ich Ihre Idee nicht selbst umsetzen kann. Ich bin mir aber auch sicher, dass eine sachkundige Person dies in 15 Minuten erledigen kann. Vor allem wird er in der Lage sein, sie selbst zu nutzen und nicht nur Beifall zu ernten. Ich hoffe, dass jemand, der sich auskennt, antworten wird. (


Wie leicht und einfach. Fünfzehn Minuten und das war's. Wann werdet ihr (in der Mehrzahl) lernen, die Arbeit anderer Leute zu respektieren?

Es dauert manchmal ein ganzes Leben, um etwas in 15 Minuten zu schreiben.

 

https://www.mql5.com/en/code

Diese befindet sich im Terminal-Ordner experts/include

Der Code selbst funktioniert, erstellen Sie einen neuen benutzerdefinierten Indikator in MetaEditor und kopieren Sie den Code aus dem Beitrag und ersetzen Sie den vom Assistenten generierten. Nach der Kompilierung können Sie es im Terminal verwenden.

Die Antworten auf all diese Fragen finden Sie über die Forensuche und Google, einschließlich Video-Tutorials.

/korrigierte den Link. Vinin./

Grund der Beschwerde: