Alle Inhalte von Philipp
-
Kursdaten beim Meta-Trader 4
OK, wir reden wirklich von 2 unterschiedlichen Dingen. Wenn man im Terminal einen H1-Chart betrachtet und dabei nach links scrollt, dann werden in der Tat nur H1-Daten nachgeladen, das ist richtig. Alles andere würde ja auch keinen Sinn machen. Aber ich habe an Backtests gedacht. Wenn Du einen Backtest durchführst, werden jede Sekunde n Ticks generiert - meines Wissens nach unabhängig vom Timeframe.
-
Position kurz halten verboten...?
Um auf die ursprünglichen Fragen zurück zu kommen: Es gibt Broker, die das explizit verbieten. Andere unterdrücken es implizit (die Verfahren werden hier im Nachbarthread genannt). Bei diesen Brokern handelt es sich um Dealing Desks. Diese verdienen daran, das die Kunden verlieren - platt gesagt. Dies ist ein weiterer Faktor, der dir als Trader das Leben schwer macht oder mit anderen Worten, der deinen Erwartungswert negativ beinflusst. Dieser Faktor lässt sich einfach neutralisieren, indem man mit einem STP oder besser ECN-Broker zusammen arbeitet. Hier findest Du eine ganz gute Übersicht und es wird nochmal der Unterschied zwischen DD/STP und ECN-Broker erklärt: http://www.100forexbrokers.com/stp-ecn-brokers
-
Kursdaten beim Meta-Trader 4
Ich glaub das ist nicht ganz richtig. Die maximal erreichbare Qualität von 90% rührt von der Komprimierung her, das stimmt. Der Grund ist, dass die Tickdaten, die auf dem Marktplatz entstehen, auf M1 eingedampft werden, sodass aus 1 min. Tickdaten nur 4 Eckdaten (OHLC) übrig bleiben. MT definiert das dann einfach als 90%. Beim Backtest wird aber nicht nur mit 4 Ticks pro Minute gearbeitet, das wäre ja ganz schön schlecht, sondern es werden mehrere Ticks pro Sekunde interpoliert. Das kann man schön mit einem sehr einfachen EA untersuchen, der einfach jeden Tick loggt. Die Interpolation erfolgt aber afaik unabhängig vom aktuellen Timeframe. Würde mich zumindest stark wundern, wenns so wäre.
-
MT4: Memory Problem
Halleluja! Ich hab gedacht ich wäre der Einzige mit dem Problem! Das ist ein böser Bug im MT. Ich hab den Fehler mittlerweile einkreist und einen Workaround gefunden. Ich stolpere hin und wieder darüber, dass sich ein EA mit RAM voll saugt und dann das Terminal abstürzt. Das kann man aber problemlos im Backtest nachstellen, man muss nicht auf den Livetest warten (wenn wir über den gleichen Fehler sprechen)! ;) Ich erklär jetzt kurz den Fehler und meinen Workaround. Allerdings nützt dir das nichts, wenn es sich um gekaufte EAs handelt. Das Problem ist folgendes: im EA ist eine Function enthalten, die sich am unteren Ende der mq4-Datei befindet. Diese Function muss gar nicht mal jemals aufgerufen werden, es reicht, wenn sie vom Compiler erfasst wird, also kompiliert wird. Egal wie diese Function aussieht, das Ergebnis ist, dass sich der EA mit ram vollsaugt. Man kann das im Backtest schön beobachten, wenn man parallel den taskmgr öffnet. Nach 1-2 Jahren Backtest stürzt mein Terminal ab. Wenn ich dann hingehe und exakt diese Function - ohne jegliche Anpassung - in eine Lib schiebe, verhält sich der EA ganz normal und die Speicherauslastung ist auch nach 10 Jahren Backtest immer eine konstante Linie. Hört sich das nach deinem Fehler an?
-
Kursdaten beim Meta-Trader 4
Um auf Deine ursprünglichen Fragen zurück zu kommen: ich bin bisher mit den via MT verfügbaren Daten immer gut klar gekommen und musste nie von extern Daten importieren. Das Wichtigste ist nur, dass man ungefähr versteht, wie MT mit hist. Daten umgeht. Ganz genau kann man es glaub ich nicht verstehen, weil das afaik nie offen gelegt wurde. Es gibt 2 Wege um an hist Daten zu kommen: 1. Broker-Daten Diese werden automatisch vom Terminal nachgeladen, wenn Du sie brauchst. D.h. wenn du einen EA testest, und keine Daten vorhanden sind, wird versucht, sie zu laden. Oder wenn du einen Chart betrachtest, und ganz nach links scrollst. Dann werden iterativ hist Daten nachgeladen. 2. Metaquotes-Daten Die kannst du über F2 (History Center) runterladen. Es empfiehlt sich folgende Vorgehensweise: - alle Chartfenster schließen, MT beenden - alle existenten Daten löschen (C:\Programme\MT4\history\ alles löschen) - MT starten - KEINEN Chart öffnen - Demokonto eröffnen (wenn nciht schon vorhanden) - 1x mit dem Broker connecten (damit sich das Terminal die MarketInfos zieht, also Spreads, Swaps, etc.etc.) - Demokonto löschen und nie wieder mit dem Broker connecten! - im History Center alle benötigten Daten runterladen (am besten den Download 2x durchführen, zwischendruch das Terminal beenden) Das Ergebnis sind die reinen historischen Daten von MQ, ohne Vermischung mit Broker-Daten. NUR SO kriegst du (meiner Erfahrung nach) wiederholbare Testergebnisse hin. Noch Fragen? --> Fragen! Gruß, Philipp
-
Kompatibilität historischer Daten
Hallo mh21, die "sechste Kerze" entsteht - nach meiner Erfahrung - bei Nicht-ECN-/STP-Brokern. Also DD-Brokern, weil die nämlich schon Sonntags um 23 Uhr anfangen. Daraus entsteht dann eine "Tageskerze". Bei STP-Brokern hast du das in der Regel nicht (wie gesagt, ist nur meine Erfahrung). Die fangen erst Montags um 0 Uhr an. Nein, kein Denkfehler. Du musst diese Gegebenheit einfach bei der Entwicklung und den Tests berücksichtigen und korrekt handhaben, das ist alles. Wenn Du weitere Fragen hast, frag einfach.