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

 
lottamer:


danke, kann nicht überprüfen.... zuerst der Berater glitched (reagierte nicht auf die Entschuldigungen in den Code). beschlossen, mt4 neu zu starten - das Terminal öffnete sauber wie ein Kind zu reißen.... keine Konten, keine Charts, keine EAs....

Das muss ein Zeichen sein. DAS IST GENUG FÜR HEUTE. :)))

Danke für Ihre Geduld.... :)

Wandernd, in drei Kiefern.

Hier ist I. Kims Funktion, klären Sie das

//+------------------------------------------------------------------+
//| Дивергенции MACD основной линии                                  |
//| Параметры:                                                       |
//|   nb - номер бара                                                |
//|   ms - массив сигналов                                           |
//+------------------------------------------------------------------+
void DivergenceMACDMain(int nb, double& ms[]) {
  double mu1, mu2, md1, md2;
  double pu1, pu2, pd1, pd2;
  double tt[];
  int    sh;

  ArrayResize(tt, BarsForCheck);
  // Заполнение массива точек.
        for (sh=0; sh<BarsForCheck; sh++) {
                tt[sh] = iMACD(NULL, 0, FastEMAPeriod, SlowEMAPeriod, MACDSMAPeriod, PRICE_CLOSE, MODE_MAIN, nb+sh);
        }
  // Определение ключевых точек.
        mu1=0; mu2=0; pu1=0; pu2=0;
        for (sh=0; sh<BarsForCheck; sh++) {
                if (tt[sh+1]<tt[sh+2] && tt[sh+2]>tt[sh+3]) {
                        if (mu1!=0 && mu2==0) {
                          mu2 = tt[sh+1];
                          pu2 = High[nb+sh];
                        }
                        if (mu1==0 && tt[1]<tt[2] && tt[2]>tt[3]) {
                          mu1 = tt[sh+1];
                          pu1 = High[nb+sh];
                        }
                }
        }
        md1=0; md2=0; pd1=0; pd2=0;
        for (sh=0; sh<BarsForCheck; sh++) {
                if (tt[sh+1]>tt[sh+2] && tt[sh+2]<tt[sh+3]) {
                        if (md1!=0 && md2==0) {
                          md2 = tt[sh+1];
                          pd2 = Low[nb+sh];
                        }
                        if (md1==0 && tt[1]>tt[2] && tt[2]<tt[3]) {
                        md1 = tt[sh+1];
                          pd1 = Low[nb+sh];
                        }
                }
        }

  // Сигнал на покупку
  if (pd1<pd2 && md1>md2 && md1<0 && md2<0) {
    ms[0] = Low[nb] - ArrowInterval * Point;
    ms[4] += 4;
  }

  // Сигнал на продажу
  if (pu1>pu2 && mu1<mu2 && mu1>0 && mu2>0) {
    ms[1] = High[nb] + ArrowInterval * Point;
    ms[4] += 4;
  }
}
 
gyfto:
mzk_3om6u ,hier ist ein BASIC-Konverter auf dem Hub, du kannst ihn an Ort und Stelle übersetzen.

Sie können es in Notepad öffnen und in ANSI speichern. Eine andere Sache ist es, wenn Sie es programmatisch vorcodieren müssen.
 
lottamer:
Ich füge THIS.... hinzu. und es wird wieder 5__13 gedruckt. Sollten nicht schon Indikatorwerte vorhanden sein?
   double max=MACDBuffer[ArrayMaximum(MACDBuffer)];
   double min=MACDBuffer[ArrayMinimum(MACDBuffer)];
 
Integer:

Sie können es in Notepad öffnen und in ANSI speichern. Anders verhält es sich, wenn Sie es programmatisch vorcodieren müssen.

Dies ist die Frage der Software-Vorcodierung.
 
gyfto:
mzk_3om6u ,hier ist ein BASIC-Konverter auf dem Hub, du kannst ihn an Ort und Stelle übersetzen.

Eh, wenn ich ein geschickter Junge wäre, aber alles, was ich kann, ist, Funktionen zu ziehen))))
 
mzk_3om6u, kann es einfacher sein - es vbs-Skript ist fast fertig, geben Sie nur Scripting.FileSystemObject mit diesem txt arbeiten (Lesen-Konvertieren-Schreiben zurück, der zentrale Teil des Codes ist bereits vorhanden), führen Sie vbs-Skript von Truthahn (oder was auch immer Sie haben) durch WinExec, sleep(1000), und dann von mql4-Code öffnen Sie die bereits konvertierte txt. Hier ist das BFS. Ich würde es tun, aber ich bin selbst chronisch knapp an Zeit...
 
mzk_3om6u:

Das ist die Frage, programmatisch gesehen.

Erstellen Sie ein Thema, sonst wird es Ihnen zu langweilig, mit der ganzen Meute in dieser Box zu sitzen... Ich habe eine Funktion in php gefunden, die die Zeile "РРєÐśÐśÐ†Ð××ІІІІа"ÐµÐЅÐґÐ°ÑЂЊ - ÐђÐЅÐ°Ð° ÑÑ'ÐЅÐа" in "Wirtschaftskalender- Marktanalyse" umwandelt. War dies der Fall oder liegt ein Fehler in meiner Funktion vor?
 
Integer:

Wirtschaftlich
Wahrscheinlich gibt es D0 AD, den Buchstaben E, aber #&HAD ist html &shy; - soft transfer in Win1251, also wird das erste Zeichen von Win1251 dupliziert und man erhält D0 D0, was in utf-8 kein einzelnes Zeichen ist...
 
gyfto:
Wahrscheinlich ist es D0 AD, Buchstabe E, aber #&HAD ist html &shy; - soft transfer in Win1251, dadurch wird das erste Zeichen von Win1251 dupliziert und man erhält D0 D0, was in utf-8 keinem Zeichen entspricht...


Habe "E" und "e" ausprobiert - konvertiert normal, kann sein, dass es mit "A" so war. Setzen Sie die Funktion hier ein.
 
Integer:

Ich habe den Buchstaben "A" und "e" ausprobiert - er wird normal konvertiert, das muss auch bei "A" der Fall gewesen sein. Setzen Sie die Funktion hier ein.

es gab ein A, danke für die Funktion.