Fehler, Irrtümer, Fragen - Seite 1579

 
Dennis Kirichenko:

Sehen Sie sich die Funktion PrintFormat() an. In Ihrem Fall ist es besser, sie zu verwenden.

Dann geht es so:

Parsimony Regeln :-)

Ich habe den Code ausprobiert, erhalte Nullen

2016.05.12 00:41:43.336 Info_SymbolList AUDJPY,M15: symbolName=AUDJPY, ATR_D_1001=0.0000

 
Dennis Kirichenko:

Versuchen Sie, nur String-Variablen in die Datei zu schreiben.

Es ist folgendermaßen:

alle Variablen werden normal geschrieben, außerATR_D_1000, das ist nicht klar...
 
-Aleks-:
alle Variablen werden normal geschrieben, außerATR_D_1000, es ist nicht klar...

Versuchen Sie es so

FileWrite(handle,symbolName);
FileWrite(handle,MarketInfo(symbolName,MODE_SPREAD));
FileWrite(handle,MarketInfo(symbolName,MODE_MINLOT));
FileWrite(handle,MarketInfo(symbolName,MODE_MARGINREQUIRED)*MarketInfo(symbolName,MODE_MINLOT));
FileWrite(handle,MarketInfo(symbolName,MODE_TICKVALUE)*MarketInfo(symbolName,MODE_MINLOT)*100);
FileWrite(handle,MarketInfo(symbolName,MODE_STOPLEVEL));
FileWrite(handle,str2);
FileWrite(handle,ATR_D_1000);
FileWrite(handle,ATR_M15_9600)
FileWrite(handle,iBars(symbolName,1440));
FileWrite(handle,iBars(symbolName,15));
 
Sergey Gritsay:

G Versuchen Sie dies

Danke, ich werde es ausprobieren. Aber wenn die VariableATR_D_1000 nicht gedruckt wird, wie können wir dann erwarten, dass sie geschrieben wird?
 
-Aleks-:
Danke, ich werde es ausprobieren. Aber wenn die VariableATR_D_1000 nicht gedruckt wird, wie können wir dann erwarten, dass sie geschrieben wird?
D Es wird gedruckt. Höchstwahrscheinlich ist das Problem in der Geschichte paging, weil 1000 Tage Bars ist ziemlich groß, der Indikator dauert eine lange Zeit zu berechnen, auf den ersten Lauf, dann ist alles normal
0       18:17:32.387    Script test_1 USDCHF,H1: loaded successfully
0       18:17:35.135    test_1 USDCHF,H1 inputs: Start=1463014800; End=1463025600; 
0       18:17:40.219    test_1 USDCHF,H1: initialized
0       18:17:55.643    test_1 USDCHF,H1: ATR_D_1000=0.0
0       18:17:55.643    test_1 USDCHF,H1:  symbolName=USDCHF ATR_D_1001=0.0
0       18:17:55.643    test_1 USDCHF,H1: uninit reason 0
0       18:17:55.644    Script test_1 USDCHF,H1: removed
0       18:20:26.749    Script test_1 USDCHF,H1: loaded successfully
0       18:20:33.592    test_1 USDCHF,H1: initialized
0       18:20:33.593    test_1 USDCHF,H1: ATR_D_1000=0.008878300000000023
0       18:20:33.593    test_1 USDCHF,H1:  symbolName=USDCHF ATR_D_1001=0.008878300000000023
0       18:20:33.593    test_1 USDCHF,H1: uninit reason 0
0       18:20:33.594    Script test_1 USDCHF,H1: removed
0       18:21:48.047    Script test_1 USDCHF,Daily: loaded successfully
0       18:21:53.155    test_1 USDCHF,Daily: initialized
0       18:21:53.155    test_1 USDCHF,Daily: ATR_D_1000=0.008468200000000019
0       18:21:53.155    test_1 USDCHF,Daily:  symbolName=USDCHF ATR_D_1001=0.008468200000000019
0       18:21:53.156    test_1 USDCHF,Daily: uninit reason 0
0       18:21:53.157    Script test_1 USDCHF,Daily: removed
0       18:22:13.167    Script test_1 USDCHF,H4: loaded successfully
0       18:22:19.313    test_1 USDCHF,H4: initialized
0       18:22:19.313    test_1 USDCHF,H4: ATR_D_1000=0.008468200000000019
0       18:22:19.313    test_1 USDCHF,H4:  symbolName=USDCHF ATR_D_1001=0.008468200000000019
0       18:22:19.313    test_1 USDCHF,H4: uninit reason 0
0       18:22:19.314    Script test_1 USDCHF,H4: removed
0       18:22:26.488    Script test_1 USDCHF,H1: loaded successfully
0       18:22:32.343    test_1 USDCHF,H1: initialized
0       18:22:32.344    test_1 USDCHF,H1: ATR_D_1000=0.008468200000000019
0       18:22:32.344    test_1 USDCHF,H1:  symbolName=USDCHF ATR_D_1001=0.008468200000000019
0       18:22:32.344    test_1 USDCHF,H1: uninit reason 0
0       18:22:32.345    Script test_1 USDCHF,H1: removed
 
Sergey Gritsay:
D Alles wird ausgedruckt. Höchstwahrscheinlich liegt das Problem beim Laden der Historie, denn 1000 Tagesbalken sind ziemlich viel, der Indikator braucht beim ersten Durchlauf eine lange Zeit zum Berechnen, danach ist alles normal.
Wie lautet der Code, können Sie das Skript anhängen? Ich kann es nicht bewegen, danke.
 
-Aleks-:
Wie lautet der Code, können Sie ein Skript anhängen? Ich kann ihn nicht bewegen, danke.
Es ist dasselbe wie bei Ihnen.
//+------------------------------------------------------------------+
//|                                                       test_1.mq4 |
//|                        Copyright 2016, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2016, MetaQuotes Software Corp."
#property link      "https://www.mql5.com"
#property version   "1.00"
#property strict
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {

   double ATR_D_1000=0;

   string symbolName=_Symbol;

   ATR_D_1000=iATR(symbolName,1440,1000,1);

   Print("ATR_D_1000=",ATR_D_1000);

   Print(" symbolName=",symbolName," ATR_D_1001=",iATR(symbolName,1440,1000,1));
  }
//+------------------------------------------------------------------+
 

EX5-Laden fehlgeschlagen (bei Ausführung)

typedef void (*fn)();
fn GP( fn f ) { return f; }
void OnStart2() { Print( __FUNCSIG__ ); }
void OnStart()
{
        Print( GP( OnStart2 ));
}

sonst - gut

void OnStart()
{
        Print( GP( OnStart ));
}
 
Wenn die Funktion "Bestellschein" einen Wert vom Typ int zurückgibt, was passiert dann, wenn wir eine Obergrenze erreichen, z. B. wenn wir jetzt 9-stellige Ticketnummern haben, gibt es dann eine 10-stellige Obergrenze? oder setzt der Makler den Auftragszähler zurück?
 
Sergey Gritsay:
wie bei Ihnen.
Danke - ich habe einen Fehler im Code gefunden.
Grund der Beschwerde: