Tester für binäre Optionen

Renato Jose
291
Renato Jose  
Wie kann ich einen Puffer-Backtester wie das Bild in mt4 einfügen (zum Beispiel: Wenn 5 Minuten nach Puffer 1 größer als der Start ist, zählen Sie 1 Sieg, wenn nicht 1 Verlust)? Was ich wünsche, ist auf EURAUDM15.PNG

Mein Versuch
if(close[i+5]>Buffer1[i]&&i>1){nVit=nVit+1;} else{nDer=nDer+1;}
if(close[i+5]<Buffer2[i]&&i>1){nVit=nVit+1;} else{nDer=nDer+1;}

ObjectCreate("Nome", OBJ_LABEL,0,0,0);// Creating obj.
ObjectSet("Nome", OBJPROP_CORNER, 0);    // Reference corner
ObjectSet("Nome", OBJPROP_XDISTANCE, 10);// X coordinate
ObjectSet("Nome", OBJPROP_YDISTANCE, 15);// Y coordinate
ObjectSetText("Nome",Nome_do_indicador,10,"Arial",clrAliceBlue);

ObjectCreate("Vitórias", OBJ_LABEL,0,0,0);// Creating obj.
ObjectSet("Vitórias", OBJPROP_CORNER, 0);    // Reference corner
ObjectSet("Vitórias", OBJPROP_XDISTANCE, 10);// X coordinate
ObjectSet("Vitórias", OBJPROP_YDISTANCE, 30);// Y coordinate
ObjectSetText("Vitórias","Vitórias:"+nVit,10,"Arial",clrAliceBlue);

ObjectCreate("Derrotas", OBJ_LABEL,0,0,0);// Creating obj.
ObjectSet("Derrotas", OBJPROP_CORNER, 0);    // Reference corner
ObjectSet("Derrotas", OBJPROP_XDISTANCE, 10);// X coordinate
ObjectSet("Derrotas", OBJPROP_YDISTANCE, 45);// Y coordinate
ObjectSetText("Derrotas","Derrotas:"+nDer,10,"Arial",clrAliceBlue);

ObjectCreate("wR", OBJ_LABEL,0,0,0);// Creating obj.
ObjectSet("wR", OBJPROP_CORNER, 0);    // Reference corner
ObjectSet("wR", OBJPROP_XDISTANCE, 10);// X coordinate
ObjectSet("wR", OBJPROP_YDISTANCE, 60);// Y coordinate
ObjectSetText("wR","WinRate:"+MathRound(nWr)+"%",10,"Arial",clrAliceBlue);
Dateien:
Carl Schreiber
Moderator
11639
Carl Schreiber  
Es gibt die Funktion OTester(), in der man für die Optimierung selbst berechnete Werte zurückgeben kann.
Christian
3573
Christian  
Carl Schreiber:
Es gibt die Funktion OTester(), in der man für die Optimierung selbst berechnete Werte zurück
OnTester()
Carl Schreiber
Moderator
11639
Carl Schreiber  
Christian:
uups - richtig, Danke :)
Christian
3573
Christian  
Carl Schreiber:
uups - richtig, Danke :)
Pappi passt auf, keine Sorge 😉
Renato Jose
291
Renato Jose  
Christian:
Pappi passt auf, keine Sorge 😉

Vielen Dank für die Klarstellungen, aber ich glaube immer noch nicht, wonach ich suche. Ich möchte, dass dies im Indikator erfolgt. Folgen Sie einem detaillierteren Bild von dem, was ich möchte

tester

amando
3555
amando  
Renato Jose:

Vielen Dank für die Klarstellungen, aber ich glaube immer noch nicht, wonach ich suche. Ich möchte, dass dies im Indikator erfolgt. Folgen Sie einem detaillierteren Bild von dem, was ich möchte


Du kannst das auch im ea laufen lassen, check die OnTradeEvent und wenn da was passiert ist, frage ab ob was passiert ist und dann aktualisiere es

Renato Jose
291
Renato Jose  
amando:

Du kannst das auch im ea laufen lassen, check die OnTradeEvent und wenn da was passiert ist, frage ab ob was passiert ist und dann aktualisiere es

Wäre es nur in einem EA möglich? Ich würde es sehr gerne im Indikator als Indikator für dieses Forum haben, ich würde sehr gerne wissen, wie es geht, um es in meine Indikatoren zu implementieren

https://fxsklad.ru/threads/besplatnyj-tester-dlja-binarnyx-opcionov-novaja-versija.1218/

Тестер - Бесплатный тестер для бинарных опционов. Новая версия. | fxsklad.ru
Тестер - Бесплатный тестер для бинарных опционов. Новая версия. | fxsklad.ru
  • fxsklad.ru
Бесплатный тестер для бинарных опционов. Новая версия. Подправлен мартингейл по сигналам. Меньшая нагрузка на МТ4.
Carl Schreiber
Moderator
11639
Carl Schreiber  

Naja, dann schreib halt den Indikator, der die relevanten Werte über seine Puffer anbietet und einen kleinen EA, der die Puffer ausliest und auswertet, sodass am Ende der Optimierung (wofür sonst der Tester) das von OnTester() zurückgegeben wird.

Renato Jose
291
Renato Jose  
Carl Schreiber:

Naja, dann schreib halt den Indikator, der die relevanten Werte über seine Puffer anbietet und einen kleinen EA, der die Puffer ausliest und auswertet, sodass am Ende der Optimierung (wofür sonst der Tester) das von OnTester() zurückgegeben wird.

Mein Versuch

int OnCalculate(const int rates_total,
                const int prev_calculated,
                const datetime &time[],
                const double &open[],
                const double &high[],
                const double &low[],
                const double &close[],
                const long &tick_volume[],
                const long &volume[],
                const int &spread[])
  {...

for (int i = limit-1; i>=0; i--)
if (i >= MathMin(50000-1, rates_total-1-50)) continue;
...

static double nVit = 1.00;
static double nDer = 1.00;

if (rates_total == prev_calculated) 
{
       if(Buffer1[6]>0 && Buffer1[6]!=EMPTY_VALUE && Close[1]>Buffer1[6])
        {
         nVit=nVit+1;
        }
      else
        {
         nDer=nDer+1;
        }
     
      if(Buffer2[6]>0 && Buffer2[6]!=EMPTY_VALUE && Close[1]<Buffer2[6])
        {
         nVit=nVit+1;
        }
      else
        {
         nDer=nDer+1;
        }
     }
ObjectCreate("Nome", OBJ_LABEL,0,0,0);// Creating obj.
ObjectSet("Nome", OBJPROP_CORNER, 0);    // Reference corner
ObjectSet("Nome", OBJPROP_XDISTANCE, 10);// X coordinate
ObjectSet("Nome", OBJPROP_YDISTANCE, 15);// Y coordinate
ObjectSetText("Nome",Nome_do_indicador,10,"Arial",clrAliceBlue);

ObjectCreate("Vitórias", OBJ_LABEL,0,0,0);// Creating obj.
ObjectSet("Vitórias", OBJPROP_CORNER, 0);    // Reference corner
ObjectSet("Vitórias", OBJPROP_XDISTANCE, 10);// X coordinate
ObjectSet("Vitórias", OBJPROP_YDISTANCE, 30);// Y coordinate
ObjectSetText("Vitórias","Vitórias:"+(nVit-1),10,"Arial",clrAliceBlue);

ObjectCreate("Derrotas", OBJ_LABEL,0,0,0);// Creating obj.
ObjectSet("Derrotas", OBJPROP_CORNER, 0);    // Reference corner
ObjectSet("Derrotas", OBJPROP_XDISTANCE, 10);// X coordinate
ObjectSet("Derrotas", OBJPROP_YDISTANCE, 45);// Y coordinate
ObjectSetText("Derrotas","Derrotas:"+(nDer-1),10,"Arial",clrAliceBlue);

ObjectCreate("wR", OBJ_LABEL,0,0,0);// Creating obj.
ObjectSet("wR", OBJPROP_CORNER, 0);    // Reference corner
ObjectSet("wR", OBJPROP_XDISTANCE, 10);// X coordinate
ObjectSet("wR", OBJPROP_YDISTANCE, 60);// Y coordinate
ObjectSetText("wR","WinRate:"+NormalizeDouble(((nVit-1)/(nVit+nDer-2)*100),Digits)+"%",10,"Arial",clrAliceBlue);


}

//--- return value of prev_calculated for next call
   return(rates_total);
  }
//+------------------------------------------------------------------+

mein Ergebnis :(


amando
3555
amando  
Renato Jose:

Mein Versuch

mein Ergebnis :(


Was passt dir nicht, der zählt doch eh was du ihm programmiert hast