本文整理匯總了Python中talib.MINUS_DI屬性的典型用法代碼示例。如果您正苦於以下問題:Python talib.MINUS_DI屬性的具體用法?Python talib.MINUS_DI怎麽用?Python talib.MINUS_DI使用的例子?那麽, 這裏精選的屬性代碼示例或許可以為您提供幫助。您也可以進一步了解該屬性所在類talib
的用法示例。
在下文中一共展示了talib.MINUS_DI屬性的9個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。
示例1: results
# 需要導入模塊: import talib [as 別名]
# 或者: from talib import MINUS_DI [as 別名]
def results(self, data_frame):
try:
adx = talib.ADX(data_frame['%s_High' %self.symbol].values,
data_frame['%s_Low' %self.symbol].values,
data_frame['%s_Close' %self.symbol].values,
timeperiod=self.period)
plus_di = talib.PLUS_DI(data_frame['%s_High' %self.symbol].values,
data_frame['%s_Low' %self.symbol].values,
data_frame['%s_Close' %self.symbol].values,
timeperiod=self.period)
minus_di = talib.MINUS_DI(data_frame['%s_High' %self.symbol].values,
data_frame['%s_Low' %self.symbol].values,
data_frame['%s_Close' %self.symbol].values,
timeperiod=self.period)
data_frame[self.value] = adx
data_frame[self.plus_di] = plus_di
data_frame[self.minus_di] = minus_di
except KeyError:
data_frame[self.value] = np.nan
data_frame[self.plus_di] = np.nan
data_frame[self.minus_di] = np.nan
示例2: add_MINUS_DI
# 需要導入模塊: import talib [as 別名]
# 或者: from talib import MINUS_DI [as 別名]
def add_MINUS_DI(self, timeperiod=14,
type='line', color='decreasing', **kwargs):
"""Minus Directional Indicator."""
if not (self.has_high and self.has_low and self.has_close):
raise Exception()
utils.kwargs_check(kwargs, VALID_TA_KWARGS)
if 'kind' in kwargs:
type = kwargs['kind']
name = 'MINUS_DI({})'.format(str(timeperiod))
self.sec[name] = dict(type=type, color=color)
self.ind[name] = talib.MINUS_DI(self.df[self.hi].values,
self.df[self.lo].values,
self.df[self.cl].values,
timeperiod)
示例3: di
# 需要導入模塊: import talib [as 別名]
# 或者: from talib import MINUS_DI [as 別名]
def di(candles: np.ndarray, period=14, sequential=False) -> DI:
"""
DI - Directional Indicator
:param candles: np.ndarray
:param period: int - default=14
:param sequential: bool - default=False
:return: DI(plus, minus)
"""
if not sequential and len(candles) > 240:
candles = candles[-240:]
MINUS_DI = talib.MINUS_DI(candles[:, 3], candles[:, 4], candles[:, 2], timeperiod=period)
PLUS_DI = talib.PLUS_DI(candles[:, 3], candles[:, 4], candles[:, 2], timeperiod=period)
if sequential:
return DI(PLUS_DI, MINUS_DI)
else:
return DI(PLUS_DI[-1], MINUS_DI[-1])
示例4: minus_di
# 需要導入模塊: import talib [as 別名]
# 或者: from talib import MINUS_DI [as 別名]
def minus_di(self, sym, frequency, *args, **kwargs):
if not self.kbars_ready(sym, frequency):
return []
highs = self.high(sym, frequency)
lows = self.low(sym, frequency)
closes = self.close(sym, frequency)
return ta.MINUS_DI(highs, lows, closes, *args, **kwargs)
示例5: di_minus
# 需要導入模塊: import talib [as 別名]
# 或者: from talib import MINUS_DI [as 別名]
def di_minus(high, low, close, period=14):
return talib.MINUS_DI(high, low, close, period)
示例6: test_dmi
# 需要導入模塊: import talib [as 別名]
# 或者: from talib import MINUS_DI [as 別名]
def test_dmi():
'''test TA.DMI'''
dmp = TA.DMI(ohlc, 14, False)["DI+"]
talib_dmp = talib.PLUS_DI(ohlc["high"], ohlc["low"], ohlc["close"], timeperiod=14)
# assert talib_dmp[-1] == dmp.values[-1]
# assert 25.399441371241316 == 24.99395020211371
pass # close enough
dmn = TA.DMI(ohlc, 14, False)["DI-"]
talib_dmn = talib.MINUS_DI(ohlc["high"], ohlc["low"], ohlc["close"], timeperiod=14)
assert talib_dmn[-1] == dmn.values[-1]
示例7: before_trading
# 需要導入模塊: import talib [as 別名]
# 或者: from talib import MINUS_DI [as 別名]
def before_trading(context):
prices = history_bars(context.s1, context.window, '1d', fields=['high', 'low', 'close', 'open'])
highP = prices['high']
lowP = prices['low']
closeP = prices['close']
openP = prices['open']
context.ADX = ta.ADXR(highP, lowP, closeP, timeperiod=14)
context.Pdi = ta.PLUS_DI(highP, lowP, closeP, timeperiod=14)
context.Ndi = ta.MINUS_DI(highP, lowP, closeP, timeperiod=14)
context.MA_tw = ta.MA(closeP, timeperiod=20)[-5:]
context.MA_fi = ta.MA(closeP, timeperiod=50)[-5:]
context.MA_fork = context.MA_tw > context.MA_fi
context.SAR = ta.SAR(highP, lowP, acceleration=context.acceleration, maximum=0.2)
# context.JQ_selOpen = (context.ADX[-1]>=20) #& (context.ADX[-2]>=20) & (context.ADX[-1]<=30) & (context.ADX[-2]<=30)
context.JW_selOpen = (context.Pdi[-1] <= context.Ndi[-1]) & (context.Pdi[-2] >= context.Ndi[-2])
context.JE_selOpen = (context.MA_fork[-1]) & (context.MA_fork[-2]) & (not context.MA_fork[-3])
context.JR_selOpen = (context.SAR[-1] >= 0.95 * openP[-1]) & (context.SAR[-2] <= 1.05 * closeP[-2])
context.J_selOpen = context.JQ_selOpen & context.JW_selOpen & context.JE_selOpen & context.JR_selOpen
# context.JQ_buyOpen = context.JQ_selOpen
context.JW_buyOpen = (context.Pdi[-1] >= context.Ndi[-1]) & (context.Pdi[-2] <= context.Ndi[-2])
context.JE_buyOpen = (not context.MA_fork[-1]) & (not context.MA_fork[-2]) & (not context.MA_fork[-3])
context.JR_buyOpen = (context.SAR[-2] >= 0.95 * openP[-2]) & (context.SAR[-1] <= 1.05 * closeP[-1])
context.J_buyOpen = context.JQ_buyOpen & context.JW_buyOpen & context.JE_buyOpen & context.JR_buyOpen
# 你選擇的期貨數據更新將會觸發此段邏輯,例如日線或分鍾線更新
示例8: MINUS_DI
# 需要導入模塊: import talib [as 別名]
# 或者: from talib import MINUS_DI [as 別名]
def MINUS_DI(frame, n=14, high_col='high', low_col='low', close_col='close'):
return _frame_to_series(frame, [high_col, low_col, close_col], talib.MINUS_DI, n)
示例9: MINUS_DI
# 需要導入模塊: import talib [as 別名]
# 或者: from talib import MINUS_DI [as 別名]
def MINUS_DI(data, **kwargs):
_check_talib_presence()
_, phigh, plow, pclose, _ = _extract_ohlc(data)
return talib.MINUS_DI(phigh, plow, pclose, **kwargs)