From 61178ac9678a9cbe371da9ab2bfc81705878cb8d Mon Sep 17 00:00:00 2001 From: dsyoon Date: Mon, 25 Mar 2024 19:52:10 +0900 Subject: [PATCH] init --- stock/analysis/JSDPattern_simulation.py | 86 ++----------------------- 1 file changed, 4 insertions(+), 82 deletions(-) diff --git a/stock/analysis/JSDPattern_simulation.py b/stock/analysis/JSDPattern_simulation.py index cf6112f..27e4f0f 100644 --- a/stock/analysis/JSDPattern_simulation.py +++ b/stock/analysis/JSDPattern_simulation.py @@ -123,19 +123,11 @@ class JSDPattern_simulation (JSDPattern): new_high_9 = [0 for c in range(8)] + [1 if (changeLine[c-1] is not None and changeLine[c] is not None and changeLine[c-1] < changeLine[c]) and None not in close[c-8:c+1] and max(close[c-8:c]) < close[c] else 0 for c in range(8, len(close))] # 26일 신고가 new_high_26 = [0 for c in range(25)] + [1 if (baseLine[c-1] is not None and baseLine[c] is not None and baseLine[c-1] < baseLine[c]) and None not in close[c-8:c+1] and max(close[c-25:c]) < close[c] else 0 for c in range(25, len(close))] - # 33일 신고가 - new_high_33 = [0 for c in range(32)] + [1 if (leadingSpan1[c-1] is not None and leadingSpan1[c] is not None and leadingSpan1[c-1] < leadingSpan1[c]) and None not in close[c-8:c+1] and max(close[c-32:c]) < close[c] else 0 for c in range(32, len(close))] - # 52일 신고가 - new_high_52 = [0 for c in range(51)] + [1 if (leadingSpan2[c-1] is not None and leadingSpan2[c] is not None and leadingSpan2[c-1] < leadingSpan2[c]) and None not in close[c-8:c+1] and max(close[c-51:c]) < close[c] else 0 for c in range(51, len(close))] # 9일 신저가 new_low_9 = [0 for c in range(8)] + [1 if (changeLine[c-1] is not None and changeLine[c] is not None and changeLine[c-1] < changeLine[c]) and None not in close[c-8:c+1] and close[c-9] < min(close[c-8:c+1]) else 0 for c in range(8, len(close))] # 26일 신저가 new_low_26 = [0 for c in range(25)] + [1 if (baseLine[c-1] is not None and baseLine[c] is not None and baseLine[c-1] < baseLine[c]) and None not in close[c-8:c+1] and close[c-26] < min(close[c-25:c+1]) else 0 for c in range(25, len(close))] - # 33일 신저가 - new_low_33 = [0 for c in range(32)] + [1 if (leadingSpan1[c-1] is not None and leadingSpan1[c] is not None and leadingSpan1[c-1] < leadingSpan1[c]) and None not in close[c-8:c+1] and close[c-33] < min(close[c-32:c+1]) else 0 for c in range(32, len(close))] - # 52일 신저가 - new_low_52 = [0 for c in range(51)] + [1 if (leadingSpan2[c-1] is not None and leadingSpan2[c] is not None and leadingSpan2[c-1] < leadingSpan2[c]) and None not in close[c-8:c+1] and close[c-52] < min(close[c-51:c+1]) else 0 for c in range(51, len(close))] # 이동 평균 @@ -201,21 +193,7 @@ class JSDPattern_simulation (JSDPattern): if mins == 1440: duration = 360 laggingSpan_close_diff, laggingSpan_close_diff_rate = self.getDiff_Rate(laggingSpan, close, duration=duration) - laggingSpan_changeLine_diff, laggingSpan_changeLine_diff_rate = self.getDiff_Rate(laggingSpan, changeLine, duration=duration) - laggingSpan_baseLine_diff, laggingSpan_baseLine_diff_rate = self.getDiff_Rate(laggingSpan, baseLine, duration=duration) - laggingSpan_leadingSpan1_diff, laggingSpan_leadingSpan1_diff_rate = self.getDiff_Rate(laggingSpan, leadingSpan1, duration=duration) - laggingSpan_leadingSpan2_diff, laggingSpan_leadingSpan2_diff_rate = self.getDiff_Rate(laggingSpan, leadingSpan2, duration=duration) laggingSpan_avg60_diff, laggingSpan_avg60_diff_rate = self.getDiff_Rate(laggingSpan, avg60, duration=duration) - laggingSpan_lower10_diff, laggingSpan_lower10_diff_rate = self.getDiff_Rate(laggingSpan, lower_10, duration=duration) - laggingSpan_middle10_diff, laggingSpan_middle10_diff_rate = self.getDiff_Rate(laggingSpan, middle_10, duration=duration) - laggingSpan_upper10_diff, laggingSpan_upper10_diff_rate = self.getDiff_Rate(laggingSpan, upper_10, duration=duration) - laggingSpan_lower20_diff, laggingSpan_lower20_diff_rate = self.getDiff_Rate(laggingSpan, lower_20, duration=duration) - laggingSpan_middle20_diff, laggingSpan_middle20_diff_rate = self.getDiff_Rate(laggingSpan, middle_20, duration=duration) - laggingSpan_upper20_diff, laggingSpan_upper20_diff_rate = self.getDiff_Rate(laggingSpan, upper_20, duration=duration) - baseLine_close_diff, baseLine_close_diff_rate = self.getDiff_Rate(baseLine, close, duration=duration) - changeLine_close_diff, changeLine_close_diff_rate = self.getDiff_Rate(changeLine, close, duration=duration) - changeLine_baseLine_diff, changeLine_baseLine_diff_rate = self.getDiff_Rate(changeLine, baseLine, duration=duration) - changeLine_leadingSpan1_diff, changeLine_leadingSpan1_diff_rate = self.getDiff_Rate(changeLine, leadingSpan1, duration=duration) leadingSpan1_leadingSpan2_diff, leadingSpan1_leadingSpan2_diff_rate = self.getDiff_Rate(leadingSpan1, leadingSpan2, duration=duration) @@ -225,39 +203,11 @@ class JSDPattern_simulation (JSDPattern): pd.DataFrame(changeLine), pd.DataFrame(baseLine), pd.DataFrame(laggingSpan), pd.DataFrame(leadingSpan1), pd.DataFrame(leadingSpan2), pd.DataFrame(laggingSpan_close_diff), - pd.DataFrame(laggingSpan_changeLine_diff), - pd.DataFrame(laggingSpan_baseLine_diff), - pd.DataFrame(laggingSpan_leadingSpan1_diff), - pd.DataFrame(laggingSpan_leadingSpan2_diff), pd.DataFrame(laggingSpan_avg60_diff), - pd.DataFrame(laggingSpan_lower10_diff), - pd.DataFrame(laggingSpan_middle10_diff), - pd.DataFrame(laggingSpan_upper10_diff), - pd.DataFrame(laggingSpan_lower20_diff), - pd.DataFrame(laggingSpan_middle20_diff), - pd.DataFrame(laggingSpan_upper20_diff), - pd.DataFrame(baseLine_close_diff), - pd.DataFrame(changeLine_close_diff), - pd.DataFrame(changeLine_baseLine_diff), - pd.DataFrame(changeLine_leadingSpan1_diff), pd.DataFrame(leadingSpan1_leadingSpan2_diff), pd.DataFrame(laggingSpan_close_diff_rate), - pd.DataFrame(laggingSpan_changeLine_diff_rate), - pd.DataFrame(laggingSpan_baseLine_diff_rate), - pd.DataFrame(laggingSpan_leadingSpan1_diff_rate), - pd.DataFrame(laggingSpan_leadingSpan2_diff_rate), pd.DataFrame(laggingSpan_avg60_diff_rate), - pd.DataFrame(laggingSpan_lower10_diff_rate), - pd.DataFrame(laggingSpan_middle10_diff_rate), - pd.DataFrame(laggingSpan_upper10_diff_rate), - pd.DataFrame(laggingSpan_lower20_diff_rate), - pd.DataFrame(laggingSpan_middle20_diff_rate), - pd.DataFrame(laggingSpan_upper20_diff_rate), - pd.DataFrame(baseLine_close_diff_rate), - pd.DataFrame(changeLine_close_diff_rate), - pd.DataFrame(changeLine_baseLine_diff_rate), - pd.DataFrame(changeLine_leadingSpan1_diff_rate), pd.DataFrame(leadingSpan1_leadingSpan2_diff_rate), pd.DataFrame(loc_240_k), pd.DataFrame(loc_240_d), pd.DataFrame(loc_240_s), @@ -266,8 +216,8 @@ class JSDPattern_simulation (JSDPattern): pd.DataFrame(upper_10), pd.DataFrame(lower_10), pd.DataFrame(middle_10), pd.DataFrame(upper_20), pd.DataFrame(lower_20), pd.DataFrame(middle_20), - pd.DataFrame(new_high_9), pd.DataFrame(new_high_26), pd.DataFrame(new_high_33), pd.DataFrame(new_high_52), - pd.DataFrame(new_low_9), pd.DataFrame(new_low_26), pd.DataFrame(new_low_33), pd.DataFrame(new_low_52), + pd.DataFrame(new_high_9), pd.DataFrame(new_high_26), + pd.DataFrame(new_low_9), pd.DataFrame(new_low_26), pd.DataFrame(slowk_12_df), pd.DataFrame(slowd_12_df), pd.DataFrame(slowk_26_df), pd.DataFrame(slowd_26_df), pd.DataFrame(slowk_52_df), pd.DataFrame(slowd_52_df), @@ -281,39 +231,11 @@ class JSDPattern_simulation (JSDPattern): 'changeLine', 'baseLine', 'laggingSpan', 'leadingSpan1', 'leadingSpan2', 'laggingSpan_close_diff', - 'laggingSpan_changeLine_diff', - 'laggingSpan_baseLine_diff', - 'laggingSpan_leadingSpan1_diff', - 'laggingSpan_leadingSpan2_diff', 'laggingSpan_avg60_diff', - 'laggingSpan_lower10_diff', - 'laggingSpan_middle10_diff', - 'laggingSpan_upper10_diff', - 'laggingSpan_lower20_diff', - 'laggingSpan_middle20_diff', - 'laggingSpan_upper20_diff', - 'baseLine_close_diff', - 'changeLine_close_diff', - 'changeLine_baseLine_diff', - 'changeLine_leadingSpan1_diff', 'leadingSpan1_leadingSpan2_diff', 'laggingSpan_close_diff_rate', - 'laggingSpan_changeLine_diff_rate', - 'laggingSpan_baseLine_diff_rate', - 'laggingSpan_leadingSpan1_diff_rate', - 'laggingSpan_leadingSpan2_diff_rate', 'laggingSpan_avg60_diff_rate', - 'laggingSpan_lower10_diff_rate', - 'laggingSpan_middle10_diff_rate', - 'laggingSpan_upper10_diff_rate', - 'laggingSpan_lower20_diff_rate', - 'laggingSpan_middle20_diff_rate', - 'laggingSpan_upper20_diff_rate', - 'baseLine_close_diff_rate', - 'changeLine_close_diff_rate', - 'changeLine_baseLine_diff_rate', - 'changeLine_leadingSpan1_diff_rate', 'leadingSpan1_leadingSpan2_diff_rate', 'loc_240_k', 'loc_240_d', 'loc_240_s', @@ -323,8 +245,8 @@ class JSDPattern_simulation (JSDPattern): 'upper_10', 'lower_10', 'middle_10', 'upper_20', 'lower_20', 'middle_20', - 'new_high_9', 'new_high_26', 'new_high_33', 'new_high_52', - 'new_low_9', 'new_low_26', 'new_low_33', 'new_low_52', + 'new_high_9', 'new_high_26', + 'new_low_9', 'new_low_26', 'slowk_12', 'slowd_12', 'slowk_26', 'slowd_26',