0

我是使用 TradingView 的 Pinescript 的新手,很难找到一个易于理解的脚本示例。我习惯了 Java/C++ 和 Pinescript 是非常不同的。我正在尝试构建一个脚本来扫描股票图表并寻找超过 5% 的差距。这是我要创建的伪代码:

if(当日开盘价与前一日收盘价差 > 5%) { 绘制绿色圆圈或红色圆圈,取决于差距是向上还是向下}

先感谢您!

4

2 回答 2

2

Pine 脚本易于使用;最初它有点难以理解,一旦开始使用它,它就变得对制定逻辑非常有用。

在您的情况下,您也可以使用条件运算符来检测这一点。这将在版本 2 中工作。版本 3 有点不同

//version =2
study(title ="Experementing the code ",overlay =true ,shorttitle ="testing")  //overlay=false to get this down of the chart as seperate layout
plotchar( (close-close[1])/close[1] >0.05 ? 1:na ,char =' ',text ="plot\nTest",textcolor=red,size.huge)

您可以使用 ?: 运算符代替 if 条件来完成这项工作。

请确保 plotchar(.....) 进入同一行,而不是单独的行。

Pine 有很多很酷的功能可供使用,并帮助我制定了自己的策略。教程真的很好。

请注意,如果您不将 char='' 放在上面,它将打印 STAR 作为默认字符。即使你把 char='testtest' 放在字符中,它也会打印唯一的 t 。

于 2018-08-17T08:11:05.570 回答
2

你最好的办法是通过他们的教程

如果您有任何编程背景,那么在这种语言中会有一些可能性选择,所以阅读它可能是一个好主意(它不是那么多)。例如

  • open是当前柱线开盘价,但是open[1]前一根柱线开盘价(因此应读作open[current_index-1]
  • 你不能plot在函数体内使用调用

至于你的问题(未经测试,但应该足够接近以给出正确的想法):

study(title='gap detector', overlay=true)

//plotshape(<condition>, <options>) // condition must be true to plot something

is_percentage_increase = if (close-close[1])/close[1] > 0.05
    true
plotshape(is_percentage_increase, style=shape.circle, color=green)
于 2018-04-17T17:05:51.107 回答