RicardoSantos

Function Highest/Lowest

Function for highest() and lowest()
Versionshinweise: updated code for V4, code in cooperation with @LucF.
theres 2:
1. version that supports high length values.
2. error's with high length values, but maps initial range(bar_index=0 to length).
Von Favorisierten Skripten entfernen Zu Favorisierten Skripten hinzufügen

Kommentare

This is great.. as I've noticed in version 3.. highest() and lowest() do not like taking in variables for length.. often results in:

line 34: Cannot call `highest` with arguments (series, series); available overloads: highest(series, integer) => series; highest(integer) => series;
+9 Antworten
These two pieces of code are probably the most used functions in Pine outside the built-ins, so thanks for them, Ricardo.
+3 Antworten
@LucF, discovered it today.... but was looking for them all my life. True story
Antworten
A lowest()/highest() function without the ability to input a series is like a 3-legged horse. Thank you, Ricardo, for supplying the fourth leg!
Antworten
Thanks @RicardoSantos and @LucF, you guys are unstoppable!
Antworten
Hi Ricardo, for some reason your Lowest function is giving a different result to the pinescript one in this calculation.

val = linreg(hlc3 - avg(avg(highest(high, lengthKC), _lowest(low, lengthKC)), sma(close, lengthKC)), lengthKC,0)

Any ideas?
Antworten
RicardoSantos DannyBaker
you will need to provide the code for the function..
Antworten
DannyBaker RicardoSantos
@RicardoSantos, I'm using you lowest funcion its just named differantly. Here

_lowest(_src, _length)=>
_adjusted_length = _length < 1 ? 1 : _length
_value = _src
for _i = 0 to (_adjusted_length-1)
_value := _src <= _value ? _src : _value
_return = _value
Antworten
DannyBaker DannyBaker
@DannyBaker, its weird because it is sometimes the same and sometimes not...
Antworten
RicardoSantos DannyBaker
@DannyBaker,
//@version=4
study("My Script")
lengthKC = 50

_lowest(_src, _length)=>
    _adjusted_length = _length < 1 ? 1 : _length
    _value = _src
    for _i = 0 to (_adjusted_length-1)
        _value := _src[_i] <= _value ? _src[_i] : _value
    _return = _value

val0 = linreg(hlc3 - avg(avg(highest(high, lengthKC), _lowest(low, lengthKC)), sma(close, lengthKC)), lengthKC,0)
val1 = linreg(hlc3 - avg(avg(highest(high, lengthKC), lowest(low, lengthKC)), sma(close, lengthKC)), lengthKC,0)

plot(val0)
plot(val1)

this plots correctly for me
Antworten
Startseite Aktien-Screener Forex-Screener Krypto-Screener Wirtschaftskalender So funktioniert es! Chartmerkmale Preise Einen Freund empfehlen Hausregeln Hilfe Center Webseite & Brokerlösungen Widgets Charting Lösungen Lightweight Charting Library Blog & News Twitter
Profil Profileinstellungen Konto und Abrechnung Angeworbene Freunde Coins Meine Support Tickets Hilfe Center Veröffentlichte Ideen Followers Ich folge Private Nachrichten Chat Abmelden