Zum Inhalt springen
View in the app

A better way to browse. Learn more.

#T/N/X/T

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Langsame Berechnung des Backtests

Geschrieben

Hallo zusammen,

 

 

habe einen EA, der bei der Backtest-Berechnung "unendlich" lange braucht (für 1 Woche braucht er 10 Minuten 20 Sekunden). :sad:

 

Denke es liegt daran, dass er 2 externe (iCustom) Indikatoren berechnen muss. :5+5:

 

Wenn es daran liegt, wie kann man die Backtest schneller machen (ist es möglich, die beiden externen Indis in den EA "einzubauen")?

 

Danke vorab für alle Antworten!

 

Nelly :blush:

 

 

P.S. Am Rechner kann es nicht liegen, der ist neu und hat 1a Komponenten (Win7, 12 GB Arbeitsspeicher, Intel Core i5 3,3 GHz. usw.) :cool:

Bearbeitet von Nelly1966

Featured Replies

Geschrieben

P.S. Am Rechner kann es nicht liegen, der ist neu und hat 1a Komponenten (Win7, 12 GB Arbeitsspeicher, Intel Core i5 3,3 GHz. usw.) :cool:

Nur 12 Giga Arbeitsspeicher ?

Dann dauert das so lange.....

 

Spaß beiseite, 12 GB habe ich auch, allerdings nur zusammen in 3 Laptops...

Wir hatten das hier schon mal besprochen, das man diverse Rechner im Verbund betreiben müsste um gewisse Backtests wirklich beschleunigen zu können.

Finde den Thread aber nicht, da werden sicher andere weiterhelfen können.

Geschrieben

Wir hatten das hier schon mal besprochen, das man diverse Rechner im Verbund betreiben müsste um gewisse Backtests wirklich beschleunigen zu können.

Was allerdings nur den Metatrader 5 betrifft. Falls Nelly den MT4 hat, kann man da nix machen. Der unterstützt ja noch nicht mal mehrere Kerne. Und wenn man dann eine gewisse Größe an Rechenoperationen durchführt (bspw. 2 Indikatoren mit je 4 Parametern und das Ganze noch auf Tickbasis im Minutenchart), dann dauert das.

Geschrieben

Wenn es daran liegt, wie kann man die Backtest schneller machen (ist es möglich, die beiden externen Indis in den EA "einzubauen")?

Pauschal kann man das immer schwer beantworten.

Generell ist es recht wahrscheinlich, dass deine beiden Indikatoren sehr aufwändige Berechnungen durchführen, oder einfach

nicht effizient programmiert sind.

 

Verwendest du da Standardindikatoren, oder irgendwas spezielles?

Geschrieben
  • Autor

Verwendest du da Standardindikatoren, oder irgendwas spezielles?

 

Was spezielles ... was gaaaanz spezielles ;-)

 

Von einem Indi ist mir bekannt, dass dieser auch wiederum eine iCustom Funktion beinhaltet hat.

Der nimmt den Ichimoku als Grundlage und verarbeitet diesen weiter.

 

Vielen Dank an alle hier für die Antworten (finde mich mit dem langsamen Backtest ab ...)

 

Als Dank hier die 2 Indis (sind nicht von mir, bitte daher Eure Beschwerden nicht an mich richten). :argue:

 

Danksagungen leite ich gerne weiter ... :cleanglasses:

 

LG

Nelly

 

P.S. Die Software "sagt" mir eben, dass ich keine Berechtigung habe, diese Art von Dateien hochzuladen. Was meint die Software damit? Wollte nur 2 ex4-Dateien hochladen und keine Schadsoftware ... :plorar1:

 

P.P.S. Nutze MT4

Geschrieben
  • Autor

das Dateiformat ist dann nicht freigegeben, kannst Du es in .mq4 umwandeln ?

 

Ne, kann und darf ich nicht, ist ein vom Autor geschützter Indi.

 

Vielleicht kann ich die Indis ja einem dazu berechtigten Threadteilnehmer per Email senden und der stellt ihn dann ein?

 

Oder dürfen das alle nicht?

Geschrieben
Ne, kann und darf ich nicht, ist ein vom Autor geschützter Indi.

 

weiterleiten ist aber erlaubt oder ist es ein gekaufter ?

 

Oder dürfen das alle nicht?

 

jep, ist dann so global eingestellt und muß von einem Tech-Admin geändert werden.

 

Du kannst aber -wenn man den verbreiten darf- einfach umbenennen in .txt , wer sich das dann downloadet macht einfach wieder eine ex4 draus.

Geschrieben
  • Autor

weiterleiten ist aber erlaubt oder ist es ein gekaufter ?

 

Weiterleiten ist erlaubt (denke ich zumindest, da man den Indi ja auch ohne Probleme im freien Internet runterladen kann).

Ist halt nur geschützt.

 

Du kannst aber -wenn man den verbreiten darf- einfach umbenennen in .txt , wer sich das dann downloadet macht einfach wieder eine ex4 draus.

 

Das ist ne sehr gute Idee ... mach ich gleich mal so ...

 

Also an alle ein Hinweis! Die beiden Indis im Anhang nach dem Download in eine .ex4 Datei umbenennen!!!!

 

Viel Spaß damit!

 

LG

Nelly

 

P.S. Hatte den Hinweis beim ändern der Datei, dass diese evtl. durch das ändern der Endung unbrauchbar wird ...

THV4 Cloud MTF.txt

THV4 TRIX MTF.txt

Geschrieben

Du kannst aber -wenn man den verbreiten darf- einfach umbenennen in .txt , wer sich das dann downloadet macht einfach wieder eine ex4 draus.

Oder in eine Zip packen, geht denke ich auch ?

Geschrieben

Wenn du dir etwas arbeiten machst, geht die Optimierung durch die folgenden Parameter, ca. 30% schneller:

 

Nach dem Maxspread extern parameter einfügen :

 

Code:extern bool onetimecalculation=false; // calculate entry logics one time per barextern bool enteronopenbar=false; // enter only on open barNach den extern parameters, einfügen :

 

Code:datetime time;Am Anfang der Start function einfügen:

 

Code: bool onetime=true; if(onetimecalculation)if(time==Time[0])onetime=false;Ersetzen :

 

Code:if(breakevengain>0)Mit :

 

Code:if(breakevengain>0 && onetime)Ersetzen:

Code:if(trailingstop>0)Mit :

 

Code:if(trailingstop>0 && onetime)Ersetzen:

 

Code:if(trailing>0)Mit :

 

Code:if(trailing>0 && onetime)Ersetzen:

 

Code:if(trailingprofit>0)Mit :

 

Code:if(trailingprofit>0 && onetime)Ersetzen, wenn Indikatoren geladen werden:

 

Code:if(shift==0){Mit :

 

Code:if(onetime || shift==0){Danach :

 

Code:bool buy=false;bool sell=false;Einfügen :

 

Code:bool barstatus=true;if(enteronopenbar)if(iVolume(NULL,0,0)>1)barstatus=false;

In den Regeln wo du Long/Short gehst, füge ein:

Code: && barstatusAm ende des Code, vor :

 

Code:return(0);Einfügen :

 

Code:

if(onetimecalculation)time=Time[0];

Hoffe habe nix vergessen. Viel Spass, sollte dann einiges schneller gehen, oder der Indikator bricht die Signale künstlich auf Tick bzw. MultiTick runter, dann müsstest du den ganzen Indi umbauen.

Geschrieben
  • Autor

Wenn du dir etwas arbeiten machst, geht die Optimierung durch die folgenden Parameter, ca. 30% schneller:

 

Nach dem Maxspread extern parameter einfügen :

 

Da fängt es schon an ... soll ich das alles im EA einfügen?

Im Indi kann ich ja nicht, da der nicht "offen" ist.

 

Btw. eine Maxspread Abfrage habe ich nicht ...

 

... dann müsstest du den ganzen Indi umbauen.

 

Das kann ich wie gesagt nicht ...

 

Danke trotzdem :good:

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

Account

Navigation

Suche

Suche

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.