#pine-script
#сценарий pine
Вопрос:
Как я могу использовать более старую скорость закрытия в своем коде сценария Pine?
//@version=5
indicator('FRG 1', overlay=true)
L_close = close[2]
hline(L_close)
Ошибка: не удается вызвать ‘hline’ с аргументом ‘price’ =’L_close’. Использовался
аргумент типа ‘series float’, но ожидается ‘input float’
Ответ №1:
Ошибка говорит о том, что вы не можете использовать series
переменную. Функция hline()
принимает только константы ( input
значения и литералы), в то время close
как значение меняется через столбцы, поэтому горизонтальная линия не может быть нанесена.
Поэтому вам нужно plot
вместо этого использовать функцию:
//@version=5
indicator('FRG 1', overlay=true)
L_close = close[2]
plot(L_close)
https://www.tradingview.com/pine-script-docs/en/v5/concepts/Plots.html
Комментарии:
1. Спасибо, но он показывает непрерывную линию, и мне нужно создать только одну горизонтальную линию на основе предыдущей скорости закрытия свечи
Ответ №2:
Если вы хотите нарисовать плавающее значение, я бы тоже выбрал plot, но если вы хотите что-то другое, кроме непрерывной линии, вам придется выполнить дополнительные настройки.
Поскольку я не уверен, чего именно вы пытаетесь достичь (пытаетесь ли вы нарисовать горизонтальную линию для одного бара при определенных условиях или вам нужна линия для предыдущего закрытия для каждой свечи?), Я приведу пример из одного из моих сценариев:
plot(strategy.position_size != 0 ? tradeStopPrice : na, title = "Trade Stop Price", color = color.red, style = plot.style_linebr)
Там есть предложение if, которое определяет, когда оно будет отображаться, а когда нет.
Если я нахожусь в сделке, он отобразит цену остановки сделки красным цветом, если я этого не сделаю, он ничего не отобразит.
Тогда «style = plot.style_linebr» означает, что он не будет заполнять пустые части (na), чтобы попытаться создать непрерывную линию (попробуйте без нее, чтобы увидеть разницу)
В зависимости от того, чего вы хотите достичь, вы можете немного поработать с этим.