Skip to content
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

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:

Edited by Nelly1966

Featured Replies

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.

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.

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?

  • Author

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

  • Author

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?

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.

  • Author

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

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 ?

Oder in eine Zip packen, geht denke ich auch ?

 

oder so - klar :dash1:

Hab ich einmal zuviel um die Ecke gedacht - naja, vielleicht hätte Nelly auch keinen Zipper gehabt :hrhrhr:

oder so - klar :dash1:

Wir werden alle älter, Super Mods auch :laugh:

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.

  • Author

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:

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

Account

Navigation

Search

Search

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.