EMA
Source
https://github.com/quadcode-tech/quadcodescript-library/blob/master/averages/ma_ema.lua
Syntax Format
ema(source, period)
Overview
EMA
(Exponential Moving Average) belongs to the MA family, which gives more weight to the recent price changes, making it more suitable for short-term strategies. The function returns the exponential moving average of source for the period bars.
Parameters
Parameter | Type | Purpose |
---|---|---|
source | series | Input series, taken into calculation |
period | numeric | MA (moving average) period |
Returns: series
.
Example
instrument { name = "Exponential Moving Average", short_name = "EMA", overlay = true, icon="indicators:MA" }
period = input (9, "period", input.integer, 1)
source = input (1, "source", input.string_selection, inputs.titles_overlay)
input_group {
"EMA Line",
color = input { default = "#57A1D0", type = input.color },
width = input { default = 1, type = input.line_width}
}
local sourceSeries = inputs [source]
plot (ema (sourceSeries, period), "EMA", color, width)
Formula
The formula for calculating EMA
is:
The EMA
function is calculated by multiplying the smoothing factor (α) by the current closing price (source) and adding it to the previous day's value. The smoothing factor, in its turn, is calculated by taking the period for the EMA+1 and dividing 2 by the result value.