pine-script - 如何通过检查蜡烛 [1] 的信号将当前蜡烛上的最后一个开盘或收盘绘制为一个圆圈
问题描述
我一直在研究一种用于 pinescript 的算法,并且我被一些与假设进入该职位相关的逻辑所困扰。
首先,牛市图和熊市图是真或假,这是图表上绘制多头和空头信号的地方。关于我的策略,一旦绘制出多头/空头信号,您就等待价格超过收盘价,多头/空头取决于红/绿蜡烛
如何创建一个语句来检查上一个蜡烛上是否有信号,如果为真,则根据最后一个收盘价绘制一个圆圈。这仅仅是为了帮助算法的手动交易方面。
解决方案
您可以创建一个系列,在每个柱上保存您的触发结果。
然后,您可以通过使用构造来引用前一个柱上的触发值,并在当前柱上 [1]
绘图。close[1]
当您不希望绘制系列中的值时,可以使其绘制na
值,如下所示:
signal_on_previous_candle ? previousClose : na
是?:
一个三元运算符,它是一个简短的if-then-else
语句。
上面的代码也可以写成
if signal_on_previous_candle
previousClose
else
na
我想这就是你要找的
//@version=4
study("bullPlot", overlay=true)
var bool signal_on_candle = false
signal_trigger_time = timestamp(year(timenow), month(timenow), dayofmonth(timenow), 11, 30, 0)
signal_triggered = time == signal_trigger_time
if signal_triggered
signal_on_candle := true
else
signal_on_candle := false
signal_on_previous_candle = signal_on_candle[1]
previousClose = close[1]
plot(signal_on_previous_candle ? previousClose : na, title="Dot",style=plot.style_circles, color=color.yellow, linewidth=5)
此代码可能更短,但仅用于说明目的。
推荐阅读
- node.js - 将管道(exiftool 和 imagemagick)bash 命令解构为单个命令
- php - ajax 加载简码作为响应
- javascript - Discord.js 嵌入标题和缩略图未设置
- reactjs - 我的路线没有从函数传递到 APP
- azure - Azure ExpressRoute 网关区域冗余网关 ARM Tempate
- java - 在法语 java apache 中配置双变音器
- javascript - 如何修复 TypeError:_s 不是函数错误
- r - 为什么我会收到未使用参数的错误消息?
- c# - .NET Core Newtonsoft JSON - 序列化十进制而不带尾随零
- python - 根据班级和 Int 奖励分数