PineScript Guide 2 - Ausführungsmodell und ZeitreiheHallo Trader,
willkommen zum zweiten Teil des "PineScript für Einsteiger"-Guide.
█ Worum geht es in dieser Tutorial-Serie?
Dieser Kurs soll dir einen einfachen Einstieg in die PineScript Programmierung ermöglichen. Es ist egal, ob du vorher schon einmal programmiert hast oder gerade mit dem Programmieren anfängst. Der Kurs wird dir die Grundlagen der PineScript Programmierung erklären und dir mit einfachen Beispielen den Einstieg erleichtern.
█ Was schauen wir uns in diesem Video an?
Dieses Video soll dir zeigen wie PineScript ausgeführt wird und wie sich die Daten in PineScript zusammensetzen bzw. aufgebaut sind. Daher schauen wir uns das Execution Model- und das "Time Series"-Konzept an. Beide Konzepte sind abstrakt, aber notwendig um funktionierende Skripte zu erstellen.
█ Was ist das Execution Model / Ausführungsmodell? Oder anders ausgedrückt, wie wird PineScript ausgeführt?
Die Kerzen auf dem Tradingview Chart können technisch in historische und aktuelle Kerzen unterteilt werden.
Historische Kerzen liegen in der Vergangenheit und das jeweilige PineScript, welches auf deinem Chart angewendet wird, wird beim Öffnen des Charts einmal für historische Kerzen ausgeführt.
Historische Kerzen beinhalten einen Wert für jede Variable innerhalb des Skriptes.
Aktuelle Kerzen (realtime bar) sind solche, die den aktuellen Markt widerspiegeln und fortlaufend mit frischen Daten versorgt werden. Bei aktuellen Kerzen wird das PineScirpt somit mehrfach (einmal pro neuer Preisdaten) innerhalb einer Kerze ausgeführt. Wenn das Zeitintervall der Kerze überschritten wird (nennen wir sie Kerze A), erscheint eine neue aktuelle Kerze (Kerze B). Ab jetzt erhält Kerze B die neuen Preisdaten und Kerze A behält den Stand der Daten des letzten Updates innerhalb ihres Intervalls.
Aktuelle Kerzen verändern die Werte ihrer Variablen fortlaufend mit der Aktualisierung der Preisdaten.
█ Was ist das Time Series- / Zeitreihen-Konzept?
Die Preis- und Zeitdaten sind auf dem Chart und in PineScript anhand einer Zeitreihe sortiert. Dabei erhält jede Kerze einen Index. Die aktuelle Kerze (ganz rechts) hat den Index , die vorherige den Index und so weiter. Sobald eine neue Kerze erscheint, erhöht sich der Index aller vergangenen Kerzen um 1 und die aktuelle Kerze erhält den Index 0.
Als Programmierer können wir mit diesem Konzept auf bestimmte Kerzen referenzieren. Möchtest du dir eine Kerze markieren, um sie später wiederzuverwenden (zum Beispiel um eine Linie einzuzeichnen), kannst du dir ihren Index abspeichern.
Willst du zum Beispiel auf dem Tageschart den Schlusskurs von vor 3 Tagen abfragen, kannst du dies über close tun. „close“ ist hierbei eine built-in Variable für den Schlusskurs, die uns in PineScript zur Verfügung steht und die eckigen Klammern mit dem entsprechenden Index 3 sagen deinem Skript, den Schusskurs welcher Kerze du abfragen willst.
Das Execution Model und das Time Series Konzept bilden die Grundlage eines jeden PineScripts. Sie wirken anfänglich etwas abstrakt, vereinfachen uns die Arbeit mit den Preisdaten allerdings enorm.
█ Übung 2
Erstelle ein PineScript, dass den aktuellen Eröffnungskurs und den Eröffnungskurs vor zwei Perioden im Chart jeweils als Linie anzeigt.
█ Lösung für Übung 1
Übung 1: Erstelle ein Skript mit dem Namen "Mein erster PineScript Indikator", welches eine durchgehende rote Linie des Eröffnungskurses einer jeden Periode einzeichnet.
//@version=5
indicator("Mein erster PineScript Indikator", overlay=true)
plot(open, title="Eröffnungskurs", color=color.red)