Jede Anfängerfrage, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Nirgendwo ohne dich - 6. - Seite 1176

 

Leute, Ratschläge, wie man... Beispiel - es gibt ein Ereignis bei 10 bar und 3 bar, d.h. es gibt A=Close[10] und B=Close[3], ich erwarte das nächste Ereignis nach 7 (10-3) Takten von 3 bar, d.h. nach 4 Takten. Wie kann ich das Datum und die Uhrzeit dieses erwarteten Ereignisses in dem Kommentar anzeigen?

 
kon12:

Leute, Ratschläge, wie man... Beispiel - es gibt ein Ereignis bei 10 bar und 3 bar, d.h. es gibt A=Close[10] und B=Close[3], ich erwarte das nächste Ereignis nach 7 (10-3) Takten von 3 bar, d.h. nach 4 Takten. Wie kann ich das Datum und die Uhrzeit dieses erwarteten Ereignisses in dem Kommentar anzeigen?

Comment( TimeToStr(Time[0]+PeriodSeconds()*3/* на 3 свечи вперёд */, TIME_DATE|TIME_MINUTES) );
 
Taras Slobodyanik:

Es kann auch für die Schlüssel funktionieren.

Für das Ereignis CHARTEVENT_MOUSE_MOVE enthält der String-Parameter sparam eine Zahl, die den Schlüsselstatus angibt:

Bit

Beschreibung

1

Zustand der linken Maustaste

2

Status der rechten Maustaste

3

Status der SHIFT-Taste

4

Zustand der CTRL-Taste

5

Zustand der mittleren Maustaste

6

Status der ersten zusätzlichen Maustaste

7

Zustand der zweiten zusätzlichen Maustaste


Wird diese Arbeit auf mt4 !? weil Hilfe mt5 !?

Kann ich auch ein Stück Code zum Beispiel eine Warnung oder drucken, indem Sie (contrl+A), weil ich nicht sehen oder verstehen den Unterschied zwischen meiner Warnung durch Drücken und wie man die Kombination zu wählen !??
 
LRA:

Ihre Terminologie ist fangen, wegnehmen, abarbeiten. Man kann es auch anders sehen. Ich möchte, dass die Fibonacci-Linien im aktiven Diagramm erscheinen, wenn ich Strg-A drücke. Wenn Sie sie erneut drücken, verschwinden sie. Ich kann einen Expert Advisor mit Ihrer Funktion erstellen - aber er muss an den Chart gehängt werden. Ich schreibe gerade ein Drehbuch:

Ich weise ihm das gewünschte Tastenkürzel zu! Probieren Sie es aus!!!


ja alles ist groß, nur dann müssen Sie in EA und Skript binden durch Variablen und Klick-Emulation in einigen Fällen zu tun und wie Sie verstehen, die zusätzliche Mühe, wenn binden EA und Skript!

Ich kenne die Möglichkeit, dem Skript eine Abkürzung zu geben, aber sie funktioniert bei mir nicht!

 
Vitaly Muzichenko:

Ich danke Ihnen!

 
Игорь:

Wird es auf mt4 arbeiten !? weil mt5 Referenz !??

Ich sehe oder verstehe den Unterschied zwischen meinem Alarm, wenn ich die Taste drücke, und der Kombination, die ich gedrückt habe, nicht!

Wer wird den Dastorbaitern helfen? Ich habe das Gefühl, alle sind tot!

 
double mZz1[][8];
double mZz2[][8];
double mZz3[][8];
double mZz4[][8];   
double mZz5[][8];  

for (int a=1;a<6;a++)
   {
   double mMass[][8]==mZzа[][8];
   далее другой код по обработке массивов;
   }

Ich verstehe, dass dieser Code falsch ist, bitte beraten oder korrigieren Sie den Code zu kopieren oder fügen Sie mZz in mMass[][8] eine nach der anderen.

 
Игорь:

Ich verstehe, dass dieser Code falsch ist, bitte beraten oder korrigieren Sie den Code zu kopieren oder fügen Sie mZz in mMass[][8] eine nach der anderen.

Versuchen Sie dieses Skript
//#property strict
double mMass[16][8]; // Или задать колич-во элементов или использовать ArrayResize
double mZzа[][8]={3,7,4,9,2,5}; // Для простоты зададим
// Если массив описать внутри цикла, то ...
void start() 
{
   for (int a=1;a<6;a++) mMass[0][a]=mZzа[0][a];

   // Обработка
   string s;
   for (a=1, s="";a<6;a++) s+="  "+(string)mMass[0][a];
   Alert(s);
}
 
STARIJ:
Versuchen Sie dieses Skript

         case 55:{Stat();bar0=0;break;}
        }
//+------------------------------------------------------------------+
//|                  Сбор статистики                      |
//+------------------------------------------------------------------+
void Stat()
    {
    for(int a=1;a<6;a++){if(a==2){Statistic(mZz2,namZz2);}if(a==3){Statistic(mZz3,namZz3);}if(a==4){Statistic(mZz4,namZz4);}}
    }
//+------------------------------------------------------------------+
//|                     Сбор статистики                              |
//+------------------------------------------------------------------+
void Statistic(double &mMass[][],string NameZz)
    {
    int e,y0,y1,y2,y3,y4,y5,c1,c2,c3,c4,c5,d1,d2,d3,d4,d5,sving;
    if((PaintZz2==1)&&(PaintZz3==1)&&(PaintZz4==1))
    {if(NameZz==namZz2){printf("Подождите идет расчет статистики");}}
    else
    {printf("Включите для расчета статистики");}return;}
//----------------------------------------------
int handle;
         for(e=2; e!=ArrayRange(mMass,0); e++){switch((int)mMass[e][7]){//собираем статистику

Hier ist ein Auszug aus dem Arbeitscode! Wie sammelt man sie in einer ungültigen Statistik ohne dazwischenliegende ungültige Statistik! Was Sie vorschlagen, ich muss den gesamten Code überarbeiten, um alle Arrays in einem zusammenzufügen und dann von dort aus zu löschen!

 
Игорь:

Hier ist ein Auszug aus dem Arbeitscode! Wie kann man sie in einer ungültigen Statistik ohne dazwischenliegende ungültige Statistik sammeln? Ich müsste den gesamten Code überarbeiten, um alle Arrays in einem einzigen zusammenzufassen und es von dort aus auszukratzen!

Schauen wir uns zunächst die Zeile

for(int a=1;a<6;a++){if(a==2){Statistic(mZz2,namZz2);}if(a==3){Statistic(mZz3,namZz3);}if(a==4){Statistic(mZz4,namZz4);}}

Um es für mich klarer zu machen, habe ich es folgendermaßen umgeschrieben

for(int a=1;a<6;a++)
{
   if(a==2){Statistic(mZz2,namZz2);}
   if(a==3){Statistic(mZz3,namZz3);}
   if(a==4){Statistic(mZz4,namZz4);}
}

Aha!!! Jetzt beginne ich zu verstehen... In der Schleife ändert sich die Variable a von 1 auf 6. Bei den Werten dieser Variablen 1, 5 und 6 gibt es keine Aktion. Dann einfach

 Statistic(mZz2,namZz2);
 Statistic(mZz3,namZz3);
Statistic(mZz4,namZz4);

oder in Ihrem Stil.

Statistic(mZz2,namZz2); Statistic(mZz3,namZz3); Statistic(mZz4,namZz4);

Das Ergebnis wird dasselbe sein, aber es wird schneller laufen.

Sie müssen die Funktion Statistic dreimal hintereinander schreiben, die formalen Parameter in jedem der drei Teile durch aktuelle Parameter ersetzen und doppelte Variablendeklarationen entfernen. Der gesamte Code wird etwas länger, aber die Ausführung ist schneller. Es macht Sinn, print() zu verwerfen - wer genau wird zu diesem Zeitpunkt das Nachrichtenprotokoll durchsehen? - Oder ersetzen Sie sie durch Alert(), um sie auf dem Bildschirm anzuzeigen. Außerdem gibt es eine Variable namZz2 - ändert sich ihr Wert?