RicardoSantos

Function Mean Median Mode V0

EXPERIMENTAL:
Request for GLAZ
Functions to handle Mean, Median, Mode Calculation.
Script open-source

Nello spirito di condivisione promosso da TradingView, l'autore (al quale vanno i nostri ringraziamenti) ha deciso di pubblicare questo script in modalità open-source, così che chiunque possa comprenderlo e testarlo. Puoi utilizzarlo gratuitamente, ma il riutilizzo del codice è subordinato al rispetto del Regolamento. Per aggiungerlo al grafico, mettilo tra i preferiti.

Declinazione di responsabilità

Le informazioni ed i contenuti pubblicati non costituiscono in alcun modo una sollecitazione ad investire o ad operare nei mercati finanziari. Non sono inoltre fornite o supportate da TradingView. Maggiori dettagli nelle Condizioni d'uso.

Vuoi usare questo script sui tuoi grafici?
//@version=2
study(title='Function Mean Median Mode V0', overlay=true)

mean(_src, _length)=>
    _return = sum(_src, _length) / _length

median(_src, _length)=>
    _return = _src
    for _i = 0 to _length
        _return := _return == 0 ? _src : (_return + _src[_i]) / 2
    _return

mode_occurance(_value, _src, _length, _discrepancy_range)=>
    _current_value_occurance = 0
    for _i = 0 to _length
        if (_src[_i] >= _value - _discrepancy_range and _src[_i] <= _value + _discrepancy_range)
            _current_value_occurance := _current_value_occurance + 1
    _return = _current_value_occurance


mode(_src, _length, _discrepancy_range)=>
    _highest_occurence_value = 0
    _highest_occurance_number = 0
    for _i = 0 to _length
        _current_value_occurance = mode_occurance(_src[_i], _src, _length, _discrepancy_range)
        if (_current_value_occurance > _highest_occurance_number)
            _highest_occurance_number := _current_value_occurance
            _highest_occurence_value := _src[_i]
    _return = _highest_occurence_value

l = input(20)
r = input(0, type=float)

plot(series=mean(close, l), title='Mean', color=blue)
plot(series=median(close, l), title='Median', color=red)
plot(series=mode(close, l, r), title='Mode', color=black)