The double_exponential_moving_average() is a generic S3 function that builds upon 'type-safe'-esque workflows limited to classes in in base R, and the package-wide
dependencies. Ie. class in, class out. Each method is a soft wrapper of model.frame and therefore the OHLC-V series must be coercible to a data.frame.
double_exponential_moving_average() also accepts a double vector in which case the indicator is calculated 'as-is' without passing through model.frame. double_exponential_moving_average() returns an n by k matrix computed in C by default. When k = 1, the result is simplified to a double vector; for k > 1, the full n by k matrix is returned.
Arguments
- x
An OHLC-V series that is coercible to data.frame. Alternatively,
xmay also be supplied as a double vector.- cols
(formula). An optional
1variable formula passed into model.frame. Internally uses~closeby default.- n
- ...
Additional parameters passed into model.frame
Details
When passed without 'x', double_exponential_moving_average functions as an 'Moving Average'-specification which is used in, for example, stochastic when constructing the smoothing lines.
When called without 'x' it will return a named list which is used for the indicators that supports various Moving Average specifications.
See also
Other Overlap Study:
acceleration_bands(),
bollinger_bands(),
exponential_moving_average(),
extended_parabolic_stop_and_reverse(),
kaufman_adaptive_moving_average(),
mesa_adaptive_moving_average(),
parabolic_stop_and_reverse(),
simple_moving_average(),
t3_exponential_moving_average(),
trendline(),
triangular_moving_average(),
triple_exponential_moving_average(),
weighted_moving_average()
Examples
## load Bitcoin (BTC)
## series
data(BTC, package = "talib")
## calculate the indicator
## for Bitcoin (BTC)
output <- talib::double_exponential_moving_average(BTC)
## display the results
utils::tail(output)
#> DEMA
#> 2024-12-26 01:00:00 96950.49
#> 2024-12-27 01:00:00 95875.22
#> 2024-12-28 01:00:00 95414.00
#> 2024-12-29 01:00:00 94580.93
#> 2024-12-30 01:00:00 93680.22
#> 2024-12-31 01:00:00 93294.58
## visualize the indicator
## with talib::chart()
##
## see ?talib::chart or ?talib::indicator
## for more details
{
## chart OHLC-V
## series with talib::chart()
talib::chart(BTC)
## chart indicator
## with default values
talib::indicator(
talib::double_exponential_moving_average
)
}
