我正在尝试使用Pine Script编写用于交易视图的指标。
我想根据1小时图表编写EMA,并在5分钟图表中使用它。包括8和34交易期(2 EMA)。那可能吗?
当我在5分钟的图表中交易时,请使用fullfull来查看更高的趋势。
这是我第一次尝试编写代码。
不幸的是,我没有时间去学习它。
如果有人可以帮助我解决该问题,那就太好了。
我试图找到一些与google相关的指南,但是关于如何编写EMA的方法只有一些。
我发现的一切都是:
// @ version = 3
//在pine脚本的开始,我们总是声明要使用的版本, //您可以看到,上面我们使用的是pine脚本的版本3 //必须在脚本开始时注释pine脚本中的@version字
study(“在pinescript中编码ema”,overlay = true)
//这是我们定义研究的地方, //密码系统中的学习功能用于告诉pine脚本我们将建立指标 //使用“ overlay = true”,让pine脚本知道您要将图表中的图覆盖到 //烛台图。
//现在,我们定义一个名为pine_ema的EMA函数,带有2个参数x和y //此pine_ema函数的唯一目的是返回当前蜡烛收盘价的当前ema pine_ema(src,time_period)=>
alpha = 2 / (time_period + 1)
// we have defined the alpha function above
ema = 0.0
// this is the initial declaration of ema, since we dont know the first ema we will declare it to 0.0 [as a decimal]
ema := alpha * src + (1 - alpha) * nz(ema[1])
// this returns the computed ema at the current time
// notice the use of : (colon) symbol before =, it symbolises, that we are changing the value of ema,
// since the ema was previously declared to 0
// this is called mutable variale declaration in pine script
ema
// return ema from the function
_10_period_ema = pine_ema(关闭,10) // //在这里,我们只是调用了一个函数,其src为close且time_period值为10
图(_10_period_ema,颜色=红色,transp = 30,线宽= 2) //现在绘制_10_period_ema
答案 0 :(得分:0)
您可以在不到1小时的任何图表上使用它:
//@version=4
study("", "Emas 1H", true)
fastLength = input(8)
slowLength = input(34)
ema1hFast = security(syminfo.tickerid, "60", ema(close, fastLength))
ema1hSlow = security(syminfo.tickerid, "60", ema(close, slowLength))
plot(ema1hFast)
plot(ema1hSlow, color = color.fuchsia)
[EDIT 2019.09.07 08:55 — LucF]
//@version=4
study("", "Emas 1H", true)
fastLength = input(8)
slowLength = input(34)
smooth = input(false, "Smooth")
smoothLen = input(4, "Smoothing length", minval = 2)
ema1hFastRaw = security(syminfo.tickerid, "60", ema(close, fastLength))
ema1hSlowRaw = security(syminfo.tickerid, "60", ema(close, slowLength))
ema1hFastSm = ema(ema(ema(ema1hFastRaw, smoothLen), smoothLen), smoothLen)
ema1hSlowSm = ema(ema(ema(ema1hSlowRaw, smoothLen), smoothLen), smoothLen)
ema1hFast = smooth ? ema1hFastSm : ema1hFastRaw
ema1hSlow = smooth ? ema1hSlowSm : ema1hSlowRaw
plot(ema1hFast)
plot(ema1hSlow, color = color.fuchsia)