1. Februar 2024 (Vor 10 Monaten)

Aktienkennzahlen Indikator für TradingView entwickeln

4 Min Lesezeit

In diesem Artikel zeige ich dir, wie du einen Indikator für TradingView entwickeln kannst. Als Beispiel verwende ich einen Indikator, der die wichtigsten Kennzahlen für die Analyse von Aktien anzeigt.

Aktienkennzahlen Indikator TradingView

Aufbau des Indikators

Der Indikator besteht aus drei Teilen. Zum einen gibt es die eigentliche Berechnung der Kennzahlen und zum anderen die Darstellung der Kennzahlen im Chart. Weiterhin möchten wir dem Nutzer die Möglichkeit geben, die Werte und Schwellen für die Kennzahlen individuell anzupassen.

Der Aufbau des Indikators ist wie folgt:

  1. Definition der Eingabeparameter
  2. Berechnung der Kennzahlen
  3. Darstellung der Kennzahlen im Chart

Definition der Eingabeparameter

Zunächst definieren wir den Indikator und die Eingabeparameter. Die Eingabeparameter sind die Werte, die der Nutzer individuell anpassen kann. In unserem Fall sind das die Schwellenwerte für die Kennzahlen.

//@version=5
indicator("Test Titel", shorttitle="Test", overlay=true)

// Inputs
adrLength = input(defval=20, title="ADR period")
adrThresh = input(defval=3, title="ADR Threshold") 
advLength = input(defval=21,title="ADV period")
dvolThresh = input(defval=50,title="$Vol Threshold in M")
tableOrientation = input.string(defval = "vertical", title = "Orientation of Dashboard", options = ["vertical", "horizontal"])
tablePosition = input.string(defval= position.top_right, options = [position.bottom_right, position.bottom_left, position.top_right, position.top_left])
  • adrLength definiert die Anzahl der Tage, die für die Berechnung der Average Daily Range (ADR) verwendet werden.
  • adrThresh ist der Schwellenwert für die ADR.
  • advLength definiert die Anzahl der Tage, die für die Berechnung des Average Daily Volume (ADV) verwendet werden.
  • dvolThresh ist der Schwellenwert für das ADV.
  • tableOrientation definiert die Ausrichtung des Dashboards.
  • tablePosition definiert die Position des Dashboards im Chart.

Berechnung der Kennzahlen

Exemplarisch zeige ich dir die Berechnung der Average Daily Range (ADR) und der prozentualen Veränderung. Die Berechnung der anderen Kennzahlen erfolgt analog.

// Definitions - calculated values
adrValue = request.security(syminfo.tickerid, 'D', ta.sma((high/low-1)[1]*100,adrLength))
changeValue = request.security(syminfo.tickerid, 'D', (close/close[1]-1)*100)

Darstellung der Kennzahlen im Chart

Die Darstellung der Kennzahlen erfolgt in einem Dashboard. Hierfür verwenden wir die Funktion table.new. Die Funktion table.new erwartet als Parameter die Position des Dashboards im Chart, die Anzahl der Zeilen und Spalten sowie die Ausrichtung des Dashboards.

// Design Variables for Table
var numberColums = 6 // Standardinitialisierung
var numberRows = 1 // Standardinitialisierung

if tableOrientation == "vertical"
    numberColums := 1
    numberRows := 6
    
var table t = table.new(tablePosition, numberColums, numberRows, border_width = 3)
posColor = color.rgb(38, 166, 154)
negColor = color.rgb(240, 83, 80)
neutralColor = color.new(#999999, 0)
lightTransp = 90
avgTransp = 80
heavyTransp = 69

// Fill Table with ADR
f_fillCellADRValue(_table, _column, _row, _value, _threshold = 0) =>
    _c_color = _value >= _threshold ? posColor : negColor
    _transp = _value >= _threshold ? lightTransp : heavyTransp
    _cellText = str.tostring(_value, "0.00") + "%\n" + "ADR"
    
    table.cell(_table, _column, _row, _cellText, bgcolor = color.new(_c_color, _transp), text_color = _c_color)

// Fill Table with Change
f_fillCellchangeValue(_table, _column, _row, _value, _threshold = 0) =>
    _c_color = _value >= _threshold ? posColor : negColor
    _transp = _value >= _threshold ? lightTransp : heavyTransp
    _cellText = str.tostring(_value, "0.00") + "%\n" + "Chg"
    table.cell(_table, _column, _row, _cellText, bgcolor = color.new(_c_color, _transp), text_color = _c_color)

if barstate.islast
    if tableOrientation == "horizontal"
        f_fillCellADRValue(t, 0, 0, adrValue, adrThresh)
        f_fillCellchangeValue(t, 1, 0, changeValue)
    else
        f_fillCellADRValue(t, 0, 0, adrValue, adrThresh)
        f_fillCellchangeValue(t, 0, 1, changeValue)

Trading-Grundlagen in 7 Tagen

2h GesamtFür Anfänger
Kostenfrei starten

Zusammenfassung

In diesem Artikel hast du gelernt, wie du einen Indikator für TradingView entwickeln kannst. Als Beispiel haben wir einen Indikator entwickelt, der die wichtigsten Kennzahlen für die Analyse von Aktien anzeigt. Den fertigen Indikator kannst du dir hier¹ anschauen und kostenlos nutzen.

Trading-Grundlagen in 7 Tagen

2h GesamtFür Anfänger
Kostenfrei starten

Ressourcen


¹: Hierbei handelt es sich um einen Werbe- oder einen Affiliate-Link. Wenn du auf diesen Link klickst, etwas kaufst oder abschließt, erhalten wir (je nach Anbieter) eine Provision. Dir entstehen dadurch keine Mehrkosten und du unterstützt unser Projekt. Wir danken dir für deinen Support.

Bereit für deinen Trading-Start?

Starte jetzt mit unserem kostenlosen 7-Tage-Kurs und lerne die Grundlagen des profitablen Tradings.

Kostenlosen Kurs starten