Aktienkennzahlen Indikator für TradingView entwickeln

1. Februar 2024 (Vor 2 Monaten)

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)

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.

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.

Trading Snippets

Trage dich jetzt ein und verbessere dein Trading! Du erhältst exklusive Einblicke in Felix' Trading, hochwertige Insights zur Tradingpsychologie und direkt umsetzbare Tipps zur Optimierung deiner Produktivität im Trading – und das direkt in dein Postfach. Du kannst dich jederzeit wieder abmelden.

WMT Blog

Die neuesten Einträge und Updates, direkt von WirmachenTrader

Weiterlesen