POPULARITY
In diesem Video wollen wir uns einmal diesen Oszillator hier anschauen. Das ist der Commodity Channel Index. Der wird normalerweise als Filter genutzt. Wir wollen jetzt aber mal schauen, wie man den in MQL5 als Signal programmieren kann. Um das zu tun, klicken Sie bitte im Metaeditor bitte auf dieses kleine Symbol hier oben oder drücken Sie die F4 Taste. Das ruft dann hier den Metaeditor auf. Und hier klicken wir auf Datei, Neue Datei, Expert Advisor aus Vorlage, Weiter. Ich vergebe hier einmal den Namen SimplerCommodityChannelIndexEA, klicke auf Weiter, Weiter und Fertigstellen. Jetzt kann alles oberhalb der OnTick Funktion hier gelöscht werden. Und wir entfernen auch die zwei Kommentarzeilen. Wie so oft starten wir hier mit einem include Statement für die Datei Trade.mqh. Danach erstellen wir eine Instanz von der Klasse CTrade. Die bekommt den Namen trade. Und wir werden sie verwenden, um Positionen zu eröffnen. In der OnTick Funktion ermitteln wir zunächst den Ask Preise. Das übernimmt die Funktion SymbolInfoDouble für das aktuelle Währungspaar auf dem Chart. Mit SYMBOL_ASK, alles in Großbuchstaben bitte, lässt sich hier der Ask Preis ermitteln. Und zusätzlich nutze ich noch NormalizeDouble und _Digits, um die richtige Anzahl von Nachkommastellen zu ermitteln. Das können je nach Währungspaar drei oder fünf Nachkommastellen sein. Das gleiche wiederholen wir jetzt nochmal für den Bid Preis. Hier unterscheidet der Name der Variable und der Parameter hier heißt SIMBOL_BID. Ansonsten sind diese beiden Zeilen nahezu identisch. Mit MqlRates erstellen wir uns ein Array für die Preisinformationen. Das wird im Anschluss mit ArraySetAsSeries von der aktuellen Kerze an abwärts sortiert. Und mit CopyRates füllen wir unser Preis Array mit Preisdaten für drei Kerzen. Dieser Ausdruck für das aktuelle Währungspaar kann auch so geschrieben werden. Seit einiger Zeit wurde die Sprache entsprechend angepasst. Wenn man das hier mal markiert und die F1 Taste drückt, dann wird das in der Hilfe hier auch so beschrieben. Im nächsten Schritt erstellen wir uns eine leere Variable mit dem Namen signal. Die ist vom Typ string, hat hier aber noch keinen Wert. Um den zu ermitteln erstellen wir uns ein weiteres Array für den Expert Advisor. Und mit der eingebauten MQL5 Funktion iCCI können wir jetzt für das aktuelle Währungspaar und die auf dem Chart ausgewählte Zeiteinheit den Commodity Channel Index für 14 Kerzen aufgrund der Schlusskurse berechnen. Die 14 taucht auch hier in Klammern auf. Und wenn man einmal mit der rechten Maustaste auf den Oszillator klickt und Eigenschaften auswählt, dann sieht man, dass das hier die Standardwerte sind. Auch dieses Array sortieren wir von der aktuellen Kerze an abwärts. Und im Anschluss nutzen wie CopyBuffer, um anhand der Definition, die wir hier oben getroffen haben, für Buffer null, das ist diese Linie hier, von der aktuellen Kerze null an für drei Kerzen unser Array mit Daten zu füllen. Und das ermöglicht es uns, den aktuellen Wert für den Commodity Channel Index zu berechnen, indem wir auf Kerze null in unserem Array zugreifen. Wenn sich der Wert oberhalb der Einhunderter-Linie befindet, das wäre hier die obere gestrichelte Linie, dann möchten wir gerne verkaufen. Darum weisen wir den Wert Verkaufen unsere signal Variable hier zu. Im umgekehrten Fall, wenn der Wert kleiner ist und sich unter der unteren gestrichelten Linie befindet, das wäre hier diese minus einhundert Linie, dann möchten wir gerne kaufen und weisen diesen Wert der signal Variable zu. Und wenn unser signal auf Verkaufen steht und die Funktion PositionsTo...
Das hier ist der sogenannte Bulls Power Indikator. Es handelt sich hierbei einen Oszillator, der anzeigen soll, wie stark die Bullen sind. Man sagt ja, dass im Trading jeden Tag die Bullen gegen die Bären kämpfen und bei maximalen Ausschlägen kann man davon ausgehen, dass hier nach den höchsten Werten der Preis erst mal in den Keller geht. Im Umkehrschluss, wenn diese Linie hier überschritten wird, dann geht es in der Regel erst mal aufwärts. Dieser Oszillator hier wurde erstellt von einem professionellen Trader mit dem Namen Alexander Elder. Er sagt hier, dass ein fallender Wert über null ein Signal zum Verkauf ist. Der Oszillator wird auf 13 Kerzen berechnet. Man nutzt einen exponentiellen Moving Average und es wird empfohlen, den Bulls Power Indikator zusammen mit einem anderen Trend Indikator, wie zum Beispiel den Moving Average, zu nutzen. Wie also können wir jetzt für diesen diesen Bulls Power Indikator einen ExpertAdvisor in MQL5 erstellen? Um das zu tun, klicken wir hier im MetaTrader zunächst auf diesen kleinen Knopf hier oben oder drücken die F4-Taste. Das ruft hier den Metaeditor auf und hier klicken wir auf „Datei neu, „ExpertAdvisor von Vorlage, „Weiter, vergeben hier den Namen „Simple Bulls Power EA, klicken auf „Weiter, „Weiter, „Fertigstellen und löschen alles oberhalb dieser OnTick-Funktion und die beiden Kommentarzeilen. Und im ersten Schritt erstellen wir, wie so oft, ein Array für unsere Preisdaten vom Typ „Double und vergeben den Namen „My Price Array. Danach definieren wir die Eigenschaften für den Bulls Power EA, indem wir die in MQL5 eingebaute Funktion „i Bulls Power nutzen, und zwar für das aktuelle Währungspaar auf dem Chart und die dort eingestellte Zeiteinheit, zum Beispiel das Minuten-Chart oder das 60-Minuten-Chart. Und die Berechnung wird auf die letzten 13 Kerzen erfolgen, denn das ist der Zeitraum, der von Herrn Elder definiert wurde. Und im nächsten Schritt sortieren wir die Preise wieder abwärts von der aktuellen Kerze an, indem wir die Funktion „Array Set as Series nutzen. Das Ganze machen wir mit unserem Price-Array, das wir hier oben definiert haben. So, jetzt füllen wir Wir haben hier unseren Expert-Advisor noch mit Daten. Dazu nutzen wir hier die Definition aus dieser Zeile, die Funktion „Copy Buffer. Diese Null hier steht für den Indikator. Diese Null hier beschreibt die aktuelle Kerze und die drei bedeutet, dass wir die Preise von der aktuellen Kerze für drei Kerzen kopieren möchten und danach speichern wir das Resultat in unserem Price Array. Und aus diesem Price-Array hier holen wir uns jetzt aus der Kerze 0 den aktuellen Bulls Power-Wert und wir machen das mit einer Float-Variable. Normalerweise würde das hier eine Double-Variable sein. Das sind mir aber zu viele Nachkommastellen und außerdem braucht die Float-Variable gegenüber der Double-Variable nur 4 Byte statt 8 Byte im Speicher. In einem letzten Schritt lassen wir uns jetzt auf dem Chart noch unseren Wert und den Text Bulls Power-Wert ausgeben. Das machen wir mit der Comment-Funktion und nach diesem Text wird der Wert ausgegeben, den wir in der Zeile hier ermittelt haben. Kompilieren wir das Ganze, dann bekommen wir hier unten die Warnung, es gibt einen möglichen Datenverlust, weil wir hier einen Float statt einen Double-Wert berechnen. Trotzdem war der Compiler-Vorgang mit null Fehlern erfolgreich. Also klicken wir hier oben auf diesen kleinen Knopf oder drücken die F4-Taste, zurückzuwechseln in den MetaTrader. Im MetaTrader selbst klicken wir auf „Ansicht, „Strategietester oder drücken die Steuerung und die R-Taste. Das ruft dann hier unten den „Strategietester auf und hier wählen wir d...
In diesem Video schauen wir uns einmal diesen Indikator hier an. Es handelt sich um einen Oszillator. Es ist der Commodity Channel Index. Und wir möchten uns einmal ansehen, wie man für diesen Indikator, für den Metatrader 5 in MQL5 einen Expert Advisor programmieren kann, der in der Lage ist, nicht nur die Signale auf dem Chart auszugeben, sondern auch selbständig Positionen zu eröffnen und zu schließen. Um das zu tun, klicken Sie bitte auf den kleinen Button hier oben links oder drücken sie die F4 Taste im Metatrader. Das öffnet dann hier das Meta Editor Fenster. Und hier klicken wir auf Datei, Neu, Expert Advisor aus Vorlage, Weiter. Ich vergebe hier mal den Namen SimplerICCIStandaloneEA. Klicke auf Weiter, Weiter und Fertigstellen. Jetzt kann alles oberhalb der On Tick Funktion gelöscht werden. Auch die zwei Kommentarzeilen werden entfernt. Wir starten hier oben damit, dass wir die Datei Trade.mqh importieren. Das geht mit dem include Befehl. Diese Datei gehört zum Umfang von MQL5 dazu. Diese Datei ermöglicht uns eine Instanz von der Klasse CTrade zu bilden. Die bekommt den Namen trade. Und wir werden sie später verwenden, um Positionen zu eröffnen. Vorher müssen wir ein paar Dinge berechnen. Zunächst brauchen wir den Ask und den Bid Preis. Die liefert uns die Funktion SymboInfoDouble für das aktuelle Währungspaar auf dem Chart. Mit SYMBOL_ASK kriegen wir den Ask Preis. Und SYMBOL_BID wird uns den Bid Preis liefern. Wir formatieren das Ganze mit NormalizeDouble und Unterstrich Digits. Denn manche Währungspaare haben drei Nachkommastellen, während andere fünf Nachkommastellen haben. Und diese Funktion stellt sicher, dass die richtige Anzahl von Nachkommastellen berechnet wird. Jetzt wo wir die zwei Preise haben, erstellen wir uns ein Preis-Array. Das machen wir mit der Funktion MqlRates und nennen es PriceInfo. Dieses Array wird die Preise für die Kerzen auf dem Chart aufnehmen. Zunächst sortieren wir es mit ArrySetAsSeries von der aktuellen Kerze an abwärts. Danach nutzen wir CopyRates um es mit Preisdaten zu füllen. Und zwar für das aktuelle Symbol, also Währungspaar auf dem Chart, die auf dem Chart ausgewählte Zeiteinheit. Wir starten von der aktuellen Kerze null und kopieren uns die Preisdaten für drei Kerzen in unser PriceInfo Array. Außerdem brauchen wir eine string Variable für unser Signal. Die nennen wir auch Signal. Den wert ermitteln wir später. Zunächst weisen wir hier noch keinen Wert zu. Jetzt brauchen wir noch ein Array. Das bekommt den Namen myPriceArray. Und das wird dieses Mal die Daten für unseren Expert Advisor aufnehmen. Wir definieren jetzt den Commodity Channel Index Expert Advisor indem wir die Funktion ICCI benutzen. Die wird mit MQL5 mitgeliefert. Und als Parameter nutzen wir das aktuelle Währungspaar, die aus dem Chart ausgewählte Zeiteinheit. Und wenn Sie sich fragen, was diese 14 hier bedeutet, dann klicken Sie doch einmal auf Einfügen, Indikatoren, Oszillatoren, Commodity Channel Index. Dann werden Sie sehen, dass hier die Periode auf 14 eingestellt ist. Das sind 14 Kerzen und genau das, was wir hier verwenden. Als letzten Parameter übergeben wir PRICE_CLOSE, damit die Ergebnisse anhand der Schlusskurse berechnet werden. Auch dieses Array wird mit ArraySetAsSeries wieder von der aktuellen Kerze an abwärts sortiert. Und dieses Mal nutzen wir CopyBuffer um anhand der von uns getroffenen Definition, die wir hier oben erstellt haben für Buffer null, also das erste Puffer, im Klartext diese blaue Linie hier, von der aktuellen Kerze null für drei Kerzen die Preisdaten in unser PriceArray zu kopieren. Und jetzt erhalten wir den aktuellen ICCIWert für die Kerze,
In diesem Video geht es um den sogenannten Demarker Oszillator. Das ist dieser blaue Oszillator hier unten. Der ist relativ unbekannt, aber wir wollen uns jetzt mal anschauen, wie man dafür ein Einstiegssignal in MQL5 programmieren kann. In einem separaten Fenster unterhalb des Kerzencharts wird der Demarker-Oszillator angezeigt. Er verfügt über eine Skala und zwei Linien. Meistens werden Oszillatoren verwendet, um andere Signale zu filtern, aber sie können auch verwendet werden, um Einstiegssignale zu erzeugen, was wir hier tun werden. Um den Oszillator zu verwenden, müssen wir eine separate MQ5-Datei erstellen und sie in denselben Ordner wie die anderen Platin System-Dateien legen. CheckEntry i Demarker mq5 ist der Name der Datei, und CheckEntry ist die einzige Funktion, die sie hat. Sie findet heraus, was unser Einstiegssignal ist und sendet diese Information zurück an das Hauptmodul. Wir wollen eine String Variable für das berechnete Signal erstellen, aber wir werden ihr noch keinen Wert geben, denn das werden wir später herausfinden. Wir brauchen ein Preis-Array. Bitte wählen Sie den passenden Typ , da er Werte vom Typ Fliesskommazahlen aufnehmen kann. MQL5 enthält eine Funktion namens i Demarker, die wir verwenden können, um unseren Oszillator zu definieren. Es müssen ein paar Parameter eingestellt werden. Der erste Parameter ist das Symbol des Charts. Die Periode des Charts ist der zweite Parameter. Und der letzte Parameter wird für die Anzahl der Kerzen verwendet, die wir für unsere Berechnung verwenden möchten. Wenn Sie den Demarker-Oszillator auf eines Ihrer Charts ziehen, werden Sie diese Werte ebenfalls sehen. Jetzt verwenden wir array set as series, um das Array, das wir erstellt haben, von der aktuellen Kerze 0 abwärts zu sortieren. Mit CopyBuffer fügen wir Daten in das Array ein. Wir tun dies gemäß unserer Definition von oben und berechnen Werte für den Puffer 0, beginnend mit der aktuellen Kerze 0 und den nächsten drei Kerzen. Wir machen weiter und ermitteln den Wert der aktuellen Kerze, indem wir uns den Wert der Kerze 0 in unserem Array ansehen. Mit Normalize Double können wir den Wert so formatieren, dass 3 Ziffern hinter dem Punkt angezeigt werden. Um herauszufinden, wann wir kaufen sollten, suchen wir nach einem Wert, der unterhalb der unteren Linie liegt. Das wäre dann der Fall, wenn er unter 0 Komma 3 liegt! Es wäre also ein Kaufsignal, und wenn das der Fall ist, geben wir unser Signal mit dem Wort „Kaufen“. Andernfalls, wenn der Wert über 0 Komma 7 oder über der oberen Linie der Oszillator-Skala liegt, wäre das ein Verkaufssignal, also geben wir unserem Signal das Wort „verkaufen“. Am Ende der Funktion wird das Signal mit dem Befehl return an das Hauptmodul zurückgesendet. Bitte vergessen Sie nicht, die Datei zu speichern! Sie brauchen sie nicht sofort zu kompilieren. Speichern Sie sie einfach und gehen Sie zu der Stelle im Hauptmodul zurück, an der sich die Funktion OnTick befindet. Dort müssen Sie die neue Datei zu dem Abschnitt hinzufügen, der die include-Anweisungen enthält. Verwenden Sie die include-Anweisung, gefolgt von dem Namen der Datei, die wir erstellt haben. Verwenden Sie bitte zwei Schrägstriche, um alle anderen Eingabesignale auszukommentieren, und drücken Sie F7 oder klicken Sie auf die Schaltfläche Kompilieren, um sowohl das Hauptmodul als auch die neue Eingabedatei, die Sie gerade erstellt haben, zu kompilieren. Okay. Sie sollten jetzt eine funktionsfähige Version des Demarker Oszillators haben, mit der Sie sowohl Signale als auch Filter erstellen können. Ich sage vielen Dank fürs Zuschauen und wir sehen uns dann im nächsten...
Er hat unzählige Forschungsreisen unternommen, nach Russland, Kasachstan, in die Ukraine – immer auf der Suche nach Erfindungen, die auf dem Gedankengut des großen Physikers Nikola Tesla aufbauen. Auf einer dieser Reisen lernte Arthur Tränkle den sogenannten Oszillator kennen, der sofort seine Aufmerksamkeit fesselte. Ein handliches Gerät, das unser Zellwasser wieder hexagonal macht und unsere Lebensumgebung energetisch optimiert – kann es so einfach sein? Matthias Langwasser hat den Autor und Forscher gebeten, den Oszillator, einen Frequenzgenerator, näher zu erklären. Und Arthur weiß sowohl aus wissenschaftlicher Perspektive als auch aus Erfahrungen Erstaunliches in Sachen Heilung und Harmonisierung zu berichten …Viel Spaß und Inspiration mit der heutigen Folge!Alle deine Fragen über den Tesla-Oszillator beantwortet dir gerne Bernard Pietsch per Telefon unter: +49 172 6666000______________________________________________________________________♥ Wenn du Fragen oder Anregungen zu verschiedenen Themen hast, schreib es mir doch gerne in die Bewertungen!______________________________________________________________________▶ Bring deine Lebensenergie auf ein neues Level mit meinem Online-Event „Booste deine Lebensenergie!“: https://lebensenergie.matthias-langwasser.com/booste-deine-lebensenergie▶ Melde dich zu meinem legendären Newsletter an: https://matthias-langwasser.com/newsletter/▶ Triff mich auf meiner Website: https://matthias-langwasser.com▶ Hochwertige Nahrungsergänzungsmittel, biovegane Rohköstlichkeiten und viele weitere Premiumprodukte findest du im Shop von Regenbogenkreis: https://www.regenbogenkreis.de/▶ Abonniere den Newsletter von Regenbogenkreis und erfahre immer zuerst, welche Produktneuheiten und Angebote es gibt: https://www.regenbogenkreis.de/newsletter-abonnieren▶ Nutze den Gutscheincode „Podcast11“ und spare bei deiner ersten Bestellung auf www.regenbogenkreis.de satte 11 Prozent! (Gutschein einmalig einlösbar für Neukunden, gültig für alle Produkte bis 500 Euro Warenwert und mit Ausnahme von Qi Blanco-Produkten)▶ Folge mir auf YouTube: https://bit.ly/regenbogen_abo▶ Folge mir auf Telegram: https://t.me/matthiaslangwasser▶ Folge mir auf Facebook: https://de-de.facebook.com/MatthiasLangwasser/▶ Folge mir auf Instagram: https://www.instagram.com/regenbogenkreis.de/ ▶ Besorg dir jetzt meinen Bestseller „Reise in die Freiheit“: https://www.regenbogenkreis.de/reise-in-die-freiheit-buch/▶ Komm dank der Sinus-Produkte und Meta-Converter von i-like in deine Balance:
Diesmal geht es um den Oszillator hier. Der sieht ziemlich bekannt aus, denn es handelt sich um den Bulls Power Oszillator. Das Gegenstück zum Bears Power Oszillator. Schauen wir also mal, wie man den programmieren kann. Dieses Mal werden wir den Bulls-Power-Oszillator berechnen und ihn verwenden, um ein Einstiegssignal für ein Handelssystem zu erstellen. Der Bulls Power wird unterhalb des Kerzencharts angezeigt und zeigt Zahlen an, die entweder über oder unter 0 liegen. Zunächst erstellen wir eine neue Datei namens CheckEntry BullsPower und legen sie in dasselbe Verzeichnis wie die anderen Systemdateien. Die neue Datei verwendet eine Funktion namens CheckEntry und wir erstellen eine Variable namens signal, die dazu dient, unser berechnetes Signal am Ende der Funktion zurückzugeben. Außerdem benötigen wir ein Array, um die Preisinformationen für einige Kerzen zu speichern. Lassen Sie uns nun weitermachen und definieren, was unsere oszillierende Funktion ist. Dafür hat MQL5 eine eingebaute Funktion namens iBullsPower. Es müssen drei Parameter angegeben werden. Die ersten beiden sind für das aktuelle Symbol und die Periode im Chart und der dritte ist für die Berechnungsperiode. In unserem Fall ist es 13. Dann verwenden wir Array set as Series, um unser Array zu sortieren, beginnend mit der aktuellen Kerze und absteigend. Jetzt können wir CopyBuffer verwenden, um Daten zu unserem Array hinzuzufügen. Wir tun dies für die Definition, die wir gerade vorgenommen haben, und für Puffer 0! Wir wollen mit der aktuellen Kerze 0 beginnen und die Kursdaten für die nächsten drei Kerzen kopieren. Unser Preis-Array enthält das Ergebnis. Und deshalb können Sie jetzt den Wert für die aktuelle Kerze ermitteln, indem Sie sich das Preis-Array und insbesondere den Wert für Kerze 0 ansehen. Jetzt können wir das Kaufsignal ermitteln. Wenn der Bulls-Power-Wert größer als 0 ist, wollen wir das als Kaufsignal verwenden. Vergeben wir also für unser Signal das Wort “ Buy „. Im anderen Fall wollen wir verkaufen, wenn der Wert kleiner als 0 ist. Zu diesem Zeitpunkt wollen wir der Signalvariablen den Wert “ Sell “ zuweisen. Am Ende der Funktion verwenden Sie bitte die Return-Funktion, um den berechneten Wert an unser Hauptmodul zurückzusenden. Das Einstiegsmodul ist jetzt fertig. Speichern Sie es am besten gleich. Dann müssen Sie die Hauptdatei öffnen und nach dem Teil suchen, in dem Sie das Einstiegssignal hinzufügen müssen. Das können Sie tun, indem Sie den Dateinamen für unser Einstiegssignal nach der include-Anweisung einfügen. Bitte entfernen Sie jedes andere Einstiegssignal, indem Sie zwei Schrägstriche davor setzen. Wenn Sie fertig sind, können Sie das Hauptmodul und das soeben erstellte Einstiegsmodul kompilieren, indem Sie F7 drücken oder auf die Schaltfläche Kompilieren klicken. Wenn alles gut gegangen ist, sollten Sie keine Fehler erhalten, sondern nur einige Warnungen!!! Okay. Der Bulls Power Oszillator ist jetzt fertig. Ich hoffe, das hat bei Ihnen auch funktioniert. Ich sage Dankeschön fürs Zuschauen und wir sehen uns dann im nächsten Video. Nicht sicher was Sie tun sollen? Klicken Sie auf den automatischen Trading Assistenten unten
Diesmal möchten wir ein Einstiegs-Signal für diesen Oszillator hier erstellen. Es handelt sich um den sogenannten Bears Power Oszillator. Also schauen wir uns mal an, wie man das mit MQL5 programmieren kann. Diesmal wollen wir den Bears-Power-Oszillator berechnen und ihn verwenden, um ein Einstiegssignal für Ihr Handelssystem zu erstellen. Der Bears Power wird unterhalb des Kerzencharts angezeigt und erzeugt Werte, die entweder über oder unter 0 liegen! Um zu beginnen, erstellen wir eine neue Datei namens CheckEntry_BearsPower in unserem Verzeichnis, in dem die anderen Systemdateien bereits gespeichert sind. Die neue Datei verwendet eine Funktion namens CheckEntry und wir erstellen eine Variable namens Signal, mit der wir am Ende der Funktion unser berechnetes Signal zurückgeben können. Und natürlich benötigen wir auch ein Array, um die Kursdaten für einige Kerzen zu speichern. Lassen Sie uns nun fortfahren und eine Definition für unsere oszillierende Funktion erstellen. MQL5 bietet dafür eine integrierte Funktion namens iBearsPower. Es werden drei Parameter benötigt. Die ersten beiden sind für das aktuelle Symbol und die Periode im Chart, der dritte ist für die Berechnungsperiode. In unserem Fall ist es 13! Anschließend verwenden wir Array set as Series, um unser Array von der aktuellen Kerze abwärts zu sortieren. Und nun können wir unser Array mit Hilfe von CopyBuffer mit Daten füllen. Wir tun dies für die Definition, die wir vor einer Minute erstellt haben, und für Puffer 0! Wir wollen mit der aktuellen Kerze 0 beginnen und die Kursdaten für 3 Kerzen kopieren. Das Ergebnis wird in unserem Preis-Array gespeichert. Und damit können wir jetzt den Wert für die aktuelle Kerze ermitteln, indem wir in das Preis-Array schauen und insbesondere den Wert für Kerze 0 betrachten! Jetzt können wir das Kaufsignal berechnen. Immer wenn der Wert des Bears Power über 0 liegt, wollen wir dies als Kaufsignal verwenden. Weisen wir unserem Signal also das Wort buy zu. Im anderen Fall wollen wir verkaufen, wenn der Wert unter 0 liegt! In diesem Fall möchten wir der Signalvariablen das Wort sell zuweisen. Und nun verwenden Sie bitte die return-Funktion, um den berechneten Wert am Ende der Funktion an unser Hauptmodul zurückzugeben. Das war's mit dem Einstiegsmodul. Bitte speichern Sie es jetzt. Und anschließend müssen Sie die Hauptdatei öffnen und nach dem Teil suchen, in dem das Eingangssignal nun eingebunden werden muss. Dazu verwenden Sie die Anweisung include, gefolgt von dem Dateinamen für unser Einstiegssignal. Fügen Sie bitte für jedes andere Einstiegssignal zwei Schrägstriche hinzu. Wenn Sie fertig sind, können Sie F7 drücken oder auf die Schaltfläche Kompilieren klicken, um das Hauptmodul und das soeben erstellte Einstiegsmodul zu kompilieren! Wenn alles gut gegangen ist, sollten Sie keine Fehler erhalten! Falls doch, sehen Sie sich bitte die Fehlermeldungen an und was sie bedeuten! Auf MQL5.com gibt es eine Liste dieser Fehlerursachen! Okay. Wenn der Kompiliervorgang bei Ihnen funktioniert hat, dann sollten Sie jetzt eine Version für den Bears Power haben, die Sie als Einstiegssignal nutzen können. Vielen Dank fürs Zuschauen und wir sehen uns im nächsten Video. Nicht sicher was Sie tun sollen? Klicken Sie auf den automatischen Trading Assistenten unten
In diesem Video geht es um diesen Oszillator hier unten. Das ist der sogenannte Chaikin Oszillator. Und wir wollen uns einmal anschauen, wie man den für das System so programmieren kann, dass er Einstiegssignale produziert. Der Chaikin-Oszillator wird normalerweise verwendet, um andere Signale zu bestätigen, da er ein Oszillator ist. Aber in diesem Beispiel werden wir ihn verwenden, um Kauf- und Verkaufssignale zu erzeugen! Erstellen wir eine neue Datei namens CheckEntry_Chaikin.mp5 in demselben Verzeichnis, in dem auch die anderen Dateien gespeichert sind. Wie schon bei den anderen Einstiegsmodulen müssen wir eine Funktion namens CheckEntry erstellen. Das Signal wird später von dieser Funktion zurückgegeben. Und jetzt brauchen wir eine Variable und ein Preis-Array! MQL5 verfügt über eine Funktion namens für den Chaikin Indikator, die wir verwenden können, um unsere Definition für die Berechnung zu erstellen. Parameter 1 steht für das aktuelle Symbol und Parameter 2 für die aktuelle Periode in unserem Chart. Danach haben wir zwei Zahlen! Wenn Sie Metatrader5 öffnen und Einfügen, Indikatoren, Oszillatoren wählen, erfahren Sie, dass diese Werte für den schnellen gleitenden Durchschnitt und für den langsamen gleitenden Durchschnitt stehen. Die Standardwerte sind 3 und 10 Mit dem folgenden Parameter legen wir fest, dass wir das Ergebnis auf der Grundlage von Mode EMA berechnen möchten, was für exponentiellen gleitenden Durchschnitt steht. Und im letzten Parameter haben wir festgelegt, dass das Ergebnis auf Tick-Basis berechnet werden soll. Lassen Sie uns nun fortfahren und das Array von der aktuellen Kerze abwärts sortieren, indem wir array set as series verwenden. Und dann verwenden wir Copy Buffer, um unser Array mit Daten zu füllen! Wir tun dies für die zuvor erstellte Definition und den Puffer Null, beginnend mit der aktuellen Kerze 0. Wir wollen die Werte für 3 Kerzen in unserem Array speichern! Jetzt können wir die Werte für die aktuelle Kerze und die vorherige Kerze berechnen. Dazu sehen wir uns die Werte von Kerze 0 und Kerze 1 in unserem Array an. Wenn der aktuelle Chaikin-Wert über 0 liegt und der vorherige Wert unter 0 war, betrachten wir dies als Kaufsignal und weisen unserem Signal das Wort buy zu. Andernfalls, wenn der aktuelle Wert unter 0 liegt und der vorherige Wert über 0 lag, handelt es sich um ein Verkaufssignal, also weisen wir unserem Signal das Wort sell zu. Und schließlich verwenden wir die Return-Funktion, um den berechneten Wert an unser Hauptmodul zurückzugeben. Das war's für den Einstieg, bitte vergessen Sie nicht, die Datei zu speichern. Das Kompilieren ist nicht erforderlich, da es in das Hauptmodul importiert wird. Öffnen wir nun das Hauptmodul und suchen den Abschnitt include. Dort können Sie die anderen Eingabemodule mit zwei Schrägstrichen auskommentieren und eine neue include-Anweisung für die neue Datei, die wir erstellt haben, hinzufügen. Und nun müssen wir F7 drücken oder auf die Schaltfläche Kompilieren klicken, um beide Module zu kompilieren. Sie werden einige Warnungen sehen, aber es sollten keine Fehler auftreten. Okay, so weit, so gut. Das war's soweit für den Chaikin Oszillator. Ich hoffe, das mit dem Kompilieren hat funktioniert. Vielen Dank fürs Zuschauen und wir sehen uns dann im nächsten Video. Nicht sicher was Sie tun sollen? Klicken Sie auf den automatischen Trading Assistenten unten
Diesmal wollen wir uns anschauen, wie man diesen farbenprächtigen Indikator hier berechnen kann. Es handelt sich um den sogenannten Awesome Oszillator. Und wir wollen uns mal anschauen, wie man dafür ein entsprechendes Einstiegsmodul programmieren kann. Da der Awesome-Indikator ein Oszillator ist, wird er in einem separaten Fenster unterhalb des Kerzencharts angezeigt. Um ihn zu verwenden, erstellen wir eine separate MQ5-Datei und legen sie in dasselbe Verzeichnis wie die anderen Platin System-Dateien. CheckEntry I A O.mq5 ist der Name der Datei, und sie enthält nur eine Funktion namens CheckEntry. Die Kauf- und Verkaufssignale für unser System werden von dieser Funktion ausgearbeitet. Wir beginnen mit einer String-Variablen namens Signal, der wir aber nicht sofort einen Wert zuweisen, denn das werden wir später ermitteln. Als nächstes erstellen wir ein Array. Wir verwenden den Datentyp „double“, weil er auch mit „Fließkommazahlen“ genutzt werden kann. Dann verwenden wir die Funktion i A O, die mit MQL5 geliefert wird, um eine Definition für den Awesome Oscillator zu erstellen. Und zwar für das aktuelle Symbol im Chart und die Periode, die gerade im Chart ausgewählt ist. Weitere Parameter sind nicht erforderlich. Jetzt verwenden wir Array Set as Series für unser I A O Array, um es von der aktuellen Kerze abwärts zu sortieren. Anschließend können wir unser I A O-Array entsprechend der oben vorgenommenen Definition füllen. Wir tun dies für Puffer 0, beginnend mit Kerze 0 für 3 Kerzen und speichern die Werte in unserem Preis-Array. So können wir den aktuellen I A O-Wert berechnen, indem wir die Kerze 0 in unserem Array betrachten. Mittels normalize double achten wir darauf, die Ausgabe mit 6 Ziffern hinter dem Punkt zu formatieren, denn so sieht der Wert auch aus, wenn Sie den Oszillator manuell zu Ihrem Chart hinzufügen. Lassen Sie uns nun mit der Berechnung für das Signal fortfahren. Wenn der aktuelle Wert über 0 liegt, wollen wir kaufen, also weisen wir unserem Signal das Wort buy zu. Und wenn der aktuelle Wert unter 0 liegt, wollen wir verkaufen, also weisen wir dem Signal das Wort sell zu. Der letzte Teil ist die Rückgabe des berechneten Wertes mit Hilfe der Return-Funktion und das Speichern der Datei. Das Kompilieren erfolgt in der Hauptdatei. Öffnen Sie diese also und suchen Sie nach den include-Anweisungen, die bereits im Quellcode enthalten sind. Dort verwenden wir zwei Schrägstriche, um die anderen Eingabesignale zu ergänzen und fügen eine weitere Zeile hinzu, um die neue Datei namens CheckEntry_ I A O.mq5 einzubinden. Anschließend können wir auf die Schaltfläche Kompilieren klicken oder einfach die Taste F7 drücken, um beide Dateien zu kompilieren. Es werden ein paar Warnungen erwartet, aber Sie sollten keine weiteren Fehlercodes sehen. Okay. Sie sollten jetzt ein arbeitsfähiges Einstiegsmodul für den Oszillator haben, sofern es mit der Kompilierung funktioniert hat. Ich sage, vielen Dank fürs Zuschauen und wir sehen uns dann im nächsten Video. Nicht sicher was Sie tun sollen? Klicken Sie auf den automatischen Trading Assistenten unten MQL5 TUTORIAL - PLATIN SYSTEM - M...
Diesmal möchten wir uns diesen Oszillator hier anschauen. Es handelt sich um den sogenannten Stochastik Oszillator. Der ist ziemlich beliebt und wird in der Regel als Filter verwendet. Aber in diesem Beispiel werden wir ihn verwenden, um Einstiegssignale zu berechnen. Also lassen Sie uns mal schauen, wie man das mit MQL5 umsetzen kann. In diesem Video werden wir ein Einstiegssignal für diesen kleinen Oszillator erstellen, den ein Expert Advisor verwenden kann. Er heißt „Stochastischer Oszillator“ und wird von vielen Menschen genutzt. Lassen Sie uns also herausfinden, wie MQL5 uns dabei helfen kann. Der Stochastik-Oszillator wird in einem separaten Fenster unterhalb des Kerzencharts angezeigt. Er besteht aus zwei Linien und einer Skala. Meistens werden Oszillatoren dazu verwendet, Signale auszufiltern, aber sie können auch dazu verwendet werden, Einstiegssignale zu geben, was wir hier tun werden. Um diese Funktion zu nutzen, erstellen wir eine separate MQ5-Datei und legen sie in denselben Ordner wie die anderen Dateien von Platin System. Die Datei heißt CheckEntry Stochastic.mq5 und hat nur eine Funktion namens CheckEntry. Sie ermittelt unser Einstiegssignal und sendet diese Information zurück an das Hauptmodul. Wir wollen eine Variable für das berechnete Signal erstellen, aber wir geben ihr noch keinen Wert, denn das werden wir später herausfinden. Jetzt brauchen wir zwei Arrays vom Typ Double, um die verschiedenen Preise zu speichern. Das erste wird K-Array und das zweite D-Array genannt. Wir sortieren beide Arrays von der aktuellen Kerze abwärts, indem wir Array set as Series verwenden. MQL5 verfügt über eine Funktion für die Berechnung des Stochastic Signals, die wir verwenden können, um eine Definition für unseren Oszillator zu erstellen. Wir müssen ein paar Parameter übergeben. Der erste Parameter steht für das Symbol im Chart. Der zweite Parameter ist für die Periode im Chart. Die Parameter 3, 4 und 5 sind die Standardwerte für den Stochastic Oszillator, um die sogenannte K-Periode, die D-Periode und die Verlangsamung zu definieren. Sie sehen diese Werte auch, wenn Sie den Stochastik-Indikator auf eines Ihrer Charts ziehen. In den letzten beiden Parametern legen wir fest, dass wir Modus SMA verwenden möchten, was für den einfachen gleitenden Durchschnittsmodus steht, und dass wir das Ergebnis auf der Grundlage der Tiefst- und Höchstkurse berechnen möchten. Mit CopyBuffer füllen wir beide Arrays mit Daten und tun dies für Puffer 0 und Puffer 1, in beiden Fällen ab der aktuellen Kerze 0 und für 3 Kerzen. Fahren wir fort und berechnen den Wert für die aktuelle Kerze, indem wir uns den Wert der Kerze 0 in beiden Arrays ansehen. Danach machen wir das Gleiche für die Kerze davor, indem wir uns die Werte für Kerze 1 in beiden Arrays ansehen. Um das Kaufsignal zu berechnen, prüfen wir, ob ein Crossover vorliegt. Wenn also der K-Wert und der D-Wert für Kerze 0 unter 20 liegen, wollen wir wissen, ob der K-Wert jetzt über dem D-Wert liegt und ob er bei der Kerze davor darunter lag. Das wäre ein Kaufsignal, und in diesem Fall ordnen wir unserem Signal das Wort buy zu. Andernfalls, wenn der K-Wert und der D-Wert für Kerze 0 über 80 liegen, möchten wir wissen, ob der K-Wert jetzt unter dem D-Wert liegt und ob er für die vorherige Kerze höher war. Das wäre ein Verkaufssignal, und in diesem Fall ordnen wir unserem Signal das Wort sell zu. Am Ende der Funktion verwenden wir den Befehl return, um das Signal an das Hauptmodul zurückzugeben. Bitte denken Sie daran, die Datei zu speichern. Sie müssen sie nicht kompilieren. Speichern Sie sie einfach und gehen Sie zurück...
In diesem Video wollen wir uns mal diesem Oszillator widmen. Das ist der Relativ Igor Index und wir werden uns jetzt mal anschauen, wie man den mit MQL5 berechnen kann. In diesem Video zeigen wir Ihnen, wie Sie ein Einstiegssignalmodul für den Oszillator mit dem Namen Relative Vigor Index erstellen. Da Oszillatoren Werte liefern, die sich von den Preiswerten im Kerzenchart unterscheiden, wird dieser Indikator wieder in einem separaten Chartfenster unterhalb des Kerzencharts gezeichnet. In demselben Verzeichnis wie die Hauptdatei und die anderen Einstiegsdateien erstellen wir zunächst eine neue Datei namens CheckEntry RVI.mq5. Die Funktion CheckEntry, die eine Variable für das berechnete Signal zurückgibt, ist in dieser Datei enthalten. Beginnen wir mit der Erzeugung des Signals. Da es sich um eine Variable vom Typ String handelt, kann sie Textdaten enthalten. Wir lassen sie derzeit leer, da wir den Wert wie gezeigt ermitteln müssen. Lassen Sie uns also zwei Preis-Arrays erstellen, eines für die erste und eines für die zweite Zeile, die im RVI-Oszillator Fenster angezeigt wird. Anschließend definieren wir unseren Oszillator und verwenden die i RVI-Funktion, die mit MQL5 geliefert wird. Diese verwendet das aktuelle Chartsymbol, den gewählten Zeitraum und den Wert 10 für die Definition. Wie Sie vielleicht schon erraten haben, ist der Wert 10 die Anzahl der Kerzen für die Berechnung. Beide Arrays müssen mit Hilfe von array set as series von der aktuellen Kerze abwärts sortiert werden. Jetzt wollen wir unsere beiden Arrays mit Daten füllen und das können wir mit CopyBuffer tun. In beiden Fällen verwenden wir die Definition, die wir zuvor erstellt haben. Der erste Parameter ist für den Puffer, entweder 0 oder 1. Der zweite Parameter ist die Startkerze 0. Parameter 3 steht für die Anzahl der gewünschten Kerzen, in unserem Fall für 3 Kerzen. Und der letzte Parameter ist das Ziel-Array für beide Signale. Im nächsten Schritt verwenden wir Normalize double, um eine formatierte Ausgabe mit 3 Ziffern hinter dem Punkt für die aktuelle Kerze 0 zu erhalten. Wir tun dies für beide Arrays. Da wir nun die aktuellen Werte für beide Puffer haben, können wir ein Kauf- und ein Verkaufssignal definieren. In unserem Beispiel wollen wir kaufen, wenn der Wert 0 unter dem Wert 1 liegt und wenn beide Werte unter 0 liegen. Wenn das der Fall ist, weisen wir unserer Signalvariablen das Wort buy zu. Andernfalls, wenn der Wert 0 über dem Wert 1 liegt und wenn beide Werte größer als 0 sind, weisen wir der Variablen das Wort sell zu. Nachdem wir nun das Signal berechnet haben, wollen wir es mit der return-Anweisung zurückgeben. Bitte speichern Sie die Datei ohne zu kompilieren. Der Prozess dafür wird in der Hauptdatei durchgeführt. Öffnen Sie diese und suchen Sie den Abschnitt include. Dort können Sie alle anderen Einträge mit zwei Schrägstrichen auskommentieren. Fügen Sie eine neue Zeile hinzu und binden Sie die neue Datei mit dem Namen Check_Entry RVI.mq5 ein. Dann können Sie beide Dateien gleichzeitig kompilieren, indem Sie F7 drücken oder auf die Schaltfläche Kompilieren in der Symbolleiste klicken. Der Kompiliervorgang sollte ohne Fehlermeldungen ablaufen, einige Warnungen sind zu erwarten. Okay, wenn alles soweit funktioniert hat, dann sollte man jetzt hier den Oszillator für Einstiegs-Signale nutzen können. Natürlich kann man da auch noch andere Signale draus machen. Für dieses Video war es das, ich sage: Vielen Dank fürs Zuschauen und wir sehen uns dann im nächsten Video.
In diesem Video wollen wir uns anschauen, wie man diesen Oszillator hier unten programmieren kann. Es handelt sich um den MACD, der ist ziemlich beliebt. Der hat eine grundlegende Main- und eine Signal-Linie und wir wollen jetzt mal das Hauptsignal dafür berechnen. Also lassen Sie uns mal schauen, wie das mit MQL5 geht. Der Mac D-Oszillator wird in einem separaten Chart unterhalb des Kerzencharts angezeigt. Er hat zwei Werte, die ein Signal anzeigen. In diesem Fall wollen wir das Signal der Hauptlinie berechnen. Um ihn zu verwenden, erstellen wir eine separate MQ5-Datei und legen sie in dasselbe Verzeichnis wie die anderen Platin System-Dateien. CheckEntry MacD.mq5 ist der Name der Datei, und sie enthält nur eine Funktion namens CheckEntry. Die Kauf- und Verkaufssignale für unser System werden von dieser Funktion berechnet und zurückgegeben. Oszillatoren sind eigentlich nicht dazu gedacht, Signale zu erzeugen. Stattdessen werden sie verwendet, um andere Signale zu bestätigen oder auszufiltern. Das heißt aber nicht, dass wir sie nicht verwenden können, denn alles, was wir für unser Handelssystem brauchen, ist ein klares und gut definiertes Einstiegssignal. Wir beginnen damit, das Signal in eine Variable vom Typ String zu schreiben. Diese wird später an unsere Hauptfunktion zurückgeschickt, aber zunächst müssen wir sie berechnen. Außerdem müssen wir ein Array für die Preisdaten erstellen. Und mit Array Set As Series ordnen wir unser Array und wollen es von der aktuellen Kerze 0 abwärts sortieren. MQL5 verfügt über eine Funktion zur Berechnung des MacD und diese Funktion heißt I MacD. Wir übergeben das Symbol als ersten Parameter, gefolgt von der Periode, die derzeit in unserem Chart ausgewählt ist. Es folgen drei weitere Werte, um die Periode für den schnellen exponentiellen gleitenden Durchschnitt, dann den langsamen exponentiellen gleitenden Durchschnitt und die Signalperiode zu definieren. Die Werte sind 12, 26 und 9, da dies die Standardwerte für den MacD-Oszillator sind. Der letzte Parameter wird verwendet, um festzulegen, wie das Signal berechnet werden soll. Wir möchten hier PRICE_CLOSE verwenden, um den Schlusskurs zu nutzen. Mit CopyBuffer füllen wir nun unser Array entsprechend der Definition, die wir erstellt haben. Wir tun dies für Puffer 0, da dies der Hauptpuffer für den MacD-Oszillator ist. Wir beginnen mit der aktuellen Kerze, das ist Kerze 0. Und wir wollen den Wert für 3 Kerzen speichern, das Ziel ist unser Preis-Array. Nachdem wir das getan haben, können wir den aktuellen Wert berechnen, indem wir den Wert der Kerze 0 in unserem Preis-Array betrachten. Wenn dieser Wert größer als 0 ist, wollen wir verkaufen. In diesem Fall weisen wir unserem Signal das Wort sell zu. Liegt der Wert unter 0, bedeutet das, dass wir kaufen wollen. Daher weisen wir dem Signal jetzt das Wort buy zu. Und am Ende unserer Funktion wollen wir das MacD-Signal an unser Hauptmodul zurückgeben, das die Funktion OnTick enthält. Vergessen Sie bitte nicht, Ihre Eingabedatei zu speichern, aber Sie müssen sie wirklich nicht gleich kompilieren. Die Kompilierung erfolgt im Hauptmodul, aber ehe Sie das tun, suchen Sie die Include-Anweisung für das Einstiegsignal und ändern Sie sie so, dass sie unsere neue Datei CheckEntry MacD .mq5 verwendet. Indem Sie zwei Schrägstriche an den Anfang einer Zeile setzen, können Sie andere Eingabemodule auskommentieren. Drücken Sie anschließend F7 oder klicken Sie auf die Schaltfläche Kompilieren, um Ihr Hauptmodul und die dazugehörige Einstiegssignaldatei zu kompilieren. Es sollte dabei keine Probleme geben. Wenn Sie auf Probleme stoßen,
In diesem Video wollen wir uns mal anschauen, wie man einen Expert Advisor erstellen kann beziehungsweise ein Einstiegs-Modul für diesen Oszillator hier. Der hat den Namen Akkumulation Distribution. Also lassen Sie uns mal schauen, wie das mit MQL5 funktioniert. In diesem Video werden wir eine Einstiegssignaldatei für diesen Oszillator hier erstellen. Er wird Accumulation Distribution genannt. Normalerweise werden Oszillatoren zur Bestätigung von Signalen verwendet, aber in diesem Fall nutzen wir sie als Einstiegssignal. Und wie Sie sehen können, funktioniert er tatsächlich. Der Accumulation Distribution Oszillator wird in einem separaten Chart unterhalb des Kerzencharts eingezeichnet. Er hat eine einzelne Signallinie, die einen Wert anzeigt. Um ihn zu verwenden, erstellen wir eine separate MQ5-Datei in dem Verzeichnis, in dem sich die anderen Dateien des Platin Systems befinden. Der Name der Datei ist CheckEntry_ I A D.mq5 und sie enthält eine einzige Funktion namens CheckEntry. Diese Funktion berechnet die Kauf- und Verkaufssignale für unser System. Eigentlich sind Oszillatoren nicht dazu gedacht, Signale zu generieren, sie werden vielmehr als Filter für andere Indikatoren verwendet. Das heißt aber nicht, dass wir sie nicht verwenden können, denn alles, was wir für unser Handelssystem brauchen, ist ein funktionierendes Signal, das gut definiert ist. Wir beginnen damit, eine Text Variable für das Signal zu erstellen. Diese wird später an unsere Hauptfunktion zurückgegeben, aber bevor wir das tun, müssen wir zunächst das Signal erstellen. Außerdem müssen wir ein Array für die Preisdaten erstellen. Und mit Array Set As Series sortieren wir unser Array von der aktuellen Kerze abwärts. Danach können wir unsere Definition für den Oszillator erstellen, indem wir die iA D Funktion verwenden, die bereits in MQL5 enthalten ist. Der erste Parameter steht für das aktuelle Symbol in unserem Chart und der zweite Parameter für die aktuell ausgewählte Periode in diesem Chart. Der dritte Parameter kann verwendet werden, um das angewandte Volumen auszuwählen. Wir werden hier Volume_Tick verwenden. Lassen Sie uns nun CopyBuffer verwenden, um unser Array mit Daten zu füllen. Der erste Parameter hier ist die Definition, die wir oben erstellt haben. Parameter 2 steht für den Puffer, den wir berechnen wollen. Dieser Oszillator hat nur einen Puffer, also setzen wir ihn auf 0. Der nächste Parameter ist für die Kerze, mit der wir beginnen möchten. Wir wählen die aktuelle Kerze 0 und im nächsten Parameter legen wir die Anzahl der Kerzen fest, die wir berechnen möchten. In unserem Fall tun wir dies für 3 Kerzen. Der letzte Parameter ist für das Ziel-Array, also unser Preis-Array. Jetzt können wir die Werte für die aktuelle Kerze und die Kerze davor berechnen. Um den aktuellen Wert zu ermitteln, schauen wir uns den Wert für Kerze 0 in unserem Preis-Array an. Um den Wert für die vorherige Kerze zu erhalten, machen wir dasselbe für Kerze 1. Jetzt können wir unser Signal tatsächlich berechnen. Wenn der Wert für die aktuelle Kerze höher ist als der Wert für Kerze 1, gehen wir davon aus, dass es sich um ein Kaufsignal handelt. Daher weisen wir unserem Signal das Wort buy zu. Andernfalls, wenn der aktuelle Wert für Kerze 0 unter dem Wert für Kerze 1 liegt, gehen wir davon aus, dass es sich um ein Verkaufssignal handelt. Dann weisen wir unserem Signal das Wort sell zu. Und schließlich verwenden wir die return-Anweisu...
In diesem Video wollen wir uns einmal anschauen, wie man den sogenannten Williams Percent Range Indikator berechnen kann. Tatsächlich ist es ein Oszillator, darum wird er auch unterhalb des aktuellen Kerzen Fensters dargestellt. Also lassen Sie uns einmal schauen, wie man so etwas in MQL5 programmieren kann. Der Williams Percent Range-Indikator ist eigentlich ein Oszillator, daher wird er in einem separaten Fenster unterhalb des Kerzencharts angezeigt. Um ihn zu verwenden, erstellen wir eine separate MQ5-Datei in dem Verzeichnis, in dem sich die anderen Dateien des Platin Systems befinden. Der Name der Datei ist CheckEntry_WPR.mq5 und sie enthält eine einzige Funktion namens CheckEntry. Diese Funktion berechnet die Kauf- und Verkaufssignale für unser System. Wir beginnen mit einer String-Variablen namens signal, weisen ihr aber nicht sofort einen Wert zu, da wir diesen später berechnen werden. Im nächsten Schritt erstellen wir ein Array. Wir verwenden den Datentyp double, da dieser Datentyp auch mit Fließkommazahlen verwendet werden kann. Anschließend erstellen wir eine Definition für das WPR-Signal, indem wir die Funktion iWPR verwenden, die mit MQL5 geliefert wird. Und zwar für das aktuelle Symbol im Chart und den aktuell ausgewählten Zeitraum in diesem Chart. Der letzte Parameter ist die Anzahl der Kerzen, auf die sich die Berechnung stützen soll. Wenn Sie ein Metatrader-Chart öffnen und auf Einfügen – Indikatoren – Oszillatoren – Williams Percent Range klicken, ist dies der Wert, den Sie auch als Standardwert für den Zeitraum sehen werden. Aber lassen Sie uns mit dem Einstiegsmodul fortfahren. Hier verwenden wir Array Set as Series für unser WPR Array, um es von der aktuellen Kerze abwärts zu sortieren. Anschließend können wir unser WPR-Array entsprechend der oben vorgenommenen Definition füllen. Wir tun dies für Puffer 0, beginnend mit Kerze 0 für 3 Kerzen und speichern die Werte in unserem Preis-Array. So können wir den aktuellen WPR-Wert berechnen, indem wir die Kerze 0 in unserem Array betrachten. Mit normalize double stellen wir sicher, dass die Ausgabe mit zwei Ziffern hinter dem Punkt formatiert wird, denn so sieht der Wert auch aus, wenn Sie den Oszillator manuell zu Ihrem Chart hinzufügen. Lassen Sie uns nun mit der Berechnung für das Signal fortfahren. Wenn der WPR-Wert unter -80 und größer als -100 ist, betrachten wir dies als Kaufsignal. Also weisen wir unserer Signalvariablen das Wort Buy zu. Im anderen Fall, wenn der WPR-Wert über -20 und unter 0 liegt, würden wir dies als Verkaufssignal betrachten und unserem Signal das Wort Sell zuweisen. Schließlich geben wir das Signal mit der Funktion return an unser Hauptmodul zurück. Bitte speichern Sie die Datei jetzt. Sie brauchen das Einstiegsmodul nicht zu kompilieren, da es automatisch kompiliert wird, wenn Sie es in Ihr Hauptmodul einfügen. Das Ändern eines Einstiegssignals ist mit dem Platin System ganz einfach. Tatsächlich können Sie die von Ihnen erstellten Einstiegsmodule auch in Ihrem eigenen System verwenden. Alles, was Sie tun müssen, ist, die include-Funktion in Ihrem Hauptmodul zu verwenden. Einstiegssignale werden mit zwei Schrägstrichen aktiviert oder deaktiviert. Dadurch werden die Einstiegssignale, die Sie nicht verwenden möchten, ausgefiltert und erscheinen in grauer Farbe. Um ein Einstiegssignal einzubinden, können Sie den Befehl include für die MQ5-Einstiegssignaldatei verwenden. Es ist nicht erforderlich, die Signaldateien zu kompilieren, da sie mit dem Hauptmodul kompiliert werden, das Sie zum Einbinden der Signale verwenden.
In diesem Video möchten wir einen Expert Adviser erstellen, der in der Lage ist, den Stochastic Indicator eigenständig zu handeln. Es handelt sich hier um einen Oszillator. Immer wenn wir eine Überkreuzung dieser beiden Signallinien oberhalb der gestichelten oberen Linie habe, wäre das ein Verkaufen. Und unterhalb wäre es ein Kaufen Signal. Die Signale werden nicht nur hier auf dem Chart ausgegeben. Sondern wir haben hier unten auch schon eine erste geöffnete Position, die automatisch gehandelt wurde. Und wir möchten uns jetzt einmal anschauen, wie man so etwas in MQL5 programmieren kann. Um das zu tun, klicken Sie bitte hier oben auf diesen kleinen Button oder drücken die F4 Taste. Das ruft dann hier den Meta Editor auf. Und hier klicken wir auf Datei, Neu, Expert Advisor aus Vorlage. Weiter. Ich vergebe hier mal den Namen SimplerStochasticStandaloneEA, klicke auf Weiter, Weiter und Fertigstellen. Jetzt kann alles oberhalb dieser On Tick Funktion hier gelöscht werden. Auch die zwei Kommentarzeilen kommen weg. Hier oben nutzen wir den include Befehl, um die Datei Trade.mqh zu importieren. Die ermöglicht uns eine Instanz von der Klasse CTrade zu erstellen. Damit lassen sich dann später die Positionen eröffnen. In der On Tick Funktion, die bei jeder Preisänderung aufgerufen wird, erstellen wir erst einmal eine Signal Variable. Die ist vom Typ String, damit sie Textketten aufnehmen kann, bekommt aber hier noch keinen Wert zugewiesen. Der wird gleich noch ermittelt. Dazu benötigen wir erst einmal ein paar Dinge. Zum Beispiel den Ask und den Bid Preis. Hier oben kann man sehen, dass wir einen roten und einen blauen Preisverlauf haben. Der blaue Preis ist der Ask Preis. Den müssen wir zahlen, wenn wir etwas kaufen. Und der rote ist der Bid Preis. Den erhalten wir, wenn wir etwas verkaufen. Ermitteln können wir das mit der Funktion SymbolInfoDouble für das aktuelle Währungspaar auf dem Chart. Mit SYMBOL_ASK bekommen wir den Ask Preis. Und mit SYMBOL_BID bekommen wir den Bid Preis. Und diese NormalizeDouble Funktion in Kombination mit _Digits sorgt dafür, dass wir entweder drei oder fünf Nachkommastellen haben, je nachdem, welches Währungspaar auf dem Chart ist. Jetzt brauchen wir noch zwei Arrays. Das eine heißt KArray und das andere heißt DArray. Wenn man im Metatrader auf Einfügen, Indikatoren, Oszillatoren, Stochastic Oszillator klickt, sieht man auch hier eine K Periode und eine D Periode. Zunächst einmal sortieren wir mit ArraySeAsSeries beide Arrays von der aktuellen Kerze an abwärts. Jetzt können wir unsere StochasticDefinition mit Hilfe der Funktion iStochastic umsetzen. Wir tun das für das aktuelle Währungspaar auf dem Chart und die auf dem Chart ausgewählte Zeiteinheit. Auch diese Parameter hier finden wir in den Standardeinstellungen für den Stochastic Oszillator wieder. Wir haben hier 5,3,3, MODE_SMA und STO_LOWHIGH. Und auch hier sehen wir eine Fünf für die K Periode, eine Drei für die D Periode. Die Verlangsamung ist drei. Die Methode steht auf Simple. Das ist gleich zu setzten mit MODE SMA. Der Preisbereich steht auf Low/High. Das entspricht hier diesem letzten Parameter. STO_LOWHIGH. Mit der Funktion CopyBuffer füllen wir jetzt unser KArray und unser DArray mit Preisdaten. Das erste Array für den Buffer null. Das ist die erste Signallinie. Das zweite Array ist Buffer eins. Das ist die zweite Signallinie. Wir brauchen jeweils von der aktuellen Kerze für drei Kerzen die Preisdaten laut unserer Definition, die wir hier oben getroffen haben. Und speichern sie in den jeweiligen Arrays. Und mit diesen Daten können wir jetzt die aktuellen Werte,
Für weitere Informationen zum Tesla-Oszillator meldet Euch gerne bei Jochen Knobel: Telefon: +49 172 9866153 Email: jochenknobel70@gmail.com Wenn Euch diese Folge gefallen hat, dann abonniert gerne den Podcast und unseren Newsletter, um über meine Arbeit auf dem Laufenden zu bleiben. Es gibt Infos zu neuen Podcast-Folgen, Events und neuen Erkenntnissen ! Wenn Ihr mithelfen möchtet, dass noch mehr Menschen davon profitieren, könnt Ihr Body-Mind-Soul eine Rezension auf iTunes schreiben, Euren Freunden und Bekannten davon erzählen oder in Euren Sozialen Netzwerken posten. In herzlicher Verbundenheit ♡ Eure Alina Shortlinks:
Zum YT Kanal von Thomas geht es hier: https://www.youtube.com/channel/UCIWogQNNF06C8nQY_d0rMNgSeinen Fonds findet man hier: https://asset-oszillator.eu
In diesem Video wollen wir uns einmal anschauen, wie man einen Expert Advisor erstellen kann, der in der Lage ist, aufgrund von maximalen oder minimalen Werten eines Oszillators Positionen zu eröffnen. Um das zu tun, klicken Sie im Metatrader bitte hier oben auf dieses kleine Symbol oder drücken Sie die F4 Taste. Das ruft hier dann den Metaeditor auf. Und hier klicken wir auf Datei, Neue Datei, Expert Advisor aus Vorlage, Weiter. Ich vergebe hier einmal den Namen SimplerIOBVEA, klicke auf Weiter, Weiter und Fertigstellen. Jetzt kann alles oberhalb dieser OnTick Funktion hier gelöscht werden. Und wir entfernen auch die Kommentarzeilen. Wir beginnen, indem wir mit Hilfe des include Befehles hier die Datei Trade.mqh importieren. Die werden wir gleichen nutzen, um Positionen zu eröffnen. In der OnTick Funktion erstellen wir uns zunächst eine String Variable für das Signal. Und damit wir Positionen eröffnen können, benötigen wir noch den Ask Preise und den Bid Preis. Die berechnen wir mit Hilfe von SymbolInfoDouble für das aktuelle Währungspaar auf dem Chart. Wir nutzen SYMBOL_ASK beziehungsweise SYMBOL_BID und mit Hilfe von NormalizeDouble und _Digits stellen wir sicher, dass wir die richtige Anzahl von Nachkommastellen je nach Währungspaar automatisch berechnen. Außerdem brauchen wir für unseren Expert Advisor ein Array für die Preisdaten. Das sortieren wir dann mit Hilfe von ArraySetAsSeries von der aktuellen Kerze an abwärts. Jetzt definieren wir unseren Oszillator. In unserem Fall nutzen wir den Oszillator On Balance Volume für das aktuelle Währungspaar auf dem Chart und die aktuell eingestellte Zeiteinheit. Der dritte Parameter hier VOLUME_TICK soll uns das Tickvolumen anzeigen. Danach nutzen wir CopyBuffer, um anhand der Definition die wir hier oben getroffen haben, für das Oszillatoren Signal, angefangen von Kerze null für 100 Kerzen, die Daten in unser Array kopieren zu können. Und das ermöglicht es uns, den aktuellen Wert zu ermitteln, indem wir einfach auf den Wert Kerze null in unseren Array zugreifen. Jetzt brauchen wir noch den maximalen und den minimalen Wert. Dazu ermitteln wir mit Hilfe von ArrayMaximum zunächst die Nummer der Kerze, die in unserem EAArray, angefangen von Kerze null für das komplette Array den höchsten Wert hat. Entsprechend lässt sich mit ArrayMinimum auch die Nummer der Kerze ermitteln, die den minimalsten Wert in unserem Array hat. Und jetzt sind wir in der Lage, den tatsächlich maximalen Wert zu ermitteln, indem wir in unserem Array den Wert von der eben ermittelten Kerze auslesen. Das gleiche wiederholen wir dann nochmal und ermitteln den Wert für die minimale Kerze. Wie gesagt, es handelt sich immer um die letzten 100 Kerzen. Und wenn die aktuelle Kerze größer oder gleich ist zu dem bisher ermittelten Maximalwert in unserem Array, dann sehen wir das als Kaufen Signal und setzen unser Signal hier auf buy. Im anderen Fall, wenn der aktuelle Wert für Kerze null kleiner oder gleich ist zu bis jetzt minimal gemessenen Wert, dann ist das für uns ein Verkaufen Signal. Also setzen wir unser Signal hier auf sell. Und wenn unser Signal auf Verkaufen steht und wir keine geöffneten Positionen haben, wenn also der Rückgabewert von PositionsTotal kleiner ist als eins, dann nutzen wir trade.sell um zehn Mikrolot zu verkaufen. Andernfalls, wenn unser Signal hier auf Kaufen steht und wir ebenfalls keine geöffnete Position haben, dann nutzen wir trade.buy um zehn Mikrolot zu kaufen. Zum Schluss erstellen wir uns noch eine Chartausgabe. Das macht der Comment Befehl. Der wird uns den aktuellen, den maximalen und den minimalen Wert auch auf unserem Chart anzeigen. Hier unten versteckt sich noch irgendwo die schließende Klammer. Und das war es im Großen und Ganzen. Wenn Ihnen das hier zu schnell ging oder wenn Sie keine Ahnung haben, was alle diese Codezeilen hier bewirken sollen, dann möchten Sie sich vielleicht zunächst ein anderes Video aus der Grundlagenserie noch einmal anschauen.
Diese Folge entstand im Rahmen eines Projekts zur Modellbildungsvorlesung von Gudrun. Es ist eine Arbeit von Yannik Brenner, Bastian Hasenclever und Urs Malottke, die das Ziel haben, in einigen Jahren Mathematik und Physik am Gymnasium zu unterrichten. Außerdem macht Yannik selbst Musik und hat sich deshalb ganz praktisch mit Schwingungen an der Gitarre beschäftigt. Die drei hatten die Idee, dass man das Thema Schwingunge interessant für die Schule aufbereiten kann, wenn es dazu auch Hörbeispiele gibt. Deshalb haben Sie sich an einen Tisch gesetzt, das Gespräch und die Hörbeispiele aufgenommen und schließlich den Text dazu aufgeschrieben. Der harmonische Oszillator spielt eine wichtige Rolle zur Modellierung verschiedenster physikalischer Sachverhalte. Daher bietet es sich an, ihn schon in der Schule zu thematisieren, wo er auch in der Oberstufe im Bildungsplan zu finden ist. Während im Podcast der Versuch unternommen wurde, ein Grundverständnis für das Thema ohne formale Zusammenhänge zu entwickeln, sollen hier zusätzlich die mathematischen Hintergründe gemeinsam mit einigen Abbildungen ergänzt werden. Die didaktischen Aspekte, die in der Episode zur Sprache kommen, spielen im folgenden Text jedoch nur eine untergeordnete Rolle. Grundlegendes Ein Oszillator ist ein System, das um einen bestimmten Punkt, in der Regel Ruhepunkt oder auch die Ruhelage genannt, schwingen kann. Befindet sich das System in Ruhe in dieser Ruhelage, passiert ohne die Einwirkung äußerer Kräfte nichts; wird das System von diesem Punkt ausgelenkt, wird es durch eine rückstellende Kraft wieder Richtung Ruhepunkt beschleunigt. Der Zusatz "harmonisch" bedeutet, dass die Rückstellkraft linear von der Auslenkung zum Ruhepunkt abhängt, also proportional zur Auslenkung zunimmt. Der Graph der Bewegungsfunktion ist eine Sinus- oder Cosinus-Kurve. Die einfachsten und wohl auch bekanntesten Beispiele eines Oszillators im Bereich der Mechanik sind das Faden- und das Federpendel. Beim Fadenpendel ist der niedrigste Punkt die Ruhelage und die Rückstellkraft resultiert aus der Gravitationskraft. Beim Federpendel stellt die Federkraft die rückstellende Kraft dar. Eigenschaften eines harmonischen Oszillators Ein schwingfähiges System besitzt verschiedene Eigenschaften, mit deren Hilfe das gesamte System beschrieben werden kann. Um den harmonischen Oszillator zu verstehen, kann man sich zuerst die Bewegungsgleichung ansehen, also die Gleichung, die die aktuelle Lage des Systems beschreibt. Ausgangspunkt ist die Rückstellkraft, die im mechanischen Fall linear von der Auslenkung zur Ruhelage, also dem aktuellen Ort, abhängt (auf nicht-mechanische Einsatzgebiete wird später eingegangen). Die Rückstellkraft kann mit einer Variablen , die von verschiedenen Merkmalen des Systems abhängt, gemeinsam mit dem Ort also als dargestellt werden. Die Kraft kann auch als Beschleunigung , also der zweifachen Ableitung des Ortes, mal der Masse ausgedrückt werden, wodurch die Formel auch folgendermaßen aussehen kann: Diese Art von Formeln, in der eine Größe gemeinsam mit einer ihrer Ableitungen auftritt, wird Differentialgleichung genannt. Das Erarbeiten einer Lösung ist leichter, wenn durch die Gleichung vereinfacht wird. wird die Eigenfrequenz des Systems genannt und gibt außerdem an, wie viele Schwingungen das System in einer bestimmten Zeit, oftmals einer Sekunde, macht, wenn keine anderen Kräfte vorliegen. Somit ergibt sich Die Lösung der Funktion für den Ort muss eine Funktion sein, die nach zweimaligem Ableiten bis auf einen Vorfaktor und das Vorzeichen wieder die Ursprungsfunktion ist. Deshalb sind Sinus- und Cosinus-Funktionen, oder die äquivalente Darstellung durch die e-Funktion (siehe Eulersche Formel), Lösungen. Werden nun gewählt, wobei und die Amplituden, also maximalen Auslenkungen der Schwingungen darstellen, kann mit den Ableitungsregeln überprüft werden, dass dies Lösungen für die Bewegungsgleichung sind. Als Summe zweier Lösungen ist auch Eine Lösung, die die allgemeine Lösung genannt wird. Die beiden Amplituden der einzelnen Sinus-/Kosinus-Funktion müssen dabei aus Anfangsbedingungen bestimmt werden. Man sieht, dass die Amplitude der beobachtbaren Schwingung sein muss, also der maximalen Auslenkung, die beim Zeitpunkt vorliegt, da die Gesamtschwingung zum Zeitpunkt diese Auslenkung annehmen muss und zu diesem Zeitpunkt der Sinus verschwindet: Die Amplitude der Sinus-Funktion bestimmt sich nach und spielt daher dann eine Rolle, wenn zum Zeitpunkt bereits eine Geschwindigkeit vorliegt, das System also nicht aus der Ruhe losgelassen, sondern angestoßen wird. Zu besprechen ist allerdings noch, wie die Gleichung bei einem anderen Pendel als dem Federpendel aussieht. Das Prinzip des Oszillators bleibt gleich und somit natürlich auch die Mathematik, die ihn beschreibt. Allerdings setzt sich bei anderen Pendeln anders zusammen, da bei ihnen andere Rückstellkräfte und andere Systemeigenschaften eine Rolle spielen und nicht die Federkonstante und Masse wie beim Federpendel. So gilt beim Fadenpendel wobei die klassische Gravitationskonstante ist, die beim Fadenpendel eine große Rolle für die Rückstellkraft einnimmt, und die Fadenlänge darstellt. Werden Oszillatoren außerhalb der Mechanik betrachtet, beispielsweise der elektrische Schwingkreis, ergibt sich aus den Eigenschaften, die dieses System beschreiben. Beim elektrischen Schwingkreis z.B. aus der Induktivität der Spule und der Kapazität des Kondensators: Um die Sinus-förmige Schwingung eines Oszillators zu beschreiben, werden noch weitere Begriffe verwendet, die jedoch aus den bisher vorgestellten Eigenschaften bestimmt werden können. So wird unter der Schwingungs- oder Periodendauer die Zeit verstanden, die das System für eine vollständige Schwingung benötigt. Da sie als Informationen die Anzahl an Schwingungen und eine Zeit enthält, muss sie eng mit der Eigenfrequenz zusammenhängen: Überblick über die wichtigsten Begriffe zur Beschreibung einer Schwingung (Quelle: leifiphysik.de) Ungedämpfter harmonischer Oszillator Immer dann, wenn ein schwingfähiges System mit der obigen Gleichung beschrieben werden kann, handelt es sich um einen ungedämpften harmonischen Oszillator. Denn an der Gleichung wird klar, dass die Amplitude, also die maximale Auslenkung, auch bei der 20ten, 100ten, 10.000ten Schwingung wieder erreicht wird. Da sich die Systemeigenschaften ohne äußere Einflüsse ebenfalls nicht ändern, ändert sich das Verhalten dieses Oszillators nie und er schwingt stets gleich um die Ruhelage. Nach der mathematischen Herleitung ist schon fast alles zum ungedämpften harmonischen Oszillator gesagt, denn: Reale Beispiele und Anwendungen gibt es nicht! In der Realität gibt es immer einen Widerstand, der den Oszillator ausbremst und die Auslenkung langsam kleiner werden lässt. Aus diesem Grund ist der ungedämpfte Oszillator nur zum Kennenlernen und Verstehen des Verhaltens sowie als Näherungslösung geeignet. Gedämpfter harmonischer Oszillator Beim gedämpften harmonischen Oszillator existiert eine bremsende Kraft. Das ändert die mathematische Beschreibung in der Differentialgleichung. Die Bewegungsgleichung des Federpendels (und äquivalent die Gleichungen anderer Oszillatoren) wird um einen Term ergänzt, der im einfachen Fall der Reibung in der Luft, also einem Reibungskoeffizienten und proportional zur Geschwindigkeit ist: Oft wird zu zusammengefasst, um das rechnen zu vereinfachen. Die zu lösende Differentialgleichung wird auf die gleiche Art gelöst, wird aber natürlich komplizierter. Als Lösungsansätze empfehlen sich wieder Sinus-, Cosinus- oder e-Funktion. Mit dem Ansatz ergeben sich Lösungen, wenn die folgende Gleichung erfüllt: Je nachdem, wie das Verhältnis von Dämpfung und Eigenfrequenz sind, werden verschiedene Fälle unterschieden: Schwach gedämpfter Fall Der schwach gedämpfte Fall tritt auf, wenn gilt. Somit ist die Zahl unter der Wurzel bei der Berechnung von negativ und die Wurzel selbst imaginär. Mit der verkürzten Schreibweise ergibt sich die allgemeine Lösung zu was im Vergleich mit der ungedämpften Schwingung eine Schwingung mit kleinerer Frequenz (da ) und einer mit der Zeit exponentiell abnehmenden Amplitude darstellt. Eine andere Darstellungsweise ist folgende: Hier ist die exponentielle Abnahme der Amplitude besser ersichtlich, allerdings ist dazu das Verständnis des Zusammenfassens zweier auftretender periodischer Funktionen mittels Phasenverschiebung nötig. Die Schwingung schwingt in diesem Fall weiterhin um die Ruhelage, allerdings wird, wie bereits gesagt, die maximale Auslenkung mit jeder Schwingung geringer. Die Einhüllende zu einer gedämpften Schwingung (Quelle: Wikipedia/Harmonischer-Oszillator) Aperiodischer Grenzfall In Anwendungen ist es oft gewollt, eine Schwingung schnellstmöglich zu stoppen und zur Ruhelage zurückzukehren. Wenn eine Dämpfung keine komplette Fixierung in einem Zustand beinhaltet, ist eine überstarke Dämpfung dabei aber nicht zielführend, wie intuitiv oft angenommen wird. Um die Schwingung schnellstmöglich zu stoppen, ist die Bedingung nötig. Somit verschwindet in der Berechnung von die Wurzel und es bleibt nur eine Lösung übrig, was für die Schwingung zu führt, wobei und aus den Anfangsbedingungen, also Auslenkung und Startgeschwindigkeit, bestimmt werden. Beim aperiodischen Grenzfall, manchmal auch mit kritischer Dämpfung bezeichnet, findet keine Schwingung mehr statt. Je nach Anfangsbedingungen kann die Ruhelage einmal durchlaufen werden, spätestens dann wird sich dieser allerdings exponentiell angenährt. Darstellung des aperiodischen Grenzfalls mit unterschiedlichen Startgeschwindigkeiten (Quelle: https://de.wikipedia.org/wiki/Aperiodischer_Grenzfall) Starke Dämpfung Zwar führt eine starke Dämpfung auch dazu, dass keine Schwingung stattfindet, allerdings braucht das System lange, um wieder in die Ruhelage zurückzukehren. Deshalb wird dieser Fall auch als Kriechfall bezeichnet. Mathematisch wird er mit der Bedingung beschrieben, was zu zwei reellen, negativen Ergebnissen für führt. Die Bewegungsgleichung ergibt damit vereinfacht wobei und wieder aus den Anfangsbedingungen bestimmt werden. Vergleich des Kriechfalls mit dem aperiodischen Grenzfall Um zu zeigen, dass die vorgestellten Fälle alle von Nutzen sind, werden nun einige Anwendungsbeispiele vorgestellt. So ist der Fall der schwachen Dämpfung für Saiteninstrumente wichtig, da die einzelnen Saiten sich nicht sofort wieder in die Ruhelage begeben dürfen, sondern schwingen müssen, um überhaupt einen Ton erzeugen zu können. Der aperiodische Grenzfall ist beispielsweise für Autofahrer sehr wichtig, da die Stoßdämpfer nach diesem Prinzip funktionieren. Das hat den einfachen Grund, dass das Auto nach der Beanspruchung der Stoßdämpfer schnell wieder in die ideale Straßenlage kommen soll. Würde eine schwache Dämpfung verwendet werden, so würde das Auto noch für längere Zeit auf und ab wippen und die Fahrt eher einer Bootstour ähneln, was wenig komfortabel ist. Bei starker Dämpfung könnte es vorkommen, dass die nächste Beanspruchung nicht ausreichend abgefedert werden kann, da die Feder noch zu stark eingefedert ist. Aber auch die starke Dämpfung hat ihre Anwendungsgebiete. So sind beispielsweise viele Türen in öffentlichen Gebäuden stark gedämpft. Das sorgt für ein langsames und leises Schließen der Türen und verhindert, dass die Tür einer unaufmerksamen Person mit zu viel Geschwindigkeit entgegenfällt und diese eventuell verletzt. Getriebener Oszillator Bisher wurde der Oszillator ohne äußere Kräfte betrachtet. Liegt solch eine Kraft vor, muss diese in die Bewegungsgleichung integriert werden: Interessant ist dieser Fall besonders dann, wenn es sich bei der Kraft um eine periodische Kraft handelt, also . Dieser Fall ist sehr gut mit einem schaukelndem Kind zu vergleichen, welches immer zum gleichen Zeitpunkt mit der gleichen Kraft angeschubst wird. Durch diese von außen aufgebrachte Kraft wird aus der homogenen eine inhomogene Differentialgleichung. Um diese zu lösen muss die Lösung der homogenen Differentialgleichung, welche in dem Abschnitt zu dem gedämpften harmonische Oszillator zu finden ist, mit der sogenannten partikulären Lösung addiert werden. Die partikuläre Lösung lässt sich mit dem Ansatz des Typs der rechten Seite lösen und ergibt sich zu dabei handelt es sich bei um eine Phasenverschiebung zwischen der antreibenden Kraft und dem um den Ruhepunkt schwingenden Massepunkt. Von besonderem Interesse ist dabei das Verhalten des gesamten Systems für verschiedene Frequenzen der treibenden Kraft. Dabei werden drei verschiedene Fälle betrachtet. Niederfrequenter Bereich: Für den niederfrequenten Bereich gilt, dass die Frequenz der antreibenden Kraft sehr viel kleiner ist als die Eigenfrequenz des Oszillators. Aufgrund dessen ist die Amplitude der anregenden Kraft in etwa so groß wie die Amplitude des Massepunktes. Das Amplitudenverhältnis beträgt also ungefähr 1. Der Phasenunterschied zwischen den beiden Schwingungen ist in etwa 0. Resonanzfall: Von Resonanz wird gesprochen, wenn die Frequenz der antreibenden Kraft der Eigenfrequenz des Oszillators gleicht. Infolgedessen erhöht sich die Amplitude des Oszillators gegenüber der Amplitude des Erregers, sodass sich ein Amplitudenverhätnis ergibt, welches größer 1 ist. Die Phasendifferenz beträgt , wobei der Erreger dem Massepunkt vorauseilt. Hochfrequenter Bereich: Sollte die Frequenz der antreibenden Kraft viel größer sein als die Eigenfrequenz des Oszillators so fällt auch die Amplitude des Oszillators wesentlich kleiner aus. Es ergibt sich ein Amplitudenverhätnis, welches gegen 0 geht. Auch in diesem Fall gibt es eine Phasendifferenz , die Schwingungen laufen also fast gegenphasig ab. Auch diese Eigenschaften der Oszillatoren sind im Alltag von Bedeutung. So ist es für Autos wichtig, dass die Eigenfrequenz einzelner Teilsysteme oder des Gesamtsystems nicht im Bereich der Motorendrehzahl liegen um eine komfortable und sichere Fahrt zu gewährleisten. Insbesondere der Resonanzfall kann gefährliche Auswirkungen haben, da in diesem Fall das System immer weiter aufgeschaukelt wird und die Amplitude des Oszillators sich immer weiter erhöht. Falls das System nicht gedämpft ist, kann die Amplitude bis ins Unedliche steigen, was zur Zerstörung des Systems führt. Eine starke Dämpfung kann die maximale Amplitude zwar begrenzen, aber auch in diesem Fall komm es für den Resonanzfall zu einer starken Belastung des Systems, was in den meisten Fällen vermieden werden sollte. Ein gutes Beispiel für eine Resonanzkatastrophe ist die Tacoma Narrows Bridge, welche durch starke Winde in Schwingung versetzt wurde, welche sich dann selbsterregt immer weiter verstärkte, was den Einbruch der Brücke zur Folge hatte. Demgegenüber bleibt aber zu sagen, dass ohne Resonanz auch viele alltägliche Dinge nicht möglich wären, es also auch einen positiven Aspekt gibt. So würde Schaukeln nicht halb so viel Spaß machen, wenn es nicht möglich wäre seine eigene Schwingung zu verstärken und somit immer höher Schaukeln zu können. Ein weiteres typisches Beispiel für den getriebenen harmonischen Oszillator stellt der elektrische Schwingkreis da, der bei der drahtlosen Energieübertragung genutzt wird. Das System wird dabei ständig neu mit Energie aufgeladen, die es dann mittels sogenannter resonant induktiver Kopplung an einen Empfänger weitergeben kann, der so kabellos geladen wird. Weiterführendes Viele weiterführende Beispiele, die sich des Oszillators mit schwacher Dämpfung bedienen, sind in der Akustik respektive Musik zu finden, wie die Schwingung einer (Gitarren-)Seite, die nach einmaligem Anschlag möglichst lange klingen soll. Doch hier handelt es sich nicht um einen einfachen harmonischen Oszillator, sondern um ein komplexeres System. Literatur und weiterführende Informationen Viele Experimente und Material zum Fadenpendel für die Schule findet man z.B. auf leifiphysik.de Physik des Aufschaukelns Anschubsen K. Magnus: Schwingungen, Teubner 1976. Juan R. Sanmartin: O Botafumeiro: Parametric pumping in the Middle Ages Anwendung auf das Schwenken des berühmten Weihrauchfasses in der Kathedrale von Santiago de Compostela, 1984. Podcasts Helen: Schaukeln, Gespräch mit G. Thäter im Modellansatz Podcast, Folge 114, Fakultät für Mathematik, Karlsruher Institut für Technologie (KIT), 2016.
In diesem Video wollen wir uns einmal anschauen, wie man für diesen Oszillator hier, den Awesome-Indikator, benutzerdefinierte Werte für den Kauf und den Verkauf eingeben und automatisieren kann. Also lassen Sie uns einmal schauen, wie man so etwas in MQL5 programmiert. Um das zu tun klicken Sie im Metatrader hier oben auf dieses kleine Symbol oder drücken die F4-Taste. Das ruft dann hier den Metaeditor auf und hier klicken wir auf Datei, neue Datei, Expert Advisor aus Vorlage, weiter. Ich vergebe einmal den Namen SimplerAwesomeIndikator, klicke auf weiter, weiter und fertigstellen. Jetzt kann hier alles oberhalb der OnTick-Funktion gelöscht werden und auch die zwei Kommentarzeilen werden entfernt. Wir starten hier mit einer include-Anweisung. Die wird uns die Datei trade.mqh importieren. Die ist Bestandteil von MQL5 und ermöglicht es uns vereinfachte Handelsfunktionen zu benutzen. Dazu erstellen wir uns im nächsten Schritt von der Klasse CTrade eine Instanz mit dem Namen trade. Außerdem möchten wir gerne in der Lage sein, einen Signalwert als Benutzereingabe vorzugeben. Dieser Zusatz hier input ermöglicht es uns einen Fließkommawert für unser Signal ohne Neukompilierung des Codes später im Expert Advisor verändern zu können. Das hier ist der vorbelegte Initialwert. In der OnTick-Funktion holen wir uns zunächst einmal den Ask-Preis und den Bid-Preis. Das übernimmt die Funktion SymbolInfoDouble für das aktuelle Währungspaar auf dem Chart. Wir nutzen SYMBOL_ASK oder SYMBOL_BID je nach dem ob wir den Ask- oder den Bid-Preis berechnen. Und mit NormalizeDouble und _DIGITS stellen wir sicher, dass wir für das jeweilige Währungspaar die richtige Anzahl von Nachkommastellen berechnen. Im nächsten Schritt erstellen wir uns eine signal-Variable. Die bekommt hier aber noch keinen Wert zugewiesen, denn den möchten wir gleich noch ermitteln. Mit MqlRates holen wir uns jetzt die Preisinformationen, denn MqlRates bewahrt Informationen über Preis, Volumen und Spread auf. Wir nutzen hier ArraySetAsSeries, um unser Array von der aktuellen Kerze an abwärts zu sortieren und danach nutzen wir CopyRates, um für das aktuelle Symbol auf dem Chart und dir dort eingestellte Zeiteinheit, angefangen von der aktuellen Kerze 0, die Daten für 3 Kerzen in unser PriceInformation-Array zu kopieren. Danach brauchen wir noch ein weiteres Array. Das werden wir nutzen, um den aktuellen Oszillatorwert zu berechnen. Und für die Definition was wir da berechnen möchten, nutzen wir die eingebaute MQL5-Funktion iAO. Die benötigt genau zwei Parameter. Der erste Parameter steht für das aktuelle Währungspaar und der zweite Parameter für die auf dem Chart ausgewählte Zeiteinheit. Auch dieses Array sortieren wir von der aktuellen Kerze an abwärts, in dem wir ArraySetAsSeries benutzen. Und jetzt nutzen wir CopyBuffer, um anhand der Definition, die wir hier oben getroffen haben, für Buffer 0, also das jeweilige Signal hier, von der Kerze 0 an für 3 Kerzen die Preisdaten in unserem PriceArray zu speichern. Und jetzt berechnen wir den aktuellen Wert einfach in dem wir uns den Wert aus Kerze 0 aus unserem PriceArray holen. Mit NormalizeDouble und dieser 6 stelle ich sicher, dass der Ausgabewert sechs Nachkommastellen hat, so wie hier auch im Oszillator auch angezeigt wird. Und wenn dieser Wert größer ist, als der von uns definierte gewünschte Signalwert, dann ist das für uns ein Kaufsignal und dann weisen wir den Begriff buy unserer signal-Variable zu. Im anderen Fall, wenn der Oszillatorwert kleiner ist als 0, abzüglich unserem Signalwert, das ist dann der Minuswert für unser Signal, dann stellt das für uns ein Verkaufssignal dar und dann weisen wir den Begriff sell unserer Signalvariable zu. Und immer wenn unser Signal auf verkaufen steht und der Rückgabewert für PositionsTotal kleiner ist als 1, dann bedeutet das wir haben keine geöffneten Positionen, aber ein Verkaufen-Signal und dann nutzen wir trade.Sell, um 10 Microlot zu verkaufen. Passen wir das hier mal an.
In diesem Video wollen wir uns einmal anschauen, wie man einen Expert Advisor für diesen Oszillator hier programmieren kann. Es handelt sich um den Bill Williams Market Facilitation Index. Schauen wir uns also einmal an, wie man so etwas in MQL5 programmiert. Um das zu tun, klicken Sie im Metatrader bitte auf dieses kleine Symbol hier oben oder drücken Sie die F4 Taste. Das ruft dann hier den Metaeditor auf. Und hier klicken wir auf Datei, Neue Datei, Expert Advisor aus Vorlage, Weiter. Ich vergebe hier einmal den Namen SimplerBWMFIEA, klicke auf Weiter, Weiter und Fertigstellen. Jetzt kann alles oberhalb dieser OnTick Funktion hier gelöscht werden. Und auch die zwei Kommentarzeilen werden entfernt. Wir starten hier oben mit einer include Anweisung für die Datei Trade.mqh. Die ist Bestandteil von MQL5. Und die enthält die Klasse CTrade, von der wir uns hier eine Instanz mit dem Namen trade erstellen, die wir später benutzen werden, um Positionen zu eröffnen. In der OnTick Funktion erstellen wir uns zunächst eine Signal Variable vom Typ string. Die kann Texte aufnehmen. Wir weisen hier aber noch keinen Wert zu. Denn den möchten wir jetzt gleich ermitteln. Dazu berechnen wir zunächst einmal den Ask Preis. Das übernimmt die Funktion SymbolInfoDouble für das aktuelle Währungspaar auf dem Chart. Wir verwenden SYMBOL_ASK, alles in Großbuchstaben. Und mit der Funktion NormalizeDouble und _Digits stellen wir sicher, dass wir die richtige Anzahl von Nachkommastellen für das jeweilige Währungspaar berechnen. Das Ganze machen wir hier nochmal für den Bid Preis. Die Zeile ist soweit identisch, bis auf den Variablennamen. Und natürlich nutzen wir hier als Parameter SYMBOL_BID. Außerdem brauchen wir noch ein Array. Das soll die Werte aufnehmen, die wir gleich berechnen. Mit ArraySetAsSeries sorgen wir dafür, dass unser Bill Williams Market Facilitation Index von der aktuellen Kerze an abwärts sortiert wird. Die eigentliche Definition ist sehr einfach. Wir nutzen die in MQL5 enthaltene Funktion iBWMFI. Die bekommt drei Parameter übergeben. Der erste Parameter steht für das aktuelle Währungspaar. Der zweite Parameter für das auf dem Chart verwendete Zeitfenster. Und Parameter drei ist hier VOLUME_TICK. Wenn man das einmal markiert und die F1 Taste drückt, dann stellen wir fest, dass man sich hier für das Tick Volumen oder für das reale Volumen entscheiden kann. Und mit CopyBuffer können wir jetzt anhand der Definition, die wir hier oben getroffen haben, unser BWMFI Array für Buffer null von der aktuellen Kerze null für drei Kerzen füllen und die Werte in unserem Array speichern. Um den aktuellen Wert zu berechnen schauen wir jetzt einfach, welcher Wert in Kerze null von unserem Array enthalten ist. Wir nutzen NormalizeDouble und die fünf, um fünf Nachkommastellen zu berechnen. Denn das ist auch der Wert, den wir hier unten im Originaloszillator sehen. Das Ganze wiederholen wir jetzt nochmal, aber diesmal für Kerze eins. Damit können wir den letzten ermittelten Wert berechnen. Das ermöglicht uns zu prüfen, ob der aktuelle Wert größer ist als der letzte Wert. Wenn das so wäre, würden wir das als Kaufsignal sehen und dann weisen wir den Begriff Buy unserer Signal Variable zu. Andernfalls, wenn der aktuelle Wert kleiner ist als der letzte Wert, dann halten wir das für ein Verkaufssignal. Und dann weisen wir den Begriff Sell unserer Signal Variable zu. Wenn unser Signal jetzt den Wert Sell hat, und die Funktion PositonsTotal uns einen Rückgabewert kleiner eins liefert, dann bedeutet das: wir haben ein Verkaufssignal und keine geöffnete Position. Und in dem Fall nutzen wir trade.Sell, um zehn Mikrolot zu verkaufen. Andernfalls, wenn unser Signal den Wert kaufen hat und wir ebenfalls keine geöffnete Position haben, dann nutzen wir trade.Buy, um zehn Mikrolot zu kaufen. Zum Schluss lassen wir uns hier mit dem Comment Befehl noch den Text: Das Signal ist jetzt, gefolgt von dem ermittelten Signal ausgeben. Das war es soweit.
In diesem Video wollen wir uns einmal anschauen, wie man einen Expert Advisor für diesen Oszillator hier programmieren kann. Es handelt sich um den Bill Williams Market Facilitation Index. Schauen wir uns also einmal an, wie man so etwas in MQL5 programmiert. Um das zu tun, klicken Sie im Metatrader bitte auf dieses kleine Symbol hier oben oder drücken Sie die F4 Taste. Das ruft dann hier den Metaeditor auf. Und hier klicken wir auf Datei, Neue Datei, Expert Advisor aus Vorlage, Weiter. Ich vergebe hier einmal den Namen SimplerBWMFIEA, klicke auf Weiter, Weiter und Fertigstellen. Jetzt kann alles oberhalb dieser OnTick Funktion hier gelöscht werden. Und auch die zwei Kommentarzeilen werden entfernt. Wir starten hier oben mit einer include Anweisung für die Datei Trade.mqh. Die ist Bestandteil von MQL5. Und die enthält die Klasse CTrade, von der wir uns hier eine Instanz mit dem Namen trade erstellen, die wir später benutzen werden, um Positionen zu eröffnen. In der OnTick Funktion erstellen wir uns zunächst eine Signal Variable vom Typ string. Die kann Texte aufnehmen. Wir weisen hier aber noch keinen Wert zu. Denn den möchten wir jetzt gleich ermitteln. Dazu berechnen wir zunächst einmal den Ask Preis. Das übernimmt die Funktion SymbolInfoDouble für das aktuelle Währungspaar auf dem Chart. Wir verwenden SYMBOL_ASK, alles in Großbuchstaben. Und mit der Funktion NormalizeDouble und _Digits stellen wir sicher, dass wir die richtige Anzahl von Nachkommastellen für das jeweilige Währungspaar berechnen. Das Ganze machen wir hier nochmal für den Bid Preis. Die Zeile ist soweit identisch, bis auf den Variablennamen. Und natürlich nutzen wir hier als Parameter SYMBOL_BID. Außerdem brauchen wir noch ein Array. Das soll die Werte aufnehmen, die wir gleich berechnen. Mit ArraySetAsSeries sorgen wir dafür, dass unser Bill Williams Market Facilitation Index von der aktuellen Kerze an abwärts sortiert wird. Die eigentliche Definition ist sehr einfach. Wir nutzen die in MQL5 enthaltene Funktion iBWMFI. Die bekommt drei Parameter übergeben. Der erste Parameter steht für das aktuelle Währungspaar. Der zweite Parameter für das auf dem Chart verwendete Zeitfenster. Und Parameter drei ist hier VOLUME_TICK. Wenn man das einmal markiert und die F1 Taste drückt, dann stellen wir fest, dass man sich hier für das Tick Volumen oder für das reale Volumen entscheiden kann. Und mit CopyBuffer können wir jetzt anhand der Definition, die wir hier oben getroffen haben, unser BWMFI Array für Buffer null von der aktuellen Kerze null für drei Kerzen füllen und die Werte in unserem Array speichern. Um den aktuellen Wert zu berechnen schauen wir jetzt einfach, welcher Wert in Kerze null von unserem Array enthalten ist. Wir nutzen NormalizeDouble und die fünf, um fünf Nachkommastellen zu berechnen. Denn das ist auch der Wert, den wir hier unten im Originaloszillator sehen. Das Ganze wiederholen wir jetzt nochmal, aber diesmal für Kerze eins. Damit können wir den letzten ermittelten Wert berechnen. Das ermöglicht uns zu prüfen, ob der aktuelle Wert größer ist als der letzte Wert. Wenn das so wäre, würden wir das als Kaufsignal sehen und dann weisen wir den Begriff Buy unserer Signal Variable zu. Andernfalls, wenn der aktuelle Wert kleiner ist als der letzte Wert, dann halten wir das für ein Verkaufssignal. Und dann weisen wir den Begriff Sell unserer Signal Variable zu. Wenn unser Signal jetzt den Wert Sell hat, und die Funktion PositonsTotal uns einen Rückgabewert kleiner eins liefert, dann bedeutet das: wir haben ein Verkaufssignal und keine geöffnete Position. Und in dem Fall nutzen wir trade.Sell, um zehn Mikrolot zu verkaufen. Andernfalls, wenn unser Signal den Wert kaufen hat und wir ebenfalls keine geöffnete Position haben, dann nutzen wir trade.Buy, um zehn Mikrolot zu kaufen. Zum Schluss lassen wir uns hier mit dem Comment Befehl noch den Text: Das Signal ist jetzt, gefolgt von dem ermittelten Signal ausgeben. Das war es soweit.
In diesem Video wollen wir uns einmal anschauen, wie man mit MQL5 eine Expert Advisor erstellen kann, der in der Lage ist, für den RSI unterschiedliche Zeitrahmen zu berechnen. Wir haben hier den Wert für die aktuelle Zeiteinheit für dreißig und für sechzig Minuten. Also lassen Sie uns einmal schauen, wie man so etwas in MQL5 programmieren kann. Um das zu tun, klicken Sie bitte hier oben auf dieses kleine Symbol oder drücken Sie die F4 Taste. Das ruft dann hier den Meta Editor auf. Und hier klicken wir auf Datei, Neue Datei, Expert Advisor aus Vorlage. Weiter. Ich vergebe hier einmal den Namen SimplerMultiRSI, klicke auf Weiter, Weiter und Fertigstellen. Jetzt kann alles oberhalb dieser OnTick Funktion hier gelöscht werden. Und auch die zwei Kommentarzeilen können weg. Wir starten hier oben mit dem include Befehl. Damit importieren wir uns die Datei Trade.mqh. Die ist Bestandteil von MQL5 und stellt uns vereinfachte Handelsfunktionen bereit. Dazu erstellen wir uns eine Instanz von der Klasse CTrade. Die bekommt den Namen trade und wir werden sie später benutzen, um damit Positionen zu eröffnen. Innerhalb der OnTick Funktion berechnen wir uns den Ask und den Bid Preis. Das macht die Funktion SymbolInfoDouble für das aktuelle Symbol, also das Währungspaar auf dem Chart. Wir nutzen SYMBOL_ASK für den Ask Preis beziehungsweise SYMBOL_BID für den Bid Preis. Und mit NormalizeDouble und _Digits stellen wir sicher, dass die Anzahl der Stellen hinter dem Punkt für das jeweilige Währungspaar korrekt angezeigt werden. Je nach Währung können das drei oder fünf Nachkommastellen sein. Danach erstellen wir eine string Variable mit dem Namen Signal. Die bekommt hier noch keinen Wert, denn, den möchten wir jetzt ermitteln. Dazu erstellen wir zunächst einmal drei Arrays für das aktuelle, das dreißig Minuten Chart und das sechzig Minuten Chart. Fangen wir mit dem aktuellen Zeitfenster an. Die Funktion iRSI ist in MQL5 enthalten. Und wir übergeben hier als Parameter das aktuelle Währungspaar., die aktuell auf dem Chart ausgewählte Zeiteinheit. Wir möchten gerne den Wert für 14 Kerzen aufgrund der Schlusskurse berechnen lassen. Danach verwenden wir ArraySetAsSeries, um unser Array für die aktuellen Werte von der aktuellen Kerze an abwärts zu sortieren. Jetzt können wir es mit CopyBuffer füllen. Und zwar anhand der Definition, die wir hier oben getroffen haben, für Buffer null, von der aktuellen Kerze. Das ist die Kerze null. Wir kopieren uns die Werte für drei Kerzen und speichern sie in unserem Array. Und um den aktuellen Wert zu berechnen holen wir uns einfach für die aktuelle Kerze null den Wert aus unserem Array. Und mit NormalizeDouble und dieser zwei hier, schneiden wir das Ganze auf zwei Nachkommastellen ab. Denn das ist auch die Darstellung, die wir hier im Oszillator sehen. Damit hätten wir jetzt also den Wert für das aktuelle Chart. Und um den Wert für die dreißig Minuten zu berechnen, machen wir quasi dasselbe noch einmal. Die Variable heißt natürlich anders. Und wir nutzen hier die eingebaute iRSI Funktion und übergeben statt _Period diesen Wert, PERIOD_M30. Wenn man den markiert und die F1 Taste drückt, dann sieht man, dass für so ziemlich jede denkbare Chartperiode hier die entsprechenden Werte zur Verfügung stehen. PERIOD_M30 steht für dreißig Minuten. PERIOD_H1 steht für eine Stunde und so weiter. Wir hätten das gerne für dreißig Minuten. Auch hier sortieren wir unser Array, nutzen dann CopyBuffer, um anhand der hier oben getroffenen Definition unser Array mit Werten zu füllen. Und um den dreißig Minuten Wert zu ermitteln, greifen wir auch wieder auf die aktuelle Kerze null in unserem Array zu. Die Berechnung für sechzig Minuten ist jetzt keine Überraschung mehr. Vom Prinzip wiederholt sich alles. Nur, dass wir diesmal für sechzig Minuten den Wert PERIOD_H1 benutzen. Und auch hier greifen wir auf die aktuelle Kerze null in unserem Array zu, um den Wert zu ermitteln. Da wir ja alle Signale miteinander kombinieren möchten,
Gudrun spricht mit Markus Pössel in Heidelberg. Er ist Physiker und leitet das Haus der Astronomie auf dem Königstuhl dort. Gudrun und Markus kennen sich schon lange aus der Ferne. Sie haben sich auf twitter über Themen ausgetauscht, die mit Wissenschaftskommunikation verbunden sind. Anlass für ein tiefergehendes Gespräches war, dass Markus eine wissenschaftliche Arbeit veröffentlicht hat, in der er einen elementaren Zugang zum ersten Noether Theorem beschreibt mit Hilfe von zwei Beispielen. Kurz nach dem sehr erfolgreichen Experiment #noethember, wo im November 2018 ein Monat lang Emmy Noethers Leben und Forschung in unterschiedlichster Weise erinnert wurde, ist diese Podcastepisode ein etwas verspäteter Beitrag. Markus widmet sich in seiner wissenschaftlichen Arbeit elementaren Zugängen zu faszinierenden physikalischen Themen. Persönlich interessiert er sich dabei insbesondere für die Allgemeine Relativitätstheorie, und insbesondere für deren Anwendungen in der Astrophysik. Dafür ist das Haus der Astronomie als gemeinschaftliche Einrichtung der Max Planck Gesellschaft und der Klaus Tschira Stiftung (mit der Universität und der Stadt Heidelberg als weiteren Partnern) ein geeignetes Dach, denn es wurde dafür gegründet, astronomische Forschung für alle Bevölkerungsschichten erfahrbar zu machen. Der Einstieg in astronomische Themen funktioniert oft gut über Phänomene, die an der Intuition rütteln oder interessante Extreme von Theorien sind. Auch wenn Astronomie selten zum Schulstoff gehört, spricht es Schülerinnen und Schüler direkt an. Dass das Interesse an Astronomie gross ist, zeigt z.B. die ROSE-Studie. Deswegen bietet Astronomie einen so guten Einstieg in MINT-Fächer. Die Wissenschaftler in Heidelberg kommunizieren gern. Jeden zweiten Donnerstag im Monat findet die Vorlesungsreihe Faszination Astronomie über aktuelle Forschungsergbnisse statt. Es gibt außerdem sogenante MPI-Outreach Fellows, die sich besonders für Bildungs-und Öffentlichkeitsarbeit interessieren. Sie werden weitergebildet und in die tägliche Arbeit eingebunden. Neben den regelmäßigen Vorträgen gibt es auch ganz besondere Veranstaltungen wie zuletzt im November mit dem Klangforum Heidelberg, wo es zur Musik eine interaktive Planetariumsvorführung gab. Es werden ständig Fortbildungen für Physiklehrer und -lehrerinnen organisiert. Auch für Grundschullehrkräfte gibt es in Zusammenarbeit mit der Forscherstation der Klaus Tschira Stiftung Programme, um zu sie zu Ansprechpartnern für die natürliche Neugier der Kinder zu machen. Auch die Studierenden, die sich an der Universität Heidelberg als Physiklehrer ausbilden lassen führt ein mehrwöchiger Kompaktkurs ins Haus der Astronomie. Darüber hinaus arbeiten immer einmal wieder Praktikanten im Haus der Astronomie und Markus betreut wissenschaftliche Abschlussarbeiten. Im Moment ist es oft im Themengebiet der Kosmologie zusammen mit dem MPI für Astronomie nebenan, z.B.in der Auswertung der Illustris-Simulationen. In diesem Computerexperiment wird das Universum von der Urknallphase bis heute erforscht. Neben den Hochglanzthemen wie Sterne und Raumfahrt gibt es aber auch andere Themen, die kommuniziert werden sollten, weil sie in der Physik einen wichtigen Platz haben. Ein Beispiel hierfür sind die zwei Noether-Theoreme. Im ersten wird das extrem allgemeines Resultat formuliert, dass die Existenz von Symmetrie der Existenz einer Erhaltungsgröße entspricht. Es lässt sich noch relativ einfach formulieren und inhaltlich nachvollziehen, aber man braucht sehr tief liegende Mathematik, um das Ergebnis zu beweisen und wirklich zu verstehen, wo der Knackpunkt liegt, der diese Beziehung zwischen Symmetrie und Erhaltungsgrößen greifbar macht. Markus hat in seiner Arbeit zwei Beispiele angeführt, für die man die expliziten Lösungen der Bewegungsgleichungen kennt. Das hilft, in konkreten und elementaren Rechnungen den Zusammenhang von Symmetrie und Energieerhaltung zu sehen. Das erste Beispiel ist die Bewegung im (konstanten) Schwerefeld, das zweite der harmonischer Oszillator. Die Grundidee ist, dass eine Verschiebung des Anfangszeitpunktes bei den Berechnungen die Bahn des Körper nicht ändert. Wenn man zwei unterschiedliche Anfangszustände vergleicht, führt der Koeffizientenvergleich auf Gleichungen, die genau der Energieerhaltung entsprechen (konkret bleibt Summe aus potentieller und kinetischer Energie konstant). Beim harmonischen Oszillator braucht man zusätzlich noch trigonometrische Formeln. Markus wünscht sich noch mehr Zeit dafür, die Materialen konsistenter zu sammeln und aufzubereiten....und wer sich für Weltraum interessiert, sollte DLR_next auf Twitter folgen! Sneak preview: unseren @mpoessel könnt ihr in Kürze im Podcast @modellansatz hören. Mit Themen von @HdAstro und #wisskomm bis zu Emmy Noether! pic.twitter.com/zcSduq9Ke6— Haus der Astronomie (@HdAstro) 13. Dezember 2018 Literatur und weiterführende Informationen Praktikanten (intl. Sommerpraktikum 2017) haben ihr Projekt - Simulation von Galaxien-Kollisionen - zusammengeschrieben, und es ist jetzt auf arXiv Allgemeine Relativitätstheorie allgemeinverständlich - eines von Markus Pössels Projekten zum Einsteinjahr 2005: M. Pössel: Energy conservation in explicit solutions as a simple illustration of Noether's theorem, Am. J. Phys., in press M. Pössel: Relatively complicated? Using models to teach general relativity at different levels Informationen über die Forscherstation Klaus-Tschira-Kompetenzzentrum für frühe naturwissenschaftliche Bildung: Informationen zu Praktika für Schüler*innen im Haus der Astronomie: Informationen zu Bachelorarbeiten am Haus der Astronomie Projekt Raum für Bildung zur Horizons-Mission von Alexander Gerst (gemeinsam mit DLR und Joachim Herz Stiftung) http://scienceblogs.de/hier-wohnen-drachen/2011/05/22/der-schonste-satz-der-klassischen-physik/ A: Irwin: Astronomers have an outsize passion for outreach nature, 26 November 2018 Olbers Paradoxon Podcasts F. Freistetter: Emmy Noether und die Erhaltungssätze der Physik, Sternengeschichten Podcast Folge 182, 2016. E. P. Fischer: Emmy Noether, Die Entdeckungen großer Forscher, BR Podcast, 2013.
Homogene lineare DG: System 1. Ordnung, Superpositionsprinzip. Exponentialansatz, Eigenwertproblem. Gedämpfter harm. Oszillator.
Theorie-Vertiefung 1 - (Quantenmechanik II) 2011/2012 (SD 640)
Theorie-Vertiefung 1 - (Quantenmechanik II) 2011/2012 (SD 640)
Fakultät für Physik - Digitale Hochschulschriften der LMU - Teil 01/05
Der 3P0 - 1S0 Übergang (Uhrenübergang) des einfach ionisierten Indiums (lambda = 236,5 nm) gilt als einer der aussichtsreichsten Kandidaten für ein neues Frequenznormal im optischen Bereich mit einer relativen Genauigkeit von 10^-18. Als kurzzeitstabilen Oszillator benötigt man hierfür einen Laser mit einer Linienbreite, die kleiner als die natürliche Linienbreite des Uhrenübergangs ist (0,8 Hz). Die Koinzidenz der vierfachen Frequenz des Nd:YAG Laserüberganges bei 946 nm mit dem Indiumübergang bietet die Möglichkeit einen diodengepumpten monolithischen Ringlaser aus Nd:YAG (MISER) hierfür zu verwenden, was die Möglichkeit eröffnet mit einem sehr kompakten Aufbau in neue Bereiche der Frequenzstabilität vorzudringen. Der MISER wird hierfür auf einen hochstabilen Referenzresonator mittels der Pound-Drever-Hall Stabilisierungstechnik stabilisiert. Als Resonatoren werden verschiedene Materialien (Zerodur und ULE), wie auch verschiedene geometrische Abmessungen verwendet, die jeweils in einer Vakuumkammer innerhalb einer temperaturstabilisierten Umgebung gelagert sind. Das Hauptproblem bei der Verbesserung der absoluten Frequenzstabilität des Uhrenlasers besteht darin, dass der Referenzresonator, eine sehr gute Isolierung gegenüber äußeren Einflüssen wie seismischen Vibrationen und Temperaturfluktuationen erhalten muß. Auf dem Weg zur sub-Hertz Stabilität des Lasers werden hierfür verschiedene Methoden untersucht. Für die Isolierung der seismischen Vibrationen stellt sich ein aktiv vibrationsisolierendes System (AVI) als besonders effektiv heraus, dessen Leistungsfähigkeit ausgiebig untersucht wird. Mit Hilfe einer neuen Art der zweifachen Frequenzstabilisierung eines Lasers auf einen Referenzresonator werden schließlich Rekordwerte hinsichtlich der Qualität der Anbindung des Lasers an die Referenzfrequenz eines Resonators von