Auslesen von Indikatorpuffern, die auf Diagramm eingestellt sind - Seite 10

 
[Удален]:

Service Desk gab eine Lösung für MT5

Für MT4 ist die Frage offen.

Hier sieht es so aus, als wäre es irgendwie gemacht (Link entfernt, keine Werbung, möchte nur wissen, wie es gemacht wird, Sie können nach MT2Binary_Auto.ex4 oder MT2Trading_Auto.ex4 suchen). Es liest die Zahlen, Pfeiltypen aller Pfeilpuffer aller Indikatoren auf dem Chart(das ist kein Problem). Und dann signalisiert es die Werte dieser Puffer mit anderen Einstellungen als den Standardwerten! Wer weiß, wie sie es geschafft haben, die Werte von Puffern in MT4 zu erhalten? Ich glaube nicht, dass irgendwelche DLLs verwendet werden.

 

Um zu verstehen, welche Indikatoren auf dem Chart zu sehen sind, können Sie Vorlagen verwenden, ein Beispiel finden Sie bei fxsaver von kodobase. Soweit ich weiß, ist es immer noch nicht möglich, einen Indikator mit einer großen Anzahl von Parametern über iCustom auszuführen.

 

Ja, anhand der Vorlagen können Sie nachvollziehen, welche Indikatoren auf dem Diagramm angezeigt werden und welche Puffer, Parameter und Werte sie haben. Aber wie erhält man die Werte der Puffer? Aufruf von iCustom via Case je nach Anzahl der Parameter?

Sofiia Butenko:

Es gibt ein Beispiel für fxsaver bei kodobase

Beispiel für MT4? Ich kannsie nicht finden, kann ich einen Link bekommen?

 
Ivan Titov:

Ja, anhand der Vorlagen können Sie nachvollziehen, welche Indikatoren auf dem Diagramm angezeigt werden und welche Puffer, Parameter und Werte sie haben. Aber wie erhält man die Werte der Puffer? Aufruf von iCustom über Case je nach Anzahl der Parameter?

Beispiel für MT4? Ich kannsie nicht finden, kann ich einen Link bekommen?

Ich habe meinen Spitznamen falsch geschrieben, aber das ist Ihnen ja bekannt. Hier ist das Beispiel, das mir für Expert Advisors vorschwebt.

Um iCustom mit verschiedenen Parametern aufzurufen, müssen Sie alle Varianten vorschreiben (es gibt etwa 60 Einstellungen mit verschiedenen Typen), aber das sind zu viele und es ist nicht realistisch. Vielleicht ist es möglich, Varianten für einen Indikator mit 5-10 Parametern zu registrieren, aber dies ist keine universelle Lösung.

Oder Sie können einen Code generieren, der als Dichtungsindikator verwendet werden kann. Aber es kann auch nicht ohne dll installiert werden (in den gewünschten Ordner verschieben, kompilieren).

Danke für die Anleitung des EA, interessante Informationen.

Expert
Expert
  • www.mql5.com
Все остальные файлы на данной странице описания библиотеки являются ее примерами/сценариями применения и не нужны для работы самой библиотеки. Возможности Примеры К описанию прикреплены примеры/сценарии ее использования. ExpertsRemove.mq5 ExpertsReopen.mq5 ChartsClose.mq5 ExpertLoader_Example.mq5 ExpertsChange_Example.mq5 Это самые...
 
Sofiia Butenko:

Um iCustom mit verschiedenen Parametern aufzurufen, ist es notwendig, alle Varianten vorzuschreiben (es kann etwa 60 Einstellungen geben und mit verschiedenen Typen), und davon gibt es eine Menge und es ist nicht realistisch.

Ja, ich habe bereits eine solche Pyramide Maya gebaut. Ich kann alle String-Parameter übergeben - er versteht sie. Es hat nicht so lange gedauert, wenn man bedenkt, dass ich im Winter keinen Schnee vom Service Desk anfordern kann, ganz zu schweigen von ChartIndicatorGet und CopyBuffer in MT4.

Allerdings mit Parametern mehr als 60 wird nicht funktionieren, ich sympathisiere.

 
Ivan Titov:

Parameter können alle Strings sein - es versteht sie.

Aber nicht ganz korrekt - bei jedem Aufruf mit String-Parametern wird der Indikator initialisiert, anders als bei einem Aufruf mit den entsprechenden Typen.

Hier ist ein Vergleich der Indikatorwerte mit verschiedenen Parametern. Im Indikator selbst gibt es eine Warnung für die Initialisierung und Löschung.

int OnInit(){
   
   for(int i=0;i<3 ;i++){
      double b0 =  iCustom(_Symbol, PERIOD_CURRENT, "_test_HMA",  15 , 3 , 0 ,  2.1,  "11", 0, i);  
      double b1 =  iCustom(_Symbol, PERIOD_CURRENT, "_test_HMA", "15","3","0", "2.1", "22", 0, i);  
      Alert(i+" --> "+DoubleToString(b0,_Digits)+" - "+DoubleToString(b1,_Digits));}
      
  return(INIT_FAILED);}

und das funktioniert so


 
Sofiia Butenko:

Aber nicht ganz korrekt - jeder Aufruf mit String-Parametern initialisiert den Indikator, anders als bei einem Aufruf mit entsprechenden Typen.

Das wusste ich nicht, danke, Sie sind sehr tiefgründig). Nun, solange die Werte stimmen und der Kunde sich nicht über die Geschwindigkeit beschwert, werde ich die Pyramide nicht bauen.