Pine script 在Tradingview平台上使用Pine中的标签功能获取数据时出现问题

Pine script 在Tradingview平台上使用Pine中的标签功能获取数据时出现问题,pine-script,Pine Script,我使用的函数是Tradingview上Pinescript的一部分。该函数确定系列的轴心点。我用它来收集RSI的轴心点。 功能正常;但是,我想做的是生成一个序列,该序列只生成了枢轴点或零(见下图1)。如果获取的数字(针对轴心点)是正确的,那么我应该能够在图表上绘制它们-并且-它们将在黄色标签下结束(参见下面的图片2) 背景 为此,我正在使用label.get_text(),如下所示: 这样做时,我遇到了以下问题: 我无法验证数据是否被正确分配 我需要将该值转换为浮点值。在执行类似于float(

我使用的函数是
Tradingview上
Pinescript
的一部分。
该函数确定系列的轴心点。我用它来收集RSI的轴心点。

功能正常;但是,我想做的是生成一个序列,该序列只生成了
枢轴点
或零
见下图1)。如果获取的数字(针对轴心点)是正确的,那么我应该能够在图表上绘制它们-并且-它们将在黄色标签下结束(参见下面的图片2

背景

为此,我正在使用
label.get_text()
,如下所示:

这样做时,我遇到了以下问题:

  • 我无法验证数据是否被正确分配

  • 我需要将该值转换为浮点值。在执行类似于
    float(label.get_text())的操作时,
    我遇到了一个错误

  • 第270行:无法使用参数调用“float”(系列[string]); 可用重载:float(const float)=>const float;浮动(输入 浮点)=>输入浮点;浮动(浮动)=>浮动;浮动(系列[浮动]=> 系列[浮动]

    问题

  • 如何在Pine中将字符串转换为浮点
  • 我想收集一系列的支点。理想情况下,最高点会有一个系列,最低点会有另一个系列
  • 任何帮助、提示或建议都将不胜感激

    短暂性脑缺血发作

    第一张图片

    第二张图片

    功能:创建轴点

    create_pivot_points(src, len, isHigh, _style, _yloc, _color, _textcolor, _offset, _plot_data) =>
        
        [ ... snip ...]
        
        pivot_src_len = len
    
        p = nz(src[pivot_src_len])
        
        isFound = true
        for i = 0 to len - 1
            if isHigh and src[i] > p
                isFound := false
    
            if not isHigh and src[i] < p
                isFound := false
    
        for i = len + 1 to 2 * len
            if isHigh and src[i] >= p
                isFound := false
    
            if not isHigh and src[i] <= p
                isFound := false
    
        if isFound
            if isHigh // printing the highest high pivots
            
            NOTE: I am using the command below label.XXXX to try to get information about the label
    
                pivotPointHighLabel = label.new(bar_index[pivot_src_len], int(p) + 10 , tostring(truncate(p,2)), style=_style, yloc=_yloc, color=noneColor, textcolor=noneColor)
    
                high_kdcLabel_XCoords := label.get_x( pivotPointHighLabel )
                high_kdcLabel_YCoords := label.get_y( pivotPointHighLabel )
                high_kdcLabel_Data    := float( label.get_text( pivotPointHighLabel ) ) <---- receiving error message here when attempting to change value from a STRING to a FLOAT
                high_kdcLabel_Bool    := high_kdcLabel_Data == 0.0 ? false : true
                
                if _plot_data //make the labels visible
                    label.set_color(pivotPointHighLabel, _color)
                    label.set_textcolor(pivotPointHighLabel, _textcolor)
                
            else    // printing the lowest low pivots (assume isLow has been activated)
    
        [ ... snip ...]
        
        // returning information below to calling code
        [high_kdcLabel_XCoords, high_kdcLabel_YCoords, high_kdcLabel_Data, high_kdcLabel_Bool, low_kdcLabel_XCoords, low_kdcLabel_YCoords, low_kdcLabel_Data, low_kdcLabel_Bool]
    

    很难从您的代码片段中找出问题,但是如果给定一个函数,如
    pivothhigh()
    with,则在找到一个时返回pivot的值,
    na
    ,否则,您可以使用如下代码:

    //@version=4
    study("", "", true)
    i_legs = input(4)
    // When a non `na` value is returned, use zero, otherwise use the value.
    pHi = nz(pivothigh(i_legs, i_legs))
    plot(pHi)
    
    当检测到枢轴时,代码生成序列,该序列位于实际枢轴之后,与大多数枢轴指示器绘制枢轴的方式相反,即,通过偏移它们
    i_支腿
    条:


    谢谢您的回复。是否有一种方法我想尝试一下-但是-如何打印该系列的值(到目前为止还没有听说调试器与Pinescript关联)?请参阅上的Pine用户手册。
    //@version=4
    study("", "", true)
    i_legs = input(4)
    // When a non `na` value is returned, use zero, otherwise use the value.
    pHi = nz(pivothigh(i_legs, i_legs))
    plot(pHi)