基于1小时图表的5分钟图表的指数移动平均值

时间:2019-09-06 19:12:12

标签: javascript pine-script

我正在尝试使用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

1 个答案:

答案 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)