Python talib.TRANGE Examples
The following are 6
code examples of talib.TRANGE().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
talib
, or try the search function
.
Example #1
Source File: talib_numpy.py From QUANTAXIS with MIT License | 6 votes |
def ADX_MA(data, period=14, smooth=14, limit=18): """ Moving Average ADX ADX Smoothing Trend Color Change on Moving Average and ADX Cross. Use on Hourly Charts - Green UpTrend - Red DownTrend - Black Choppy No Trend Source: https://www.tradingview.com/script/owwws7dM-Moving-Average-ADX/ Translator: 阿财(Rgveda@github)(4910163#qq.com) Parameters ---------- data : (N,) array_like 传入 OHLC Kline 序列。 The OHLC Kline. period : int or None, optional DI 统计周期 默认值为 14 DI Length period. Default value is 10. smooth : int or None, optional ADX 平滑周期 默认值为 14 ADX smoothing length period. Default value is 10. limit : int or None, optional ADX 限制阈值 默认值为 18 ADX MA Active limit threshold. Default value is 18. Returns ------- adx, ADXm : ndarray ADXm 指标和趋势指示方向 (-1, 0, 1) 分别代表 (下跌, 无明显趋势, 上涨) ADXm indicator and thread directions sequence. (-1, 0, 1) means for (Neagtive, No Trend, Positive) """ up = data.high.pct_change() down = data.low.pct_change() * -1 trur = TA_HMA(talib.TRANGE(data.high.values, data.low.values, data.close.values) , period) plus = 100 * TA_HMA(np.where(((up > down) & (up > 0)), up, 0), period) / trur minus = 100 * TA_HMA(np.where(((down > up) & (down > 0)), down, 0), period) / trur # 这里是dropna的替代解决办法,因为我觉得nparray的传递方式如果随便drop了可能会跟 data.index # 对不上,所以我选择补零替代dropna plus = np.r_[np.zeros(period + 2), plus[(period + 2):]] minus = np.r_[np.zeros(period + 2), minus[(period + 2):]] sum = plus + minus adx = 100 * TA_HMA(abs(plus - minus) / (np.where((sum == 0), 1, sum)), smooth) adx = np.r_[np.zeros(smooth + 2), adx[(smooth + 2):]] ADXm = np.where(((adx > limit) & (plus > minus)), 1, np.where(((adx > limit) & (plus < minus)), -1, 0)) return adx, ADXm
Example #2
Source File: trange.py From jesse with MIT License | 6 votes |
def trange(candles: np.ndarray, sequential=False) -> Union[float, np.ndarray]: """ TRANGE - True Range :param candles: np.ndarray :param sequential: bool - default=False :return: float | np.ndarray """ if not sequential and len(candles) > 240: candles = candles[-240:] res = talib.TRANGE(candles[:, 3], candles[:, 4], candles[:, 2]) if sequential: return res else: return None if np.isnan(res[-1]) else res[-1]
Example #3
Source File: test_reg.py From finta with GNU Lesser General Public License v3.0 | 5 votes |
def test_tr(): '''test TA.TR''' tr = TA.TR(ohlc) talib_tr = talib.TRANGE(ohlc['high'], ohlc['low'], ohlc['close']) assert round(talib_tr[-1], 5) == round(tr.values[-1], 5)
Example #4
Source File: talib_wrapper.py From tia with BSD 3-Clause "New" or "Revised" License | 5 votes |
def TRANGE(frame, high_col='high', low_col='low', close_col='close'): return _frame_to_series(frame, [high_col, low_col, close_col], talib.TRANGE)
Example #5
Source File: test_indicator_volatility.py From pandas-ta with MIT License | 5 votes |
def test_true_range(self): result = pandas_ta.true_range(self.high, self.low, self.close) self.assertIsInstance(result, Series) self.assertEqual(result.name, 'TRUERANGE_1') try: expected = tal.TRANGE(self.high, self.low, self.close) pdt.assert_series_equal(result, expected, check_names=False) except AssertionError as ae: try: corr = pandas_ta.utils.df_error_analysis(result, expected, col=CORRELATION) self.assertGreater(corr, CORRELATION_THRESHOLD) except Exception as ex: error_analysis(result, CORRELATION, ex)
Example #6
Source File: talib_indicators.py From qtpylib with Apache License 2.0 | 5 votes |
def TRANGE(data, **kwargs): _check_talib_presence() _, phigh, plow, pclose, _ = _extract_ohlc(data) return talib.TRANGE(phigh, plow, pclose, **kwargs) # --------------------------------------------- # Parrern Recognition # ---------------------------------------------