Skip to contents

The extended_parabolic_stop_and_reverse() 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. This rule does not transfer to indicators that uses univariate series, unless passed as a 1-column data.frame or matrix. In such cases, if univariate series is passed as a vector the function calculates the indicator 'as is', and returns a data.frame if the indicator itself is also a univariate series.

The indicator, by default, follows its mathematical definition. However, the cols argument allows for simple rearrangement of the definition by passing relevant columns in a custom order. Refer to the details-section for more on the calculation of the indicators.

Usage

extended_parabolic_stop_and_reverse(
  x,
  cols,
  init = 0,
  offset = 0,
  init_long = 0,
  long = 0,
  max_long = 0,
  init_short = 0,
  short = 0,
  max_short = 0,
  ...
)

Arguments

x

An OHLC-V series that is coercible to data.frame. The function assumes that all columns are named in lowercase and order invariant.

cols

An optional formula passed into model.frame. If passed into indicators based on univariate series, the function calculates indicators for each element in 'cols'. For indicators based on multivariate series, it will alter the calculation itself. See vignette("talib") for more details.

init

Start value and direction. 0 for Auto, >0 for Long, <0 for Short

offset

offset added/removed to initial stop on short/long reversal

init_long

Acceleration Factor initial value for the Long direction

long

Acceleration Factor for the Long direction

max_long

Acceleration Factor maximum value for the Long direction

init_short

Acceleration Factor initial value for the Short direction

short

Acceleration Factor for the Short direction

max_short

Acceleration Factor maximum value for the Short direction

...

Additional parameters passed into model.frame

Value

An object of same class and length of x:

SAR

double

Author

Serkan Korkmaz

Examples

## load Bitcoin (BTC)
## series
data(BTC, package = "talib")

## calculate the indicator
## for Bitcoin (BTC)
output <- talib::extended_parabolic_stop_and_reverse(BTC)

## display the results
utils::tail(output)
#>                          SAR
#> 2024-12-26 01:00:00 38508.01
#> 2024-12-27 01:00:00 38508.01
#> 2024-12-28 01:00:00 38508.01
#> 2024-12-29 01:00:00 38508.01
#> 2024-12-30 01:00:00 38508.01
#> 2024-12-31 01:00:00 38508.01

## visualize the indicator
## with candlesticks
##
## see ?talib::chart or ?talib::indicator
## for more details
{
 ## chart OHLC-V
 ## series with candlesticks
 talib::chart(BTC)

 ## chart indicator
 ## with default values
 talib::indicator(
     talib::extended_parabolic_stop_and_reverse
 )
}
#> Warning: Ignoring 1 observations