修改均线策略

This commit is contained in:
jackyu66git
2026-02-12 21:39:02 +08:00
parent 13c226ee6c
commit 887183b745
+7 -6
View File
@@ -84,7 +84,7 @@ class ChanLun_EMA_Align(IStrategy):
"240": 0.025, "240": 0.025,
"360": 0 "360": 0
} }
startup_candle_count = 1600
can_short = True can_short = True
lev = 1.0 lev = 1.0
stoploss = -0.3 # 设置为很大的负值,让custom_stoploss来控制 stoploss = -0.3 # 设置为很大的负值,让custom_stoploss来控制
@@ -98,7 +98,7 @@ class ChanLun_EMA_Align(IStrategy):
# 关闭分批止盈/仓位调整 # 关闭分批止盈/仓位调整
position_adjustment_enable = False position_adjustment_enable = False
# startup_candle_count = 1600 # startup_candle_count = 1600
time5 = 15 time5 = 5
time15 = 15 time15 = 15
time30 = 30 time30 = 30
time60 = 60 time60 = 60
@@ -106,6 +106,7 @@ class ChanLun_EMA_Align(IStrategy):
dataframe = self.add_indicators(dataframe) dataframe = self.add_indicators(dataframe)
dataframe_5m = resample_to_interval(dataframe, self.get_ticker_indicator() * self.time5) dataframe_5m = resample_to_interval(dataframe, self.get_ticker_indicator() * self.time5)
dataframe_5m = self.add_indicators(dataframe_5m) dataframe_5m = self.add_indicators(dataframe_5m)
#print(dataframe_5m.iloc[-1])
dataframe = resampled_merge(dataframe, dataframe_5m) dataframe = resampled_merge(dataframe, dataframe_5m)
return dataframe return dataframe
def add_indicators(self, dataframe): def add_indicators(self, dataframe):
@@ -117,8 +118,8 @@ class ChanLun_EMA_Align(IStrategy):
dataframe['dir104'] = dataframe['close'] - dataframe['ema104'] dataframe['dir104'] = dataframe['close'] - dataframe['ema104']
dataframe['ema156'] = ta.EMA(dataframe, timeperiod=156) dataframe['ema156'] = ta.EMA(dataframe, timeperiod=156)
dataframe['dir156'] = dataframe['close'] - dataframe['ema156'] dataframe['dir156'] = dataframe['close'] - dataframe['ema156']
dataframe['dir52_156'] = dataframe['dir52'] - dataframe['dir156'] dataframe['dir52_156'] = dataframe['ema52'] - dataframe['ema156']
dataframe['dir52_104'] = dataframe['dir52'] - dataframe['dir104'] dataframe['dir52_104'] = dataframe['ema52'] - dataframe['ema104']
dataframe_macd = ta.MACD(dataframe, fast=12, slow=26, signal=9) dataframe_macd = ta.MACD(dataframe, fast=12, slow=26, signal=9)
dataframe['macdsignal'] = dataframe_macd['macdsignal'] dataframe['macdsignal'] = dataframe_macd['macdsignal']
dataframe['macd'] = dataframe_macd['macd'] dataframe['macd'] = dataframe_macd['macd']
@@ -170,12 +171,12 @@ class ChanLun_EMA_Align(IStrategy):
resample_5m_signal = 'resample_{}_macdsignal'.format(self.get_ticker_indicator() * self.time5) resample_5m_signal = 'resample_{}_macdsignal'.format(self.get_ticker_indicator() * self.time5)
dataframe.loc[ dataframe.loc[
(dataframe[resample_5m_align]) & (dataframe[resample_5m_align]) &
(dataframe[resample_5m_dir] < 0) & (dataframe[resample_5m_dir] > 0) &
(dataframe[resample_5m_signal] > 0), (dataframe[resample_5m_signal] > 0),
['enter_long', 'enter_tag']] = (1, 'long_signal_chan') ['enter_long', 'enter_tag']] = (1, 'long_signal_chan')
dataframe.loc[ dataframe.loc[
(dataframe[resample_5m_align]) & (dataframe[resample_5m_align]) &
(dataframe[resample_5m_dir] > 0) & (dataframe[resample_5m_dir] < 0) &
(dataframe[resample_5m_signal] < 0), (dataframe[resample_5m_signal] < 0),
['enter_short', 'enter_tag']] = (1, 'short_signal_chan') ['enter_short', 'enter_tag']] = (1, 'short_signal_chan')
return dataframe return dataframe