【问题标题】:How to plot Higher time frame indicator using end-of-day value of Lower time frame indicator ? [Pine Script] /[Tradingview]如何使用较低时间框架指标的日终值绘制较高时间框架指标? [Pine 脚本] /[Tradingview]
【发布时间】:2022-10-13 19:32:39
【问题描述】:

我写了一个这样的脚本(Pine script / Tradingview):

//@version=5
indicator("Normalized (ATR - wise) Relative strength of a stock compared to an index (daily close comparison)", "Normalized (ATR - wise) Relative strength of a stock",precision = 2)
//Input
comparativeTickerId = input.symbol("VNINDEX",title = "Comparative Symbol" )
smoothing = input.string(title="Smoothing", defval="RMA", options=["RMA", "SMA", "EMA", "WMA"])
lengthFastMA = input.int(5,minval=1, title="Fast MA")
lengthSlowMA = input.int(25,minval=1, title="Slow MA")

//Calculation

baseSymbol = request.security(syminfo.tickerid, "60", close)   
fixSymbolBar = request.security(syminfo.tickerid, "D", close[1],barmerge.gaps_off, barmerge.lookahead_on) 
atr_baseSymbol = request.security(syminfo.tickerid, "60", ta.atr(25)) 
normalizeSymbolBar = (baseSymbol-fixSymbolBar)/atr_baseSymbol

comparativeSymbol = request.security(comparativeTickerId, "60", close)   
fixComparativeSymbolbar = request.security(comparativeTickerId, "D", close[1],barmerge.gaps_off, barmerge.lookahead_on)   // correct
atrComparativeSymbol = request.security(comparativeTickerId,"60",ta.atr(25))  
normalizeComparativeSymbol = (comparativeSymbol - fixComparativeSymbolbar)/atrComparativeSymbol

ma_function(source, length) =>
    switch smoothing
        "RMA" => ta.rma(source, length)
        "SMA" => ta.sma(source, length)
        "EMA" => ta.ema(source, length)
        => ta.wma(source, length)
    
res = (normalizeSymbolBar - normalizeComparativeSymbol)*100

 //plot

plot(res,style = plot.style_columns, color = res > 0 ? color.blue : color.orange)
plot(ma_function(res,lengthFastMA), color = ma_function(res,lengthFastMA) > 0 ? #0c5847 : color.red, title = "Fast MA", linewidth = 2)
plot(ma_function(res,lengthSlowMA), style =  plot.style_area, title = 'Slow MA', color = color.gray)

简而言之,该指标计算股票的标准化收益与指数的标准化收益之间的差异。 现在我想使用 ta.ema(res,lengthFastMA) 在 60 分钟时间范围内的日终值来绘制每日时间范围内的指标。例如,假设 2022 年 6 月 30 日下午 23 日柱线在 60 分钟时间范围内的 ta.ema(res,lengthFastMA) 值为 50,这使得 2022 年 6 月 30 日每日时间范围内的指标值也为 50。

任何人都可以帮助解决这个问题吗?太感谢了

【问题讨论】:

  • 感谢 Pinecoder 电信组,我已经解决了这个问题,如果有人想要答案,请联系我。谢谢你们

标签: trading tradingview-api pinescript-v5 indicator


【解决方案1】:
my_timeframe = input.timeframe(title="Custom Timeframe", defval="1", group="Strategy parameters")
    
changed_data = request.security(syminfo.tickerid, my_timeframe, graph_data, gaps=barmerge.gaps_on)
    
plot(changed_data , title = "Your custom graph", color=color.orange)

对于版本 5:定义时间范围输入以允许从设置部分进行自定义,请求使用与您的视图默认时间范围不同的时间范围进行安全更新,显示图表。

【讨论】:

    猜你喜欢
    • 2022-01-13
    • 1970-01-01
    • 1970-01-01
    • 2022-11-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-23
    • 2022-01-27
    • 1970-01-01
    相关资源
    最近更新 更多