RicardoSantos

[RS]Neo Wave V0

5284瀏覽
490
EXPERIMENTAL: Request for IvanLabrie.
Method for reading Neo Wave's.
note: some issues arent possible to work around/fix due to limitations in pinescript.
從常用腳本中移除 新增至常用腳本
study(title='[RS]Neo Wave V0', overlay=true)
SHOW_TF = input(title='Display Timeframe Box:', type=bool, defval=true)
timeframe = input(title='Timeframe:', type=string, defval='D')

shift = timeframe == 'D' and period == '720' ? 2 :
        timeframe == 'D' and period == '360' ? 4 :
        timeframe == 'D' and period == '240' ? 6 :
        timeframe == 'D' and period == '180' ? 8 :
        timeframe == 'D' and period == '120' ? 12 :
        timeframe == 'D' and period == '60' ? 24 :
        timeframe == 'D' and period == '45' ? 32 :
        timeframe == 'D' and period == '30' ? 48 :
        timeframe == 'D' and period == '15' ? 96 :
        timeframe == 'D' and period == '5' ? 288 :
        timeframe == 'D' and period == '3' ? 480 :
        timeframe == 'D' and period == '1' ? 1440 :
        timeframe == 'W' and period == '720' ? 10 :
        timeframe == 'W' and period == '360' ? 20 :
        timeframe == 'W' and period == '240' ? 30 :
        timeframe == 'W' and period == '180' ? 40 :
        timeframe == 'W' and period == '120' ? 60 :
        timeframe == 'W' and period == '60' ? 120 :
        timeframe == 'W' and period == '45' ? 160 :
        timeframe == 'W' and period == '30' ? 240 :
        timeframe == 'W' and period == '15' ? 480 :
        timeframe == 'W' and period == '5' ? 1440 :
        timeframe == 'W' and period == '3' ? 2400 :
        timeframe == 'W' and period == '1' ? 7200 :
        timeframe == 'M' and period == '720' ? 40 :
        timeframe == 'M' and period == '360' ? 80 :
        timeframe == 'M' and period == '240' ? 138 :
        timeframe == 'M' and period == '180' ? 160 :
        timeframe == 'M' and period == '120' ? 240 :
        timeframe == 'M' and period == '60' ? 480 :
        timeframe == 'M' and period == '45' ? 640 :
        timeframe == 'M' and period == '30' ? 960 :
        timeframe == 'M' and period == '15' ? 1920 :
        timeframe == 'M' and period == '5' ? 0 :
        timeframe == 'M' and period == '3' ? 0 :
        timeframe == 'M' and period == '1' ? 0 :
        0

tf_counter = change(time(timeframe))!=0 ? 1 : tf_counter[1]+1
//plot(tf_counter)

tf_high = not SHOW_TF ? na : security(ticker, timeframe, high)
tf_low = not SHOW_TF ? na : security(ticker, timeframe, low)
tf_hp = plot(title='TF High', series=tf_counter >= shift ? na : tf_high, style=circles, color=black, linewidth=1)
tf_lp = plot(title='TF Low', series=tf_counter >= shift ? na : tf_low, style=circles, color=black, linewidth=1)
fill(title='Time Box', plot1=tf_hp, plot2=tf_lp, color=blue, transp=90)
//hl = high >= tf_high ? high : low <= tf_low ? low : na
//plot(hl)
hh = tf_counter == 1 ? high : high >= hh[1] ? high : hh[1]
ll = tf_counter == 1 ? low : low <= ll[1] ? low : ll[1]
//plot(hh, color=black)
//plot(ll, color=black)
hhc = change(hh)>0 ? n : hhc[1]
llc = change(ll)<0 ? n : llc[1]


direction = tf_counter == 1 ? hhc[1] < llc[1] ? hh[1] : ll[1] : tf_counter == shift ? hhc[shift] < llc[shift] ? ll[shift+1] : hh[shift+1] : na
plot(title='Wave', series=direction, color=direction>fixnan(direction[1])?green:maroon, linewidth=2, offset=-shift)

評論

Great!
Wave charts without so much hassle. It's pretty great, shame it can't be done 100% correctly.
+2 回覆
Nice one! Reading from their site (http://www.neowave.com/info-difference.asp) it reads that they make heavy use of "golden-ratio" constant. Im currently making experimentation with this kind of "morphic numbers" with lot of attention more over the "padovan sequence" rather than the fibonacci one. For them, they tend to use the "Plastic Number" constant. Here you could find some great information about the logic behind this "morphic numbers" and their relation to -Fractal Nature- http://www.infovis.net/printMag.php?num=145&%3Blang=2
Here is the two algebraic constant calculations that I'm using in order to experiment with my own algo's if you like to play with them:

// PHI Constant with Negative
_PHI = (1+sqrt(5))/2 // Phi Number (Fibonacci Seq.)
_NegPHI = (1-sqrt(5))/2

// Plastic Number with Negative
nroot(index,number) =>
cond_r = index == 0 or number == 0 or number < 0
If_True = 0
If_False = (exp((1/index) * log(number)))
iff(cond_r, If_True, If_False)
_PN = (nroot(3,(108 + 12*sqrt(69))) + nroot(3,(108 - 12*sqrt(69))))/6 // Plastic Number (Podovan Seq.)
_NegPN = (nroot(3,(108 + 12*sqrt(69))) - nroot(3,(108 - 12*sqrt(69))))/6
+1 回覆
@RicardoSantos are you still active? Are you able to elaborate on "note: some issues arent possible to work around/fix due to limitations in pinescript."

Thank you Noel
回覆
RicardoSantos kitdoctor
@kitdoctor, my guess would have been to do with repaint issues, just take consideration that this is a 5y old script >.<
回覆
kitdoctor RicardoSantos
@RicardoSantos, thanks for responding. Would you be able to elaborate on "...repaint issues.."? I know very little about pinescript. Do you happen to know if your script is the script referred to in this article on NEoWave chart construction https://www.liteforex.com/blog/for-professionals/neo-wave-theory-part-1-rules-of-creating-charts/ In this article it says "There's even a simpler way to construct the chart using the NeoWave V0 indicator, which can be easily found in the Trading View library."
回覆
RicardoSantos kitdoctor
@kitdoctor,
1: use of security to draw time box,
2: looks like it, only one in the library listed under neo wave tag
回覆
Can you make volume wave indicator based on this?
回覆
首頁 股票篩選器 外匯篩選器 加密貨幣篩選器 全球財經日曆 如何運作 圖表功能 價格 推薦朋友 網站規則 幫助中心 網站 & 經紀商解決方案 小工具 圖表解決方案 輕量圖表庫 部落格 & 新聞 推特
概覽 個人資料設定 賬戶和賬單 推薦朋友 代幣 我的客服工單 幫助中心 發表的想法 粉絲 正在關注 私人訊息 在線聊天 登出