添加klc识别ema线接触
This commit is contained in:
@@ -112,27 +112,25 @@ class ChanLun_EMA52(IStrategy):
|
||||
def informative_pairs(self):
|
||||
return [(self.pair, "1h"),
|
||||
(self.pair, "1d"),
|
||||
(self.pair, "1M"),
|
||||
#(self.pair, "1M"),
|
||||
(self.pair, "15m"),
|
||||
(self.pair, "1w"),
|
||||
#(self.pair, "1w"),
|
||||
]
|
||||
def populate_indicators(self, dataframe: DataFrame, metadata: dict) -> DataFrame:
|
||||
dataframe = self.add_indicators(dataframe)
|
||||
long_df = self.dp.get_pair_dataframe(pair=self.pair, timeframe='1h')
|
||||
long_df = self.add_indicators(long_df)
|
||||
long_df['entry_long'] = self.long_entry_condition(long_df)
|
||||
dataframe['rsi'] = ta.RSI(long_df, timeperiod=14)
|
||||
if self.last_time is None or self.last_time + timedelta(minutes=1) < datetime.now():
|
||||
if self.last_time is None or self.last_time + timedelta(seconds=10) < datetime.now():
|
||||
self.last_time = datetime.now()
|
||||
logger.info("init_dataframes----------------------------")
|
||||
last_price = dataframe.iloc[-1]['close']
|
||||
macdstr = str(long_df.iloc[-1]['macd']) + " " + str(long_df.iloc[-1]['macdsignal']) + " " + str(long_df.iloc[-1]['macdhist'])
|
||||
date = dataframe.iloc[-1]['date']
|
||||
tf_ema52_list = self.chan.check_price_ema52(last_price)
|
||||
self.init_dataframes(dataframe)
|
||||
logger.info("Date: " + date.strftime('%Y-%m-%d %H:%M:%S') + " Price: " + str(last_price) + " EMA52_list: " + str(tf_ema52_list) + " MACD: " + macdstr)
|
||||
logger.info("Date: " + date.strftime('%Y-%m-%d %H:%M:%S') + " Price: " + str(last_price) + " EMA52_list: " + str(tf_ema52_list))
|
||||
#print(long_df.iloc[-1])
|
||||
dataframe = resampled_merge(dataframe, long_df)
|
||||
#print(dataframe.iloc[-1])
|
||||
return dataframe
|
||||
def ema_dir(self, dataframe):
|
||||
"""
|
||||
@@ -200,9 +198,6 @@ class ChanLun_EMA52(IStrategy):
|
||||
dataframe['ema_slope'] = (ema52 - ema52.shift(3)) / ema52.shift(3) * 100
|
||||
|
||||
return dataframe
|
||||
def long_entry_condition(self, long_df):
|
||||
long_entry_condition = (long_df['dir52'] > 0) & (long_df['dir156'] > 0) & (long_df['macdhist'] > 0)
|
||||
return long_entry_condition
|
||||
def add_indicators(self, dataframe):
|
||||
dataframe['ema24'] = ta.EMA(dataframe, timeperiod=24)
|
||||
dataframe['dir24'] = dataframe['close'] - dataframe['ema24']
|
||||
@@ -222,10 +217,9 @@ class ChanLun_EMA52(IStrategy):
|
||||
dataframe_15m = self.dp.get_pair_dataframe(pair=self.pair, timeframe='15m')
|
||||
dataframe_1h = self.dp.get_pair_dataframe(pair=self.pair, timeframe='1h')
|
||||
dataframe_1d = self.dp.get_pair_dataframe(pair=self.pair, timeframe='1d')
|
||||
dataframe_1w = self.dp.get_pair_dataframe(pair=self.pair, timeframe='1w')
|
||||
dataframe_1M = self.dp.get_pair_dataframe(pair=self.pair, timeframe='1M')
|
||||
self.chan = ChanLun()
|
||||
self.chan.init_dataframes(dataframe_1m, dataframe_15m,dataframe_1h, dataframe_1d, dataframe_1w, dataframe_1M)
|
||||
#dataframe_1w = self.dp.get_pair_dataframe(pair=self.pair, timeframe='1w')
|
||||
#dataframe_1M = self.dp.get_pair_dataframe(pair=self.pair, timeframe='1M')
|
||||
self.chan.init_dataframes(dataframe_1m, dataframe_15m,dataframe_1h, dataframe_1d)
|
||||
def custom_entry_price(self, pair: str, trade: Trade | None, current_time: datetime, proposed_rate: float,
|
||||
entry_tag: str | None, side: str, **kwargs) -> float:
|
||||
new_entryprice = proposed_rate
|
||||
|
||||
Reference in New Issue
Block a user