Pinescript Indicator for Stochastic Oscillator

Job ID: 38369662

Budget: $30 – $250 AUD

I am seeking a skilled developer to enhance my current Pinescript indicator for TradingView. The primary focus is on allowing the indicator to plot stochastic oscillator divergence under specific conditions. The ideal candidate will have a deep understanding of Pinescript as well as technical indicators in the financial markets.

Key Requirements:
- The indicator should consider high and low values, overbought and oversold levels, as well as bullish and bearish divergences.
- It should be designed to work on any timeframe.
- The project is on a tight timeline, so it needs to be completed as soon as possible.

Ideal Skillset:
- Proficient in Pinescript with a strong background in developing custom indicators for TradingView.
- Experience in working with stochastic oscillator divergence and implementing various trading strategies.

The successful candidate will be able to improve my existing script to meet the specific conditions outlined, and deliver within the given timeframe.

Here is the current iteration but it plots arrows even when there is no true divergence in price- it is sensitive and not specific- too many false positive signals.



var pivotHigh = float(na)

if close[2] < close[1] and close[1] > close
pivotHigh := close[1]
//label.new(bar_index,high,"PIVOTHIGH", size = size.small)


stochValue14 = input.source(title = "14/4", defval = close)

var validFirstLanePivotHigh = float(na)
var laneCheckerHigh = int(0)

if stochValue14 >= 80
validFirstLanePivotHigh := pivotHigh
laneCheckerHigh := 1
else if ta.crossunder(stochValue14,20)
laneCheckerHigh := 0



var stoch14PivotHigh = float(na)

if stochValue14[2] < stochValue14[1] and stochValue14[1] > stochValue14
stoch14PivotHigh := stochValue14[1]
//label.new(bar_index,low,"stochLow", size = size.small)
else
stoch14PivotHigh := 100


var currentHighestPivotHigh = float(na)

if laneCheckerHigh == 1 and pivotHigh > pivotHigh[1]
currentHighestPivotHigh := pivotHigh

var validLaneDivergenceHigh = float(na)

if currentHighestPivotHigh > validFirstLanePivotHigh[1] and laneCheckerHigh == 1 and stoch14PivotHigh <= 80
validLaneDivergenceHigh := close
label.new(bar_index,high+ta.atr(1), style = label.style_triangledown, size = size.tiny,color = color.red)
alert("14/3 SHORT",alert.freq_once_per_bar_close)





// PIVOT LOW ////



var pivotLow = float(na)

if close[2] > close[1] and close[1] < close
pivotLow := close[1]
//label.new(bar_index,low,"pivotLow", size = size.small)


var validFirstLanePivotLow = float(na)
var laneCheckerLow = int(0)

if stochValue14 <= 20
validFirstLanePivotLow := pivotLow
laneCheckerLow := 1
else if ta.crossover(stochValue14,80)
laneCheckerLow := 0



var stoch14PivotLow = float(na)

if stochValue14[2] > stochValue14[1] and stochValue14[1] < stochValue14
stoch14PivotLow := stochValue14[1]
//label.new(bar_index,low,"stochLow", size = size.small)
else
stoch14PivotLow := 0

var currentLowestPivotLow = float(na)

if laneCheckerLow == 1 and pivotLow < pivotLow[1]
currentLowestPivotLow := pivotLow


var validLaneDivergenceLow = float(na)

if currentLowestPivotLow < validFirstLanePivotLow[1] and laneCheckerLow == 1 and stoch14PivotLow >=20
validLaneDivergenceLow := close
label.new(bar_index,low-ta.atr(1), style = label.style_triangleup, size = size.tiny,color = color.green)
alert("14/3 LONG",alert.freq_once_per_bar_close)
Related categories: Pine Script Trading