- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我刚刚开始使用 PineScript 进行编码,经过多次尝试,我想寻求帮助。
我试图计算与最后一次多头头寸入场相比发生了多少根柱线。这个问题(或类似的问题)已被问过几次,但我发现barssince()并不能解决问题。简单来说,它根本不起作用。
我想测试的策略如下:如果价格比之前的高点下跌 2.5%,我想平掉多头头寸。前一个高点不需要在固定长度的窗口中评估(例如,在最后 10 个柱左右),但需要从完成多头入场的柱开始评估。
我尝试平掉多头头寸(以其 ID“买入”开仓),如下所示:
npastdays=barssince(strategy.position_size > 0)
prevHigh=highest(close, npastdays)
if (close < 0.975*prevHigh)
strategy.close("buy")
我什至尝试了其他方法,例如,在开仓时将“op”变量设置为非零值,而不是使用“change(op > 0)”或类似的“crossover(op, value) )”。无论哪种方式,“npastdays”变量都不会计算,它保持未定义状态(n.d.)。
编辑#1:当开多头仓位时,我再次尝试设置 op:=6.5(任何数字都可以,或者 bool 值),然后:
npastdays=barssince(op==6.5)
if (npastdays!=0) // else, I just opened a long position
prevHigh=highest(close, npastdays)
if (close < 0.975*prevHigh)
strategy.close("buy")
我得到了一个不同的错误,“Pine无法确定系列的引用长度。尝试在研究或策略函数中使用max_bars_back。”。仍然没有解决。
编辑#2:当长条目完成时,我尝试使用内置的“bar_index”和指令“posLong := bar_index”,但没有成功。但是,该代码仅适用于固定数量的柱:即使我 try catch 负 nPastDays 值(其第一个值似乎是 -1096 但 posLong 应该 > posLong[1]...)
// Determine trail stop loss prices
float longStopPrice = 0.0
int nPastDays = 4
float prevHigh = 0.0
longStopPrice := if (strategy.position_size > 0)
nPastDays := posLong - posLong[1]
if nPastDays > 0
prevHigh := highest(close, nPastDays)
else
prevHigh := highest(close, 4)
prevHigh * 0.975
// stopValue = close * (1 - longTrailPerc)
// max(stopValue, longStopPrice[1])
else
0
// Submit exit orders for trail stop loss price
if (strategy.position_size > 0)
strategy.exit(id="buy", stop=longStopPrice)
解释器给出有关负 nPastDays 值的错误,或者在建议使用 max_bars_back 时给出错误。但我已经在策略声明中设置了“max_bars_back=50”。仍然没有解决。
最佳答案
通过 barssince 可以找到您想要的快捷方式.
ta.barssince(strategy.position_size == 0)
关于pine-script - 如何计算自 `strategy.entry` 以来的柱数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66846409/
假设我想将 AO 指标作为 Pine 脚本标准的一部分。松树脚本如何访问指标?策略或研究能否导入由另一个 Pine 脚本或内置指标生成的系列? 最佳答案 如果指标不是由内置函数提供,您将无法访问它们。
我正在尝试换行,因为它太长,无法在一个屏幕上看到所有内容: strategy.entry ("Long Continuation", true, 1, when = FastMA S
我想将 input.resolution 转换为以小时表示的整数 从 input() 函数中捕获的函数参数 resolution 下面是自定义函数 f_getLookbackNumber(resolu
我在任何地方都找不到这个问题的答案;甚至在官方文档中也没有。我已经尝试自己编写代码,但它不起作用,所以它可能无法实现。 在下面的示例中,您可以使用条件颜色进行绘图: //STACKED EMAs
我正在尝试编写一个脚本来获得 9 个级别的江恩平方。我已经完成了另一种语言,但无法理解此处的 pine 脚本,它说无法修改函数中的全局变量。有什么解决方案可以获取这里的值是我的脚本 //@versio
//@version=4 study(shorttitle="try", title="line", overlay=true, resolution="") line.new(x1=bar_inde
我需要在特定时间平仓,例如我想在 15:15 平仓。 pine 脚本中是否有内置函数来检查时间? 最佳答案 方法一 这是一个使用简单函数的研究,该函数在常规 session 的第一个柱上触发 TRUE
嘿,我正在尝试将 strategy.entry 时的收盘价保存到一个变量中,以便稍后我可以使用它来退出。 if condition strategy.entry("long", true)
数组在 PineScript 中不可用。 有解决办法吗?有没有人开发过代码,作为数组使用? 我需要它做什么?我想计算每条趋势线或 S/R 水平的触及次数。 最佳答案 要实现计数器,您可以创建一个变量,
有没有办法创建一个指标来反射(reflect) Pine Script 中股票的当前价格?我需要这个指标,因为我需要在蜡烛关闭之前输入订单(当有特定的交叉时)并且回测数据是逐条提供的。我认为一个指标可
我正在尝试创建一个 TradingView 研究,从当前柱上的交叉线到前一个柱上的交叉线绘制一条线,其中前一个柱小于设置的最大后柱数。 我只想绘制负斜率的线(即之前的交叉发生在较高的值),并且我也不希
是否可以在 PineScript 中将 String 转换为 Float 或 int? 我们可以使用 str.tostring 将 float 转换为 string,但是有没有办法将 string 转
想要检测用户是否开启了深色模式,或者是否在交易 View 图表中设置了黑色背景。我的脚本使用黑线是因为它被调整为白色背景图表,当有人使用深色背景时,他们看不到很多脚本元素。 有没有办法检测图表背景颜色
TradingView 上有一个 Pine Script 代码,我们有 2 个获利水平和 2 个止损水平:tradingview.com .当第一个获利实现时,平仓一半,第一个止损移动到入场水平(盈亏
这段代码用//@version=2 编译就像一个魅力: //@version=2 study("My Script") Factor=input(3, minval=1,maxval = 100) P
我是 TradingView Pine Script 的 super 新手,我没有找到合适的引用资料来理解 := 之间的区别。和 =运营商。 有人有引用或描述吗? 提前致谢 最佳答案 = is use
我正在尝试使用基于网络的 TradingView平台制作我自己的自定义脚本来显示各种金融市场属性。这可以通过它的 pine 来实现脚本引擎/解释器。 目前,我试图在主图表或指标图表上简单地显示一条垂直
寻找解决方法,不能以这种方式使用 plotshape,因为它在本地范围内不起作用。 //@version=3 study("MA test ", overlay=true) FastMA = sma(
我正在尝试实现一个简单的策略,当我收到买入信号时进入多头,然后我想获得多笔利润并设置止损: 以 1% 的利润出售 25% 的数量 以 2% 的利润出售 25% 的数量 以 3% 的利润出售 25% 的
如何以柱开盘价输入策略? 当我使用“process_orders_on_close=true”时,策略入场发生在当前柱的收盘时,当我使用“process_orders_on_close=false”时
我是一名优秀的程序员,十分优秀!