From 790c67208e5720e35a955716c50ee09c4514047d Mon Sep 17 00:00:00 2001 From: laixingyu Date: Wed, 17 Jan 2024 21:52:28 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E5=AE=8C=E6=88=90=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E7=BB=9F=E8=AE=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- calculateTrends1.py | 2292 ++++++++++++++++++++++++++++++------------- 1 file changed, 1587 insertions(+), 705 deletions(-) diff --git a/calculateTrends1.py b/calculateTrends1.py index 18ac73c..ad9041c 100644 --- a/calculateTrends1.py +++ b/calculateTrends1.py @@ -53,6 +53,7 @@ counters = { 'profit_close_sale_close': {'loss_over_6': 0, 'loss_6_to_3': 0,'loss_3_to_0': 0, 'profit_0_to_3': 0,'profit_3_to_6': 0, 'profit_over_6': 0}, # 不同场景的统计 'scenarios': { + # 组合场景: 开盘建仓 清仓日开盘清仓 盈亏分布 'low_over_6_open_low_over_6_open_sale': {'loss_over_6': 0, 'loss_6_to_3': 0,'loss_3_to_0': 0, 'profit_0_to_3': 0,'profit_3_to_6': 0, 'profit_over_6': 0}, 'low_over_6_open_low_6_to_3_open_sale': {'loss_over_6': 0, 'loss_6_to_3': 0,'loss_3_to_0': 0, 'profit_0_to_3': 0,'profit_3_to_6': 0, 'profit_over_6': 0}, 'low_over_6_open_low_3_to_0_open_sale': {'loss_over_6': 0, 'loss_6_to_3': 0,'loss_3_to_0': 0, 'profit_0_to_3': 0,'profit_3_to_6': 0, 'profit_over_6': 0}, @@ -89,7 +90,7 @@ counters = { 'high_over_6_open_high_0_to_3_open_sale': {'loss_over_6': 0, 'loss_6_to_3':0,'loss_3_to_0':0,'profit_0_to_3':0,'profit_3_to_6': 0, 'profit_over_6':0}, 'high_over_6_open_high_3_to_6_open_sale': {'loss_over_6': 0, 'loss_6_to_3':0,'loss_3_to_0':0,'profit_0_to_3':0,'profit_3_to_6': 0, 'profit_over_6':0}, 'high_over_6_open_high_over_6_open_sale': {'loss_over_6': 0, 'loss_6_to_3':0,'loss_3_to_0':0,'profit_0_to_3':0,'profit_3_to_6': 0, 'profit_over_6':0}, - + # 组合场景: 开盘建仓 清仓日收盘清仓 盈亏分布 'low_over_6_open_low_over_6_close_sale': {'loss_over_6': 0, 'loss_6_to_3':0,'loss_3_to_0':0,'profit_0_to_3':0,'profit_3_to_6': 0, 'profit_over_6':0}, 'low_over_6_open_low_6_to_3_close_sale': {'loss_over_6': 0, 'loss_6_to_3':0,'loss_3_to_0':0,'profit_0_to_3':0,'profit_3_to_6': 0, 'profit_over_6':0}, 'low_over_6_open_low_3_to_0_close_sale': {'loss_over_6': 0, 'loss_6_to_3':0,'loss_3_to_0':0,'profit_0_to_3':0,'profit_3_to_6': 0, 'profit_over_6':0}, @@ -126,7 +127,7 @@ counters = { 'high_over_6_open_high_0_to_3_close_sale': {'loss_over_6': 0, 'loss_6_to_3':0,'loss_3_to_0':0, 'profit_0_to_3':0, 'profit_3_to_6': 0, 'profit_over_6':0}, 'high_over_6_open_high_3_to_6_close_sale': {'loss_over_6': 0, 'loss_6_to_3':0,'loss_3_to_0':0, 'profit_0_to_3':0, 'profit_3_to_6': 0, 'profit_over_6':0}, 'high_over_6_open_high_over_6_close_sale': {'loss_over_6': 0, 'loss_6_to_3':0,'loss_3_to_0':0,'profit_0_to_3':0, 'profit_3_to_6': 0, 'profit_over_6':0}, - + # 组合场景: 收盘建仓 清仓日开盘清仓 盈亏分布 'low_over_6_close_low_over_6_open_sale': {'loss_over_6': 0, 'loss_6_to_3':0,'loss_3_to_0':0,'profit_0_to_3':0,'profit_3_to_6': 0, 'profit_over_6':0}, 'low_over_6_close_low_6_to_3_open_sale': {'loss_over_6': 0, 'loss_6_to_3':0,'loss_3_to_0':0,'profit_0_to_3':0,'profit_3_to_6': 0, 'profit_over_6':0}, 'low_over_6_close_low_3_to_0_open_sale': {'loss_over_6': 0, 'loss_6_to_3':0,'loss_3_to_0':0,'profit_0_to_3':0,'profit_3_to_6': 0, 'profit_over_6':0}, @@ -163,7 +164,7 @@ counters = { 'high_over_6_close_high_0_to_3_open_sale': {'loss_over_6': 0, 'loss_6_to_3':0,'loss_3_to_0':0, 'profit_0_to_3': 0, 'profit_3_to_6': 0, 'profit_over_6':0}, 'high_over_6_close_high_3_to_6_open_sale': {'loss_over_6': 0, 'loss_6_to_3':0,'loss_3_to_0':0, 'profit_0_to_3': 0, 'profit_3_to_6': 0, 'profit_over_6':0}, 'high_over_6_close_high_over_6_open_sale': {'loss_over_6': 0, 'loss_6_to_3':0,'loss_3_to_0':0,'profit_0_to_3': 0, 'profit_3_to_6': 0, 'profit_over_6':0}, - + # 组合场景: 收盘建仓 清仓日收盘清仓 盈亏分布 'low_over_6_close_low_over_6_close_sale': {'loss_over_6': 0, 'loss_6_to_3':0,'loss_3_to_0':0, 'profit_0_to_3':0, 'profit_3_to_6': 0, 'profit_over_6':0}, 'low_over_6_close_low_6_to_3_close_sale': {'loss_over_6': 0, 'loss_6_to_3':0,'loss_3_to_0':0, 'profit_0_to_3':0, 'profit_3_to_6': 0, 'profit_over_6':0}, 'low_over_6_close_low_3_to_0_close_sale': {'loss_over_6': 0, 'loss_6_to_3':0,'loss_3_to_0':0, 'profit_0_to_3':0, 'profit_3_to_6': 0, 'profit_over_6':0}, @@ -367,722 +368,1603 @@ high_close_normal_sale_high_loss_count = 0 - - -# 遍历日期列表 -for i, date in enumerate(date_list): - if i+2 < len(date_list): - # 将日期转换为字符串格式,以便在SQL查询中使用 - date_str = date.strftime('%Y-%m-%d') - if os.path.exists(f'D:/calculate_data/{date_str}_stock.csv'): - df = pd.read_csv(f'D:/calculate_data/{date_str}_stock.csv') - limit_list = df['code'].tolist() - for code in limit_list: - # 总统计数 - counters['total'] += 1 - print(f'正在处理{date_str} - {code}的数据-从文件获取') - saleopen = df.loc[df['code'] == code, 'saleprice_open'] - saleclose = df.loc[df['code'] == code, 'saleprice_close'] - nextclose = df.loc[df['code'] == code, 'next_close'] - # 计算清仓日开盘、收盘价 - saleprice_open_differrange = 100 * (saleopen - df.loc[df['code'] == code, 'next_open'])/df.loc[df['code'] == code, 'next_open'] - saleprice_close_differrange = 100 * (saleclose - nextclose)/nextclose - - # 第二日开盘价分布 - next_open_diff = df.loc[df['code'] == code, 'next_open_diff'].values[0] - counters['open']['low_over_6'],counters['open']['low_6_to_3'], counters['open']['low_3_to_0'], counters['open']['high_0_to_3'], counters['open']['high_3_to_6'], counters['open']['high_over_6'] = count_change(next_open_diff, counters['open']['low_over_6'], counters['open']['low_6_to_3'], counters['open']['low_3_to_0'], counters['open']['high_0_to_3'], counters['open']['high_3_to_6'], counters['open']['high_over_6']) - - # 第二日收盘价分布 - next_close_differrange = df.loc[df['code'] == code, 'next_close_differrange'].values[0] - counters['close']['low_over_6'],counters['close']['low_6_to_3'], counters['close']['low_3_to_0'], counters['close']['high_0_to_3'], counters['close']['high_3_to_6'], counters['close']['high_over_6'] = count_change(next_close_differrange, counters['close']['low_over_6'], counters['close']['low_6_to_3'], counters['close']['low_3_to_0'], counters['close']['high_0_to_3'], counters['close']['high_3_to_6'], counters['close']['high_over_6']) - - # 清仓日的开盘价分布 - counters['sale_open']['low_over_6'],counters['sale_open']['low_6_to_3'], counters['sale_open']['low_3_to_0'], counters['sale_open']['high_0_to_3'], counters['sale_open']['high_3_to_6'], counters['sale_open']['high_over_6'] = count_change(saleprice_open_differrange, counters['sale_open']['low_over_6'], counters['sale_open']['low_6_to_3'], counters['sale_open']['low_3_to_0'], counters['sale_open']['high_0_to_3'], counters['sale_open']['high_3_to_6'], counters['sale_open']['high_over_6']) - # 清仓日的收盘价分布 - counters['sale_close']['low_over_6'],counters['sale_close']['low_6_to_3'], counters['sale_close']['low_3_to_0'], counters['sale_close']['high_0_to_3'], counters['sale_close']['high_3_to_6'], counters['sale_close']['high_over_6'] = count_change(saleprice_close_differrange, counters['sale_close']['low_over_6'], counters['sale_close']['low_6_to_3'], counters['sale_close']['low_3_to_0'], counters['sale_close']['high_0_to_3'], counters['sale_close']['high_3_to_6'], counters['sale_close']['high_over_6']) - - # 清仓日开盘清仓盈亏分布-开盘建仓 - open_sale_open_differrange = 100 * (saleopen - df.loc[df['code'] == code, 'next_open'])/df.loc[df['code'] == code, 'next_open'] - counters['profit_open_sale_open']['low_over_6'],counters['profit_open_sale_open']['low_6_to_3'], counters['profit_open_sale_open']['low_3_to_0'], counters['profit_open_sale_open']['high_0_to_3'], counters['profit_open_sale_open']['high_3_to_6'], counters['profit_open_sale_open']['high_over_6'] = count_change(open_sale_open_differrange, counters['profit_open_sale_open']['low_over_6'], counters['profit_open_sale_open']['low_6_to_3'], counters['profit_open_sale_open']['low_3_to_0'], counters['profit_open_sale_open']['high_0_to_3'], counters['profit_open_sale_open']['high_3_to_6'], counters['profit_open_sale_open']['high_over_6']) - # 清仓日开盘清仓盈亏分布-收盘建仓 - open_sale_close_differrange = 100 * (saleopen - nextclose)/nextclose - counters['profit_open_sale_close']['low_over_6'],counters['profit_open_sale_close']['low_6_to_3'], counters['profit_open_sale_close']['low_3_to_0'], counters['profit_open_sale_close']['high_0_to_3'], counters['profit_open_sale_close']['high_3_to_6'], counters['profit_open_sale_close']['high_over_6'] = count_change(open_sale_close_differrange, counters['profit_open_sale_close']['low_over_6'], counters['profit_open_sale_close']['low_6_to_3'], counters['profit_open_sale_close']['low_3_to_0'], counters['profit_open_sale_close']['high_0_to_3'], counters['profit_open_sale_close']['high_3_to_6'], counters['profit_open_sale_close']['high_over_6']) - # 清仓日收盘清仓盈亏分布-开盘建仓 - close_sale_open_differrange = 100 * (saleclose - df.loc[df['code'] == code, 'next_open'])/df.loc[df['code'] == code, 'next_open'] - counters['profit_close_sale_open']['low_over_6'],counters['profit_close_sale_open']['low_6_to_3'], counters['profit_close_sale_open']['low_3_to_0'], counters['profit_close_sale_open']['high_0_to_3'], counters['profit_close_sale_open']['high_3_to_6'], counters['profit_close_sale_open']['high_over_6'] = count_change(close_sale_open_differrange, counters['profit_close_sale_open']['low_over_6'], counters['profit_close_sale_open']['low_6_to_3'], counters['profit_close_sale_open']['low_3_to_0'], counters['profit_close_sale_open']['high_0_to_3'], counters['profit_close_sale_open']['high_3_to_6'], counters['profit_close_sale_open']['high_over_6']) - # 清仓日收盘清仓盈亏分布-收盘建仓 - close_sale_close_differrange = 100 * (saleclose - nextclose)/nextclose - counters['profit_close_sale_close']['low_over_6'],counters['profit_close_sale_close']['low_6_to_3'], counters['profit_close_sale_close']['low_3_to_0'], counters['profit_close_sale_close']['high_0_to_3'], counters['profit_close_sale_close']['high_3_to_6'], counters['profit_close_sale_close']['high_over_6'] = count_change(close_sale_close_differrange, counters['profit_close_sale_close']['low_over_6'], counters['profit_close_sale_close']['low_6_to_3'], counters['profit_close_sale_close']['low_3_to_0'], counters['profit_close_sale_close']['high_0_to_3'], counters['profit_close_sale_close']['high_3_to_6'], counters['profit_close_sale_close']['high_over_6']) - - # 组合场景: 开盘建仓 清仓日开盘清仓 盈亏分布 - if next_open_diff < -6 and saleprice_open_differrange < -6: - counters['low_over_6_open_low_over_6_open_sale']['low_over_6'],counters['low_over_6_open_low_over_6_open_sale']['low_6_to_3'], counters['low_over_6_open_low_over_6_open_sale']['low_3_to_0'], counters['low_over_6_open_low_over_6_open_sale']['high_0_to_3'], counters['low_over_6_open_low_over_6_open_sale']['high_3_to_6'], counters['low_over_6_open_low_over_6_open_sale']['high_over_6'] = count_change(saleprice_open_differrange, counters['low_over_6_open_low_over_6_open_sale']['low_over_6'], counters['low_over_6_open_low_over_6_open_sale']['low_6_to_3'], counters['low_over_6_open_low_over_6_open_sale']['low_3_to_0'], counters['low_over_6_open_low_over_6_open_sale']['high_0_to_3'], counters['low_over_6_open_low_over_6_open_sale']['high_3_to_6'], counters['low_over_6_open_low_over_6_open_sale']['high_over_6']) - elif next_open_diff < -6 and saleprice_open_differrange > -6 and saleprice_open_differrange < -3: - counters['low_over_6_open_low_6_to_3_open_sale']['low_over_6'],counters['low_over_6_open_low_6_to_3_open_sale']['low_6_to_3'], counters['low_over_6_open_low_6_to_3_open_sale']['low_3_to_0'], counters['low_over_6_open_low_6_to_3_open_sale']['high_0_to_3'], counters['low_over_6_open_low_6_to_3_open_sale']['high_3_to_6'], counters['low_over_6_open_low_6_to_3_open_sale']['high_over_6'] = count_change(saleprice_open_differrange, counters['low_over_6_open_low_6_to_3_open_sale']['low_over_6'], counters['low_over_6_open_low_6_to_3_open_sale']['low_6_to_3'], counters['low_over_6_open_low_6_to_3_open_sale']['low_3_to_0'], counters['low_over_6_open_low_6_to_3_open_sale']['high_0_to_3'], counters['low_over_6_open_low_6_to_3_open_sale']['high_3_to_6'], counters['low_over_6_open_low_6_to_3_open_sale']['high_over_6']) - elif next_open_diff < -6 and saleprice_open_differrange > -3 and saleprice_open_differrange < 0: - counters['low_over_6_open_low_3_to_0_open_sale']['low_over_6'],counters['low_over_6_open_low_3_to_0_open_sale']['low_6_to_3'], counters['low_over_6_open_low_3_to_0_open_sale']['low_3_to_0'], counters['low_over_6_open_low_3_to_0_open_sale']['high_0_to_3'], counters['low_over_6_open_low_3_to_0_open_sale']['high_3_to_6'], counters['low_over_6_open_low_3_to_0_open_sale']['high_over_6'] = count_change(saleprice_open_differrange, counters['low_over_6_open_low_3_to_0_open_sale']['low_over_6'], counters['low_over_6_open_low_3_to_0_open_sale']['low_6_to_3'], counters['low_over_6_open_low_3_to_0_open_sale']['low_3_to_0'], counters['low_over_6_open_low_3_to_0_open_sale']['high_0_to_3'], counters['low_over_6_open_low_3_to_0_open_sale']['high_3_to_6'], counters['low_over_6_open_low_3_to_0_open_sale']['high_over_6']) - elif next_open_diff < -6 and saleprice_open_differrange > 0 and saleprice_open_differrange < 3: - counters['low_over_6_open_high_0_to_3_open_sale']['low_over_6'],counters['low_over_6_open_high_0_to_3_open_sale']['low_6_to_3'], counters['low_over_6_open_high_0_to_3_open_sale']['low_3_to_0'], counters['low_over_6_open_high_0_to_3_open_sale']['high_0_to_3'], counters['low_over_6_open_high_0_to_3_open_sale']['high_3_to_6'], counters['low_over_6_open_high_0_to_3_open_sale']['high_over_6'] = count_change(saleprice_open_differrange, counters['low_over_6_open_high_0_to_3_open_sale']['low_over_6'], counters['low_over_6_open_high_0_to_3_open_sale']['low_6_to_3'], counters['low_over_6_open_high_0_to_3_open_sale']['low_3_to_0'], counters['low_over_6_open_high_0_to_3_open_sale']['high_0_to_3'], counters['low_over_6_open_high_0_to_3_open_sale']['high_3_to_6'], counters['low_over_6_open_high_0_to_3_open_sale']['high_over_6']) - elif next_open_diff < -6 and saleprice_open_differrange > 3 and saleprice_open_differrange < 6: - counters['low_over_6_open_high_3_to_6_open_sale']['low_over_6'],counters['low_over_6_open_high_3_to_6_open_sale']['low_6_to_3'], counters['low_over_6_open_high_3_to_6_open_sale']['low_3_to_0'], counters['low_over_6_open_high_3_to_6_open_sale']['high_0_to_3'], counters['low_over_6_open_high_3_to_6_open_sale']['high_3_to_6'], counters['low_over_6_open_high_3_to_6_open_sale']['high_over_6'] = count_change(saleprice_open_differrange, counters['low_over_6_open_high_3_to_6_open_sale']['low_over_6'], counters['low_over_6_open_high_3_to_6_open_sale']['low_6_to_3'], counters['low_over_6_open_high_3_to_6_open_sale']['low_3_to_0'], counters['low_over_6_open_high_3_to_6_open_sale']['high_0_to_3'], counters['low_over_6_open_high_3_to_6_open_sale']['high_3_to_6'], counters['low_over_6_open_high_3_to_6_open_sale']['high_over_6']) - elif next_open_diff < -6 and saleprice_open_differrange > 6: - counters['low_over_6_open_high_over_6_open_sale']['low_over_6'],counters['low_over_6_open_high_over_6_open_sale']['low_6_to_3'], counters['low_over_6_open_high_over_6_open_sale']['low_3_to_0'], counters['low_over_6_open_high_over_6_open_sale']['high_0_to_3'], counters['low_over_6_open_high_over_6_open_sale']['high_3_to_6'], counters['low_over_6_open_high_over_6_open_sale']['high_over_6'] = count_change(saleprice_open_differrange, counters['low_over_6_open_high_over_6_open_sale']['low_over_6'], counters['low_over_6_open_high_over_6_open_sale']['low_6_to_3'], counters['low_over_6_open_high_over_6_open_sale']['low_3_to_0'], counters['low_over_6_open_high_over_6_open_sale']['high_0_to_3'], counters['low_over_6_open_high_over_6_open_sale']['high_3_to_6'], counters['low_over_6_open_high_over_6_open_sale']['high_over_6']) - elif next_open_diff > -6 and next_open_diff < -3 and saleprice_open_differrange < -6: - counters['low_6_to_3_open_low_over_6_open_sale']['low_over_6'],counters['low_6_to_3_open_low_over_6_open_sale']['low_6_to_3'], counters['low_6_to_3_open_low_over_6_open_sale']['low_3_to_0'], counters['low_6_to_3_open_low_over_6_open_sale']['high_0_to_3'], counters['low_6_to_3_open_low_over_6_open_sale']['high_3_to_6'], counters['low_6_to_3_open_low_over_6_open_sale']['high_over_6'] = count_change(saleprice_open_differrange, counters['low_6_to_3_open_low_over_6_open_sale']['low_over_6'], counters['low_6_to_3_open_low_over_6_open_sale']['low_6_to_3'], counters['low_6_to_3_open_low_over_6_open_sale']['low_3_to_0'], counters['low_6_to_3_open_low_over_6_open_sale']['high_0_to_3'], counters['low_6_to_3_open_low_over_6_open_sale']['high_3_to_6'], counters['low_6_to_3_open_low_over_6_open_sale']['high_over_6']) - elif next_open_diff > -6 and next_open_diff < -3 and saleprice_open_differrange > -6 and saleprice_open_differrange < -3: - counters['low_6_to_3_open_low_6_to_3_open_sale']['low_over_6'],counters['low_6_to_3_open_low_6_to_3_open_sale']['low_6_to_3'], counters['low_6_to_3_open_low_6_to_3_open_sale']['low_3_to_0'], counters['low_6_to_3_open_low_6_to_3_open_sale']['high_0_to_3'], counters['low_6_to_3_open_low_6_to_3_open_sale']['high_3_to_6'], counters['low_6_to_3_open_low_6_to_3_open_sale']['high_over_6'] = count_change(saleprice_open_differrange, counters['low_6_to_3_open_low_6_to_3_open_sale']['low_over_6'], counters['low_6_to_3_open_low_6_to_3_open_sale']['low_6_to_3'], counters['low_6_to_3_open_low_6_to_3_open_sale']['low_3_to_0'], counters['low_6_to_3_open_low_6_to_3_open_sale']['high_0_to_3'], counters['low_6_to_3_open_low_6_to_3_open_sale']['high_3_to_6'], counters['low_6_to_3_open_low_6_to_3_open_sale']['high_over_6']) - elif next_open_diff > -6 and next_open_diff < -3 and saleprice_open_differrange > -3 and saleprice_open_differrange < 0: - counters['low_6_to_3_open_low_3_to_0_open_sale']['low_over_6'],counters['low_6_to_3_open_low_3_to_0_open_sale']['low_6_to_3'], counters['low_6_to_3_open_low_3_to_0_open_sale']['low_3_to_0'], counters['low_6_to_3_open_low_3_to_0_open_sale']['high_0_to_3'], counters['low_6_to_3_open_low_3_to_0_open_sale']['high_3_to_6'], counters['low_6_to_3_open_low_3_to_0_open_sale']['high_over_6'] = count_change(saleprice_open_differrange, counters['low_6_to_3_open_low_3_to_0_open_sale']['low_over_6'], counters['low_6_to_3_open_low_3_to_0_open_sale']['low_6_to_3'], counters['low_6_to_3_open_low_3_to_0_open_sale']['low_3_to_0'], counters['low_6_to_3_open_low_3_to_0_open_sale']['high_0_to_3'], counters['low_6_to_3_open_low_3_to_0_open_sale']['high_3_to_6'], counters['low_6_to_3_open_low_3_to_0_open_sale']['high_over_6']) - elif next_open_diff > -6 and next_open_diff < -3 and saleprice_open_differrange > 0 and saleprice_open_differrange < 3: - counters['low_6_to_3_open_high_0_to_3_open_sale']['low_over_6'],counters['low_6_to_3_open_high_0_to_3_open_sale']['low_6_to_3'], counters['low_6_to_3_open_high_0_to_3_open_sale']['low_3_to_0'], counters['low_6_to_3_open_high_0_to_3_open_sale']['high_0_to_3'], counters['low_6_to_3_open_high_0_to_3_open_sale']['high_3_to_6'], counters['low_6_to_3_open_high_0_to_3_open_sale']['high_over_6'] = count_change(saleprice_open_differrange, counters['low_6_to_3_open_high_0_to_3_open_sale']['low_over_6'], counters['low_6_to_3_open_high_0_to_3_open_sale']['low_6_to_3'], counters['low_6_to_3_open_high_0_to_3_open_sale']['low_3_to_0'], counters['low_6_to_3_open_high_0_to_3_open_sale']['high_0_to_3'], counters['low_6_to_3_open_high_0_to_3_open_sale']['high_3_to_6'], counters['low_6_to_3_open_high_0_to_3_open_sale']['high_over_6']) - elif next_open_diff > -6 and next_open_diff < -3 and saleprice_open_differrange > 3 and saleprice_open_differrange < 6: - counters['low_6_to_3_open_high_3_to_6_open_sale']['low_over_6'],counters['low_6_to_3_open_high_3_to_6_open_sale']['low_6_to_3'], counters['low_6_to_3_open_high_3_to_6_open_sale']['low_3_to_0'], counters['low_6_to_3_open_high_3_to_6_open_sale']['high_0_to_3'], counters['low_6_to_3_open_high_3_to_6_open_sale']['high_3_to_6'], counters['low_6_to_3_open_high_3_to_6_open_sale']['high_over_6'] = count_change(saleprice_open_differrange, counters['low_6_to_3_open_high_3_to_6_open_sale']['low_over_6'], counters['low_6_to_3_open_high_3_to_6_open_sale']['low_6_to_3'], counters['low_6_to_3_open_high_3_to_6_open_sale']['low_3_to_0'], counters['low_6_to_3_open_high_3_to_6_open_sale']['high_0_to_3'], counters['low_6_to_3_open_high_3_to_6_open_sale']['high_3_to_6'], counters['low_6_to_3_open_high_3_to_6_open_sale']['high_over_6']) - elif next_open_diff > -6 and next_open_diff < -3 and saleprice_open_differrange > 6: - counters['low_6_to_3_open_high_over_6_open_sale']['low_over_6'],counters['low_6_to_3_open_high_over_6_open_sale']['low_6_to_3'], counters['low_6_to_3_open_high_over_6_open_sale']['low_3_to_0'], counters['low_6_to_3_open_high_over_6_open_sale']['high_0_to_3'], counters['low_6_to_3_open_high_over_6_open_sale']['high_3_to_6'], counters['low_6_to_3_open_high_over_6_open_sale']['high_over_6'] = count_change(saleprice_open_differrange, counters['low_6_to_3_open_high_over_6_open_sale']['low_over_6'], counters['low_6_to_3_open_high_over_6_open_sale']['low_6_to_3'], counters['low_6_to_3_open_high_over_6_open_sale']['low_3_to_0'], counters['low_6_to_3_open_high_over_6_open_sale']['high_0_to_3'], counters['low_6_to_3_open_high_over_6_open_sale']['high_3_to_6'], counters['low_6_to_3_open_high_over_6_open_sale']['high_over_6']) - elif next_open_diff > -3 and next_open_diff < 0 and saleprice_open_differrange < -6: - counters['low_3_to_0_open_low_over_6_open_sale']['low_over_6'],counters['low_3_to_0_open_low_over_6_open_sale']['low_6_to_3'], counters['low_3_to_0_open_low_over_6_open_sale']['low_3_to_0'], counters['low_3_to_0_open_low_over_6_open_sale']['high_0_to_3'], counters['low_3_to_0_open_low_over_6_open_sale']['high_3_to_6'], counters['low_3_to_0_open_low_over_6_open_sale']['high_over_6'] = count_change(saleprice_open_differrange, counters['low_3_to_0_open_low_over_6_open_sale']['low_over_6'], counters['low_3_to_0_open_low_over_6_open_sale']['low_6_to_3'], counters['low_3_to_0_open_low_over_6_open_sale']['low_3_to_0'], counters['low_3_to_0_open_low_over_6_open_sale']['high_0_to_3'], counters['low_3_to_0_open_low_over_6_open_sale']['high_3_to_6'], counters['low_3_to_0_open_low_over_6_open_sale']['high_over_6']) - elif next_open_diff > -3 and next_open_diff < 0 and saleprice_open_differrange > -6 and saleprice_open_differrange < -3: - counters['low_3_to_0_open_low_6_to_3_open_sale']['low_over_6'],counters['low_3_to_0_open_low_6_to_3_open_sale']['low_6_to_3'], counters['low_3_to_0_open_low_6_to_3_open_sale']['low_3_to_0'], counters['low_3_to_0_open_low_6_to_3_open_sale']['high_0_to_3'], counters['low_3_to_0_open_low_6_to_3_open_sale']['high_3_to_6'], counters['low_3_to_0_open_low_6_to_3_open_sale']['high_over_6'] = count_change(saleprice_open_differrange, counters['low_3_to_0_open_low_6_to_3_open_sale']['low_over_6'], counters['low_3_to_0_open_low_6_to_3_open_sale']['low_6_to_3'], counters['low_3_to_0_open_low_6_to_3_open_sale']['low_3_to_0'], counters['low_3_to_0_open_low_6_to_3_open_sale']['high_0_to_3'], counters['low_3_to_0_open_low_6_to_3_open_sale']['high_3_to_6'], counters['low_3_to_0_open_low_6_to_3_open_sale']['high_over_6']) - elif next_open_diff > -3 and next_open_diff < 0 and saleprice_open_differrange > -3 and saleprice_open_differrange < 0: - counters['low_3_to_0_open_low_3_to_0_open_sale']['low_over_6'],counters['low_3_to_0_open_low_3_to_0_open_sale']['low_6_to_3'], counters['low_3_to_0_open_low_3_to_0_open_sale']['low_3_to_0'], counters['low_3_to_0_open_low_3_to_0_open_sale']['high_0_to_3'], counters['low_3_to_0_open_low_3_to_0_open_sale']['high_3_to_6'], counters['low_3_to_0_open_low_3_to_0_open_sale']['high_over_6'] = count_change(saleprice_open_differrange, counters['low_3_to_0_open_low_3_to_0_open_sale']['low_over_6'], counters['low_3_to_0_open_low_3_to_0_open_sale']['low_6_to_3'], counters['low_3_to_0_open_low_3_to_0_open_sale']['low_3_to_0'], counters['low_3_to_0_open_low_3_to_0_open_sale']['high_0_to_3'], counters['low_3_to_0_open_low_3_to_0_open_sale']['high_3_to_6'], counters['low_3_to_0_open_low_3_to_0_open_sale']['high_over_6']) - elif next_open_diff > -3 and next_open_diff < 0 and saleprice_open_differrange > 0 and saleprice_open_differrange < 3: - counters['low_3_to_0_open_high_0_to_3_open_sale']['low_over_6'],counters['low_3_to_0_open_high_0_to_3_open_sale']['low_6_to_3'], counters['low_3_to_0_open_high_0_to_3_open_sale']['low_3_to_0'], counters['low_3_to_0_open_high_0_to_3_open_sale']['high_0_to_3'], counters['low_3_to_0_open_high_0_to_3_open_sale']['high_3_to_6'], counters['low_3_to_0_open_high_0_to_3_open_sale']['high_over_6'] = count_change(saleprice_open_differrange, counters['low_3_to_0_open_high_0_to_3_open_sale']['low_over_6'], counters['low_3_to_0_open_high_0_to_3_open_sale']['low_6_to_3'], counters['low_3_to_0_open_high_0_to_3_open_sale']['low_3_to_0'], counters['low_3_to_0_open_high_0_to_3_open_sale']['high_0_to_3'], counters['low_3_to_0_open_high_0_to_3_open_sale']['high_3_to_6'], counters['low_3_to_0_open_high_0_to_3_open_sale']['high_over_6']) - elif next_open_diff > -3 and next_open_diff < 0 and saleprice_open_differrange > 3 and saleprice_open_differrange < 6: - counters['low_3_to_0_open_high_3_to_6_open_sale']['low_over_6'],counters['low_3_to_0_open_high_3_to_6_open_sale']['low_6_to_3'], counters['low_3_to_0_open_high_3_to_6_open_sale']['low_3_to_0'], counters['low_3_to_0_open_high_3_to_6_open_sale']['high_0_to_3'], counters['low_3_to_0_open_high_3_to_6_open_sale']['high_3_to_6'], counters['low_3_to_0_open_high_3_to_6_open_sale']['high_over_6'] = count_change(saleprice_open_differrange, counters['low_3_to_0_open_high_3_to_6_open_sale']['low_over_6'], counters['low_3_to_0_open_high_3_to_6_open_sale']['low_6_to_3'], counters['low_3_to_0_open_high_3_to_6_open_sale']['low_3_to_0'], counters['low_3_to_0_open_high_3_to_6_open_sale']['high_0_to_3'], counters['low_3_to_0_open_high_3_to_6_open_sale']['high_3_to_6'], counters['low_3_to_0_open_high_3_to_6_open_sale']['high_over_6']) - elif next_open_diff > -3 and next_open_diff < 0 and saleprice_open_differrange > 6: - counters['low_3_to_0_open_high_over_6_open_sale']['low_over_6'],counters['low_3_to_0_open_high_over_6_open_sale']['low_6_to_3'], counters['low_3_to_0_open_high_over_6_open_sale']['low_3_to_0'], counters['low_3_to_0_open_high_over_6_open_sale']['high_0_to_3'], counters['low_3_to_0_open_high_over_6_open_sale']['high_3_to_6'], counters['low_3_to_0_open_high_over_6_open_sale']['high_over_6'] = count_change(saleprice_open_differrange, counters['low_3_to_0_open_high_over_6_open_sale']['low_over_6'], counters['low_3_to_0_open_high_over_6_open_sale']['low_6_to_3'], counters['low_3_to_0_open_high_over_6_open_sale']['low_3_to_0'], counters['low_3_to_0_open_high_over_6_open_sale']['high_0_to_3'], counters['low_3_to_0_open_high_over_6_open_sale']['high_3_to_6'], counters['low_3_to_0_open_high_over_6_open_sale']['high_over_6']) - elif next_open_diff > 0 and next_open_diff < 3 and saleprice_open_differrange < -6: - counters['high_0_to_3_open_low_over_6_open_sale']['low_over_6'],counters['high_0_to_3_open_low_over_6_open_sale']['low_6_to_3'], counters['high_0_to_3_open_low_over_6_open_sale']['low_3_to_0'], counters['high_0_to_3_open_low_over_6_open_sale']['high_0_to_3'], counters['high_0_to_3_open_low_over_6_open_sale']['high_3_to_6'], counters['high_0_to_3_open_low_over_6_open_sale']['high_over_6'] = count_change(saleprice_open_differrange, counters['high_0_to_3_open_low_over_6_open_sale']['low_over_6'], counters['high_0_to_3_open_low_over_6_open_sale']['low_6_to_3'], counters['high_0_to_3_open_low_over_6_open_sale']['low_3_to_0'], counters['high_0_to_3_open_low_over_6_open_sale']['high_0_to_3'], counters['high_0_to_3_open_low_over_6_open_sale']['high_3_to_6'], counters['high_0_to_3_open_low_over_6_open_sale']['high_over_6']) - elif next_open_diff > 0 and next_open_diff < 3 and saleprice_open_differrange > -6 and saleprice_open_differrange < -3: - counters['high_0_to_3_open_low_6_to_3_open_sale']['low_over_6'],counters['high_0_to_3_open_low_6_to_3_open_sale']['low_6_to_3'], counters['high_0_to_3_open_low_6_to_3_open_sale']['low_3_to_0'], counters['high_0_to_3_open_low_6_to_3_open_sale']['high_0_to_3'], counters['high_0_to_3_open_low_6_to_3_open_sale']['high_3_to_6'], counters['high_0_to_3_open_low_6_to_3_open_sale']['high_over_6'] = count_change(saleprice_open_differrange, counters['high_0_to_3_open_low_6_to_3_open_sale']['low_over_6'], counters['high_0_to_3_open_low_6_to_3_open_sale']['low_6_to_3'], counters['high_0_to_3_open_low_6_to_3_open_sale']['low_3_to_0'], counters['high_0_to_3_open_low_6_to_3_open_sale']['high_0_to_3'], counters['high_0_to_3_open_low_6_to_3_open_sale']['high_3_to_6'], counters['high_0_to_3_open_low_6_to_3_open_sale']['high_over_6']) - elif next_open_diff > 0 and next_open_diff < 3 and saleprice_open_differrange > -3 and saleprice_open_differrange < 0: - counters['high_0_to_3_open_low_3_to_0_open_sale']['low_over_6'],counters['high_0_to_3_open_low_3_to_0_open_sale']['low_6_to_3'], counters['high_0_to_3_open_low_3_to_0_open_sale']['low_3_to_0'], counters['high_0_to_3_open_low_3_to_0_open_sale']['high_0_to_3'], counters['high_0_to_3_open_low_3_to_0_open_sale']['high_3_to_6'], counters['high_0_to_3_open_low_3_to_0_open_sale']['high_over_6'] = count_change(saleprice_open_differrange, counters['high_0_to_3_open_low_3_to_0_open_sale']['low_over_6'], counters['high_0_to_3_open_low_3_to_0_open_sale']['low_6_to_3'], counters['high_0_to_3_open_low_3_to_0_open_sale']['low_3_to_0'], counters['high_0_to_3_open_low_3_to_0_open_sale']['high_0_to_3'], counters['high_0_to_3_open_low_3_to_0_open_sale']['high_3_to_6'], counters['high_0_to_3_open_low_3_to_0_open_sale']['high_over_6']) - elif next_open_diff > 0 and next_open_diff < 3 and saleprice_open_differrange > 0 and saleprice_open_differrange < 3: - counters['high_0_to_3_open_high_0_to_3_open_sale']['low_over_6'],counters['high_0_to_3_open_high_0_to_3_open_sale']['low_6_to_3'], counters['high_0_to_3_open_high_0_to_3_open_sale']['low_3_to_0'], counters['high_0_to_3_open_high_0_to_3_open_sale']['high_0_to_3'], counters['high_0_to_3_open_high_0_to_3_open_sale']['high_3_to_6'], counters['high_0_to_3_open_high_0_to_3_open_sale']['high_over_6'] = count_change(saleprice_open_differrange, counters['high_0_to_3_open_high_0_to_3_open_sale']['low_over_6'], counters['high_0_to_3_open_high_0_to_3_open_sale']['low_6_to_3'], counters['high_0_to_3_open_high_0_to_3_open_sale']['low_3_to_0'], counters['high_0_to_3_open_high_0_to_3_open_sale']['high_0_to_3'], counters['high_0_to_3_open_high_0_to_3_open_sale']['high_3_to_6'], counters['high_0_to_3_open_high_0_to_3_open_sale']['high_over_6']) - elif next_open_diff > 0 and next_open_diff < 3 and saleprice_open_differrange > 3 and saleprice_open_differrange < 6: - counters['high_0_to_3_open_high_3_to_6_open_sale']['low_over_6'],counters['high_0_to_3_open_high_3_to_6_open_sale']['low_6_to_3'], counters['high_0_to_3_open_high_3_to_6_open_sale']['low_3_to_0'], counters['high_0_to_3_open_high_3_to_6_open_sale']['high_0_to_3'], counters['high_0_to_3_open_high_3_to_6_open_sale']['high_3_to_6'], counters['high_0_to_3_open_high_3_to_6_open_sale']['high_over_6'] = count_change(saleprice_open_differrange, counters['high_0_to_3_open_high_3_to_6_open_sale']['low_over_6'], counters['high_0_to_3_open_high_3_to_6_open_sale']['low_6_to_3'], counters['high_0_to_3_open_high_3_to_6_open_sale']['low_3_to_0'], counters['high_0_to_3_open_high_3_to_6_open_sale']['high_0_to_3'], counters['high_0_to_3_open_high_3_to_6_open_sale']['high_3_to_6'], counters['high_0_to_3_open_high_3_to_6_open_sale']['high_over_6']) - elif next_open_diff > 0 and next_open_diff < 3 and saleprice_open_differrange > 6: - counters['high_0_to_3_open_high_over_6_open_sale']['low_over_6'],counters['high_0_to_3_open_high_over_6_open_sale']['low_6_to_3'], counters['high_0_to_3_open_high_over_6_open_sale']['low_3_to_0'], counters['high_0_to_3_open_high_over_6_open_sale']['high_0_to_3'], counters['high_0_to_3_open_high_over_6_open_sale']['high_3_to_6'], counters['high_0_to_3_open_high_over_6_open_sale']['high_over_6'] = count_change(saleprice_open_differrange, counters['high_0_to_3_open_high_over_6_open_sale']['low_over_6'], counters['high_0_to_3_open_high_over_6_open_sale']['low_6_to_3'], counters['high_0_to_3_open_high_over_6_open_sale']['low_3_to_0'], counters['high_0_to_3_open_high_over_6_open_sale']['high_0_to_3'], counters['high_0_to_3_open_high_over_6_open_sale']['high_3_to_6'], counters['high_0_to_3_open_high_over_6_open_sale']['high_over_6']) - elif next_open_diff > 3 and next_open_diff < 6 and saleprice_open_differrange < -6: - counters['high_3_to_6_open_low_over_6_open_sale']['low_over_6'],counters['high_3_to_6_open_low_over_6_open_sale']['low_6_to_3'], counters['high_3_to_6_open_low_over_6_open_sale']['low_3_to_0'], counters['high_3_to_6_open_low_over_6_open_sale']['high_0_to_3'], counters['high_3_to_6_open_low_over_6_open_sale']['high_3_to_6'], counters['high_3_to_6_open_low_over_6_open_sale']['high_over_6'] = count_change(saleprice_open_differrange, counters['high_3_to_6_open_low_over_6_open_sale']['low_over_6'], counters['high_3_to_6_open_low_over_6_open_sale']['low_6_to_3'], counters['high_3_to_6_open_low_over_6_open_sale']['low_3_to_0'], counters['high_3_to_6_open_low_over_6_open_sale']['high_0_to_3'], counters['high_3_to_6_open_low_over_6_open_sale']['high_3_to_6'], counters['high_3_to_6_open_low_over_6_open_sale']['high_over_6']) - elif next_open_diff > 3 and next_open_diff < 6 and saleprice_open_differrange > -6 and saleprice_open_differrange < -3: - counters['high_3_to_6_open_low_6_to_3_open_sale']['low_over_6'],counters['high_3_to_6_open_low_6_to_3_open_sale']['low_6_to_3'], counters['high_3_to_6_open_low_6_to_3_open_sale']['low_3_to_0'], counters['high_3_to_6_open_low_6_to_3_open_sale']['high_0_to_3'], counters['high_3_to_6_open_low_6_to_3_open_sale']['high_3_to_6'], counters['high_3_to_6_open_low_6_to_3_open_sale']['high_over_6'] = count_change(saleprice_open_differrange, counters['high_3_to_6_open_low_6_to_3_open_sale']['low_over_6'], counters['high_3_to_6_open_low_6_to_3_open_sale']['low_6_to_3'], counters['high_3_to_6_open_low_6_to_3_open_sale']['low_3_to_0'], counters['high_3_to_6_open_low_6_to_3_open_sale']['high_0_to_3'], counters['high_3_to_6_open_low_6_to_3_open_sale']['high_3_to_6'], counters['high_3_to_6_open_low_6_to_3_open_sale']['high_over_6']) - elif next_open_diff > 3 and next_open_diff < 6 and saleprice_open_differrange > -3 and saleprice_open_differrange < 0: - counters['high_3_to_6_open_low_3_to_0_open_sale']['low_over_6'],counters['high_3_to_6_open_low_3_to_0_open_sale']['low_6_to_3'], counters['high_3_to_6_open_low_3_to_0_open_sale']['low_3_to_0'], counters['high_3_to_6_open_low_3_to_0_open_sale']['high_0_to_3'], counters['high_3_to_6_open_low_3_to_0_open_sale']['high_3_to_6'], counters['high_3_to_6_open_low_3_to_0_open_sale']['high_over_6'] = count_change(saleprice_open_differrange, counters['high_3_to_6_open_low_3_to_0_open_sale']['low_over_6'], counters['high_3_to_6_open_low_3_to_0_open_sale']['low_6_to_3'], counters['high_3_to_6_open_low_3_to_0_open_sale']['low_3_to_0'], counters['high_3_to_6_open_low_3_to_0_open_sale']['high_0_to_3'], counters['high_3_to_6_open_low_3_to_0_open_sale']['high_3_to_6'], counters['high_3_to_6_open_low_3_to_0_open_sale']['high_over_6']) - elif next_open_diff > 3 and next_open_diff < 6 and saleprice_open_differrange > 0 and saleprice_open_differrange < 3: - counters['high_3_to_6_open_high_0_to_3_open_sale']['low_over_6'],counters['high_3_to_6_open_high_0_to_3_open_sale']['low_6_to_3'], counters['high_3_to_6_open_high_0_to_3_open_sale']['low_3_to_0'], counters['high_3_to_6_open_high_0_to_3_open_sale']['high_0_to_3'], counters['high_3_to_6_open_high_0_to_3_open_sale']['high_3_to_6'], counters['high_3_to_6_open_high_0_to_3_open_sale']['high_over_6'] = count_change(saleprice_open_differrange, counters['high_3_to_6_open_high_0_to_3_open_sale']['low_over_6'], counters['high_3_to_6_open_high_0_to_3_open_sale']['low_6_to_3'], counters['high_3_to_6_open_high_0_to_3_open_sale']['low_3_to_0'], counters['high_3_to_6_open_high_0_to_3_open_sale']['high_0_to_3'], counters['high_3_to_6_open_high_0_to_3_open_sale']['high_3_to_6'], counters['high_3_to_6_open_high_0_to_3_open_sale']['high_over_6']) - elif next_open_diff > 3 and next_open_diff < 6 and saleprice_open_differrange > 3 and saleprice_open_differrange < 6: - counters['high_3_to_6_open_high_3_to_6_open_sale']['low_over_6'],counters['high_3_to_6_open_high_3_to_6_open_sale']['low_6_to_3'], counters['high_3_to_6_open_high_3_to_6_open_sale']['low_3_to_0'], counters['high_3_to_6_open_high_3_to_6_open_sale']['high_0_to_3'], counters['high_3_to_6_open_high_3_to_6_open_sale']['high_3_to_6'], counters['high_3_to_6_open_high_3_to_6_open_sale']['high_over_6'] = count_change(saleprice_open_differrange, counters['high_3_to_6_open_high_3_to_6_open_sale']['low_over_6'], counters['high_3_to_6_open_high_3_to_6_open_sale']['low_6_to_3'], counters['high_3_to_6_open_high_3_to_6_open_sale']['low_3_to_0'], counters['high_3_to_6_open_high_3_to_6_open_sale']['high_0_to_3'], counters['high_3_to_6_open_high_3_to_6_open_sale']['high_3_to_6'], counters['high_3_to_6_open_high_3_to_6_open_sale']['high_over_6']) - elif next_open_diff > 3 and next_open_diff < 6 and saleprice_open_differrange > 6: - counters['high_3_to_6_open_high_over_6_open_sale']['low_over_6'],counters['high_3_to_6_open_high_over_6_open_sale']['low_6_to_3'], counters['high_3_to_6_open_high_over_6_open_sale']['low_3_to_0'], counters['high_3_to_6_open_high_over_6_open_sale']['high_0_to_3'], counters['high_3_to_6_open_high_over_6_open_sale']['high_3_to_6'], counters['high_3_to_6_open_high_over_6_open_sale']['high_over_6'] = count_change(saleprice_open_differrange, counters['high_3_to_6_open_high_over_6_open_sale']['low_over_6'], counters['high_3_to_6_open_high_over_6_open_sale']['low_6_to_3'], counters['high_3_to_6_open_high_over_6_open_sale']['low_3_to_0'], counters['high_3_to_6_open_high_over_6_open_sale']['high_0_to_3'], counters['high_3_to_6_open_high_over_6_open_sale']['high_3_to_6'], counters['high_3_to_6_open_high_over_6_open_sale']['high_over_6']) - elif next_open_diff > 6 and saleprice_open_differrange < -6: - counters['high_over_6_open_low_over_6_open_sale']['low_over_6'],counters['high_over_6_open_low_over_6_open_sale']['low_6_to_3'], counters['high_over_6_open_low_over_6_open_sale']['low_3_to_0'], counters['high_over_6_open_low_over_6_open_sale']['high_0_to_3'], counters['high_over_6_open_low_over_6_open_sale']['high_3_to_6'], counters['high_over_6_open_low_over_6_open_sale']['high_over_6'] = count_change(saleprice_open_differrange, counters['high_over_6_open_low_over_6_open_sale']['low_over_6'], counters['high_over_6_open_low_over_6_open_sale']['low_6_to_3'], counters['high_over_6_open_low_over_6_open_sale']['low_3_to_0'], counters['high_over_6_open_low_over_6_open_sale']['high_0_to_3'], counters['high_over_6_open_low_over_6_open_sale']['high_3_to_6'], counters['high_over_6_open_low_over_6_open_sale']['high_over_6']) - elif next_open_diff > 6 and saleprice_open_differrange > -6 and saleprice_open_differrange < -3: - counters['high_over_6_open_low_6_to_3_open_sale']['low_over_6'],counters['high_over_6_open_low_6_to_3_open_sale']['low_6_to_3'], counters['high_over_6_open_low_6_to_3_open_sale']['low_3_to_0'], counters['high_over_6_open_low_6_to_3_open_sale']['high_0_to_3'], counters['high_over_6_open_low_6_to_3_open_sale']['high_3_to_6'], counters['high_over_6_open_low_6_to_3_open_sale']['high_over_6'] = count_change(saleprice_open_differrange, counters['high_over_6_open_low_6_to_3_open_sale']['low_over_6'], counters['high_over_6_open_low_6_to_3_open_sale']['low_6_to_3'], counters['high_over_6_open_low_6_to_3_open_sale']['low_3_to_0'], counters['high_over_6_open_low_6_to_3_open_sale']['high_0_to_3'], counters['high_over_6_open_low_6_to_3_open_sale']['high_3_to_6'], counters['high_over_6_open_low_6_to_3_open_sale']['high_over_6']) - elif next_open_diff > 6 and saleprice_open_differrange > -3 and saleprice_open_differrange < 0: - counters['high_over_6_open_low_3_to_0_open_sale']['low_over_6'],counters['high_over_6_open_low_3_to_0_open_sale']['low_6_to_3'], counters['high_over_6_open_low_3_to_0_open_sale']['low_3_to_0'], counters['high_over_6_open_low_3_to_0_open_sale']['high_0_to_3'], counters['high_over_6_open_low_3_to_0_open_sale']['high_3_to_6'], counters['high_over_6_open_low_3_to_0_open_sale']['high_over_6'] = count_change(saleprice_open_differrange, counters['high_over_6_open_low_3_to_0_open_sale']['low_over_6'], counters['high_over_6_open_low_3_to_0_open_sale']['low_6_to_3'], counters['high_over_6_open_low_3_to_0_open_sale']['low_3_to_0'], counters['high_over_6_open_low_3_to_0_open_sale']['high_0_to_3'], counters['high_over_6_open_low_3_to_0_open_sale']['high_3_to_6'], counters['high_over_6_open_low_3_to_0_open_sale']['high_over_6']) - elif next_open_diff > 6 and saleprice_open_differrange > 0 and saleprice_open_differrange < 3: - counters['high_over_6_open_high_0_to_3_open_sale']['low_over_6'],counters['high_over_6_open_high_0_to_3_open_sale']['low_6_to_3'], counters['high_over_6_open_high_0_to_3_open_sale']['low_3_to_0'], counters['high_over_6_open_high_0_to_3_open_sale']['high_0_to_3'], counters['high_over_6_open_high_0_to_3_open_sale']['high_3_to_6'], counters['high_over_6_open_high_0_to_3_open_sale']['high_over_6'] = count_change(saleprice_open_differrange, counters['high_over_6_open_high_0_to_3_open_sale']['low_over_6'], counters['high_over_6_open_high_0_to_3_open_sale']['low_6_to_3'], counters['high_over_6_open_high_0_to_3_open_sale']['low_3_to_0'], counters['high_over_6_open_high_0_to_3_open_sale']['high_0_to_3'], counters['high_over_6_open_high_0_to_3_open_sale']['high_3_to_6'], counters['high_over_6_open_high_0_to_3_open_sale']['high_over_6']) - elif next_open_diff > 6 and saleprice_open_differrange > 3 and saleprice_open_differrange < 6: - counters['high_over_6_open_high_3_to_6_open_sale']['low_over_6'],counters['high_over_6_open_high_3_to_6_open_sale']['low_6_to_3'], counters['high_over_6_open_high_3_to_6_open_sale']['low_3_to_0'], counters['high_over_6_open_high_3_to_6_open_sale']['high_0_to_3'], counters['high_over_6_open_high_3_to_6_open_sale']['high_3_to_6'], counters['high_over_6_open_high_3_to_6_open_sale']['high_over_6'] = count_change(saleprice_open_differrange, counters['high_over_6_open_high_3_to_6_open_sale']['low_over_6'], counters['high_over_6_open_high_3_to_6_open_sale']['low_6_to_3'], counters['high_over_6_open_high_3_to_6_open_sale']['low_3_to_0'], counters['high_over_6_open_high_3_to_6_open_sale']['high_0_to_3'], counters['high_over_6_open_high_3_to_6_open_sale']['high_3_to_6'], counters['high_over_6_open_high_3_to_6_open_sale']['high_over_6']) - elif next_open_diff > 6 and saleprice_open_differrange > 6: - counters['high_over_6_open_high_over_6_open_sale']['low_over_6'],counters['high_over_6_open_high_over_6_open_sale']['low_6_to_3'], counters['high_over_6_open_high_over_6_open_sale']['low_3_to_0'], counters['high_over_6_open_high_over_6_open_sale']['high_0_to_3'], counters['high_over_6_open_high_over_6_open_sale']['high_3_to_6'], counters['high_over_6_open_high_over_6_open_sale']['high_over_6'] = count_change(saleprice_open_differrange, counters['high_over_6_open_high_over_6_open_sale']['low_over_6'], counters['high_over_6_open_high_over_6_open_sale']['low_6_to_3'], counters['high_over_6_open_high_over_6_open_sale']['low_3_to_0'], counters['high_over_6_open_high_over_6_open_sale']['high_0_to_3'], counters['high_over_6_open_high_over_6_open_sale']['high_3_to_6'], counters['high_over_6_open_high_over_6_open_sale']['high_over_6']) - - # 组合场景: 开盘建仓 清仓日开盘清仓 盈亏分布 - if next_open_diff < -6 and saleprice_open_differrange < -6: - counters['low_over_6_open_low_over_6_close_sale']['low_over_6'],counters['low_over_6_open_low_over_6_close_sale']['low_6_to_3'], counters['low_over_6_open_low_over_6_close_sale']['low_3_to_0'], counters['low_over_6_open_low_over_6_close_sale']['high_0_to_3'], counters['low_over_6_open_low_over_6_close_sale']['high_3_to_6'], counters['low_over_6_open_low_over_6_close_sale']['high_over_6'] = count_change(saleprice_open_differrange, counters['low_over_6_open_low_over_6_close_sale']['low_over_6'], counters['low_over_6_open_low_over_6_close_sale']['low_6_to_3'], counters['low_over_6_open_low_over_6_close_sale']['low_3_to_0'], counters['low_over_6_open_low_over_6_close_sale']['high_0_to_3'], counters['low_over_6_open_low_over_6_close_sale']['high_3_to_6'], counters['low_over_6_open_low_over_6_close_sale']['high_over_6']) - elif next_open_diff < -6 and saleprice_open_differrange > -6 and saleprice_open_differrange < -3: - counters['low_over_6_open_low_6_to_3_close_sale']['low_over_6'],counters['low_over_6_open_low_6_to_3_close_sale']['low_6_to_3'], counters['low_over_6_open_low_6_to_3_close_sale']['low_3_to_0'], counters['low_over_6_open_low_6_to_3_close_sale']['high_0_to_3'], counters['low_over_6_open_low_6_to_3_close_sale']['high_3_to_6'], counters['low_over_6_open_low_6_to_3_close_sale']['high_over_6'] = count_change(saleprice_open_differrange, counters['low_over_6_open_low_6_to_3_close_sale']['low_over_6'], counters['low_over_6_open_low_6_to_3_close_sale']['low_6_to_3'], counters['low_over_6_open_low_6_to_3_close_sale']['low_3_to_0'], counters['low_over_6_open_low_6_to_3_close_sale']['high_0_to_3'], counters['low_over_6_open_low_6_to_3_close_sale']['high_3_to_6'], counters['low_over_6_open_low_6_to_3_close_sale']['high_over_6']) - elif next_open_diff < -6 and saleprice_open_differrange > -3 and saleprice_open_differrange < 0: - counters['low_over_6_open_low_3_to_0_close_sale']['low_over_6'],counters['low_over_6_open_low_3_to_0_close_sale']['low_6_to_3'], counters['low_over_6_open_low_3_to_0_close_sale']['low_3_to_0'], counters['low_over_6_open_low_3_to_0_close_sale']['high_0_to_3'], counters['low_over_6_open_low_3_to_0_close_sale']['high_3_to_6'], counters['low_over_6_open_low_3_to_0_close_sale']['high_over_6'] = count_change(saleprice_open_differrange, counters['low_over_6_open_low_3_to_0_close_sale']['low_over_6'], counters['low_over_6_open_low_3_to_0_close_sale']['low_6_to_3'], counters['low_over_6_open_low_3_to_0_close_sale']['low_3_to_0'], counters['low_over_6_open_low_3_to_0_close_sale']['high_0_to_3'], counters['low_over_6_open_low_3_to_0_close_sale']['high_3_to_6'], counters['low_over_6_open_low_3_to_0_close_sale']['high_over_6']) - elif next_open_diff < -6 and saleprice_open_differrange > 0 and saleprice_open_differrange < 3: - counters['low_over_6_open_high_0_to_3_close_sale']['low_over_6'],counters['low_over_6_open_high_0_to_3_close_sale']['low_6_to_3'], counters['low_over_6_open_high_0_to_3_close_sale']['low_3_to_0'], counters['low_over_6_open_high_0_to_3_close_sale']['high_0_to_3'], counters['low_over_6_open_high_0_to_3_close_sale']['high_3_to_6'], counters['low_over_6_open_high_0_to_3_close_sale']['high_over_6'] = count_change(saleprice_open_differrange, counters['low_over_6_open_high_0_to_3_close_sale']['low_over_6'], counters['low_over_6_open_high_0_to_3_close_sale']['low_6_to_3'], counters['low_over_6_open_high_0_to_3_close_sale']['low_3_to_0'], counters['low_over_6_open_high_0_to_3_close_sale']['high_0_to_3'], counters['low_over_6_open_high_0_to_3_close_sale']['high_3_to_6'], counters['low_over_6_open_high_0_to_3_close_sale']['high_over_6']) - elif next_open_diff < -6 and saleprice_open_differrange > 3 and saleprice_open_differrange < 6: - counters['low_over_6_open_high_3_to_6_close_sale']['low_over_6'],counters['low_over_6_open_high_3_to_6_close_sale']['low_6_to_3'], counters['low_over_6_open_high_3_to_6_close_sale']['low_3_to_0'], counters['low_over_6_open_high_3_to_6_close_sale']['high_0_to_3'], counters['low_over_6_open_high_3_to_6_close_sale']['high_3_to_6'], counters['low_over_6_open_high_3_to_6_close_sale']['high_over_6'] = count_change(saleprice_open_differrange, counters['low_over_6_open_high_3_to_6_close_sale']['low_over_6'], counters['low_over_6_open_high_3_to_6_close_sale']['low_6_to_3'], counters['low_over_6_open_high_3_to_6_close_sale']['low_3_to_0'], counters['low_over_6_open_high_3_to_6_close_sale']['high_0_to_3'], counters['low_over_6_open_high_3_to_6_close_sale']['high_3_to_6'], counters['low_over_6_open_high_3_to_6_close_sale']['high_over_6']) - elif next_open_diff < -6 and saleprice_open_differrange > 6: - counters['low_over_6_open_high_over_6_close_sale']['low_over_6'],counters['low_over_6_open_high_over_6_close_sale']['low_6_to_3'], counters['low_over_6_open_high_over_6_close_sale']['low_3_to_0'], counters['low_over_6_open_high_over_6_close_sale']['high_0_to_3'], counters['low_over_6_open_high_over_6_close_sale']['high_3_to_6'], counters['low_over_6_open_high_over_6_close_sale']['high_over_6'] = count_change(saleprice_open_differrange, counters['low_over_6_open_high_over_6_close_sale']['low_over_6'], counters['low_over_6_open_high_over_6_close_sale']['low_6_to_3'], counters['low_over_6_open_high_over_6_close_sale']['low_3_to_0'], counters['low_over_6_open_high_over_6_close_sale']['high_0_to_3'], counters['low_over_6_open_high_over_6_close_sale']['high_3_to_6'], counters['low_over_6_open_high_over_6_close_sale']['high_over_6']) - elif next_open_diff > -6 and next_open_diff < -3 and saleprice_open_differrange < -6: - counters['low_6_to_3_open_low_over_6_close_sale']['low_over_6'],counters['low_6_to_3_open_low_over_6_close_sale']['low_6_to_3'], counters['low_6_to_3_open_low_over_6_close_sale']['low_3_to_0'], counters['low_6_to_3_open_low_over_6_close_sale']['high_0_to_3'], counters['low_6_to_3_open_low_over_6_close_sale']['high_3_to_6'], counters['low_6_to_3_open_low_over_6_close_sale']['high_over_6'] = count_change(saleprice_open_differrange, counters['low_6_to_3_open_low_over_6_close_sale']['low_over_6'], counters['low_6_to_3_open_low_over_6_close_sale']['low_6_to_3'], counters['low_6_to_3_open_low_over_6_close_sale']['low_3_to_0'], counters['low_6_to_3_open_low_over_6_close_sale']['high_0_to_3'], counters['low_6_to_3_open_low_over_6_close_sale']['high_3_to_6'], counters['low_6_to_3_open_low_over_6_close_sale']['high_over_6']) - elif next_open_diff > -6 and next_open_diff < -3 and saleprice_open_differrange > -6 and saleprice_open_differrange < -3: - counters['low_6_to_3_open_low_6_to_3_close_sale']['low_over_6'],counters['low_6_to_3_open_low_6_to_3_close_sale']['low_6_to_3'], counters['low_6_to_3_open_low_6_to_3_close_sale']['low_3_to_0'], counters['low_6_to_3_open_low_6_to_3_close_sale']['high_0_to_3'], counters['low_6_to_3_open_low_6_to_3_close_sale']['high_3_to_6'], counters['low_6_to_3_open_low_6_to_3_close_sale']['high_over_6'] = count_change(saleprice_open_differrange, counters['low_6_to_3_open_low_6_to_3_close_sale']['low_over_6'], counters['low_6_to_3_open_low_6_to_3_close_sale']['low_6_to_3'], counters['low_6_to_3_open_low_6_to_3_close_sale']['low_3_to_0'], counters['low_6_to_3_open_low_6_to_3_close_sale']['high_0_to_3'], counters['low_6_to_3_open_low_6_to_3_close_sale']['high_3_to_6'], counters['low_6_to_3_open_low_6_to_3_close_sale']['high_over_6']) - elif next_open_diff > -6 and next_open_diff < -3 and saleprice_open_differrange > -3 and saleprice_open_differrange < 0: - counters['low_6_to_3_open_low_3_to_0_close_sale']['low_over_6'],counters['low_6_to_3_open_low_3_to_0_close_sale']['low_6_to_3'], counters['low_6_to_3_open_low_3_to_0_close_sale']['low_3_to_0'], counters['low_6_to_3_open_low_3_to_0_close_sale']['high_0_to_3'], counters['low_6_to_3_open_low_3_to_0_close_sale']['high_3_to_6'], counters['low_6_to_3_open_low_3_to_0_close_sale']['high_over_6'] = count_change(saleprice_open_differrange, counters['low_6_to_3_open_low_3_to_0_close_sale']['low_over_6'], counters['low_6_to_3_open_low_3_to_0_close_sale']['low_6_to_3'], counters['low_6_to_3_open_low_3_to_0_close_sale']['low_3_to_0'], counters['low_6_to_3_open_low_3_to_0_close_sale']['high_0_to_3'], counters['low_6_to_3_open_low_3_to_0_close_sale']['high_3_to_6'], counters['low_6_to_3_open_low_3_to_0_close_sale']['high_over_6']) - elif next_open_diff > -6 and next_open_diff < -3 and saleprice_open_differrange > 0 and saleprice_open_differrange < 3: - counters['low_6_to_3_open_high_0_to_3_close_sale']['low_over_6'],counters['low_6_to_3_open_high_0_to_3_close_sale']['low_6_to_3'], counters['low_6_to_3_open_high_0_to_3_close_sale']['low_3_to_0'], counters['low_6_to_3_open_high_0_to_3_close_sale']['high_0_to_3'], counters['low_6_to_3_open_high_0_to_3_close_sale']['high_3_to_6'], counters['low_6_to_3_open_high_0_to_3_close_sale']['high_over_6'] = count_change(saleprice_open_differrange, counters['low_6_to_3_open_high_0_to_3_close_sale']['low_over_6'], counters['low_6_to_3_open_high_0_to_3_close_sale']['low_6_to_3'], counters['low_6_to_3_open_high_0_to_3_close_sale']['low_3_to_0'], counters['low_6_to_3_open_high_0_to_3_close_sale']['high_0_to_3'], counters['low_6_to_3_open_high_0_to_3_close_sale']['high_3_to_6'], counters['low_6_to_3_open_high_0_to_3_close_sale']['high_over_6']) - elif next_open_diff > -6 and next_open_diff < -3 and saleprice_open_differrange > 3 and saleprice_open_differrange < 6: - counters['low_6_to_3_open_high_3_to_6_close_sale']['low_over_6'],counters['low_6_to_3_open_high_3_to_6_close_sale']['low_6_to_3'], counters['low_6_to_3_open_high_3_to_6_close_sale']['low_3_to_0'], counters['low_6_to_3_open_high_3_to_6_close_sale']['high_0_to_3'], counters['low_6_to_3_open_high_3_to_6_close_sale']['high_3_to_6'], counters['low_6_to_3_open_high_3_to_6_close_sale']['high_over_6'] = count_change(saleprice_open_differrange, counters['low_6_to_3_open_high_3_to_6_close_sale']['low_over_6'], counters['low_6_to_3_open_high_3_to_6_close_sale']['low_6_to_3'], counters['low_6_to_3_open_high_3_to_6_close_sale']['low_3_to_0'], counters['low_6_to_3_open_high_3_to_6_close_sale']['high_0_to_3'], counters['low_6_to_3_open_high_3_to_6_close_sale']['high_3_to_6'], counters['low_6_to_3_open_high_3_to_6_close_sale']['high_over_6']) +def main(): + + # 遍历日期列表 + for i, date in enumerate(date_list): + if i+2 < len(date_list): + # 将日期转换为字符串格式,以便在SQL查询中使用 + date_str = date.strftime('%Y-%m-%d') + if os.path.exists(f'D:/calculate_data/{date_str}_stock.csv'): + df = pd.read_csv(f'D:/calculate_data/{date_str}_stock.csv') + limit_list = df['code'].tolist() + for code in limit_list: + # 总统计数 + counters['total'] += 1 + print(f'正在处理{date_str} - {code}的数据-从文件获取') + saleopen = df.loc[df['code'] == code, 'saleprice_open'].values[0] + saleclose = df.loc[df['code'] == code, 'saleprice_close'].values[0] + nextclose = df.loc[df['code'] == code, 'next_close'].values[0] + # 计算清仓日开盘、收盘价 + saleprice_open_differrange = 100 * (saleopen - df.loc[df['code'] == code, 'next_open'].values[0])/df.loc[df['code'] == code, 'next_open'].values[0] + saleprice_close_differrange = 100 * (saleclose - nextclose)/nextclose + + # 第二日开盘价分布 + next_open_diff = df.loc[df['code'] == code, 'next_open_diff'].values[0] + counters['open']['low_over_6'],counters['open']['low_6_to_3'], counters['open']['low_3_to_0'], counters['open']['high_0_to_3'], counters['open']['high_3_to_6'], counters['open']['high_over_6'] = count_change(next_open_diff, counters['open']['low_over_6'], counters['open']['low_6_to_3'], counters['open']['low_3_to_0'], counters['open']['high_0_to_3'], counters['open']['high_3_to_6'], counters['open']['high_over_6']) - - - - - # 组合场景 低开盘-低清仓 低开盘-高清仓 低开盘-正常清仓 正常开盘-低清仓 正常开盘-高清仓 正常开盘-正常清仓 高开盘-低清仓 高开盘-高清仓 高开盘-正常清仓 - # 组合之类再进行计算盈亏分布 - if next_open_diff < -6 : - if saleprice_open_differrange < -3: - low_open_low_sale_count += 1 - elif saleprice_open_differrange > 3: - low_open_high_sale_count += 1 - else: - low_open_normal_sale_count += 1 - - if saleprice_open_differrange < -3: - if saleprice_open_differrange < -5: - low_open_low_sale_high_loss_count += 1 - elif saleprice_open_differrange > -5 and saleprice_open_differrange < 0: - low_open_low_sale_low_loss_count += 1 - elif saleprice_open_differrange > 0 and saleprice_open_differrange < 5: - low_open_low_sale_low_profit_count += 1 - else: - low_open_low_sale_high_profit_count += 1 - elif saleprice_open_differrange > 3: - if saleprice_open_differrange < -5: - low_open_high_sale_high_loss_count += 1 - elif saleprice_open_differrange > -5 and saleprice_open_differrange < 0: - low_open_high_sale_low_loss_count += 1 - elif saleprice_open_differrange > 0 and saleprice_open_differrange < 5: - low_open_high_sale_low_profit_count += 1 - else: - low_open_high_sale_high_profit_count += 1 - else: - if saleprice_open_differrange < -5: - low_open_normal_sale_high_loss_count += 1 - elif saleprice_open_differrange > -5 and saleprice_open_differrange < 0: - low_open_normal_sale_low_loss_count += 1 - elif saleprice_open_differrange > 0 and saleprice_open_differrange < 5: - low_open_normal_sale_low_profit_count += 1 - else: - low_open_normal_sale_high_profit_count += 1 + # 第二日收盘价分布 + next_close_differrange = df.loc[df['code'] == code, 'next_close_differrange'].values[0] + counters['close']['low_over_6'],counters['close']['low_6_to_3'], counters['close']['low_3_to_0'], counters['close']['high_0_to_3'], counters['close']['high_3_to_6'], counters['close']['high_over_6'] = count_change(next_close_differrange, counters['close']['low_over_6'], counters['close']['low_6_to_3'], counters['close']['low_3_to_0'], counters['close']['high_0_to_3'], counters['close']['high_3_to_6'], counters['close']['high_over_6']) - - elif next_open_diff > 3: - if saleprice_open_differrange < -3: - high_open_low_sale_count += 1 - elif saleprice_open_differrange > 3: - high_open_high_sale_count += 1 - else: - high_open_normal_sale_count += 1 - - if saleprice_open_differrange < -3: - if saleprice_open_differrange < -5: - high_open_low_sale_high_loss_count += 1 - elif saleprice_open_differrange > -5 and saleprice_open_differrange < 0: - high_open_low_sale_low_loss_count += 1 - elif saleprice_open_differrange > 0 and saleprice_open_differrange < 5: - high_open_low_sale_low_profit_count += 1 - else: - high_open_low_sale_high_profit_count += 1 - elif saleprice_open_differrange > 3: - if saleprice_open_differrange < -5: - high_open_high_sale_high_loss_count += 1 - elif saleprice_open_differrange > -5 and saleprice_open_differrange < 0: - high_open_high_sale_low_loss_count += 1 - elif saleprice_open_differrange > 0 and saleprice_open_differrange < 5: - high_open_high_sale_low_profit_count += 1 - else: - high_open_high_sale_high_profit_count += 1 - else: - if saleprice_open_differrange < -5: - high_open_normal_sale_high_loss_count += 1 - elif saleprice_open_differrange > -5 and saleprice_open_differrange < 0: - high_open_normal_sale_low_loss_count += 1 - elif saleprice_open_differrange > 0 and saleprice_open_differrange < 5: - high_open_normal_sale_low_profit_count += 1 - else: - high_open_normal_sale_high_profit_count += 1 - - else: - if saleprice_open_differrange < -3: - normal_open_low_sale_count += 1 - elif saleprice_open_differrange > 3: - normal_open_high_sale_count += 1 - else: - normal_open_normal_sale_count += 1 - - if saleprice_open_differrange < -3: - if saleprice_open_differrange < -5: - normal_open_low_sale_high_loss_count += 1 - elif saleprice_open_differrange > -5 and saleprice_open_differrange < 0: - normal_open_low_sale_low_loss_count += 1 - elif saleprice_open_differrange > 0 and saleprice_open_differrange < 5: - normal_open_low_sale_low_profit_count += 1 - else: - normal_open_low_sale_high_profit_count += 1 - elif saleprice_open_differrange > 3: - if saleprice_open_differrange < -5: - normal_open_high_sale_high_loss_count += 1 - elif saleprice_open_differrange > -5 and saleprice_open_differrange < 0: - normal_open_high_sale_low_loss_count += 1 - elif saleprice_open_differrange > 0 and saleprice_open_differrange < 5: - normal_open_high_sale_low_profit_count += 1 - else: - normal_open_high_sale_high_profit_count += 1 + # 清仓日的开盘价分布 + counters['sale_open']['low_over_6'],counters['sale_open']['low_6_to_3'], counters['sale_open']['low_3_to_0'], counters['sale_open']['high_0_to_3'], counters['sale_open']['high_3_to_6'], counters['sale_open']['high_over_6'] = count_change(saleprice_open_differrange, counters['sale_open']['low_over_6'], counters['sale_open']['low_6_to_3'], counters['sale_open']['low_3_to_0'], counters['sale_open']['high_0_to_3'], counters['sale_open']['high_3_to_6'], counters['sale_open']['high_over_6']) + # 清仓日的收盘价分布 + counters['sale_close']['low_over_6'],counters['sale_close']['low_6_to_3'], counters['sale_close']['low_3_to_0'], counters['sale_close']['high_0_to_3'], counters['sale_close']['high_3_to_6'], counters['sale_close']['high_over_6'] = count_change(saleprice_close_differrange, counters['sale_close']['low_over_6'], counters['sale_close']['low_6_to_3'], counters['sale_close']['low_3_to_0'], counters['sale_close']['high_0_to_3'], counters['sale_close']['high_3_to_6'], counters['sale_close']['high_over_6']) + + # 清仓日开盘清仓盈亏分布-开盘建仓 + open_sale_open_differrange = 100 * (saleopen - df.loc[df['code'] == code, 'next_open'].values[0])/df.loc[df['code'] == code, 'next_open'].values[0] + counters['profit_open_sale_open']['loss_over_6'],counters['profit_open_sale_open']['loss_6_to_3'], counters['profit_open_sale_open']['loss_3_to_0'], counters['profit_open_sale_open']['profit_0_to_3'], counters['profit_open_sale_open']['profit_3_to_6'], counters['profit_open_sale_open']['profit_over_6'] = count_change(open_sale_open_differrange, counters['profit_open_sale_open']['loss_over_6'], counters['profit_open_sale_open']['loss_6_to_3'], counters['profit_open_sale_open']['loss_3_to_0'], counters['profit_open_sale_open']['profit_0_to_3'], counters['profit_open_sale_open']['profit_3_to_6'], counters['profit_open_sale_open']['profit_over_6']) + # 清仓日开盘清仓盈亏分布-收盘建仓 + open_sale_close_differrange = 100 * (saleopen - nextclose)/nextclose + counters['profit_open_sale_close']['loss_over_6'],counters['profit_open_sale_close']['loss_6_to_3'], counters['profit_open_sale_close']['loss_3_to_0'], counters['profit_open_sale_close']['profit_0_to_3'], counters['profit_open_sale_close']['profit_3_to_6'], counters['profit_open_sale_close']['profit_over_6'] = count_change(open_sale_close_differrange, counters['profit_open_sale_close']['loss_over_6'], counters['profit_open_sale_close']['loss_6_to_3'], counters['profit_open_sale_close']['loss_3_to_0'], counters['profit_open_sale_close']['profit_0_to_3'], counters['profit_open_sale_close']['profit_3_to_6'], counters['profit_open_sale_close']['profit_over_6']) + # 清仓日收盘清仓盈亏分布-开盘建仓 + close_sale_open_differrange = 100 * (saleclose - df.loc[df['code'] == code, 'next_open'].values[0])/df.loc[df['code'] == code, 'next_open'].values[0] + counters['profit_close_sale_open']['loss_over_6'],counters['profit_close_sale_open']['loss_6_to_3'], counters['profit_close_sale_open']['loss_3_to_0'], counters['profit_close_sale_open']['profit_0_to_3'], counters['profit_close_sale_open']['profit_3_to_6'], counters['profit_close_sale_open']['profit_over_6'] = count_change(close_sale_open_differrange, counters['profit_close_sale_open']['loss_over_6'], counters['profit_close_sale_open']['loss_6_to_3'], counters['profit_close_sale_open']['loss_3_to_0'], counters['profit_close_sale_open']['profit_0_to_3'], counters['profit_close_sale_open']['profit_3_to_6'], counters['profit_close_sale_open']['profit_over_6']) + # 清仓日收盘清仓盈亏分布-收盘建仓 + close_sale_close_differrange = 100 * (saleclose - nextclose)/nextclose + counters['profit_close_sale_close']['loss_over_6'],counters['profit_close_sale_close']['loss_6_to_3'], counters['profit_close_sale_close']['loss_3_to_0'], counters['profit_close_sale_close']['profit_0_to_3'], counters['profit_close_sale_close']['profit_3_to_6'], counters['profit_close_sale_close']['profit_over_6'] = count_change(close_sale_close_differrange, counters['profit_close_sale_close']['loss_over_6'], counters['profit_close_sale_close']['loss_6_to_3'], counters['profit_close_sale_close']['loss_3_to_0'], counters['profit_close_sale_close']['profit_0_to_3'], counters['profit_close_sale_close']['profit_3_to_6'], counters['profit_close_sale_close']['profit_over_6']) + + # 组合场景: 开盘建仓 清仓日开盘清仓 盈亏分布 + if next_open_diff < -6 and saleprice_open_differrange < -6: + counters['scenarios']['low_over_6_open_low_over_6_open_sale']['loss_over_6'],counters['scenarios']['low_over_6_open_low_over_6_open_sale']['loss_6_to_3'], counters['scenarios']['low_over_6_open_low_over_6_open_sale']['loss_3_to_0'], counters['scenarios']['low_over_6_open_low_over_6_open_sale']['profit_0_to_3'], counters['scenarios']['low_over_6_open_low_over_6_open_sale']['profit_3_to_6'], counters['scenarios']['low_over_6_open_low_over_6_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['low_over_6_open_low_over_6_open_sale']['loss_over_6'], counters['scenarios']['low_over_6_open_low_over_6_open_sale']['loss_6_to_3'], counters['scenarios']['low_over_6_open_low_over_6_open_sale']['loss_3_to_0'], counters['scenarios']['low_over_6_open_low_over_6_open_sale']['profit_0_to_3'], counters['scenarios']['low_over_6_open_low_over_6_open_sale']['profit_3_to_6'], counters['scenarios']['low_over_6_open_low_over_6_open_sale']['profit_over_6']) + elif next_open_diff < -6 and saleprice_open_differrange > -6 and saleprice_open_differrange < -3: + counters['scenarios']['low_over_6_open_low_6_to_3_open_sale']['loss_over_6'],counters['scenarios']['low_over_6_open_low_6_to_3_open_sale']['loss_6_to_3'], counters['scenarios']['low_over_6_open_low_6_to_3_open_sale']['loss_3_to_0'], counters['scenarios']['low_over_6_open_low_6_to_3_open_sale']['profit_0_to_3'], counters['scenarios']['low_over_6_open_low_6_to_3_open_sale']['profit_3_to_6'], counters['scenarios']['low_over_6_open_low_6_to_3_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['low_over_6_open_low_6_to_3_open_sale']['loss_over_6'], counters['scenarios']['low_over_6_open_low_6_to_3_open_sale']['loss_6_to_3'], counters['scenarios']['low_over_6_open_low_6_to_3_open_sale']['loss_3_to_0'], counters['scenarios']['low_over_6_open_low_6_to_3_open_sale']['profit_0_to_3'], counters['scenarios']['low_over_6_open_low_6_to_3_open_sale']['profit_3_to_6'], counters['scenarios']['low_over_6_open_low_6_to_3_open_sale']['profit_over_6']) + elif next_open_diff < -6 and saleprice_open_differrange > -3 and saleprice_open_differrange < 0: + counters['scenarios']['low_over_6_open_low_3_to_0_open_sale']['loss_over_6'],counters['scenarios']['low_over_6_open_low_3_to_0_open_sale']['loss_6_to_3'], counters['scenarios']['low_over_6_open_low_3_to_0_open_sale']['loss_3_to_0'], counters['scenarios']['low_over_6_open_low_3_to_0_open_sale']['profit_0_to_3'], counters['scenarios']['low_over_6_open_low_3_to_0_open_sale']['profit_3_to_6'], counters['scenarios']['low_over_6_open_low_3_to_0_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['low_over_6_open_low_3_to_0_open_sale']['loss_over_6'], counters['scenarios']['low_over_6_open_low_3_to_0_open_sale']['loss_6_to_3'], counters['scenarios']['low_over_6_open_low_3_to_0_open_sale']['loss_3_to_0'], counters['scenarios']['low_over_6_open_low_3_to_0_open_sale']['profit_0_to_3'], counters['scenarios']['low_over_6_open_low_3_to_0_open_sale']['profit_3_to_6'], counters['scenarios']['low_over_6_open_low_3_to_0_open_sale']['profit_over_6']) + elif next_open_diff < -6 and saleprice_open_differrange > 0 and saleprice_open_differrange < 3: + counters['scenarios']['low_over_6_open_high_0_to_3_open_sale']['loss_over_6'],counters['scenarios']['low_over_6_open_high_0_to_3_open_sale']['loss_6_to_3'], counters['scenarios']['low_over_6_open_high_0_to_3_open_sale']['loss_3_to_0'], counters['scenarios']['low_over_6_open_high_0_to_3_open_sale']['profit_0_to_3'], counters['scenarios']['low_over_6_open_high_0_to_3_open_sale']['profit_3_to_6'], counters['scenarios']['low_over_6_open_high_0_to_3_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['low_over_6_open_high_0_to_3_open_sale']['loss_over_6'], counters['scenarios']['low_over_6_open_high_0_to_3_open_sale']['loss_6_to_3'], counters['scenarios']['low_over_6_open_high_0_to_3_open_sale']['loss_3_to_0'], counters['scenarios']['low_over_6_open_high_0_to_3_open_sale']['profit_0_to_3'], counters['scenarios']['low_over_6_open_high_0_to_3_open_sale']['profit_3_to_6'], counters['scenarios']['low_over_6_open_high_0_to_3_open_sale']['profit_over_6']) + elif next_open_diff < -6 and saleprice_open_differrange > 3 and saleprice_open_differrange < 6: + counters['scenarios']['low_over_6_open_high_3_to_6_open_sale']['loss_over_6'],counters['scenarios']['low_over_6_open_high_3_to_6_open_sale']['loss_6_to_3'], counters['scenarios']['low_over_6_open_high_3_to_6_open_sale']['loss_3_to_0'], counters['scenarios']['low_over_6_open_high_3_to_6_open_sale']['profit_0_to_3'], counters['scenarios']['low_over_6_open_high_3_to_6_open_sale']['profit_3_to_6'], counters['scenarios']['low_over_6_open_high_3_to_6_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['low_over_6_open_high_3_to_6_open_sale']['loss_over_6'], counters['scenarios']['low_over_6_open_high_3_to_6_open_sale']['loss_6_to_3'], counters['scenarios']['low_over_6_open_high_3_to_6_open_sale']['loss_3_to_0'], counters['scenarios']['low_over_6_open_high_3_to_6_open_sale']['profit_0_to_3'], counters['scenarios']['low_over_6_open_high_3_to_6_open_sale']['profit_3_to_6'], counters['scenarios']['low_over_6_open_high_3_to_6_open_sale']['profit_over_6']) + elif next_open_diff < -6 and saleprice_open_differrange > 6: + counters['scenarios']['low_over_6_open_high_over_6_open_sale']['loss_over_6'],counters['scenarios']['low_over_6_open_high_over_6_open_sale']['loss_6_to_3'], counters['scenarios']['low_over_6_open_high_over_6_open_sale']['loss_3_to_0'], counters['scenarios']['low_over_6_open_high_over_6_open_sale']['profit_0_to_3'], counters['scenarios']['low_over_6_open_high_over_6_open_sale']['profit_3_to_6'], counters['scenarios']['low_over_6_open_high_over_6_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['low_over_6_open_high_over_6_open_sale']['loss_over_6'], counters['scenarios']['low_over_6_open_high_over_6_open_sale']['loss_6_to_3'], counters['scenarios']['low_over_6_open_high_over_6_open_sale']['loss_3_to_0'], counters['scenarios']['low_over_6_open_high_over_6_open_sale']['profit_0_to_3'], counters['scenarios']['low_over_6_open_high_over_6_open_sale']['profit_3_to_6'], counters['scenarios']['low_over_6_open_high_over_6_open_sale']['profit_over_6']) + elif next_open_diff > -6 and next_open_diff < -3 and saleprice_open_differrange < -6: + counters['scenarios']['low_6_to_3_open_low_over_6_open_sale']['loss_over_6'],counters['scenarios']['low_6_to_3_open_low_over_6_open_sale']['loss_6_to_3'], counters['scenarios']['low_6_to_3_open_low_over_6_open_sale']['loss_3_to_0'], counters['scenarios']['low_6_to_3_open_low_over_6_open_sale']['profit_0_to_3'], counters['scenarios']['low_6_to_3_open_low_over_6_open_sale']['profit_3_to_6'], counters['scenarios']['low_6_to_3_open_low_over_6_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['low_6_to_3_open_low_over_6_open_sale']['loss_over_6'], counters['scenarios']['low_6_to_3_open_low_over_6_open_sale']['loss_6_to_3'], counters['scenarios']['low_6_to_3_open_low_over_6_open_sale']['loss_3_to_0'], counters['scenarios']['low_6_to_3_open_low_over_6_open_sale']['profit_0_to_3'], counters['scenarios']['low_6_to_3_open_low_over_6_open_sale']['profit_3_to_6'], counters['scenarios']['low_6_to_3_open_low_over_6_open_sale']['profit_over_6']) + elif next_open_diff > -6 and next_open_diff < -3 and saleprice_open_differrange > -6 and saleprice_open_differrange < -3: + counters['scenarios']['low_6_to_3_open_low_6_to_3_open_sale']['loss_over_6'],counters['scenarios']['low_6_to_3_open_low_6_to_3_open_sale']['loss_6_to_3'], counters['scenarios']['low_6_to_3_open_low_6_to_3_open_sale']['loss_3_to_0'], counters['scenarios']['low_6_to_3_open_low_6_to_3_open_sale']['profit_0_to_3'], counters['scenarios']['low_6_to_3_open_low_6_to_3_open_sale']['profit_3_to_6'], counters['scenarios']['low_6_to_3_open_low_6_to_3_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['low_6_to_3_open_low_6_to_3_open_sale']['loss_over_6'], counters['scenarios']['low_6_to_3_open_low_6_to_3_open_sale']['loss_6_to_3'], counters['scenarios']['low_6_to_3_open_low_6_to_3_open_sale']['loss_3_to_0'], counters['scenarios']['low_6_to_3_open_low_6_to_3_open_sale']['profit_0_to_3'], counters['scenarios']['low_6_to_3_open_low_6_to_3_open_sale']['profit_3_to_6'], counters['scenarios']['low_6_to_3_open_low_6_to_3_open_sale']['profit_over_6']) + elif next_open_diff > -6 and next_open_diff < -3 and saleprice_open_differrange > -3 and saleprice_open_differrange < 0: + counters['scenarios']['low_6_to_3_open_low_3_to_0_open_sale']['loss_over_6'],counters['scenarios']['low_6_to_3_open_low_3_to_0_open_sale']['loss_6_to_3'], counters['scenarios']['low_6_to_3_open_low_3_to_0_open_sale']['loss_3_to_0'], counters['scenarios']['low_6_to_3_open_low_3_to_0_open_sale']['profit_0_to_3'], counters['scenarios']['low_6_to_3_open_low_3_to_0_open_sale']['profit_3_to_6'], counters['scenarios']['low_6_to_3_open_low_3_to_0_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['low_6_to_3_open_low_3_to_0_open_sale']['loss_over_6'], counters['scenarios']['low_6_to_3_open_low_3_to_0_open_sale']['loss_6_to_3'], counters['scenarios']['low_6_to_3_open_low_3_to_0_open_sale']['loss_3_to_0'], counters['scenarios']['low_6_to_3_open_low_3_to_0_open_sale']['profit_0_to_3'], counters['scenarios']['low_6_to_3_open_low_3_to_0_open_sale']['profit_3_to_6'], counters['scenarios']['low_6_to_3_open_low_3_to_0_open_sale']['profit_over_6']) + elif next_open_diff > -6 and next_open_diff < -3 and saleprice_open_differrange > 0 and saleprice_open_differrange < 3: + counters['scenarios']['low_6_to_3_open_high_0_to_3_open_sale']['loss_over_6'],counters['scenarios']['low_6_to_3_open_high_0_to_3_open_sale']['loss_6_to_3'], counters['scenarios']['low_6_to_3_open_high_0_to_3_open_sale']['loss_3_to_0'], counters['scenarios']['low_6_to_3_open_high_0_to_3_open_sale']['profit_0_to_3'], counters['scenarios']['low_6_to_3_open_high_0_to_3_open_sale']['profit_3_to_6'], counters['scenarios']['low_6_to_3_open_high_0_to_3_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['low_6_to_3_open_high_0_to_3_open_sale']['loss_over_6'], counters['scenarios']['low_6_to_3_open_high_0_to_3_open_sale']['loss_6_to_3'], counters['scenarios']['low_6_to_3_open_high_0_to_3_open_sale']['loss_3_to_0'], counters['scenarios']['low_6_to_3_open_high_0_to_3_open_sale']['profit_0_to_3'], counters['scenarios']['low_6_to_3_open_high_0_to_3_open_sale']['profit_3_to_6'], counters['scenarios']['low_6_to_3_open_high_0_to_3_open_sale']['profit_over_6']) + elif next_open_diff > -6 and next_open_diff < -3 and saleprice_open_differrange > 3 and saleprice_open_differrange < 6: + counters['scenarios']['low_6_to_3_open_high_3_to_6_open_sale']['loss_over_6'],counters['scenarios']['low_6_to_3_open_high_3_to_6_open_sale']['loss_6_to_3'], counters['scenarios']['low_6_to_3_open_high_3_to_6_open_sale']['loss_3_to_0'], counters['scenarios']['low_6_to_3_open_high_3_to_6_open_sale']['profit_0_to_3'], counters['scenarios']['low_6_to_3_open_high_3_to_6_open_sale']['profit_3_to_6'], counters['scenarios']['low_6_to_3_open_high_3_to_6_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['low_6_to_3_open_high_3_to_6_open_sale']['loss_over_6'], counters['scenarios']['low_6_to_3_open_high_3_to_6_open_sale']['loss_6_to_3'], counters['scenarios']['low_6_to_3_open_high_3_to_6_open_sale']['loss_3_to_0'], counters['scenarios']['low_6_to_3_open_high_3_to_6_open_sale']['profit_0_to_3'], counters['scenarios']['low_6_to_3_open_high_3_to_6_open_sale']['profit_3_to_6'], counters['scenarios']['low_6_to_3_open_high_3_to_6_open_sale']['profit_over_6']) + elif next_open_diff > -6 and next_open_diff < -3 and saleprice_open_differrange > 6: + counters['scenarios']['low_6_to_3_open_high_over_6_open_sale']['loss_over_6'],counters['scenarios']['low_6_to_3_open_high_over_6_open_sale']['loss_6_to_3'], counters['scenarios']['low_6_to_3_open_high_over_6_open_sale']['loss_3_to_0'], counters['scenarios']['low_6_to_3_open_high_over_6_open_sale']['profit_0_to_3'], counters['scenarios']['low_6_to_3_open_high_over_6_open_sale']['profit_3_to_6'], counters['scenarios']['low_6_to_3_open_high_over_6_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['low_6_to_3_open_high_over_6_open_sale']['loss_over_6'], counters['scenarios']['low_6_to_3_open_high_over_6_open_sale']['loss_6_to_3'], counters['scenarios']['low_6_to_3_open_high_over_6_open_sale']['loss_3_to_0'], counters['scenarios']['low_6_to_3_open_high_over_6_open_sale']['profit_0_to_3'], counters['scenarios']['low_6_to_3_open_high_over_6_open_sale']['profit_3_to_6'], counters['scenarios']['low_6_to_3_open_high_over_6_open_sale']['profit_over_6']) + elif next_open_diff > -3 and next_open_diff < 0 and saleprice_open_differrange < -6: + counters['scenarios']['low_3_to_0_open_low_over_6_open_sale']['loss_over_6'],counters['scenarios']['low_3_to_0_open_low_over_6_open_sale']['loss_6_to_3'], counters['scenarios']['low_3_to_0_open_low_over_6_open_sale']['loss_3_to_0'], counters['scenarios']['low_3_to_0_open_low_over_6_open_sale']['profit_0_to_3'], counters['scenarios']['low_3_to_0_open_low_over_6_open_sale']['profit_3_to_6'], counters['scenarios']['low_3_to_0_open_low_over_6_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['low_3_to_0_open_low_over_6_open_sale']['loss_over_6'], counters['scenarios']['low_3_to_0_open_low_over_6_open_sale']['loss_6_to_3'], counters['scenarios']['low_3_to_0_open_low_over_6_open_sale']['loss_3_to_0'], counters['scenarios']['low_3_to_0_open_low_over_6_open_sale']['profit_0_to_3'], counters['scenarios']['low_3_to_0_open_low_over_6_open_sale']['profit_3_to_6'], counters['scenarios']['low_3_to_0_open_low_over_6_open_sale']['profit_over_6']) + elif next_open_diff > -3 and next_open_diff < 0 and saleprice_open_differrange > -6 and saleprice_open_differrange < -3: + counters['scenarios']['low_3_to_0_open_low_6_to_3_open_sale']['loss_over_6'],counters['scenarios']['low_3_to_0_open_low_6_to_3_open_sale']['loss_6_to_3'], counters['scenarios']['low_3_to_0_open_low_6_to_3_open_sale']['loss_3_to_0'], counters['scenarios']['low_3_to_0_open_low_6_to_3_open_sale']['profit_0_to_3'], counters['scenarios']['low_3_to_0_open_low_6_to_3_open_sale']['profit_3_to_6'], counters['scenarios']['low_3_to_0_open_low_6_to_3_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['low_3_to_0_open_low_6_to_3_open_sale']['loss_over_6'], counters['scenarios']['low_3_to_0_open_low_6_to_3_open_sale']['loss_6_to_3'], counters['scenarios']['low_3_to_0_open_low_6_to_3_open_sale']['loss_3_to_0'], counters['scenarios']['low_3_to_0_open_low_6_to_3_open_sale']['profit_0_to_3'], counters['scenarios']['low_3_to_0_open_low_6_to_3_open_sale']['profit_3_to_6'], counters['scenarios']['low_3_to_0_open_low_6_to_3_open_sale']['profit_over_6']) + elif next_open_diff > -3 and next_open_diff < 0 and saleprice_open_differrange > -3 and saleprice_open_differrange < 0: + counters['scenarios']['low_3_to_0_open_low_3_to_0_open_sale']['loss_over_6'],counters['scenarios']['low_3_to_0_open_low_3_to_0_open_sale']['loss_6_to_3'], counters['scenarios']['low_3_to_0_open_low_3_to_0_open_sale']['loss_3_to_0'], counters['scenarios']['low_3_to_0_open_low_3_to_0_open_sale']['profit_0_to_3'], counters['scenarios']['low_3_to_0_open_low_3_to_0_open_sale']['profit_3_to_6'], counters['scenarios']['low_3_to_0_open_low_3_to_0_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['low_3_to_0_open_low_3_to_0_open_sale']['loss_over_6'], counters['scenarios']['low_3_to_0_open_low_3_to_0_open_sale']['loss_6_to_3'], counters['scenarios']['low_3_to_0_open_low_3_to_0_open_sale']['loss_3_to_0'], counters['scenarios']['low_3_to_0_open_low_3_to_0_open_sale']['profit_0_to_3'], counters['scenarios']['low_3_to_0_open_low_3_to_0_open_sale']['profit_3_to_6'], counters['scenarios']['low_3_to_0_open_low_3_to_0_open_sale']['profit_over_6']) + elif next_open_diff > -3 and next_open_diff < 0 and saleprice_open_differrange > 0 and saleprice_open_differrange < 3: + counters['scenarios']['low_3_to_0_open_high_0_to_3_open_sale']['loss_over_6'],counters['scenarios']['low_3_to_0_open_high_0_to_3_open_sale']['loss_6_to_3'], counters['scenarios']['low_3_to_0_open_high_0_to_3_open_sale']['loss_3_to_0'], counters['scenarios']['low_3_to_0_open_high_0_to_3_open_sale']['profit_0_to_3'], counters['scenarios']['low_3_to_0_open_high_0_to_3_open_sale']['profit_3_to_6'], counters['scenarios']['low_3_to_0_open_high_0_to_3_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['low_3_to_0_open_high_0_to_3_open_sale']['loss_over_6'], counters['scenarios']['low_3_to_0_open_high_0_to_3_open_sale']['loss_6_to_3'], counters['scenarios']['low_3_to_0_open_high_0_to_3_open_sale']['loss_3_to_0'], counters['scenarios']['low_3_to_0_open_high_0_to_3_open_sale']['profit_0_to_3'], counters['scenarios']['low_3_to_0_open_high_0_to_3_open_sale']['profit_3_to_6'], counters['scenarios']['low_3_to_0_open_high_0_to_3_open_sale']['profit_over_6']) + elif next_open_diff > -3 and next_open_diff < 0 and saleprice_open_differrange > 3 and saleprice_open_differrange < 6: + counters['scenarios']['low_3_to_0_open_high_3_to_6_open_sale']['loss_over_6'],counters['scenarios']['low_3_to_0_open_high_3_to_6_open_sale']['loss_6_to_3'], counters['scenarios']['low_3_to_0_open_high_3_to_6_open_sale']['loss_3_to_0'], counters['scenarios']['low_3_to_0_open_high_3_to_6_open_sale']['profit_0_to_3'], counters['scenarios']['low_3_to_0_open_high_3_to_6_open_sale']['profit_3_to_6'], counters['scenarios']['low_3_to_0_open_high_3_to_6_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['low_3_to_0_open_high_3_to_6_open_sale']['loss_over_6'], counters['scenarios']['low_3_to_0_open_high_3_to_6_open_sale']['loss_6_to_3'], counters['scenarios']['low_3_to_0_open_high_3_to_6_open_sale']['loss_3_to_0'], counters['scenarios']['low_3_to_0_open_high_3_to_6_open_sale']['profit_0_to_3'], counters['scenarios']['low_3_to_0_open_high_3_to_6_open_sale']['profit_3_to_6'], counters['scenarios']['low_3_to_0_open_high_3_to_6_open_sale']['profit_over_6']) + elif next_open_diff > -3 and next_open_diff < 0 and saleprice_open_differrange > 6: + counters['scenarios']['low_3_to_0_open_high_over_6_open_sale']['loss_over_6'],counters['scenarios']['low_3_to_0_open_high_over_6_open_sale']['loss_6_to_3'], counters['scenarios']['low_3_to_0_open_high_over_6_open_sale']['loss_3_to_0'], counters['scenarios']['low_3_to_0_open_high_over_6_open_sale']['profit_0_to_3'], counters['scenarios']['low_3_to_0_open_high_over_6_open_sale']['profit_3_to_6'], counters['scenarios']['low_3_to_0_open_high_over_6_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['low_3_to_0_open_high_over_6_open_sale']['loss_over_6'], counters['scenarios']['low_3_to_0_open_high_over_6_open_sale']['loss_6_to_3'], counters['scenarios']['low_3_to_0_open_high_over_6_open_sale']['loss_3_to_0'], counters['scenarios']['low_3_to_0_open_high_over_6_open_sale']['profit_0_to_3'], counters['scenarios']['low_3_to_0_open_high_over_6_open_sale']['profit_3_to_6'], counters['scenarios']['low_3_to_0_open_high_over_6_open_sale']['profit_over_6']) + elif next_open_diff > 0 and next_open_diff < 3 and saleprice_open_differrange < -6: + counters['scenarios']['high_0_to_3_open_low_over_6_open_sale']['loss_over_6'],counters['scenarios']['high_0_to_3_open_low_over_6_open_sale']['loss_6_to_3'], counters['scenarios']['high_0_to_3_open_low_over_6_open_sale']['loss_3_to_0'], counters['scenarios']['high_0_to_3_open_low_over_6_open_sale']['profit_0_to_3'], counters['scenarios']['high_0_to_3_open_low_over_6_open_sale']['profit_3_to_6'], counters['scenarios']['high_0_to_3_open_low_over_6_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['high_0_to_3_open_low_over_6_open_sale']['loss_over_6'], counters['scenarios']['high_0_to_3_open_low_over_6_open_sale']['loss_6_to_3'], counters['scenarios']['high_0_to_3_open_low_over_6_open_sale']['loss_3_to_0'], counters['scenarios']['high_0_to_3_open_low_over_6_open_sale']['profit_0_to_3'], counters['scenarios']['high_0_to_3_open_low_over_6_open_sale']['profit_3_to_6'], counters['scenarios']['high_0_to_3_open_low_over_6_open_sale']['profit_over_6']) + elif next_open_diff > 0 and next_open_diff < 3 and saleprice_open_differrange > -6 and saleprice_open_differrange < -3: + counters['scenarios']['high_0_to_3_open_low_6_to_3_open_sale']['loss_over_6'],counters['scenarios']['high_0_to_3_open_low_6_to_3_open_sale']['loss_6_to_3'], counters['scenarios']['high_0_to_3_open_low_6_to_3_open_sale']['loss_3_to_0'], counters['scenarios']['high_0_to_3_open_low_6_to_3_open_sale']['profit_0_to_3'], counters['scenarios']['high_0_to_3_open_low_6_to_3_open_sale']['profit_3_to_6'], counters['scenarios']['high_0_to_3_open_low_6_to_3_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['high_0_to_3_open_low_6_to_3_open_sale']['loss_over_6'], counters['scenarios']['high_0_to_3_open_low_6_to_3_open_sale']['loss_6_to_3'], counters['scenarios']['high_0_to_3_open_low_6_to_3_open_sale']['loss_3_to_0'], counters['scenarios']['high_0_to_3_open_low_6_to_3_open_sale']['profit_0_to_3'], counters['scenarios']['high_0_to_3_open_low_6_to_3_open_sale']['profit_3_to_6'], counters['scenarios']['high_0_to_3_open_low_6_to_3_open_sale']['profit_over_6']) + elif next_open_diff > 0 and next_open_diff < 3 and saleprice_open_differrange > -3 and saleprice_open_differrange < 0: + counters['scenarios']['high_0_to_3_open_low_3_to_0_open_sale']['loss_over_6'],counters['scenarios']['high_0_to_3_open_low_3_to_0_open_sale']['loss_6_to_3'], counters['scenarios']['high_0_to_3_open_low_3_to_0_open_sale']['loss_3_to_0'], counters['scenarios']['high_0_to_3_open_low_3_to_0_open_sale']['profit_0_to_3'], counters['scenarios']['high_0_to_3_open_low_3_to_0_open_sale']['profit_3_to_6'], counters['scenarios']['high_0_to_3_open_low_3_to_0_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['high_0_to_3_open_low_3_to_0_open_sale']['loss_over_6'], counters['scenarios']['high_0_to_3_open_low_3_to_0_open_sale']['loss_6_to_3'], counters['scenarios']['high_0_to_3_open_low_3_to_0_open_sale']['loss_3_to_0'], counters['scenarios']['high_0_to_3_open_low_3_to_0_open_sale']['profit_0_to_3'], counters['scenarios']['high_0_to_3_open_low_3_to_0_open_sale']['profit_3_to_6'], counters['scenarios']['high_0_to_3_open_low_3_to_0_open_sale']['profit_over_6']) + elif next_open_diff > 0 and next_open_diff < 3 and saleprice_open_differrange > 0 and saleprice_open_differrange < 3: + counters['scenarios']['high_0_to_3_open_high_0_to_3_open_sale']['loss_over_6'],counters['scenarios']['high_0_to_3_open_high_0_to_3_open_sale']['loss_6_to_3'], counters['scenarios']['high_0_to_3_open_high_0_to_3_open_sale']['loss_3_to_0'], counters['scenarios']['high_0_to_3_open_high_0_to_3_open_sale']['profit_0_to_3'], counters['scenarios']['high_0_to_3_open_high_0_to_3_open_sale']['profit_3_to_6'], counters['scenarios']['high_0_to_3_open_high_0_to_3_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['high_0_to_3_open_high_0_to_3_open_sale']['loss_over_6'], counters['scenarios']['high_0_to_3_open_high_0_to_3_open_sale']['loss_6_to_3'], counters['scenarios']['high_0_to_3_open_high_0_to_3_open_sale']['loss_3_to_0'], counters['scenarios']['high_0_to_3_open_high_0_to_3_open_sale']['profit_0_to_3'], counters['scenarios']['high_0_to_3_open_high_0_to_3_open_sale']['profit_3_to_6'], counters['scenarios']['high_0_to_3_open_high_0_to_3_open_sale']['profit_over_6']) + elif next_open_diff > 0 and next_open_diff < 3 and saleprice_open_differrange > 3 and saleprice_open_differrange < 6: + counters['scenarios']['high_0_to_3_open_high_3_to_6_open_sale']['loss_over_6'],counters['scenarios']['high_0_to_3_open_high_3_to_6_open_sale']['loss_6_to_3'], counters['scenarios']['high_0_to_3_open_high_3_to_6_open_sale']['loss_3_to_0'], counters['scenarios']['high_0_to_3_open_high_3_to_6_open_sale']['profit_0_to_3'], counters['scenarios']['high_0_to_3_open_high_3_to_6_open_sale']['profit_3_to_6'], counters['scenarios']['high_0_to_3_open_high_3_to_6_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['high_0_to_3_open_high_3_to_6_open_sale']['loss_over_6'], counters['scenarios']['high_0_to_3_open_high_3_to_6_open_sale']['loss_6_to_3'], counters['scenarios']['high_0_to_3_open_high_3_to_6_open_sale']['loss_3_to_0'], counters['scenarios']['high_0_to_3_open_high_3_to_6_open_sale']['profit_0_to_3'], counters['scenarios']['high_0_to_3_open_high_3_to_6_open_sale']['profit_3_to_6'], counters['scenarios']['high_0_to_3_open_high_3_to_6_open_sale']['profit_over_6']) + elif next_open_diff > 0 and next_open_diff < 3 and saleprice_open_differrange > 6: + counters['scenarios']['high_0_to_3_open_high_over_6_open_sale']['loss_over_6'],counters['scenarios']['high_0_to_3_open_high_over_6_open_sale']['loss_6_to_3'], counters['scenarios']['high_0_to_3_open_high_over_6_open_sale']['loss_3_to_0'], counters['scenarios']['high_0_to_3_open_high_over_6_open_sale']['profit_0_to_3'], counters['scenarios']['high_0_to_3_open_high_over_6_open_sale']['profit_3_to_6'], counters['scenarios']['high_0_to_3_open_high_over_6_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['high_0_to_3_open_high_over_6_open_sale']['loss_over_6'], counters['scenarios']['high_0_to_3_open_high_over_6_open_sale']['loss_6_to_3'], counters['scenarios']['high_0_to_3_open_high_over_6_open_sale']['loss_3_to_0'], counters['scenarios']['high_0_to_3_open_high_over_6_open_sale']['profit_0_to_3'], counters['scenarios']['high_0_to_3_open_high_over_6_open_sale']['profit_3_to_6'], counters['scenarios']['high_0_to_3_open_high_over_6_open_sale']['profit_over_6']) + elif next_open_diff > 3 and next_open_diff < 6 and saleprice_open_differrange < -6: + counters['scenarios']['high_3_to_6_open_low_over_6_open_sale']['loss_over_6'],counters['scenarios']['high_3_to_6_open_low_over_6_open_sale']['loss_6_to_3'], counters['scenarios']['high_3_to_6_open_low_over_6_open_sale']['loss_3_to_0'], counters['scenarios']['high_3_to_6_open_low_over_6_open_sale']['profit_0_to_3'], counters['scenarios']['high_3_to_6_open_low_over_6_open_sale']['profit_3_to_6'], counters['scenarios']['high_3_to_6_open_low_over_6_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['high_3_to_6_open_low_over_6_open_sale']['loss_over_6'], counters['scenarios']['high_3_to_6_open_low_over_6_open_sale']['loss_6_to_3'], counters['scenarios']['high_3_to_6_open_low_over_6_open_sale']['loss_3_to_0'], counters['scenarios']['high_3_to_6_open_low_over_6_open_sale']['profit_0_to_3'], counters['scenarios']['high_3_to_6_open_low_over_6_open_sale']['profit_3_to_6'], counters['scenarios']['high_3_to_6_open_low_over_6_open_sale']['profit_over_6']) + elif next_open_diff > 3 and next_open_diff < 6 and saleprice_open_differrange > -6 and saleprice_open_differrange < -3: + counters['scenarios']['high_3_to_6_open_low_6_to_3_open_sale']['loss_over_6'],counters['scenarios']['high_3_to_6_open_low_6_to_3_open_sale']['loss_6_to_3'], counters['scenarios']['high_3_to_6_open_low_6_to_3_open_sale']['loss_3_to_0'], counters['scenarios']['high_3_to_6_open_low_6_to_3_open_sale']['profit_0_to_3'], counters['scenarios']['high_3_to_6_open_low_6_to_3_open_sale']['profit_3_to_6'], counters['scenarios']['high_3_to_6_open_low_6_to_3_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['high_3_to_6_open_low_6_to_3_open_sale']['loss_over_6'], counters['scenarios']['high_3_to_6_open_low_6_to_3_open_sale']['loss_6_to_3'], counters['scenarios']['high_3_to_6_open_low_6_to_3_open_sale']['loss_3_to_0'], counters['scenarios']['high_3_to_6_open_low_6_to_3_open_sale']['profit_0_to_3'], counters['scenarios']['high_3_to_6_open_low_6_to_3_open_sale']['profit_3_to_6'], counters['scenarios']['high_3_to_6_open_low_6_to_3_open_sale']['profit_over_6']) + elif next_open_diff > 3 and next_open_diff < 6 and saleprice_open_differrange > -3 and saleprice_open_differrange < 0: + counters['scenarios']['high_3_to_6_open_low_3_to_0_open_sale']['loss_over_6'],counters['scenarios']['high_3_to_6_open_low_3_to_0_open_sale']['loss_6_to_3'], counters['scenarios']['high_3_to_6_open_low_3_to_0_open_sale']['loss_3_to_0'], counters['scenarios']['high_3_to_6_open_low_3_to_0_open_sale']['profit_0_to_3'], counters['scenarios']['high_3_to_6_open_low_3_to_0_open_sale']['profit_3_to_6'], counters['scenarios']['high_3_to_6_open_low_3_to_0_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['high_3_to_6_open_low_3_to_0_open_sale']['loss_over_6'], counters['scenarios']['high_3_to_6_open_low_3_to_0_open_sale']['loss_6_to_3'], counters['scenarios']['high_3_to_6_open_low_3_to_0_open_sale']['loss_3_to_0'], counters['scenarios']['high_3_to_6_open_low_3_to_0_open_sale']['profit_0_to_3'], counters['scenarios']['high_3_to_6_open_low_3_to_0_open_sale']['profit_3_to_6'], counters['scenarios']['high_3_to_6_open_low_3_to_0_open_sale']['profit_over_6']) + elif next_open_diff > 3 and next_open_diff < 6 and saleprice_open_differrange > 0 and saleprice_open_differrange < 3: + counters['scenarios']['high_3_to_6_open_high_0_to_3_open_sale']['loss_over_6'],counters['scenarios']['high_3_to_6_open_high_0_to_3_open_sale']['loss_6_to_3'], counters['scenarios']['high_3_to_6_open_high_0_to_3_open_sale']['loss_3_to_0'], counters['scenarios']['high_3_to_6_open_high_0_to_3_open_sale']['profit_0_to_3'], counters['scenarios']['high_3_to_6_open_high_0_to_3_open_sale']['profit_3_to_6'], counters['scenarios']['high_3_to_6_open_high_0_to_3_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['high_3_to_6_open_high_0_to_3_open_sale']['loss_over_6'], counters['scenarios']['high_3_to_6_open_high_0_to_3_open_sale']['loss_6_to_3'], counters['scenarios']['high_3_to_6_open_high_0_to_3_open_sale']['loss_3_to_0'], counters['scenarios']['high_3_to_6_open_high_0_to_3_open_sale']['profit_0_to_3'], counters['scenarios']['high_3_to_6_open_high_0_to_3_open_sale']['profit_3_to_6'], counters['scenarios']['high_3_to_6_open_high_0_to_3_open_sale']['profit_over_6']) + elif next_open_diff > 3 and next_open_diff < 6 and saleprice_open_differrange > 3 and saleprice_open_differrange < 6: + counters['scenarios']['high_3_to_6_open_high_3_to_6_open_sale']['loss_over_6'],counters['scenarios']['high_3_to_6_open_high_3_to_6_open_sale']['loss_6_to_3'], counters['scenarios']['high_3_to_6_open_high_3_to_6_open_sale']['loss_3_to_0'], counters['scenarios']['high_3_to_6_open_high_3_to_6_open_sale']['profit_0_to_3'], counters['scenarios']['high_3_to_6_open_high_3_to_6_open_sale']['profit_3_to_6'], counters['scenarios']['high_3_to_6_open_high_3_to_6_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['high_3_to_6_open_high_3_to_6_open_sale']['loss_over_6'], counters['scenarios']['high_3_to_6_open_high_3_to_6_open_sale']['loss_6_to_3'], counters['scenarios']['high_3_to_6_open_high_3_to_6_open_sale']['loss_3_to_0'], counters['scenarios']['high_3_to_6_open_high_3_to_6_open_sale']['profit_0_to_3'], counters['scenarios']['high_3_to_6_open_high_3_to_6_open_sale']['profit_3_to_6'], counters['scenarios']['high_3_to_6_open_high_3_to_6_open_sale']['profit_over_6']) + elif next_open_diff > 3 and next_open_diff < 6 and saleprice_open_differrange > 6: + counters['scenarios']['high_3_to_6_open_high_over_6_open_sale']['loss_over_6'],counters['scenarios']['high_3_to_6_open_high_over_6_open_sale']['loss_6_to_3'], counters['scenarios']['high_3_to_6_open_high_over_6_open_sale']['loss_3_to_0'], counters['scenarios']['high_3_to_6_open_high_over_6_open_sale']['profit_0_to_3'], counters['scenarios']['high_3_to_6_open_high_over_6_open_sale']['profit_3_to_6'], counters['scenarios']['high_3_to_6_open_high_over_6_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['high_3_to_6_open_high_over_6_open_sale']['loss_over_6'], counters['scenarios']['high_3_to_6_open_high_over_6_open_sale']['loss_6_to_3'], counters['scenarios']['high_3_to_6_open_high_over_6_open_sale']['loss_3_to_0'], counters['scenarios']['high_3_to_6_open_high_over_6_open_sale']['profit_0_to_3'], counters['scenarios']['high_3_to_6_open_high_over_6_open_sale']['profit_3_to_6'], counters['scenarios']['high_3_to_6_open_high_over_6_open_sale']['profit_over_6']) + elif next_open_diff > 6 and saleprice_open_differrange < -6: + counters['scenarios']['high_over_6_open_low_over_6_open_sale']['loss_over_6'],counters['scenarios']['high_over_6_open_low_over_6_open_sale']['loss_6_to_3'], counters['scenarios']['high_over_6_open_low_over_6_open_sale']['loss_3_to_0'], counters['scenarios']['high_over_6_open_low_over_6_open_sale']['profit_0_to_3'], counters['scenarios']['high_over_6_open_low_over_6_open_sale']['profit_3_to_6'], counters['scenarios']['high_over_6_open_low_over_6_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['high_over_6_open_low_over_6_open_sale']['loss_over_6'], counters['scenarios']['high_over_6_open_low_over_6_open_sale']['loss_6_to_3'], counters['scenarios']['high_over_6_open_low_over_6_open_sale']['loss_3_to_0'], counters['scenarios']['high_over_6_open_low_over_6_open_sale']['profit_0_to_3'], counters['scenarios']['high_over_6_open_low_over_6_open_sale']['profit_3_to_6'], counters['scenarios']['high_over_6_open_low_over_6_open_sale']['profit_over_6']) + elif next_open_diff > 6 and saleprice_open_differrange > -6 and saleprice_open_differrange < -3: + counters['scenarios']['high_over_6_open_low_6_to_3_open_sale']['loss_over_6'],counters['scenarios']['high_over_6_open_low_6_to_3_open_sale']['loss_6_to_3'], counters['scenarios']['high_over_6_open_low_6_to_3_open_sale']['loss_3_to_0'], counters['scenarios']['high_over_6_open_low_6_to_3_open_sale']['profit_0_to_3'], counters['scenarios']['high_over_6_open_low_6_to_3_open_sale']['profit_3_to_6'], counters['scenarios']['high_over_6_open_low_6_to_3_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['high_over_6_open_low_6_to_3_open_sale']['loss_over_6'], counters['scenarios']['high_over_6_open_low_6_to_3_open_sale']['loss_6_to_3'], counters['scenarios']['high_over_6_open_low_6_to_3_open_sale']['loss_3_to_0'], counters['scenarios']['high_over_6_open_low_6_to_3_open_sale']['profit_0_to_3'], counters['scenarios']['high_over_6_open_low_6_to_3_open_sale']['profit_3_to_6'], counters['scenarios']['high_over_6_open_low_6_to_3_open_sale']['profit_over_6']) + elif next_open_diff > 6 and saleprice_open_differrange > -3 and saleprice_open_differrange < 0: + counters['scenarios']['high_over_6_open_low_3_to_0_open_sale']['loss_over_6'],counters['scenarios']['high_over_6_open_low_3_to_0_open_sale']['loss_6_to_3'], counters['scenarios']['high_over_6_open_low_3_to_0_open_sale']['loss_3_to_0'], counters['scenarios']['high_over_6_open_low_3_to_0_open_sale']['profit_0_to_3'], counters['scenarios']['high_over_6_open_low_3_to_0_open_sale']['profit_3_to_6'], counters['scenarios']['high_over_6_open_low_3_to_0_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['high_over_6_open_low_3_to_0_open_sale']['loss_over_6'], counters['scenarios']['high_over_6_open_low_3_to_0_open_sale']['loss_6_to_3'], counters['scenarios']['high_over_6_open_low_3_to_0_open_sale']['loss_3_to_0'], counters['scenarios']['high_over_6_open_low_3_to_0_open_sale']['profit_0_to_3'], counters['scenarios']['high_over_6_open_low_3_to_0_open_sale']['profit_3_to_6'], counters['scenarios']['high_over_6_open_low_3_to_0_open_sale']['profit_over_6']) + elif next_open_diff > 6 and saleprice_open_differrange > 0 and saleprice_open_differrange < 3: + counters['scenarios']['high_over_6_open_high_0_to_3_open_sale']['loss_over_6'],counters['scenarios']['high_over_6_open_high_0_to_3_open_sale']['loss_6_to_3'], counters['scenarios']['high_over_6_open_high_0_to_3_open_sale']['loss_3_to_0'], counters['scenarios']['high_over_6_open_high_0_to_3_open_sale']['profit_0_to_3'], counters['scenarios']['high_over_6_open_high_0_to_3_open_sale']['profit_3_to_6'], counters['scenarios']['high_over_6_open_high_0_to_3_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['high_over_6_open_high_0_to_3_open_sale']['loss_over_6'], counters['scenarios']['high_over_6_open_high_0_to_3_open_sale']['loss_6_to_3'], counters['scenarios']['high_over_6_open_high_0_to_3_open_sale']['loss_3_to_0'], counters['scenarios']['high_over_6_open_high_0_to_3_open_sale']['profit_0_to_3'], counters['scenarios']['high_over_6_open_high_0_to_3_open_sale']['profit_3_to_6'], counters['scenarios']['high_over_6_open_high_0_to_3_open_sale']['profit_over_6']) + elif next_open_diff > 6 and saleprice_open_differrange > 3 and saleprice_open_differrange < 6: + counters['scenarios']['high_over_6_open_high_3_to_6_open_sale']['loss_over_6'],counters['scenarios']['high_over_6_open_high_3_to_6_open_sale']['loss_6_to_3'], counters['scenarios']['high_over_6_open_high_3_to_6_open_sale']['loss_3_to_0'], counters['scenarios']['high_over_6_open_high_3_to_6_open_sale']['profit_0_to_3'], counters['scenarios']['high_over_6_open_high_3_to_6_open_sale']['profit_3_to_6'], counters['scenarios']['high_over_6_open_high_3_to_6_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['high_over_6_open_high_3_to_6_open_sale']['loss_over_6'], counters['scenarios']['high_over_6_open_high_3_to_6_open_sale']['loss_6_to_3'], counters['scenarios']['high_over_6_open_high_3_to_6_open_sale']['loss_3_to_0'], counters['scenarios']['high_over_6_open_high_3_to_6_open_sale']['profit_0_to_3'], counters['scenarios']['high_over_6_open_high_3_to_6_open_sale']['profit_3_to_6'], counters['scenarios']['high_over_6_open_high_3_to_6_open_sale']['profit_over_6']) + elif next_open_diff > 6 and saleprice_open_differrange > 6: + counters['scenarios']['high_over_6_open_high_over_6_open_sale']['loss_over_6'],counters['scenarios']['high_over_6_open_high_over_6_open_sale']['loss_6_to_3'], counters['scenarios']['high_over_6_open_high_over_6_open_sale']['loss_3_to_0'], counters['scenarios']['high_over_6_open_high_over_6_open_sale']['profit_0_to_3'], counters['scenarios']['high_over_6_open_high_over_6_open_sale']['profit_3_to_6'], counters['scenarios']['high_over_6_open_high_over_6_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['high_over_6_open_high_over_6_open_sale']['loss_over_6'], counters['scenarios']['high_over_6_open_high_over_6_open_sale']['loss_6_to_3'], counters['scenarios']['high_over_6_open_high_over_6_open_sale']['loss_3_to_0'], counters['scenarios']['high_over_6_open_high_over_6_open_sale']['profit_0_to_3'], counters['scenarios']['high_over_6_open_high_over_6_open_sale']['profit_3_to_6'], counters['scenarios']['high_over_6_open_high_over_6_open_sale']['profit_over_6']) + + # 组合场景: 开盘建仓 清仓日收盘清仓 盈亏分布 + if next_open_diff < -6 and saleprice_close_differrange < -6: + counters['scenarios']['low_over_6_open_low_over_6_close_sale']['loss_over_6'],counters['scenarios']['low_over_6_open_low_over_6_close_sale']['loss_6_to_3'], counters['scenarios']['low_over_6_open_low_over_6_close_sale']['loss_3_to_0'], counters['scenarios']['low_over_6_open_low_over_6_close_sale']['profit_0_to_3'], counters['scenarios']['low_over_6_open_low_over_6_close_sale']['profit_3_to_6'], counters['scenarios']['low_over_6_open_low_over_6_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['low_over_6_open_low_over_6_close_sale']['loss_over_6'], counters['scenarios']['low_over_6_open_low_over_6_close_sale']['loss_6_to_3'], counters['scenarios']['low_over_6_open_low_over_6_close_sale']['loss_3_to_0'], counters['scenarios']['low_over_6_open_low_over_6_close_sale']['profit_0_to_3'], counters['scenarios']['low_over_6_open_low_over_6_close_sale']['profit_3_to_6'], counters['scenarios']['low_over_6_open_low_over_6_close_sale']['profit_over_6']) + elif next_open_diff < -6 and saleprice_close_differrange > -6 and saleprice_close_differrange < -3: + counters['scenarios']['low_over_6_open_low_6_to_3_close_sale']['loss_over_6'],counters['scenarios']['low_over_6_open_low_6_to_3_close_sale']['loss_6_to_3'], counters['scenarios']['low_over_6_open_low_6_to_3_close_sale']['loss_3_to_0'], counters['scenarios']['low_over_6_open_low_6_to_3_close_sale']['profit_0_to_3'], counters['scenarios']['low_over_6_open_low_6_to_3_close_sale']['profit_3_to_6'], counters['scenarios']['low_over_6_open_low_6_to_3_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['low_over_6_open_low_6_to_3_close_sale']['loss_over_6'], counters['scenarios']['low_over_6_open_low_6_to_3_close_sale']['loss_6_to_3'], counters['scenarios']['low_over_6_open_low_6_to_3_close_sale']['loss_3_to_0'], counters['scenarios']['low_over_6_open_low_6_to_3_close_sale']['profit_0_to_3'], counters['scenarios']['low_over_6_open_low_6_to_3_close_sale']['profit_3_to_6'], counters['scenarios']['low_over_6_open_low_6_to_3_close_sale']['profit_over_6']) + elif next_open_diff < -6 and saleprice_close_differrange > -3 and saleprice_close_differrange < 0: + counters['scenarios']['low_over_6_open_low_3_to_0_close_sale']['loss_over_6'],counters['scenarios']['low_over_6_open_low_3_to_0_close_sale']['loss_6_to_3'], counters['scenarios']['low_over_6_open_low_3_to_0_close_sale']['loss_3_to_0'], counters['scenarios']['low_over_6_open_low_3_to_0_close_sale']['profit_0_to_3'], counters['scenarios']['low_over_6_open_low_3_to_0_close_sale']['profit_3_to_6'], counters['scenarios']['low_over_6_open_low_3_to_0_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['low_over_6_open_low_3_to_0_close_sale']['loss_over_6'], counters['scenarios']['low_over_6_open_low_3_to_0_close_sale']['loss_6_to_3'], counters['scenarios']['low_over_6_open_low_3_to_0_close_sale']['loss_3_to_0'], counters['scenarios']['low_over_6_open_low_3_to_0_close_sale']['profit_0_to_3'], counters['scenarios']['low_over_6_open_low_3_to_0_close_sale']['profit_3_to_6'], counters['scenarios']['low_over_6_open_low_3_to_0_close_sale']['profit_over_6']) + elif next_open_diff < -6 and saleprice_close_differrange > 0 and saleprice_close_differrange < 3: + counters['scenarios']['low_over_6_open_high_0_to_3_close_sale']['loss_over_6'],counters['scenarios']['low_over_6_open_high_0_to_3_close_sale']['loss_6_to_3'], counters['scenarios']['low_over_6_open_high_0_to_3_close_sale']['loss_3_to_0'], counters['scenarios']['low_over_6_open_high_0_to_3_close_sale']['profit_0_to_3'], counters['scenarios']['low_over_6_open_high_0_to_3_close_sale']['profit_3_to_6'], counters['scenarios']['low_over_6_open_high_0_to_3_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['low_over_6_open_high_0_to_3_close_sale']['loss_over_6'], counters['scenarios']['low_over_6_open_high_0_to_3_close_sale']['loss_6_to_3'], counters['scenarios']['low_over_6_open_high_0_to_3_close_sale']['loss_3_to_0'], counters['scenarios']['low_over_6_open_high_0_to_3_close_sale']['profit_0_to_3'], counters['scenarios']['low_over_6_open_high_0_to_3_close_sale']['profit_3_to_6'], counters['scenarios']['low_over_6_open_high_0_to_3_close_sale']['profit_over_6']) + elif next_open_diff < -6 and saleprice_close_differrange > 3 and saleprice_close_differrange < 6: + counters['scenarios']['low_over_6_open_high_3_to_6_close_sale']['loss_over_6'],counters['scenarios']['low_over_6_open_high_3_to_6_close_sale']['loss_6_to_3'], counters['scenarios']['low_over_6_open_high_3_to_6_close_sale']['loss_3_to_0'], counters['scenarios']['low_over_6_open_high_3_to_6_close_sale']['profit_0_to_3'], counters['scenarios']['low_over_6_open_high_3_to_6_close_sale']['profit_3_to_6'], counters['scenarios']['low_over_6_open_high_3_to_6_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['low_over_6_open_high_3_to_6_close_sale']['loss_over_6'], counters['scenarios']['low_over_6_open_high_3_to_6_close_sale']['loss_6_to_3'], counters['scenarios']['low_over_6_open_high_3_to_6_close_sale']['loss_3_to_0'], counters['scenarios']['low_over_6_open_high_3_to_6_close_sale']['profit_0_to_3'], counters['scenarios']['low_over_6_open_high_3_to_6_close_sale']['profit_3_to_6'], counters['scenarios']['low_over_6_open_high_3_to_6_close_sale']['profit_over_6']) + elif next_open_diff < -6 and saleprice_close_differrange > 6: + counters['scenarios']['low_over_6_open_high_over_6_close_sale']['loss_over_6'],counters['scenarios']['low_over_6_open_high_over_6_close_sale']['loss_6_to_3'], counters['scenarios']['low_over_6_open_high_over_6_close_sale']['loss_3_to_0'], counters['scenarios']['low_over_6_open_high_over_6_close_sale']['profit_0_to_3'], counters['scenarios']['low_over_6_open_high_over_6_close_sale']['profit_3_to_6'], counters['scenarios']['low_over_6_open_high_over_6_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['low_over_6_open_high_over_6_close_sale']['loss_over_6'], counters['scenarios']['low_over_6_open_high_over_6_close_sale']['loss_6_to_3'], counters['scenarios']['low_over_6_open_high_over_6_close_sale']['loss_3_to_0'], counters['scenarios']['low_over_6_open_high_over_6_close_sale']['profit_0_to_3'], counters['scenarios']['low_over_6_open_high_over_6_close_sale']['profit_3_to_6'], counters['scenarios']['low_over_6_open_high_over_6_close_sale']['profit_over_6']) + elif next_open_diff > -6 and next_open_diff < -3 and saleprice_close_differrange < -6: + counters['scenarios']['low_6_to_3_open_low_over_6_close_sale']['loss_over_6'],counters['scenarios']['low_6_to_3_open_low_over_6_close_sale']['loss_6_to_3'], counters['scenarios']['low_6_to_3_open_low_over_6_close_sale']['loss_3_to_0'], counters['scenarios']['low_6_to_3_open_low_over_6_close_sale']['profit_0_to_3'], counters['scenarios']['low_6_to_3_open_low_over_6_close_sale']['profit_3_to_6'], counters['scenarios']['low_6_to_3_open_low_over_6_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['low_6_to_3_open_low_over_6_close_sale']['loss_over_6'], counters['scenarios']['low_6_to_3_open_low_over_6_close_sale']['loss_6_to_3'], counters['scenarios']['low_6_to_3_open_low_over_6_close_sale']['loss_3_to_0'], counters['scenarios']['low_6_to_3_open_low_over_6_close_sale']['profit_0_to_3'], counters['scenarios']['low_6_to_3_open_low_over_6_close_sale']['profit_3_to_6'], counters['scenarios']['low_6_to_3_open_low_over_6_close_sale']['profit_over_6']) + elif next_open_diff > -6 and next_open_diff < -3 and saleprice_close_differrange > -6 and saleprice_close_differrange < -3: + counters['scenarios']['low_6_to_3_open_low_6_to_3_close_sale']['loss_over_6'],counters['scenarios']['low_6_to_3_open_low_6_to_3_close_sale']['loss_6_to_3'], counters['scenarios']['low_6_to_3_open_low_6_to_3_close_sale']['loss_3_to_0'], counters['scenarios']['low_6_to_3_open_low_6_to_3_close_sale']['profit_0_to_3'], counters['scenarios']['low_6_to_3_open_low_6_to_3_close_sale']['profit_3_to_6'], counters['scenarios']['low_6_to_3_open_low_6_to_3_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['low_6_to_3_open_low_6_to_3_close_sale']['loss_over_6'], counters['scenarios']['low_6_to_3_open_low_6_to_3_close_sale']['loss_6_to_3'], counters['scenarios']['low_6_to_3_open_low_6_to_3_close_sale']['loss_3_to_0'], counters['scenarios']['low_6_to_3_open_low_6_to_3_close_sale']['profit_0_to_3'], counters['scenarios']['low_6_to_3_open_low_6_to_3_close_sale']['profit_3_to_6'], counters['scenarios']['low_6_to_3_open_low_6_to_3_close_sale']['profit_over_6']) + elif next_open_diff > -6 and next_open_diff < -3 and saleprice_close_differrange > -3 and saleprice_close_differrange < 0: + counters['scenarios']['low_6_to_3_open_low_3_to_0_close_sale']['loss_over_6'],counters['scenarios']['low_6_to_3_open_low_3_to_0_close_sale']['loss_6_to_3'], counters['scenarios']['low_6_to_3_open_low_3_to_0_close_sale']['loss_3_to_0'], counters['scenarios']['low_6_to_3_open_low_3_to_0_close_sale']['profit_0_to_3'], counters['scenarios']['low_6_to_3_open_low_3_to_0_close_sale']['profit_3_to_6'], counters['scenarios']['low_6_to_3_open_low_3_to_0_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['low_6_to_3_open_low_3_to_0_close_sale']['loss_over_6'], counters['scenarios']['low_6_to_3_open_low_3_to_0_close_sale']['loss_6_to_3'], counters['scenarios']['low_6_to_3_open_low_3_to_0_close_sale']['loss_3_to_0'], counters['scenarios']['low_6_to_3_open_low_3_to_0_close_sale']['profit_0_to_3'], counters['scenarios']['low_6_to_3_open_low_3_to_0_close_sale']['profit_3_to_6'], counters['scenarios']['low_6_to_3_open_low_3_to_0_close_sale']['profit_over_6']) + elif next_open_diff > -6 and next_open_diff < -3 and saleprice_close_differrange > 0 and saleprice_close_differrange < 3: + counters['scenarios']['low_6_to_3_open_high_0_to_3_close_sale']['loss_over_6'],counters['scenarios']['low_6_to_3_open_high_0_to_3_close_sale']['loss_6_to_3'], counters['scenarios']['low_6_to_3_open_high_0_to_3_close_sale']['loss_3_to_0'], counters['scenarios']['low_6_to_3_open_high_0_to_3_close_sale']['profit_0_to_3'], counters['scenarios']['low_6_to_3_open_high_0_to_3_close_sale']['profit_3_to_6'], counters['scenarios']['low_6_to_3_open_high_0_to_3_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['low_6_to_3_open_high_0_to_3_close_sale']['loss_over_6'], counters['scenarios']['low_6_to_3_open_high_0_to_3_close_sale']['loss_6_to_3'], counters['scenarios']['low_6_to_3_open_high_0_to_3_close_sale']['loss_3_to_0'], counters['scenarios']['low_6_to_3_open_high_0_to_3_close_sale']['profit_0_to_3'], counters['scenarios']['low_6_to_3_open_high_0_to_3_close_sale']['profit_3_to_6'], counters['scenarios']['low_6_to_3_open_high_0_to_3_close_sale']['profit_over_6']) + elif next_open_diff > -6 and next_open_diff < -3 and saleprice_close_differrange > 3 and saleprice_close_differrange < 6: + counters['scenarios']['low_6_to_3_open_high_3_to_6_close_sale']['loss_over_6'],counters['scenarios']['low_6_to_3_open_high_3_to_6_close_sale']['loss_6_to_3'], counters['scenarios']['low_6_to_3_open_high_3_to_6_close_sale']['loss_3_to_0'], counters['scenarios']['low_6_to_3_open_high_3_to_6_close_sale']['profit_0_to_3'], counters['scenarios']['low_6_to_3_open_high_3_to_6_close_sale']['profit_3_to_6'], counters['scenarios']['low_6_to_3_open_high_3_to_6_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['low_6_to_3_open_high_3_to_6_close_sale']['loss_over_6'], counters['scenarios']['low_6_to_3_open_high_3_to_6_close_sale']['loss_6_to_3'], counters['scenarios']['low_6_to_3_open_high_3_to_6_close_sale']['loss_3_to_0'], counters['scenarios']['low_6_to_3_open_high_3_to_6_close_sale']['profit_0_to_3'], counters['scenarios']['low_6_to_3_open_high_3_to_6_close_sale']['profit_3_to_6'], counters['scenarios']['low_6_to_3_open_high_3_to_6_close_sale']['profit_over_6']) + elif next_open_diff > -6 and next_open_diff < -3 and saleprice_close_differrange > 6: + counters['scenarios']['low_6_to_3_open_high_over_6_close_sale']['loss_over_6'],counters['scenarios']['low_6_to_3_open_high_over_6_close_sale']['loss_6_to_3'], counters['scenarios']['low_6_to_3_open_high_over_6_close_sale']['loss_3_to_0'], counters['scenarios']['low_6_to_3_open_high_over_6_close_sale']['profit_0_to_3'], counters['scenarios']['low_6_to_3_open_high_over_6_close_sale']['profit_3_to_6'], counters['scenarios']['low_6_to_3_open_high_over_6_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['low_6_to_3_open_high_over_6_close_sale']['loss_over_6'], counters['scenarios']['low_6_to_3_open_high_over_6_close_sale']['loss_6_to_3'], counters['scenarios']['low_6_to_3_open_high_over_6_close_sale']['loss_3_to_0'], counters['scenarios']['low_6_to_3_open_high_over_6_close_sale']['profit_0_to_3'], counters['scenarios']['low_6_to_3_open_high_over_6_close_sale']['profit_3_to_6'], counters['scenarios']['low_6_to_3_open_high_over_6_close_sale']['profit_over_6']) + elif next_open_diff > -3 and next_open_diff < 0 and saleprice_close_differrange < -6: + counters['scenarios']['low_3_to_0_open_low_over_6_close_sale']['loss_over_6'],counters['scenarios']['low_3_to_0_open_low_over_6_close_sale']['loss_6_to_3'], counters['scenarios']['low_3_to_0_open_low_over_6_close_sale']['loss_3_to_0'], counters['scenarios']['low_3_to_0_open_low_over_6_close_sale']['profit_0_to_3'], counters['scenarios']['low_3_to_0_open_low_over_6_close_sale']['profit_3_to_6'], counters['scenarios']['low_3_to_0_open_low_over_6_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['low_3_to_0_open_low_over_6_close_sale']['loss_over_6'], counters['scenarios']['low_3_to_0_open_low_over_6_close_sale']['loss_6_to_3'], counters['scenarios']['low_3_to_0_open_low_over_6_close_sale']['loss_3_to_0'], counters['scenarios']['low_3_to_0_open_low_over_6_close_sale']['profit_0_to_3'], counters['scenarios']['low_3_to_0_open_low_over_6_close_sale']['profit_3_to_6'], counters['scenarios']['low_3_to_0_open_low_over_6_close_sale']['profit_over_6']) + elif next_open_diff > -3 and next_open_diff < 0 and saleprice_close_differrange > -6 and saleprice_close_differrange < -3: + counters['scenarios']['low_3_to_0_open_low_6_to_3_close_sale']['loss_over_6'],counters['scenarios']['low_3_to_0_open_low_6_to_3_close_sale']['loss_6_to_3'], counters['scenarios']['low_3_to_0_open_low_6_to_3_close_sale']['loss_3_to_0'], counters['scenarios']['low_3_to_0_open_low_6_to_3_close_sale']['profit_0_to_3'], counters['scenarios']['low_3_to_0_open_low_6_to_3_close_sale']['profit_3_to_6'], counters['scenarios']['low_3_to_0_open_low_6_to_3_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['low_3_to_0_open_low_6_to_3_close_sale']['loss_over_6'], counters['scenarios']['low_3_to_0_open_low_6_to_3_close_sale']['loss_6_to_3'], counters['scenarios']['low_3_to_0_open_low_6_to_3_close_sale']['loss_3_to_0'], counters['scenarios']['low_3_to_0_open_low_6_to_3_close_sale']['profit_0_to_3'], counters['scenarios']['low_3_to_0_open_low_6_to_3_close_sale']['profit_3_to_6'], counters['scenarios']['low_3_to_0_open_low_6_to_3_close_sale']['profit_over_6']) + elif next_open_diff > -3 and next_open_diff < 0 and saleprice_close_differrange > -3 and saleprice_close_differrange < 0: + counters['scenarios']['low_3_to_0_open_low_3_to_0_close_sale']['loss_over_6'],counters['scenarios']['low_3_to_0_open_low_3_to_0_close_sale']['loss_6_to_3'], counters['scenarios']['low_3_to_0_open_low_3_to_0_close_sale']['loss_3_to_0'], counters['scenarios']['low_3_to_0_open_low_3_to_0_close_sale']['profit_0_to_3'], counters['scenarios']['low_3_to_0_open_low_3_to_0_close_sale']['profit_3_to_6'], counters['scenarios']['low_3_to_0_open_low_3_to_0_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['low_3_to_0_open_low_3_to_0_close_sale']['loss_over_6'], counters['scenarios']['low_3_to_0_open_low_3_to_0_close_sale']['loss_6_to_3'], counters['scenarios']['low_3_to_0_open_low_3_to_0_close_sale']['loss_3_to_0'], counters['scenarios']['low_3_to_0_open_low_3_to_0_close_sale']['profit_0_to_3'], counters['scenarios']['low_3_to_0_open_low_3_to_0_close_sale']['profit_3_to_6'], counters['scenarios']['low_3_to_0_open_low_3_to_0_close_sale']['profit_over_6']) + elif next_open_diff > -3 and next_open_diff < 0 and saleprice_close_differrange > 0 and saleprice_close_differrange < 3: + counters['scenarios']['low_3_to_0_open_high_0_to_3_close_sale']['loss_over_6'],counters['scenarios']['low_3_to_0_open_high_0_to_3_close_sale']['loss_6_to_3'], counters['scenarios']['low_3_to_0_open_high_0_to_3_close_sale']['loss_3_to_0'], counters['scenarios']['low_3_to_0_open_high_0_to_3_close_sale']['profit_0_to_3'], counters['scenarios']['low_3_to_0_open_high_0_to_3_close_sale']['profit_3_to_6'], counters['scenarios']['low_3_to_0_open_high_0_to_3_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['low_3_to_0_open_high_0_to_3_close_sale']['loss_over_6'], counters['scenarios']['low_3_to_0_open_high_0_to_3_close_sale']['loss_6_to_3'], counters['scenarios']['low_3_to_0_open_high_0_to_3_close_sale']['loss_3_to_0'], counters['scenarios']['low_3_to_0_open_high_0_to_3_close_sale']['profit_0_to_3'], counters['scenarios']['low_3_to_0_open_high_0_to_3_close_sale']['profit_3_to_6'], counters['scenarios']['low_3_to_0_open_high_0_to_3_close_sale']['profit_over_6']) + elif next_open_diff > -3 and next_open_diff < 0 and saleprice_close_differrange > 3 and saleprice_close_differrange < 6: + counters['scenarios']['low_3_to_0_open_high_3_to_6_close_sale']['loss_over_6'],counters['scenarios']['low_3_to_0_open_high_3_to_6_close_sale']['loss_6_to_3'], counters['scenarios']['low_3_to_0_open_high_3_to_6_close_sale']['loss_3_to_0'], counters['scenarios']['low_3_to_0_open_high_3_to_6_close_sale']['profit_0_to_3'], counters['scenarios']['low_3_to_0_open_high_3_to_6_close_sale']['profit_3_to_6'], counters['scenarios']['low_3_to_0_open_high_3_to_6_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['low_3_to_0_open_high_3_to_6_close_sale']['loss_over_6'], counters['scenarios']['low_3_to_0_open_high_3_to_6_close_sale']['loss_6_to_3'], counters['scenarios']['low_3_to_0_open_high_3_to_6_close_sale']['loss_3_to_0'], counters['scenarios']['low_3_to_0_open_high_3_to_6_close_sale']['profit_0_to_3'], counters['scenarios']['low_3_to_0_open_high_3_to_6_close_sale']['profit_3_to_6'], counters['scenarios']['low_3_to_0_open_high_3_to_6_close_sale']['profit_over_6']) + elif next_open_diff > -3 and next_open_diff < 0 and saleprice_close_differrange > 6: + counters['scenarios']['low_3_to_0_open_high_over_6_close_sale']['loss_over_6'],counters['scenarios']['low_3_to_0_open_high_over_6_close_sale']['loss_6_to_3'], counters['scenarios']['low_3_to_0_open_high_over_6_close_sale']['loss_3_to_0'], counters['scenarios']['low_3_to_0_open_high_over_6_close_sale']['profit_0_to_3'], counters['scenarios']['low_3_to_0_open_high_over_6_close_sale']['profit_3_to_6'], counters['scenarios']['low_3_to_0_open_high_over_6_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['low_3_to_0_open_high_over_6_close_sale']['loss_over_6'], counters['scenarios']['low_3_to_0_open_high_over_6_close_sale']['loss_6_to_3'], counters['scenarios']['low_3_to_0_open_high_over_6_close_sale']['loss_3_to_0'], counters['scenarios']['low_3_to_0_open_high_over_6_close_sale']['profit_0_to_3'], counters['scenarios']['low_3_to_0_open_high_over_6_close_sale']['profit_3_to_6'], counters['scenarios']['low_3_to_0_open_high_over_6_close_sale']['profit_over_6']) + elif next_open_diff > 0 and next_open_diff < 3 and saleprice_close_differrange < -6: + counters['scenarios']['high_0_to_3_open_low_over_6_close_sale']['loss_over_6'],counters['scenarios']['high_0_to_3_open_low_over_6_close_sale']['loss_6_to_3'], counters['scenarios']['high_0_to_3_open_low_over_6_close_sale']['loss_3_to_0'], counters['scenarios']['high_0_to_3_open_low_over_6_close_sale']['profit_0_to_3'], counters['scenarios']['high_0_to_3_open_low_over_6_close_sale']['profit_3_to_6'], counters['scenarios']['high_0_to_3_open_low_over_6_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['high_0_to_3_open_low_over_6_close_sale']['loss_over_6'], counters['scenarios']['high_0_to_3_open_low_over_6_close_sale']['loss_6_to_3'], counters['scenarios']['high_0_to_3_open_low_over_6_close_sale']['loss_3_to_0'], counters['scenarios']['high_0_to_3_open_low_over_6_close_sale']['profit_0_to_3'], counters['scenarios']['high_0_to_3_open_low_over_6_close_sale']['profit_3_to_6'], counters['scenarios']['high_0_to_3_open_low_over_6_close_sale']['profit_over_6']) + elif next_open_diff > 0 and next_open_diff < 3 and saleprice_close_differrange > -6 and saleprice_close_differrange < -3: + counters['scenarios']['high_0_to_3_open_low_6_to_3_close_sale']['loss_over_6'],counters['scenarios']['high_0_to_3_open_low_6_to_3_close_sale']['loss_6_to_3'], counters['scenarios']['high_0_to_3_open_low_6_to_3_close_sale']['loss_3_to_0'], counters['scenarios']['high_0_to_3_open_low_6_to_3_close_sale']['profit_0_to_3'], counters['scenarios']['high_0_to_3_open_low_6_to_3_close_sale']['profit_3_to_6'], counters['scenarios']['high_0_to_3_open_low_6_to_3_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['high_0_to_3_open_low_6_to_3_close_sale']['loss_over_6'], counters['scenarios']['high_0_to_3_open_low_6_to_3_close_sale']['loss_6_to_3'], counters['scenarios']['high_0_to_3_open_low_6_to_3_close_sale']['loss_3_to_0'], counters['scenarios']['high_0_to_3_open_low_6_to_3_close_sale']['profit_0_to_3'], counters['scenarios']['high_0_to_3_open_low_6_to_3_close_sale']['profit_3_to_6'], counters['scenarios']['high_0_to_3_open_low_6_to_3_close_sale']['profit_over_6']) + elif next_open_diff > 0 and next_open_diff < 3 and saleprice_close_differrange > -3 and saleprice_close_differrange < 0: + counters['scenarios']['high_0_to_3_open_low_3_to_0_close_sale']['loss_over_6'],counters['scenarios']['high_0_to_3_open_low_3_to_0_close_sale']['loss_6_to_3'], counters['scenarios']['high_0_to_3_open_low_3_to_0_close_sale']['loss_3_to_0'], counters['scenarios']['high_0_to_3_open_low_3_to_0_close_sale']['profit_0_to_3'], counters['scenarios']['high_0_to_3_open_low_3_to_0_close_sale']['profit_3_to_6'], counters['scenarios']['high_0_to_3_open_low_3_to_0_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['high_0_to_3_open_low_3_to_0_close_sale']['loss_over_6'], counters['scenarios']['high_0_to_3_open_low_3_to_0_close_sale']['loss_6_to_3'], counters['scenarios']['high_0_to_3_open_low_3_to_0_close_sale']['loss_3_to_0'], counters['scenarios']['high_0_to_3_open_low_3_to_0_close_sale']['profit_0_to_3'], counters['scenarios']['high_0_to_3_open_low_3_to_0_close_sale']['profit_3_to_6'], counters['scenarios']['high_0_to_3_open_low_3_to_0_close_sale']['profit_over_6']) + elif next_open_diff > 0 and next_open_diff < 3 and saleprice_close_differrange > 0 and saleprice_close_differrange < 3: + counters['scenarios']['high_0_to_3_open_high_0_to_3_close_sale']['loss_over_6'],counters['scenarios']['high_0_to_3_open_high_0_to_3_close_sale']['loss_6_to_3'], counters['scenarios']['high_0_to_3_open_high_0_to_3_close_sale']['loss_3_to_0'], counters['scenarios']['high_0_to_3_open_high_0_to_3_close_sale']['profit_0_to_3'], counters['scenarios']['high_0_to_3_open_high_0_to_3_close_sale']['profit_3_to_6'], counters['scenarios']['high_0_to_3_open_high_0_to_3_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['high_0_to_3_open_high_0_to_3_close_sale']['loss_over_6'], counters['scenarios']['high_0_to_3_open_high_0_to_3_close_sale']['loss_6_to_3'], counters['scenarios']['high_0_to_3_open_high_0_to_3_close_sale']['loss_3_to_0'], counters['scenarios']['high_0_to_3_open_high_0_to_3_close_sale']['profit_0_to_3'], counters['scenarios']['high_0_to_3_open_high_0_to_3_close_sale']['profit_3_to_6'], counters['scenarios']['high_0_to_3_open_high_0_to_3_close_sale']['profit_over_6']) + elif next_open_diff > 0 and next_open_diff < 3 and saleprice_close_differrange > 3 and saleprice_close_differrange < 6: + counters['scenarios']['high_0_to_3_open_high_3_to_6_close_sale']['loss_over_6'],counters['scenarios']['high_0_to_3_open_high_3_to_6_close_sale']['loss_6_to_3'], counters['scenarios']['high_0_to_3_open_high_3_to_6_close_sale']['loss_3_to_0'], counters['scenarios']['high_0_to_3_open_high_3_to_6_close_sale']['profit_0_to_3'], counters['scenarios']['high_0_to_3_open_high_3_to_6_close_sale']['profit_3_to_6'], counters['scenarios']['high_0_to_3_open_high_3_to_6_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['high_0_to_3_open_high_3_to_6_close_sale']['loss_over_6'], counters['scenarios']['high_0_to_3_open_high_3_to_6_close_sale']['loss_6_to_3'], counters['scenarios']['high_0_to_3_open_high_3_to_6_close_sale']['loss_3_to_0'], counters['scenarios']['high_0_to_3_open_high_3_to_6_close_sale']['profit_0_to_3'], counters['scenarios']['high_0_to_3_open_high_3_to_6_close_sale']['profit_3_to_6'], counters['scenarios']['high_0_to_3_open_high_3_to_6_close_sale']['profit_over_6']) + elif next_open_diff > 0 and next_open_diff < 3 and saleprice_close_differrange > 6: + counters['scenarios']['high_0_to_3_open_high_over_6_close_sale']['loss_over_6'],counters['scenarios']['high_0_to_3_open_high_over_6_close_sale']['loss_6_to_3'], counters['scenarios']['high_0_to_3_open_high_over_6_close_sale']['loss_3_to_0'], counters['scenarios']['high_0_to_3_open_high_over_6_close_sale']['profit_0_to_3'], counters['scenarios']['high_0_to_3_open_high_over_6_close_sale']['profit_3_to_6'], counters['scenarios']['high_0_to_3_open_high_over_6_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['high_0_to_3_open_high_over_6_close_sale']['loss_over_6'], counters['scenarios']['high_0_to_3_open_high_over_6_close_sale']['loss_6_to_3'], counters['scenarios']['high_0_to_3_open_high_over_6_close_sale']['loss_3_to_0'], counters['scenarios']['high_0_to_3_open_high_over_6_close_sale']['profit_0_to_3'], counters['scenarios']['high_0_to_3_open_high_over_6_close_sale']['profit_3_to_6'], counters['scenarios']['high_0_to_3_open_high_over_6_close_sale']['profit_over_6']) + elif next_open_diff > 3 and next_open_diff < 6 and saleprice_close_differrange < -6: + counters['scenarios']['high_3_to_6_open_low_over_6_close_sale']['loss_over_6'],counters['scenarios']['high_3_to_6_open_low_over_6_close_sale']['loss_6_to_3'], counters['scenarios']['high_3_to_6_open_low_over_6_close_sale']['loss_3_to_0'], counters['scenarios']['high_3_to_6_open_low_over_6_close_sale']['profit_0_to_3'], counters['scenarios']['high_3_to_6_open_low_over_6_close_sale']['profit_3_to_6'], counters['scenarios']['high_3_to_6_open_low_over_6_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['high_3_to_6_open_low_over_6_close_sale']['loss_over_6'], counters['scenarios']['high_3_to_6_open_low_over_6_close_sale']['loss_6_to_3'], counters['scenarios']['high_3_to_6_open_low_over_6_close_sale']['loss_3_to_0'], counters['scenarios']['high_3_to_6_open_low_over_6_close_sale']['profit_0_to_3'], counters['scenarios']['high_3_to_6_open_low_over_6_close_sale']['profit_3_to_6'], counters['scenarios']['high_3_to_6_open_low_over_6_close_sale']['profit_over_6']) + elif next_open_diff > 3 and next_open_diff < 6 and saleprice_close_differrange > -6 and saleprice_close_differrange < -3: + counters['scenarios']['high_3_to_6_open_low_6_to_3_close_sale']['loss_over_6'],counters['scenarios']['high_3_to_6_open_low_6_to_3_close_sale']['loss_6_to_3'], counters['scenarios']['high_3_to_6_open_low_6_to_3_close_sale']['loss_3_to_0'], counters['scenarios']['high_3_to_6_open_low_6_to_3_close_sale']['profit_0_to_3'], counters['scenarios']['high_3_to_6_open_low_6_to_3_close_sale']['profit_3_to_6'], counters['scenarios']['high_3_to_6_open_low_6_to_3_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['high_3_to_6_open_low_6_to_3_close_sale']['loss_over_6'], counters['scenarios']['high_3_to_6_open_low_6_to_3_close_sale']['loss_6_to_3'], counters['scenarios']['high_3_to_6_open_low_6_to_3_close_sale']['loss_3_to_0'], counters['scenarios']['high_3_to_6_open_low_6_to_3_close_sale']['profit_0_to_3'], counters['scenarios']['high_3_to_6_open_low_6_to_3_close_sale']['profit_3_to_6'], counters['scenarios']['high_3_to_6_open_low_6_to_3_close_sale']['profit_over_6']) + elif next_open_diff > 3 and next_open_diff < 6 and saleprice_close_differrange > -3 and saleprice_close_differrange < 0: + counters['scenarios']['high_3_to_6_open_low_3_to_0_close_sale']['loss_over_6'],counters['scenarios']['high_3_to_6_open_low_3_to_0_close_sale']['loss_6_to_3'], counters['scenarios']['high_3_to_6_open_low_3_to_0_close_sale']['loss_3_to_0'], counters['scenarios']['high_3_to_6_open_low_3_to_0_close_sale']['profit_0_to_3'], counters['scenarios']['high_3_to_6_open_low_3_to_0_close_sale']['profit_3_to_6'], counters['scenarios']['high_3_to_6_open_low_3_to_0_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['high_3_to_6_open_low_3_to_0_close_sale']['loss_over_6'], counters['scenarios']['high_3_to_6_open_low_3_to_0_close_sale']['loss_6_to_3'], counters['scenarios']['high_3_to_6_open_low_3_to_0_close_sale']['loss_3_to_0'], counters['scenarios']['high_3_to_6_open_low_3_to_0_close_sale']['profit_0_to_3'], counters['scenarios']['high_3_to_6_open_low_3_to_0_close_sale']['profit_3_to_6'], counters['scenarios']['high_3_to_6_open_low_3_to_0_close_sale']['profit_over_6']) + elif next_open_diff > 3 and next_open_diff < 6 and saleprice_close_differrange > 0 and saleprice_close_differrange < 3: + counters['scenarios']['high_3_to_6_open_high_0_to_3_close_sale']['loss_over_6'],counters['scenarios']['high_3_to_6_open_high_0_to_3_close_sale']['loss_6_to_3'], counters['scenarios']['high_3_to_6_open_high_0_to_3_close_sale']['loss_3_to_0'], counters['scenarios']['high_3_to_6_open_high_0_to_3_close_sale']['profit_0_to_3'], counters['scenarios']['high_3_to_6_open_high_0_to_3_close_sale']['profit_3_to_6'], counters['scenarios']['high_3_to_6_open_high_0_to_3_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['high_3_to_6_open_high_0_to_3_close_sale']['loss_over_6'], counters['scenarios']['high_3_to_6_open_high_0_to_3_close_sale']['loss_6_to_3'], counters['scenarios']['high_3_to_6_open_high_0_to_3_close_sale']['loss_3_to_0'], counters['scenarios']['high_3_to_6_open_high_0_to_3_close_sale']['profit_0_to_3'], counters['scenarios']['high_3_to_6_open_high_0_to_3_close_sale']['profit_3_to_6'], counters['scenarios']['high_3_to_6_open_high_0_to_3_close_sale']['profit_over_6']) + elif next_open_diff > 3 and next_open_diff < 6 and saleprice_close_differrange > 3 and saleprice_close_differrange < 6: + counters['scenarios']['high_3_to_6_open_high_3_to_6_close_sale']['loss_over_6'],counters['scenarios']['high_3_to_6_open_high_3_to_6_close_sale']['loss_6_to_3'], counters['scenarios']['high_3_to_6_open_high_3_to_6_close_sale']['loss_3_to_0'], counters['scenarios']['high_3_to_6_open_high_3_to_6_close_sale']['profit_0_to_3'], counters['scenarios']['high_3_to_6_open_high_3_to_6_close_sale']['profit_3_to_6'], counters['scenarios']['high_3_to_6_open_high_3_to_6_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['high_3_to_6_open_high_3_to_6_close_sale']['loss_over_6'], counters['scenarios']['high_3_to_6_open_high_3_to_6_close_sale']['loss_6_to_3'], counters['scenarios']['high_3_to_6_open_high_3_to_6_close_sale']['loss_3_to_0'], counters['scenarios']['high_3_to_6_open_high_3_to_6_close_sale']['profit_0_to_3'], counters['scenarios']['high_3_to_6_open_high_3_to_6_close_sale']['profit_3_to_6'], counters['scenarios']['high_3_to_6_open_high_3_to_6_close_sale']['profit_over_6']) + elif next_open_diff > 3 and next_open_diff < 6 and saleprice_close_differrange > 6: + counters['scenarios']['high_3_to_6_open_high_over_6_close_sale']['loss_over_6'],counters['scenarios']['high_3_to_6_open_high_over_6_close_sale']['loss_6_to_3'], counters['scenarios']['high_3_to_6_open_high_over_6_close_sale']['loss_3_to_0'], counters['scenarios']['high_3_to_6_open_high_over_6_close_sale']['profit_0_to_3'], counters['scenarios']['high_3_to_6_open_high_over_6_close_sale']['profit_3_to_6'], counters['scenarios']['high_3_to_6_open_high_over_6_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['high_3_to_6_open_high_over_6_close_sale']['loss_over_6'], counters['scenarios']['high_3_to_6_open_high_over_6_close_sale']['loss_6_to_3'], counters['scenarios']['high_3_to_6_open_high_over_6_close_sale']['loss_3_to_0'], counters['scenarios']['high_3_to_6_open_high_over_6_close_sale']['profit_0_to_3'], counters['scenarios']['high_3_to_6_open_high_over_6_close_sale']['profit_3_to_6'], counters['scenarios']['high_3_to_6_open_high_over_6_close_sale']['profit_over_6']) + elif next_open_diff > 6 and saleprice_close_differrange < -6: + counters['scenarios']['high_over_6_open_low_over_6_close_sale']['loss_over_6'],counters['scenarios']['high_over_6_open_low_over_6_close_sale']['loss_6_to_3'], counters['scenarios']['high_over_6_open_low_over_6_close_sale']['loss_3_to_0'], counters['scenarios']['high_over_6_open_low_over_6_close_sale']['profit_0_to_3'], counters['scenarios']['high_over_6_open_low_over_6_close_sale']['profit_3_to_6'], counters['scenarios']['high_over_6_open_low_over_6_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['high_over_6_open_low_over_6_close_sale']['loss_over_6'], counters['scenarios']['high_over_6_open_low_over_6_close_sale']['loss_6_to_3'], counters['scenarios']['high_over_6_open_low_over_6_close_sale']['loss_3_to_0'], counters['scenarios']['high_over_6_open_low_over_6_close_sale']['profit_0_to_3'], counters['scenarios']['high_over_6_open_low_over_6_close_sale']['profit_3_to_6'], counters['scenarios']['high_over_6_open_low_over_6_close_sale']['profit_over_6']) + elif next_open_diff > 6 and saleprice_close_differrange > -6 and saleprice_close_differrange < -3: + counters['scenarios']['high_over_6_open_low_6_to_3_close_sale']['loss_over_6'],counters['scenarios']['high_over_6_open_low_6_to_3_close_sale']['loss_6_to_3'], counters['scenarios']['high_over_6_open_low_6_to_3_close_sale']['loss_3_to_0'], counters['scenarios']['high_over_6_open_low_6_to_3_close_sale']['profit_0_to_3'], counters['scenarios']['high_over_6_open_low_6_to_3_close_sale']['profit_3_to_6'], counters['scenarios']['high_over_6_open_low_6_to_3_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['high_over_6_open_low_6_to_3_close_sale']['loss_over_6'], counters['scenarios']['high_over_6_open_low_6_to_3_close_sale']['loss_6_to_3'], counters['scenarios']['high_over_6_open_low_6_to_3_close_sale']['loss_3_to_0'], counters['scenarios']['high_over_6_open_low_6_to_3_close_sale']['profit_0_to_3'], counters['scenarios']['high_over_6_open_low_6_to_3_close_sale']['profit_3_to_6'], counters['scenarios']['high_over_6_open_low_6_to_3_close_sale']['profit_over_6']) + elif next_open_diff > 6 and saleprice_close_differrange > -3 and saleprice_close_differrange < 0: + counters['scenarios']['high_over_6_open_low_3_to_0_close_sale']['loss_over_6'],counters['scenarios']['high_over_6_open_low_3_to_0_close_sale']['loss_6_to_3'], counters['scenarios']['high_over_6_open_low_3_to_0_close_sale']['loss_3_to_0'], counters['scenarios']['high_over_6_open_low_3_to_0_close_sale']['profit_0_to_3'], counters['scenarios']['high_over_6_open_low_3_to_0_close_sale']['profit_3_to_6'], counters['scenarios']['high_over_6_open_low_3_to_0_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['high_over_6_open_low_3_to_0_close_sale']['loss_over_6'], counters['scenarios']['high_over_6_open_low_3_to_0_close_sale']['loss_6_to_3'], counters['scenarios']['high_over_6_open_low_3_to_0_close_sale']['loss_3_to_0'], counters['scenarios']['high_over_6_open_low_3_to_0_close_sale']['profit_0_to_3'], counters['scenarios']['high_over_6_open_low_3_to_0_close_sale']['profit_3_to_6'], counters['scenarios']['high_over_6_open_low_3_to_0_close_sale']['profit_over_6']) + elif next_open_diff > 6 and saleprice_close_differrange > 0 and saleprice_close_differrange < 3: + counters['scenarios']['high_over_6_open_high_0_to_3_close_sale']['loss_over_6'],counters['scenarios']['high_over_6_open_high_0_to_3_close_sale']['loss_6_to_3'], counters['scenarios']['high_over_6_open_high_0_to_3_close_sale']['loss_3_to_0'], counters['scenarios']['high_over_6_open_high_0_to_3_close_sale']['profit_0_to_3'], counters['scenarios']['high_over_6_open_high_0_to_3_close_sale']['profit_3_to_6'], counters['scenarios']['high_over_6_open_high_0_to_3_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['high_over_6_open_high_0_to_3_close_sale']['loss_over_6'], counters['scenarios']['high_over_6_open_high_0_to_3_close_sale']['loss_6_to_3'], counters['scenarios']['high_over_6_open_high_0_to_3_close_sale']['loss_3_to_0'], counters['scenarios']['high_over_6_open_high_0_to_3_close_sale']['profit_0_to_3'], counters['scenarios']['high_over_6_open_high_0_to_3_close_sale']['profit_3_to_6'], counters['scenarios']['high_over_6_open_high_0_to_3_close_sale']['profit_over_6']) + elif next_open_diff > 6 and saleprice_close_differrange > 3 and saleprice_close_differrange < 6: + counters['scenarios']['high_over_6_open_high_3_to_6_close_sale']['loss_over_6'],counters['scenarios']['high_over_6_open_high_3_to_6_close_sale']['loss_6_to_3'], counters['scenarios']['high_over_6_open_high_3_to_6_close_sale']['loss_3_to_0'], counters['scenarios']['high_over_6_open_high_3_to_6_close_sale']['profit_0_to_3'], counters['scenarios']['high_over_6_open_high_3_to_6_close_sale']['profit_3_to_6'], counters['scenarios']['high_over_6_open_high_3_to_6_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['high_over_6_open_high_3_to_6_close_sale']['loss_over_6'], counters['scenarios']['high_over_6_open_high_3_to_6_close_sale']['loss_6_to_3'], counters['scenarios']['high_over_6_open_high_3_to_6_close_sale']['loss_3_to_0'], counters['scenarios']['high_over_6_open_high_3_to_6_close_sale']['profit_0_to_3'], counters['scenarios']['high_over_6_open_high_3_to_6_close_sale']['profit_3_to_6'], counters['scenarios']['high_over_6_open_high_3_to_6_close_sale']['profit_over_6']) + elif next_open_diff > 6 and saleprice_close_differrange > 6: + counters['scenarios']['high_over_6_open_high_over_6_close_sale']['loss_over_6'],counters['scenarios']['high_over_6_open_high_over_6_close_sale']['loss_6_to_3'], counters['scenarios']['high_over_6_open_high_over_6_close_sale']['loss_3_to_0'], counters['scenarios']['high_over_6_open_high_over_6_close_sale']['profit_0_to_3'], counters['scenarios']['high_over_6_open_high_over_6_close_sale']['profit_3_to_6'], counters['scenarios']['high_over_6_open_high_over_6_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['high_over_6_open_high_over_6_close_sale']['loss_over_6'], counters['scenarios']['high_over_6_open_high_over_6_close_sale']['loss_6_to_3'], counters['scenarios']['high_over_6_open_high_over_6_close_sale']['loss_3_to_0'], counters['scenarios']['high_over_6_open_high_over_6_close_sale']['profit_0_to_3'], counters['scenarios']['high_over_6_open_high_over_6_close_sale']['profit_3_to_6'], counters['scenarios']['high_over_6_open_high_over_6_close_sale']['profit_over_6']) + + # 组合场景: 收盘建仓 清仓日开盘清仓 盈亏分布 + if next_close_differrange < -6 and saleprice_open_differrange < -6: + counters['scenarios']['low_over_6_close_low_over_6_open_sale']['loss_over_6'],counters['scenarios']['low_over_6_close_low_over_6_open_sale']['loss_6_to_3'], counters['scenarios']['low_over_6_close_low_over_6_open_sale']['loss_3_to_0'], counters['scenarios']['low_over_6_close_low_over_6_open_sale']['profit_0_to_3'], counters['scenarios']['low_over_6_close_low_over_6_open_sale']['profit_3_to_6'], counters['scenarios']['low_over_6_close_low_over_6_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['low_over_6_close_low_over_6_open_sale']['loss_over_6'], counters['scenarios']['low_over_6_close_low_over_6_open_sale']['loss_6_to_3'], counters['scenarios']['low_over_6_close_low_over_6_open_sale']['loss_3_to_0'], counters['scenarios']['low_over_6_close_low_over_6_open_sale']['profit_0_to_3'], counters['scenarios']['low_over_6_close_low_over_6_open_sale']['profit_3_to_6'], counters['scenarios']['low_over_6_close_low_over_6_open_sale']['profit_over_6']) + elif next_close_differrange < -6 and saleprice_open_differrange > -6 and saleprice_open_differrange < -3: + counters['scenarios']['low_6_to_3_close_low_over_6_open_sale']['loss_over_6'],counters['scenarios']['low_6_to_3_close_low_over_6_open_sale']['loss_6_to_3'], counters['scenarios']['low_6_to_3_close_low_over_6_open_sale']['loss_3_to_0'], counters['scenarios']['low_6_to_3_close_low_over_6_open_sale']['profit_0_to_3'], counters['scenarios']['low_6_to_3_close_low_over_6_open_sale']['profit_3_to_6'], counters['scenarios']['low_6_to_3_close_low_over_6_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['low_6_to_3_close_low_over_6_open_sale']['loss_over_6'], counters['scenarios']['low_6_to_3_close_low_over_6_open_sale']['loss_6_to_3'], counters['scenarios']['low_6_to_3_close_low_over_6_open_sale']['loss_3_to_0'], counters['scenarios']['low_6_to_3_close_low_over_6_open_sale']['profit_0_to_3'], counters['scenarios']['low_6_to_3_close_low_over_6_open_sale']['profit_3_to_6'], counters['scenarios']['low_6_to_3_close_low_over_6_open_sale']['profit_over_6']) + elif next_close_differrange < -6 and saleprice_open_differrange > -3 and saleprice_open_differrange < 0: + counters['scenarios']['low_over_6_close_low_3_to_0_open_sale']['loss_over_6'],counters['scenarios']['low_over_6_close_low_3_to_0_open_sale']['loss_6_to_3'], counters['scenarios']['low_over_6_close_low_3_to_0_open_sale']['loss_3_to_0'], counters['scenarios']['low_over_6_close_low_3_to_0_open_sale']['profit_0_to_3'], counters['scenarios']['low_over_6_close_low_3_to_0_open_sale']['profit_3_to_6'], counters['scenarios']['low_over_6_close_low_3_to_0_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['low_over_6_close_low_3_to_0_open_sale']['loss_over_6'], counters['scenarios']['low_over_6_close_low_3_to_0_open_sale']['loss_6_to_3'], counters['scenarios']['low_over_6_close_low_3_to_0_open_sale']['loss_3_to_0'], counters['scenarios']['low_over_6_close_low_3_to_0_open_sale']['profit_0_to_3'], counters['scenarios']['low_over_6_close_low_3_to_0_open_sale']['profit_3_to_6'], counters['scenarios']['low_over_6_close_low_3_to_0_open_sale']['profit_over_6']) + elif next_close_differrange < -6 and saleprice_open_differrange > 0 and saleprice_open_differrange < 3: + counters['scenarios']['low_over_6_close_high_0_to_3_open_sale']['loss_over_6'],counters['scenarios']['low_over_6_close_high_0_to_3_open_sale']['loss_6_to_3'], counters['scenarios']['low_over_6_close_high_0_to_3_open_sale']['loss_3_to_0'], counters['scenarios']['low_over_6_close_high_0_to_3_open_sale']['profit_0_to_3'], counters['scenarios']['low_over_6_close_high_0_to_3_open_sale']['profit_3_to_6'], counters['scenarios']['low_over_6_close_high_0_to_3_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['low_over_6_close_high_0_to_3_open_sale']['loss_over_6'], counters['scenarios']['low_over_6_close_high_0_to_3_open_sale']['loss_6_to_3'], counters['scenarios']['low_over_6_close_high_0_to_3_open_sale']['loss_3_to_0'], counters['scenarios']['low_over_6_close_high_0_to_3_open_sale']['profit_0_to_3'], counters['scenarios']['low_over_6_close_high_0_to_3_open_sale']['profit_3_to_6'], counters['scenarios']['low_over_6_close_high_0_to_3_open_sale']['profit_over_6']) + elif next_close_differrange < -6 and saleprice_open_differrange > 3 and saleprice_open_differrange < 6: + counters['scenarios']['low_over_6_close_high_3_to_6_open_sale']['loss_over_6'],counters['scenarios']['low_over_6_close_high_3_to_6_open_sale']['loss_6_to_3'], counters['scenarios']['low_over_6_close_high_3_to_6_open_sale']['loss_3_to_0'], counters['scenarios']['low_over_6_close_high_3_to_6_open_sale']['profit_0_to_3'], counters['scenarios']['low_over_6_close_high_3_to_6_open_sale']['profit_3_to_6'], counters['scenarios']['low_over_6_close_high_3_to_6_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['low_over_6_close_high_3_to_6_open_sale']['loss_over_6'], counters['scenarios']['low_over_6_close_high_3_to_6_open_sale']['loss_6_to_3'], counters['scenarios']['low_over_6_close_high_3_to_6_open_sale']['loss_3_to_0'], counters['scenarios']['low_over_6_close_high_3_to_6_open_sale']['profit_0_to_3'], counters['scenarios']['low_over_6_close_high_3_to_6_open_sale']['profit_3_to_6'], counters['scenarios']['low_over_6_close_high_3_to_6_open_sale']['profit_over_6']) + elif next_close_differrange < -6 and saleprice_open_differrange > 6: + counters['scenarios']['low_over_6_close_high_over_6_open_sale']['loss_over_6'],counters['scenarios']['low_over_6_close_high_over_6_open_sale']['loss_6_to_3'], counters['scenarios']['low_over_6_close_high_over_6_open_sale']['loss_3_to_0'], counters['scenarios']['low_over_6_close_high_over_6_open_sale']['profit_0_to_3'], counters['scenarios']['low_over_6_close_high_over_6_open_sale']['profit_3_to_6'], counters['scenarios']['low_over_6_close_high_over_6_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['low_over_6_close_high_over_6_open_sale']['loss_over_6'], counters['scenarios']['low_over_6_close_high_over_6_open_sale']['loss_6_to_3'], counters['scenarios']['low_over_6_close_high_over_6_open_sale']['loss_3_to_0'], counters['scenarios']['low_over_6_close_high_over_6_open_sale']['profit_0_to_3'], counters['scenarios']['low_over_6_close_high_over_6_open_sale']['profit_3_to_6'], counters['scenarios']['low_over_6_close_high_over_6_open_sale']['profit_over_6']) + elif next_close_differrange > -6 and next_close_differrange < -3 and saleprice_open_differrange < -6: + counters['scenarios']['low_6_to_3_close_low_over_6_open_sale']['loss_over_6'],counters['scenarios']['low_6_to_3_close_low_over_6_open_sale']['loss_6_to_3'], counters['scenarios']['low_6_to_3_close_low_over_6_open_sale']['loss_3_to_0'], counters['scenarios']['low_6_to_3_close_low_over_6_open_sale']['profit_0_to_3'], counters['scenarios']['low_6_to_3_close_low_over_6_open_sale']['profit_3_to_6'], counters['scenarios']['low_6_to_3_close_low_over_6_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['low_6_to_3_close_low_over_6_open_sale']['loss_over_6'], counters['scenarios']['low_6_to_3_close_low_over_6_open_sale']['loss_6_to_3'], counters['scenarios']['low_6_to_3_close_low_over_6_open_sale']['loss_3_to_0'], counters['scenarios']['low_6_to_3_close_low_over_6_open_sale']['profit_0_to_3'], counters['scenarios']['low_6_to_3_close_low_over_6_open_sale']['profit_3_to_6'], counters['scenarios']['low_6_to_3_close_low_over_6_open_sale']['profit_over_6']) + elif next_close_differrange > -6 and next_close_differrange < -3 and saleprice_open_differrange > -6 and saleprice_open_differrange < -3: + counters['scenarios']['low_6_to_3_close_low_6_to_3_open_sale']['loss_over_6'],counters['scenarios']['low_6_to_3_close_low_6_to_3_open_sale']['loss_6_to_3'], counters['scenarios']['low_6_to_3_close_low_6_to_3_open_sale']['loss_3_to_0'], counters['scenarios']['low_6_to_3_close_low_6_to_3_open_sale']['profit_0_to_3'], counters['scenarios']['low_6_to_3_close_low_6_to_3_open_sale']['profit_3_to_6'], counters['scenarios']['low_6_to_3_close_low_6_to_3_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['low_6_to_3_close_low_6_to_3_open_sale']['loss_over_6'], counters['scenarios']['low_6_to_3_close_low_6_to_3_open_sale']['loss_6_to_3'], counters['scenarios']['low_6_to_3_close_low_6_to_3_open_sale']['loss_3_to_0'], counters['scenarios']['low_6_to_3_close_low_6_to_3_open_sale']['profit_0_to_3'], counters['scenarios']['low_6_to_3_close_low_6_to_3_open_sale']['profit_3_to_6'], counters['scenarios']['low_6_to_3_close_low_6_to_3_open_sale']['profit_over_6']) + elif next_close_differrange > -6 and next_close_differrange < -3 and saleprice_open_differrange > -3 and saleprice_open_differrange < 0: + counters['scenarios']['low_6_to_3_close_low_3_to_0_open_sale']['loss_over_6'],counters['scenarios']['low_6_to_3_close_low_3_to_0_open_sale']['loss_6_to_3'], counters['scenarios']['low_6_to_3_close_low_3_to_0_open_sale']['loss_3_to_0'], counters['scenarios']['low_6_to_3_close_low_3_to_0_open_sale']['profit_0_to_3'], counters['scenarios']['low_6_to_3_close_low_3_to_0_open_sale']['profit_3_to_6'], counters['scenarios']['low_6_to_3_close_low_3_to_0_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['low_6_to_3_close_low_3_to_0_open_sale']['loss_over_6'], counters['scenarios']['low_6_to_3_close_low_3_to_0_open_sale']['loss_6_to_3'], counters['scenarios']['low_6_to_3_close_low_3_to_0_open_sale']['loss_3_to_0'], counters['scenarios']['low_6_to_3_close_low_3_to_0_open_sale']['profit_0_to_3'], counters['scenarios']['low_6_to_3_close_low_3_to_0_open_sale']['profit_3_to_6'], counters['scenarios']['low_6_to_3_close_low_3_to_0_open_sale']['profit_over_6']) + elif next_close_differrange > -6 and next_close_differrange < -3 and saleprice_open_differrange > 0 and saleprice_open_differrange < 3: + counters['scenarios']['low_6_to_3_close_high_0_to_3_open_sale']['loss_over_6'],counters['scenarios']['low_6_to_3_close_high_0_to_3_open_sale']['loss_6_to_3'], counters['scenarios']['low_6_to_3_close_high_0_to_3_open_sale']['loss_3_to_0'], counters['scenarios']['low_6_to_3_close_high_0_to_3_open_sale']['profit_0_to_3'], counters['scenarios']['low_6_to_3_close_high_0_to_3_open_sale']['profit_3_to_6'], counters['scenarios']['low_6_to_3_close_high_0_to_3_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['low_6_to_3_close_high_0_to_3_open_sale']['loss_over_6'], counters['scenarios']['low_6_to_3_close_high_0_to_3_open_sale']['loss_6_to_3'], counters['scenarios']['low_6_to_3_close_high_0_to_3_open_sale']['loss_3_to_0'], counters['scenarios']['low_6_to_3_close_high_0_to_3_open_sale']['profit_0_to_3'], counters['scenarios']['low_6_to_3_close_high_0_to_3_open_sale']['profit_3_to_6'], counters['scenarios']['low_6_to_3_close_high_0_to_3_open_sale']['profit_over_6']) + elif next_close_differrange > -6 and next_close_differrange < -3 and saleprice_open_differrange > 3 and saleprice_open_differrange < 6: + counters['scenarios']['low_6_to_3_close_high_3_to_6_open_sale']['loss_over_6'],counters['scenarios']['low_6_to_3_close_high_3_to_6_open_sale']['loss_6_to_3'], counters['scenarios']['low_6_to_3_close_high_3_to_6_open_sale']['loss_3_to_0'], counters['scenarios']['low_6_to_3_close_high_3_to_6_open_sale']['profit_0_to_3'], counters['scenarios']['low_6_to_3_close_high_3_to_6_open_sale']['profit_3_to_6'], counters['scenarios']['low_6_to_3_close_high_3_to_6_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['low_6_to_3_close_high_3_to_6_open_sale']['loss_over_6'], counters['scenarios']['low_6_to_3_close_high_3_to_6_open_sale']['loss_6_to_3'], counters['scenarios']['low_6_to_3_close_high_3_to_6_open_sale']['loss_3_to_0'], counters['scenarios']['low_6_to_3_close_high_3_to_6_open_sale']['profit_0_to_3'], counters['scenarios']['low_6_to_3_close_high_3_to_6_open_sale']['profit_3_to_6'], counters['scenarios']['low_6_to_3_close_high_3_to_6_open_sale']['profit_over_6']) + elif next_close_differrange > -6 and next_close_differrange < -3 and saleprice_open_differrange > 6: + counters['scenarios']['low_6_to_3_close_high_over_6_open_sale']['loss_over_6'],counters['scenarios']['low_6_to_3_close_high_over_6_open_sale']['loss_6_to_3'], counters['scenarios']['low_6_to_3_close_high_over_6_open_sale']['loss_3_to_0'], counters['scenarios']['low_6_to_3_close_high_over_6_open_sale']['profit_0_to_3'], counters['scenarios']['low_6_to_3_close_high_over_6_open_sale']['profit_3_to_6'], counters['scenarios']['low_6_to_3_close_high_over_6_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['low_6_to_3_close_high_over_6_open_sale']['loss_over_6'], counters['scenarios']['low_6_to_3_close_high_over_6_open_sale']['loss_6_to_3'], counters['scenarios']['low_6_to_3_close_high_over_6_open_sale']['loss_3_to_0'], counters['scenarios']['low_6_to_3_close_high_over_6_open_sale']['profit_0_to_3'], counters['scenarios']['low_6_to_3_close_high_over_6_open_sale']['profit_3_to_6'], counters['scenarios']['low_6_to_3_close_high_over_6_open_sale']['profit_over_6']) + elif next_close_differrange > -3 and next_close_differrange < 0 and saleprice_open_differrange < -6: + counters['scenarios']['low_3_to_0_close_low_over_6_open_sale']['loss_over_6'],counters['scenarios']['low_3_to_0_close_low_over_6_open_sale']['loss_6_to_3'], counters['scenarios']['low_3_to_0_close_low_over_6_open_sale']['loss_3_to_0'], counters['scenarios']['low_3_to_0_close_low_over_6_open_sale']['profit_0_to_3'], counters['scenarios']['low_3_to_0_close_low_over_6_open_sale']['profit_3_to_6'], counters['scenarios']['low_3_to_0_close_low_over_6_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['low_3_to_0_close_low_over_6_open_sale']['loss_over_6'], counters['scenarios']['low_3_to_0_close_low_over_6_open_sale']['loss_6_to_3'], counters['scenarios']['low_3_to_0_close_low_over_6_open_sale']['loss_3_to_0'], counters['scenarios']['low_3_to_0_close_low_over_6_open_sale']['profit_0_to_3'], counters['scenarios']['low_3_to_0_close_low_over_6_open_sale']['profit_3_to_6'], counters['scenarios']['low_3_to_0_close_low_over_6_open_sale']['profit_over_6']) + elif next_close_differrange > -3 and next_close_differrange < 0 and saleprice_open_differrange > -6 and saleprice_open_differrange < -3: + counters['scenarios']['low_3_to_0_close_low_6_to_3_open_sale']['loss_over_6'],counters['scenarios']['low_3_to_0_close_low_6_to_3_open_sale']['loss_6_to_3'], counters['scenarios']['low_3_to_0_close_low_6_to_3_open_sale']['loss_3_to_0'], counters['scenarios']['low_3_to_0_close_low_6_to_3_open_sale']['profit_0_to_3'], counters['scenarios']['low_3_to_0_close_low_6_to_3_open_sale']['profit_3_to_6'], counters['scenarios']['low_3_to_0_close_low_6_to_3_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['low_3_to_0_close_low_6_to_3_open_sale']['loss_over_6'], counters['scenarios']['low_3_to_0_close_low_6_to_3_open_sale']['loss_6_to_3'], counters['scenarios']['low_3_to_0_close_low_6_to_3_open_sale']['loss_3_to_0'], counters['scenarios']['low_3_to_0_close_low_6_to_3_open_sale']['profit_0_to_3'], counters['scenarios']['low_3_to_0_close_low_6_to_3_open_sale']['profit_3_to_6'], counters['scenarios']['low_3_to_0_close_low_6_to_3_open_sale']['profit_over_6']) + elif next_close_differrange > -3 and next_close_differrange < 0 and saleprice_open_differrange > -3 and saleprice_open_differrange < 0: + counters['scenarios']['low_3_to_0_close_low_3_to_0_open_sale']['loss_over_6'],counters['scenarios']['low_3_to_0_close_low_3_to_0_open_sale']['loss_6_to_3'], counters['scenarios']['low_3_to_0_close_low_3_to_0_open_sale']['loss_3_to_0'], counters['scenarios']['low_3_to_0_close_low_3_to_0_open_sale']['profit_0_to_3'], counters['scenarios']['low_3_to_0_close_low_3_to_0_open_sale']['profit_3_to_6'], counters['scenarios']['low_3_to_0_close_low_3_to_0_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['low_3_to_0_close_low_3_to_0_open_sale']['loss_over_6'], counters['scenarios']['low_3_to_0_close_low_3_to_0_open_sale']['loss_6_to_3'], counters['scenarios']['low_3_to_0_close_low_3_to_0_open_sale']['loss_3_to_0'], counters['scenarios']['low_3_to_0_close_low_3_to_0_open_sale']['profit_0_to_3'], counters['scenarios']['low_3_to_0_close_low_3_to_0_open_sale']['profit_3_to_6'], counters['scenarios']['low_3_to_0_close_low_3_to_0_open_sale']['profit_over_6']) + elif next_close_differrange > -3 and next_close_differrange < 0 and saleprice_open_differrange > 0 and saleprice_open_differrange < 3: + counters['scenarios']['low_3_to_0_close_high_0_to_3_open_sale']['loss_over_6'],counters['scenarios']['low_3_to_0_close_high_0_to_3_open_sale']['loss_6_to_3'], counters['scenarios']['low_3_to_0_close_high_0_to_3_open_sale']['loss_3_to_0'], counters['scenarios']['low_3_to_0_close_high_0_to_3_open_sale']['profit_0_to_3'], counters['scenarios']['low_3_to_0_close_high_0_to_3_open_sale']['profit_3_to_6'], counters['scenarios']['low_3_to_0_close_high_0_to_3_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['low_3_to_0_close_high_0_to_3_open_sale']['loss_over_6'], counters['scenarios']['low_3_to_0_close_high_0_to_3_open_sale']['loss_6_to_3'], counters['scenarios']['low_3_to_0_close_high_0_to_3_open_sale']['loss_3_to_0'], counters['scenarios']['low_3_to_0_close_high_0_to_3_open_sale']['profit_0_to_3'], counters['scenarios']['low_3_to_0_close_high_0_to_3_open_sale']['profit_3_to_6'], counters['scenarios']['low_3_to_0_close_high_0_to_3_open_sale']['profit_over_6']) + elif next_close_differrange > -3 and next_close_differrange < 0 and saleprice_open_differrange > 3 and saleprice_open_differrange < 6: + counters['scenarios']['low_3_to_0_close_high_3_to_6_open_sale']['loss_over_6'],counters['scenarios']['low_3_to_0_close_high_3_to_6_open_sale']['loss_6_to_3'], counters['scenarios']['low_3_to_0_close_high_3_to_6_open_sale']['loss_3_to_0'], counters['scenarios']['low_3_to_0_close_high_3_to_6_open_sale']['profit_0_to_3'], counters['scenarios']['low_3_to_0_close_high_3_to_6_open_sale']['profit_3_to_6'], counters['scenarios']['low_3_to_0_close_high_3_to_6_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['low_3_to_0_close_high_3_to_6_open_sale']['loss_over_6'], counters['scenarios']['low_3_to_0_close_high_3_to_6_open_sale']['loss_6_to_3'], counters['scenarios']['low_3_to_0_close_high_3_to_6_open_sale']['loss_3_to_0'], counters['scenarios']['low_3_to_0_close_high_3_to_6_open_sale']['profit_0_to_3'], counters['scenarios']['low_3_to_0_close_high_3_to_6_open_sale']['profit_3_to_6'], counters['scenarios']['low_3_to_0_close_high_3_to_6_open_sale']['profit_over_6']) + elif next_close_differrange > -3 and next_close_differrange < 0 and saleprice_open_differrange > 6: + counters['scenarios']['low_3_to_0_close_high_over_6_open_sale']['loss_over_6'],counters['scenarios']['low_3_to_0_close_high_over_6_open_sale']['loss_6_to_3'], counters['scenarios']['low_3_to_0_close_high_over_6_open_sale']['loss_3_to_0'], counters['scenarios']['low_3_to_0_close_high_over_6_open_sale']['profit_0_to_3'], counters['scenarios']['low_3_to_0_close_high_over_6_open_sale']['profit_3_to_6'], counters['scenarios']['low_3_to_0_close_high_over_6_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['low_3_to_0_close_high_over_6_open_sale']['loss_over_6'], counters['scenarios']['low_3_to_0_close_high_over_6_open_sale']['loss_6_to_3'], counters['scenarios']['low_3_to_0_close_high_over_6_open_sale']['loss_3_to_0'], counters['scenarios']['low_3_to_0_close_high_over_6_open_sale']['profit_0_to_3'], counters['scenarios']['low_3_to_0_close_high_over_6_open_sale']['profit_3_to_6'], counters['scenarios']['low_3_to_0_close_high_over_6_open_sale']['profit_over_6']) + elif next_close_differrange > 0 and next_close_differrange < 3 and saleprice_open_differrange < -6: + counters['scenarios']['high_0_to_3_close_low_over_6_open_sale']['loss_over_6'],counters['scenarios']['high_0_to_3_close_low_over_6_open_sale']['loss_6_to_3'], counters['scenarios']['high_0_to_3_close_low_over_6_open_sale']['loss_3_to_0'], counters['scenarios']['high_0_to_3_close_low_over_6_open_sale']['profit_0_to_3'], counters['scenarios']['high_0_to_3_close_low_over_6_open_sale']['profit_3_to_6'], counters['scenarios']['high_0_to_3_close_low_over_6_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['high_0_to_3_close_low_over_6_open_sale']['loss_over_6'], counters['scenarios']['high_0_to_3_close_low_over_6_open_sale']['loss_6_to_3'], counters['scenarios']['high_0_to_3_close_low_over_6_open_sale']['loss_3_to_0'], counters['scenarios']['high_0_to_3_close_low_over_6_open_sale']['profit_0_to_3'], counters['scenarios']['high_0_to_3_close_low_over_6_open_sale']['profit_3_to_6'], counters['scenarios']['high_0_to_3_close_low_over_6_open_sale']['profit_over_6']) + elif next_close_differrange > 0 and next_close_differrange < 3 and saleprice_open_differrange > -6 and saleprice_open_differrange < -3: + counters['scenarios']['high_0_to_3_close_low_6_to_3_open_sale']['loss_over_6'],counters['scenarios']['high_0_to_3_close_low_6_to_3_open_sale']['loss_6_to_3'], counters['scenarios']['high_0_to_3_close_low_6_to_3_open_sale']['loss_3_to_0'], counters['scenarios']['high_0_to_3_close_low_6_to_3_open_sale']['profit_0_to_3'], counters['scenarios']['high_0_to_3_close_low_6_to_3_open_sale']['profit_3_to_6'], counters['scenarios']['high_0_to_3_close_low_6_to_3_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['high_0_to_3_close_low_6_to_3_open_sale']['loss_over_6'], counters['scenarios']['high_0_to_3_close_low_6_to_3_open_sale']['loss_6_to_3'], counters['scenarios']['high_0_to_3_close_low_6_to_3_open_sale']['loss_3_to_0'], counters['scenarios']['high_0_to_3_close_low_6_to_3_open_sale']['profit_0_to_3'], counters['scenarios']['high_0_to_3_close_low_6_to_3_open_sale']['profit_3_to_6'], counters['scenarios']['high_0_to_3_close_low_6_to_3_open_sale']['profit_over_6']) + elif next_close_differrange > 0 and next_close_differrange < 3 and saleprice_open_differrange > -3 and saleprice_open_differrange < 0: + counters['scenarios']['high_0_to_3_close_low_3_to_0_open_sale']['loss_over_6'],counters['scenarios']['high_0_to_3_close_low_3_to_0_open_sale']['loss_6_to_3'], counters['scenarios']['high_0_to_3_close_low_3_to_0_open_sale']['loss_3_to_0'], counters['scenarios']['high_0_to_3_close_low_3_to_0_open_sale']['profit_0_to_3'], counters['scenarios']['high_0_to_3_close_low_3_to_0_open_sale']['profit_3_to_6'], counters['scenarios']['high_0_to_3_close_low_3_to_0_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['high_0_to_3_close_low_3_to_0_open_sale']['loss_over_6'], counters['scenarios']['high_0_to_3_close_low_3_to_0_open_sale']['loss_6_to_3'], counters['scenarios']['high_0_to_3_close_low_3_to_0_open_sale']['loss_3_to_0'], counters['scenarios']['high_0_to_3_close_low_3_to_0_open_sale']['profit_0_to_3'], counters['scenarios']['high_0_to_3_close_low_3_to_0_open_sale']['profit_3_to_6'], counters['scenarios']['high_0_to_3_close_low_3_to_0_open_sale']['profit_over_6']) + elif next_close_differrange > 0 and next_close_differrange < 3 and saleprice_open_differrange > 0 and saleprice_open_differrange < 3: + counters['scenarios']['high_0_to_3_close_high_0_to_3_open_sale']['loss_over_6'],counters['scenarios']['high_0_to_3_close_high_0_to_3_open_sale']['loss_6_to_3'], counters['scenarios']['high_0_to_3_close_high_0_to_3_open_sale']['loss_3_to_0'], counters['scenarios']['high_0_to_3_close_high_0_to_3_open_sale']['profit_0_to_3'], counters['scenarios']['high_0_to_3_close_high_0_to_3_open_sale']['profit_3_to_6'], counters['scenarios']['high_0_to_3_close_high_0_to_3_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['high_0_to_3_close_high_0_to_3_open_sale']['loss_over_6'], counters['scenarios']['high_0_to_3_close_high_0_to_3_open_sale']['loss_6_to_3'], counters['scenarios']['high_0_to_3_close_high_0_to_3_open_sale']['loss_3_to_0'], counters['scenarios']['high_0_to_3_close_high_0_to_3_open_sale']['profit_0_to_3'], counters['scenarios']['high_0_to_3_close_high_0_to_3_open_sale']['profit_3_to_6'], counters['scenarios']['high_0_to_3_close_high_0_to_3_open_sale']['profit_over_6']) + elif next_close_differrange > 0 and next_close_differrange < 3 and saleprice_open_differrange > 3 and saleprice_open_differrange < 6: + counters['scenarios']['high_0_to_3_close_high_3_to_6_open_sale']['loss_over_6'],counters['scenarios']['high_0_to_3_close_high_3_to_6_open_sale']['loss_6_to_3'], counters['scenarios']['high_0_to_3_close_high_3_to_6_open_sale']['loss_3_to_0'], counters['scenarios']['high_0_to_3_close_high_3_to_6_open_sale']['profit_0_to_3'], counters['scenarios']['high_0_to_3_close_high_3_to_6_open_sale']['profit_3_to_6'], counters['scenarios']['high_0_to_3_close_high_3_to_6_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['high_0_to_3_close_high_3_to_6_open_sale']['loss_over_6'], counters['scenarios']['high_0_to_3_close_high_3_to_6_open_sale']['loss_6_to_3'], counters['scenarios']['high_0_to_3_close_high_3_to_6_open_sale']['loss_3_to_0'], counters['scenarios']['high_0_to_3_close_high_3_to_6_open_sale']['profit_0_to_3'], counters['scenarios']['high_0_to_3_close_high_3_to_6_open_sale']['profit_3_to_6'], counters['scenarios']['high_0_to_3_close_high_3_to_6_open_sale']['profit_over_6']) + elif next_close_differrange > 0 and next_close_differrange < 3 and saleprice_open_differrange > 6: + counters['scenarios']['high_0_to_3_close_high_over_6_open_sale']['loss_over_6'],counters['scenarios']['high_0_to_3_close_high_over_6_open_sale']['loss_6_to_3'], counters['scenarios']['high_0_to_3_close_high_over_6_open_sale']['loss_3_to_0'], counters['scenarios']['high_0_to_3_close_high_over_6_open_sale']['profit_0_to_3'], counters['scenarios']['high_0_to_3_close_high_over_6_open_sale']['profit_3_to_6'], counters['scenarios']['high_0_to_3_close_high_over_6_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['high_0_to_3_close_high_over_6_open_sale']['loss_over_6'], counters['scenarios']['high_0_to_3_close_high_over_6_open_sale']['loss_6_to_3'], counters['scenarios']['high_0_to_3_close_high_over_6_open_sale']['loss_3_to_0'], counters['scenarios']['high_0_to_3_close_high_over_6_open_sale']['profit_0_to_3'], counters['scenarios']['high_0_to_3_close_high_over_6_open_sale']['profit_3_to_6'], counters['scenarios']['high_0_to_3_close_high_over_6_open_sale']['profit_over_6']) + elif next_close_differrange > 3 and next_close_differrange < 6 and saleprice_open_differrange < -6: + counters['scenarios']['high_3_to_6_close_low_over_6_open_sale']['loss_over_6'],counters['scenarios']['high_3_to_6_close_low_over_6_open_sale']['loss_6_to_3'], counters['scenarios']['high_3_to_6_close_low_over_6_open_sale']['loss_3_to_0'], counters['scenarios']['high_3_to_6_close_low_over_6_open_sale']['profit_0_to_3'], counters['scenarios']['high_3_to_6_close_low_over_6_open_sale']['profit_3_to_6'], counters['scenarios']['high_3_to_6_close_low_over_6_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['high_3_to_6_close_low_over_6_open_sale']['loss_over_6'], counters['scenarios']['high_3_to_6_close_low_over_6_open_sale']['loss_6_to_3'], counters['scenarios']['high_3_to_6_close_low_over_6_open_sale']['loss_3_to_0'], counters['scenarios']['high_3_to_6_close_low_over_6_open_sale']['profit_0_to_3'], counters['scenarios']['high_3_to_6_close_low_over_6_open_sale']['profit_3_to_6'], counters['scenarios']['high_3_to_6_close_low_over_6_open_sale']['profit_over_6']) + elif next_close_differrange > 3 and next_close_differrange < 6 and saleprice_open_differrange > -6 and saleprice_open_differrange < -3: + counters['scenarios']['high_3_to_6_close_low_6_to_3_open_sale']['loss_over_6'],counters['scenarios']['high_3_to_6_close_low_6_to_3_open_sale']['loss_6_to_3'], counters['scenarios']['high_3_to_6_close_low_6_to_3_open_sale']['loss_3_to_0'], counters['scenarios']['high_3_to_6_close_low_6_to_3_open_sale']['profit_0_to_3'], counters['scenarios']['high_3_to_6_close_low_6_to_3_open_sale']['profit_3_to_6'], counters['scenarios']['high_3_to_6_close_low_6_to_3_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['high_3_to_6_close_low_6_to_3_open_sale']['loss_over_6'], counters['scenarios']['high_3_to_6_close_low_6_to_3_open_sale']['loss_6_to_3'], counters['scenarios']['high_3_to_6_close_low_6_to_3_open_sale']['loss_3_to_0'], counters['scenarios']['high_3_to_6_close_low_6_to_3_open_sale']['profit_0_to_3'], counters['scenarios']['high_3_to_6_close_low_6_to_3_open_sale']['profit_3_to_6'], counters['scenarios']['high_3_to_6_close_low_6_to_3_open_sale']['profit_over_6']) + elif next_close_differrange > 3 and next_close_differrange < 6 and saleprice_open_differrange > -3 and saleprice_open_differrange < 0: + counters['scenarios']['high_3_to_6_close_low_3_to_0_open_sale']['loss_over_6'],counters['scenarios']['high_3_to_6_close_low_3_to_0_open_sale']['loss_6_to_3'], counters['scenarios']['high_3_to_6_close_low_3_to_0_open_sale']['loss_3_to_0'], counters['scenarios']['high_3_to_6_close_low_3_to_0_open_sale']['profit_0_to_3'], counters['scenarios']['high_3_to_6_close_low_3_to_0_open_sale']['profit_3_to_6'], counters['scenarios']['high_3_to_6_close_low_3_to_0_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['high_3_to_6_close_low_3_to_0_open_sale']['loss_over_6'], counters['scenarios']['high_3_to_6_close_low_3_to_0_open_sale']['loss_6_to_3'], counters['scenarios']['high_3_to_6_close_low_3_to_0_open_sale']['loss_3_to_0'], counters['scenarios']['high_3_to_6_close_low_3_to_0_open_sale']['profit_0_to_3'], counters['scenarios']['high_3_to_6_close_low_3_to_0_open_sale']['profit_3_to_6'], counters['scenarios']['high_3_to_6_close_low_3_to_0_open_sale']['profit_over_6']) + elif next_close_differrange > 3 and next_close_differrange < 6 and saleprice_open_differrange > 0 and saleprice_open_differrange < 3: + counters['scenarios']['high_3_to_6_close_high_0_to_3_open_sale']['loss_over_6'],counters['scenarios']['high_3_to_6_close_high_0_to_3_open_sale']['loss_6_to_3'], counters['scenarios']['high_3_to_6_close_high_0_to_3_open_sale']['loss_3_to_0'], counters['scenarios']['high_3_to_6_close_high_0_to_3_open_sale']['profit_0_to_3'], counters['scenarios']['high_3_to_6_close_high_0_to_3_open_sale']['profit_3_to_6'], counters['scenarios']['high_3_to_6_close_high_0_to_3_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['high_3_to_6_close_high_0_to_3_open_sale']['loss_over_6'], counters['scenarios']['high_3_to_6_close_high_0_to_3_open_sale']['loss_6_to_3'], counters['scenarios']['high_3_to_6_close_high_0_to_3_open_sale']['loss_3_to_0'], counters['scenarios']['high_3_to_6_close_high_0_to_3_open_sale']['profit_0_to_3'], counters['scenarios']['high_3_to_6_close_high_0_to_3_open_sale']['profit_3_to_6'], counters['scenarios']['high_3_to_6_close_high_0_to_3_open_sale']['profit_over_6']) + elif next_close_differrange > 3 and next_close_differrange < 6 and saleprice_open_differrange > 3 and saleprice_open_differrange < 6: + counters['scenarios']['high_3_to_6_open_high_3_to_6_open_sale']['loss_over_6'],counters['scenarios']['high_3_to_6_open_high_3_to_6_open_sale']['loss_6_to_3'], counters['scenarios']['high_3_to_6_open_high_3_to_6_open_sale']['loss_3_to_0'], counters['scenarios']['high_3_to_6_open_high_3_to_6_open_sale']['profit_0_to_3'], counters['scenarios']['high_3_to_6_open_high_3_to_6_open_sale']['profit_3_to_6'], counters['scenarios']['high_3_to_6_open_high_3_to_6_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['high_3_to_6_open_high_3_to_6_open_sale']['loss_over_6'], counters['scenarios']['high_3_to_6_open_high_3_to_6_open_sale']['loss_6_to_3'], counters['scenarios']['high_3_to_6_open_high_3_to_6_open_sale']['loss_3_to_0'], counters['scenarios']['high_3_to_6_open_high_3_to_6_open_sale']['profit_0_to_3'], counters['scenarios']['high_3_to_6_open_high_3_to_6_open_sale']['profit_3_to_6'], counters['scenarios']['high_3_to_6_open_high_3_to_6_open_sale']['profit_over_6']) + elif next_close_differrange > 3 and next_close_differrange < 6 and saleprice_open_differrange > 6: + counters['scenarios']['high_3_to_6_close_high_over_6_open_sale']['loss_over_6'],counters['scenarios']['high_3_to_6_close_high_over_6_open_sale']['loss_6_to_3'], counters['scenarios']['high_3_to_6_close_high_over_6_open_sale']['loss_3_to_0'], counters['scenarios']['high_3_to_6_close_high_over_6_open_sale']['profit_0_to_3'], counters['scenarios']['high_3_to_6_close_high_over_6_open_sale']['profit_3_to_6'], counters['scenarios']['high_3_to_6_close_high_over_6_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['high_3_to_6_close_high_over_6_open_sale']['loss_over_6'], counters['scenarios']['high_3_to_6_close_high_over_6_open_sale']['loss_6_to_3'], counters['scenarios']['high_3_to_6_close_high_over_6_open_sale']['loss_3_to_0'], counters['scenarios']['high_3_to_6_close_high_over_6_open_sale']['profit_0_to_3'], counters['scenarios']['high_3_to_6_close_high_over_6_open_sale']['profit_3_to_6'], counters['scenarios']['high_3_to_6_close_high_over_6_open_sale']['profit_over_6']) + elif next_close_differrange > 6 and saleprice_open_differrange < -6: + counters['scenarios']['high_over_6_close_low_over_6_open_sale']['loss_over_6'],counters['scenarios']['high_over_6_close_low_over_6_open_sale']['loss_6_to_3'], counters['scenarios']['high_over_6_close_low_over_6_open_sale']['loss_3_to_0'], counters['scenarios']['high_over_6_close_low_over_6_open_sale']['profit_0_to_3'], counters['scenarios']['high_over_6_close_low_over_6_open_sale']['profit_3_to_6'], counters['scenarios']['high_over_6_close_low_over_6_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['high_over_6_close_low_over_6_open_sale']['loss_over_6'], counters['scenarios']['high_over_6_close_low_over_6_open_sale']['loss_6_to_3'], counters['scenarios']['high_over_6_close_low_over_6_open_sale']['loss_3_to_0'], counters['scenarios']['high_over_6_close_low_over_6_open_sale']['profit_0_to_3'], counters['scenarios']['high_over_6_close_low_over_6_open_sale']['profit_3_to_6'], counters['scenarios']['high_over_6_close_low_over_6_open_sale']['profit_over_6']) + elif next_close_differrange > 6 and saleprice_open_differrange > -6 and saleprice_open_differrange < -3: + counters['scenarios']['high_over_6_close_low_6_to_3_open_sale']['loss_over_6'],counters['scenarios']['high_over_6_close_low_6_to_3_open_sale']['loss_6_to_3'], counters['scenarios']['high_over_6_close_low_6_to_3_open_sale']['loss_3_to_0'], counters['scenarios']['high_over_6_close_low_6_to_3_open_sale']['profit_0_to_3'], counters['scenarios']['high_over_6_close_low_6_to_3_open_sale']['profit_3_to_6'], counters['scenarios']['high_over_6_close_low_6_to_3_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['high_over_6_close_low_6_to_3_open_sale']['loss_over_6'], counters['scenarios']['high_over_6_close_low_6_to_3_open_sale']['loss_6_to_3'], counters['scenarios']['high_over_6_close_low_6_to_3_open_sale']['loss_3_to_0'], counters['scenarios']['high_over_6_close_low_6_to_3_open_sale']['profit_0_to_3'], counters['scenarios']['high_over_6_close_low_6_to_3_open_sale']['profit_3_to_6'], counters['scenarios']['high_over_6_close_low_6_to_3_open_sale']['profit_over_6']) + elif next_close_differrange > 6 and saleprice_open_differrange > -3 and saleprice_open_differrange < 0: + counters['scenarios']['high_over_6_close_low_3_to_0_open_sale']['loss_over_6'],counters['scenarios']['high_over_6_close_low_3_to_0_open_sale']['loss_6_to_3'], counters['scenarios']['high_over_6_close_low_3_to_0_open_sale']['loss_3_to_0'], counters['scenarios']['high_over_6_close_low_3_to_0_open_sale']['profit_0_to_3'], counters['scenarios']['high_over_6_close_low_3_to_0_open_sale']['profit_3_to_6'], counters['scenarios']['high_over_6_close_low_3_to_0_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['high_over_6_close_low_3_to_0_open_sale']['loss_over_6'], counters['scenarios']['high_over_6_close_low_3_to_0_open_sale']['loss_6_to_3'], counters['scenarios']['high_over_6_close_low_3_to_0_open_sale']['loss_3_to_0'], counters['scenarios']['high_over_6_close_low_3_to_0_open_sale']['profit_0_to_3'], counters['scenarios']['high_over_6_close_low_3_to_0_open_sale']['profit_3_to_6'], counters['scenarios']['high_over_6_close_low_3_to_0_open_sale']['profit_over_6']) + elif next_close_differrange > 6 and saleprice_open_differrange > 0 and saleprice_open_differrange < 3: + counters['scenarios']['high_over_6_close_high_0_to_3_open_sale']['loss_over_6'],counters['scenarios']['high_over_6_close_high_0_to_3_open_sale']['loss_6_to_3'], counters['scenarios']['high_over_6_close_high_0_to_3_open_sale']['loss_3_to_0'], counters['scenarios']['high_over_6_close_high_0_to_3_open_sale']['profit_0_to_3'], counters['scenarios']['high_over_6_close_high_0_to_3_open_sale']['profit_3_to_6'], counters['scenarios']['high_over_6_close_high_0_to_3_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['high_over_6_close_high_0_to_3_open_sale']['loss_over_6'], counters['scenarios']['high_over_6_close_high_0_to_3_open_sale']['loss_6_to_3'], counters['scenarios']['high_over_6_close_high_0_to_3_open_sale']['loss_3_to_0'], counters['scenarios']['high_over_6_close_high_0_to_3_open_sale']['profit_0_to_3'], counters['scenarios']['high_over_6_close_high_0_to_3_open_sale']['profit_3_to_6'], counters['scenarios']['high_over_6_close_high_0_to_3_open_sale']['profit_over_6']) + elif next_close_differrange > 6 and saleprice_open_differrange > 3 and saleprice_open_differrange < 6: + counters['scenarios']['high_over_6_close_high_3_to_6_open_sale']['loss_over_6'],counters['scenarios']['high_over_6_close_high_3_to_6_open_sale']['loss_6_to_3'], counters['scenarios']['high_over_6_close_high_3_to_6_open_sale']['loss_3_to_0'], counters['scenarios']['high_over_6_close_high_3_to_6_open_sale']['profit_0_to_3'], counters['scenarios']['high_over_6_close_high_3_to_6_open_sale']['profit_3_to_6'], counters['scenarios']['high_over_6_close_high_3_to_6_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['high_over_6_close_high_3_to_6_open_sale']['loss_over_6'], counters['scenarios']['high_over_6_close_high_3_to_6_open_sale']['loss_6_to_3'], counters['scenarios']['high_over_6_close_high_3_to_6_open_sale']['loss_3_to_0'], counters['scenarios']['high_over_6_close_high_3_to_6_open_sale']['profit_0_to_3'], counters['scenarios']['high_over_6_close_high_3_to_6_open_sale']['profit_3_to_6'], counters['scenarios']['high_over_6_close_high_3_to_6_open_sale']['profit_over_6']) + elif next_close_differrange > 6 and saleprice_open_differrange > 6: + counters['scenarios']['high_over_6_close_high_over_6_open_sale']['loss_over_6'],counters['scenarios']['high_over_6_close_high_over_6_open_sale']['loss_6_to_3'], counters['scenarios']['high_over_6_close_high_over_6_open_sale']['loss_3_to_0'], counters['scenarios']['high_over_6_close_high_over_6_open_sale']['profit_0_to_3'], counters['scenarios']['high_over_6_close_high_over_6_open_sale']['profit_3_to_6'], counters['scenarios']['high_over_6_close_high_over_6_open_sale']['profit_over_6'] = count_change(saleprice_open_differrange, counters['scenarios']['high_over_6_close_high_over_6_open_sale']['loss_over_6'], counters['scenarios']['high_over_6_close_high_over_6_open_sale']['loss_6_to_3'], counters['scenarios']['high_over_6_close_high_over_6_open_sale']['loss_3_to_0'], counters['scenarios']['high_over_6_close_high_over_6_open_sale']['profit_0_to_3'], counters['scenarios']['high_over_6_close_high_over_6_open_sale']['profit_3_to_6'], counters['scenarios']['high_over_6_close_high_over_6_open_sale']['profit_over_6']) + + # 组合场景: 收盘建仓 清仓日收盘清仓 盈亏分布 + if next_close_differrange < -6 and saleprice_close_differrange < -6: + counters['scenarios']['low_over_6_close_low_over_6_close_sale']['loss_over_6'],counters['scenarios']['low_over_6_close_low_over_6_close_sale']['loss_6_to_3'], counters['scenarios']['low_over_6_close_low_over_6_close_sale']['loss_3_to_0'], counters['scenarios']['low_over_6_close_low_over_6_close_sale']['profit_0_to_3'], counters['scenarios']['low_over_6_close_low_over_6_close_sale']['profit_3_to_6'], counters['scenarios']['low_over_6_close_low_over_6_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['low_over_6_close_low_over_6_close_sale']['loss_over_6'], counters['scenarios']['low_over_6_close_low_over_6_close_sale']['loss_6_to_3'], counters['scenarios']['low_over_6_close_low_over_6_close_sale']['loss_3_to_0'], counters['scenarios']['low_over_6_close_low_over_6_close_sale']['profit_0_to_3'], counters['scenarios']['low_over_6_close_low_over_6_close_sale']['profit_3_to_6'], counters['scenarios']['low_over_6_close_low_over_6_close_sale']['profit_over_6']) + elif next_close_differrange < -6 and saleprice_close_differrange > -6 and saleprice_close_differrange < -3: + counters['scenarios']['low_over_6_close_low_6_to_3_close_sale']['loss_over_6'],counters['scenarios']['low_over_6_close_low_6_to_3_close_sale']['loss_6_to_3'], counters['scenarios']['low_over_6_close_low_6_to_3_close_sale']['loss_3_to_0'], counters['scenarios']['low_over_6_close_low_6_to_3_close_sale']['profit_0_to_3'], counters['scenarios']['low_over_6_close_low_6_to_3_close_sale']['profit_3_to_6'], counters['scenarios']['low_over_6_close_low_6_to_3_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['low_over_6_close_low_6_to_3_close_sale']['loss_over_6'], counters['scenarios']['low_over_6_close_low_6_to_3_close_sale']['loss_6_to_3'], counters['scenarios']['low_over_6_close_low_6_to_3_close_sale']['loss_3_to_0'], counters['scenarios']['low_over_6_close_low_6_to_3_close_sale']['profit_0_to_3'], counters['scenarios']['low_over_6_close_low_6_to_3_close_sale']['profit_3_to_6'], counters['scenarios']['low_over_6_close_low_6_to_3_close_sale']['profit_over_6']) + elif next_close_differrange < -6 and saleprice_close_differrange > -3 and saleprice_close_differrange < 0: + counters['scenarios']['low_over_6_close_low_3_to_0_close_sale']['loss_over_6'],counters['scenarios']['low_over_6_close_low_3_to_0_close_sale']['loss_6_to_3'], counters['scenarios']['low_over_6_close_low_3_to_0_close_sale']['loss_3_to_0'], counters['scenarios']['low_over_6_close_low_3_to_0_close_sale']['profit_0_to_3'], counters['scenarios']['low_over_6_close_low_3_to_0_close_sale']['profit_3_to_6'], counters['scenarios']['low_over_6_close_low_3_to_0_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['low_over_6_close_low_3_to_0_close_sale']['loss_over_6'], counters['scenarios']['low_over_6_close_low_3_to_0_close_sale']['loss_6_to_3'], counters['scenarios']['low_over_6_close_low_3_to_0_close_sale']['loss_3_to_0'], counters['scenarios']['low_over_6_close_low_3_to_0_close_sale']['profit_0_to_3'], counters['scenarios']['low_over_6_close_low_3_to_0_close_sale']['profit_3_to_6'], counters['scenarios']['low_over_6_close_low_3_to_0_close_sale']['profit_over_6']) + elif next_close_differrange < -6 and saleprice_close_differrange > 0 and saleprice_close_differrange < 3: + counters['scenarios']['low_over_6_close_high_0_to_3_close_sale']['loss_over_6'],counters['scenarios']['low_over_6_close_high_0_to_3_close_sale']['loss_6_to_3'], counters['scenarios']['low_over_6_close_high_0_to_3_close_sale']['loss_3_to_0'], counters['scenarios']['low_over_6_close_high_0_to_3_close_sale']['profit_0_to_3'], counters['scenarios']['low_over_6_close_high_0_to_3_close_sale']['profit_3_to_6'], counters['scenarios']['low_over_6_close_high_0_to_3_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['low_over_6_close_high_0_to_3_close_sale']['loss_over_6'], counters['scenarios']['low_over_6_close_high_0_to_3_close_sale']['loss_6_to_3'], counters['scenarios']['low_over_6_close_high_0_to_3_close_sale']['loss_3_to_0'], counters['scenarios']['low_over_6_close_high_0_to_3_close_sale']['profit_0_to_3'], counters['scenarios']['low_over_6_close_high_0_to_3_close_sale']['profit_3_to_6'], counters['scenarios']['low_over_6_close_high_0_to_3_close_sale']['profit_over_6']) + elif next_close_differrange < -6 and saleprice_close_differrange > 3 and saleprice_close_differrange < 6: + counters['scenarios']['low_over_6_close_high_3_to_6_close_sale']['loss_over_6'],counters['scenarios']['low_over_6_close_high_3_to_6_close_sale']['loss_6_to_3'], counters['scenarios']['low_over_6_close_high_3_to_6_close_sale']['loss_3_to_0'], counters['scenarios']['low_over_6_close_high_3_to_6_close_sale']['profit_0_to_3'], counters['scenarios']['low_over_6_close_high_3_to_6_close_sale']['profit_3_to_6'], counters['scenarios']['low_over_6_close_high_3_to_6_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['low_over_6_close_high_3_to_6_close_sale']['loss_over_6'], counters['scenarios']['low_over_6_close_high_3_to_6_close_sale']['loss_6_to_3'], counters['scenarios']['low_over_6_close_high_3_to_6_close_sale']['loss_3_to_0'], counters['scenarios']['low_over_6_close_high_3_to_6_close_sale']['profit_0_to_3'], counters['scenarios']['low_over_6_close_high_3_to_6_close_sale']['profit_3_to_6'], counters['scenarios']['low_over_6_close_high_3_to_6_close_sale']['profit_over_6']) + elif next_close_differrange < -6 and saleprice_close_differrange > 6: + counters['scenarios']['low_over_6_close_high_over_6_close_sale']['loss_over_6'],counters['scenarios']['low_over_6_close_high_over_6_close_sale']['loss_6_to_3'], counters['scenarios']['low_over_6_close_high_over_6_close_sale']['loss_3_to_0'], counters['scenarios']['low_over_6_close_high_over_6_close_sale']['profit_0_to_3'], counters['scenarios']['low_over_6_close_high_over_6_close_sale']['profit_3_to_6'], counters['scenarios']['low_over_6_close_high_over_6_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['low_over_6_close_high_over_6_close_sale']['loss_over_6'], counters['scenarios']['low_over_6_close_high_over_6_close_sale']['loss_6_to_3'], counters['scenarios']['low_over_6_close_high_over_6_close_sale']['loss_3_to_0'], counters['scenarios']['low_over_6_close_high_over_6_close_sale']['profit_0_to_3'], counters['scenarios']['low_over_6_close_high_over_6_close_sale']['profit_3_to_6'], counters['scenarios']['low_over_6_close_high_over_6_close_sale']['profit_over_6']) + elif next_close_differrange > -6 and next_close_differrange < -3 and saleprice_close_differrange < -6: + counters['scenarios']['low_6_to_3_close_low_over_6_close_sale']['loss_over_6'],counters['scenarios']['low_6_to_3_close_low_over_6_close_sale']['loss_6_to_3'], counters['scenarios']['low_6_to_3_close_low_over_6_close_sale']['loss_3_to_0'], counters['scenarios']['low_6_to_3_close_low_over_6_close_sale']['profit_0_to_3'], counters['scenarios']['low_6_to_3_close_low_over_6_close_sale']['profit_3_to_6'], counters['scenarios']['low_6_to_3_close_low_over_6_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['low_6_to_3_close_low_over_6_close_sale']['loss_over_6'], counters['scenarios']['low_6_to_3_close_low_over_6_close_sale']['loss_6_to_3'], counters['scenarios']['low_6_to_3_close_low_over_6_close_sale']['loss_3_to_0'], counters['scenarios']['low_6_to_3_close_low_over_6_close_sale']['profit_0_to_3'], counters['scenarios']['low_6_to_3_close_low_over_6_close_sale']['profit_3_to_6'], counters['scenarios']['low_6_to_3_close_low_over_6_close_sale']['profit_over_6']) + elif next_close_differrange > -6 and next_close_differrange < -3 and saleprice_close_differrange > -6 and saleprice_close_differrange < -3: + counters['scenarios']['low_6_to_3_close_low_6_to_3_close_sale']['loss_over_6'],counters['scenarios']['low_6_to_3_close_low_6_to_3_close_sale']['loss_6_to_3'], counters['scenarios']['low_6_to_3_close_low_6_to_3_close_sale']['loss_3_to_0'], counters['scenarios']['low_6_to_3_close_low_6_to_3_close_sale']['profit_0_to_3'], counters['scenarios']['low_6_to_3_close_low_6_to_3_close_sale']['profit_3_to_6'], counters['scenarios']['low_6_to_3_close_low_6_to_3_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['low_6_to_3_close_low_6_to_3_close_sale']['loss_over_6'], counters['scenarios']['low_6_to_3_close_low_6_to_3_close_sale']['loss_6_to_3'], counters['scenarios']['low_6_to_3_close_low_6_to_3_close_sale']['loss_3_to_0'], counters['scenarios']['low_6_to_3_close_low_6_to_3_close_sale']['profit_0_to_3'], counters['scenarios']['low_6_to_3_close_low_6_to_3_close_sale']['profit_3_to_6'], counters['scenarios']['low_6_to_3_close_low_6_to_3_close_sale']['profit_over_6']) + elif next_close_differrange > -6 and next_close_differrange < -3 and saleprice_close_differrange > -3 and saleprice_close_differrange < 0: + counters['scenarios']['low_6_to_3_close_low_3_to_0_close_sale']['loss_over_6'],counters['scenarios']['low_6_to_3_close_low_3_to_0_close_sale']['loss_6_to_3'], counters['scenarios']['low_6_to_3_close_low_3_to_0_close_sale']['loss_3_to_0'], counters['scenarios']['low_6_to_3_close_low_3_to_0_close_sale']['profit_0_to_3'], counters['scenarios']['low_6_to_3_close_low_3_to_0_close_sale']['profit_3_to_6'], counters['scenarios']['low_6_to_3_close_low_3_to_0_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['low_6_to_3_close_low_3_to_0_close_sale']['loss_over_6'], counters['scenarios']['low_6_to_3_close_low_3_to_0_close_sale']['loss_6_to_3'], counters['scenarios']['low_6_to_3_close_low_3_to_0_close_sale']['loss_3_to_0'], counters['scenarios']['low_6_to_3_close_low_3_to_0_close_sale']['profit_0_to_3'], counters['scenarios']['low_6_to_3_close_low_3_to_0_close_sale']['profit_3_to_6'], counters['scenarios']['low_6_to_3_close_low_3_to_0_close_sale']['profit_over_6']) + elif next_close_differrange > -6 and next_close_differrange < -3 and saleprice_close_differrange > 0 and saleprice_close_differrange < 3: + counters['scenarios']['low_6_to_3_close_high_0_to_3_close_sale']['loss_over_6'],counters['scenarios']['low_6_to_3_close_high_0_to_3_close_sale']['loss_6_to_3'], counters['scenarios']['low_6_to_3_close_high_0_to_3_close_sale']['loss_3_to_0'], counters['scenarios']['low_6_to_3_close_high_0_to_3_close_sale']['profit_0_to_3'], counters['scenarios']['low_6_to_3_close_high_0_to_3_close_sale']['profit_3_to_6'], counters['scenarios']['low_6_to_3_close_high_0_to_3_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['low_6_to_3_close_high_0_to_3_close_sale']['loss_over_6'], counters['scenarios']['low_6_to_3_close_high_0_to_3_close_sale']['loss_6_to_3'], counters['scenarios']['low_6_to_3_close_high_0_to_3_close_sale']['loss_3_to_0'], counters['scenarios']['low_6_to_3_close_high_0_to_3_close_sale']['profit_0_to_3'], counters['scenarios']['low_6_to_3_close_high_0_to_3_close_sale']['profit_3_to_6'], counters['scenarios']['low_6_to_3_close_high_0_to_3_close_sale']['profit_over_6']) + elif next_close_differrange > -6 and next_close_differrange < -3 and saleprice_close_differrange > 3 and saleprice_close_differrange < 6: + counters['scenarios']['low_6_to_3_close_high_3_to_6_close_sale']['loss_over_6'],counters['scenarios']['low_6_to_3_close_high_3_to_6_close_sale']['loss_6_to_3'], counters['scenarios']['low_6_to_3_close_high_3_to_6_close_sale']['loss_3_to_0'], counters['scenarios']['low_6_to_3_close_high_3_to_6_close_sale']['profit_0_to_3'], counters['scenarios']['low_6_to_3_close_high_3_to_6_close_sale']['profit_3_to_6'], counters['scenarios']['low_6_to_3_close_high_3_to_6_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['low_6_to_3_close_high_3_to_6_close_sale']['loss_over_6'], counters['scenarios']['low_6_to_3_close_high_3_to_6_close_sale']['loss_6_to_3'], counters['scenarios']['low_6_to_3_close_high_3_to_6_close_sale']['loss_3_to_0'], counters['scenarios']['low_6_to_3_close_high_3_to_6_close_sale']['profit_0_to_3'], counters['scenarios']['low_6_to_3_close_high_3_to_6_close_sale']['profit_3_to_6'], counters['scenarios']['low_6_to_3_close_high_3_to_6_close_sale']['profit_over_6']) + elif next_close_differrange > -6 and next_close_differrange < -3 and saleprice_close_differrange > 6: + counters['scenarios']['low_6_to_3_close_high_over_6_close_sale']['loss_over_6'],counters['scenarios']['low_6_to_3_close_high_over_6_close_sale']['loss_6_to_3'], counters['scenarios']['low_6_to_3_close_high_over_6_close_sale']['loss_3_to_0'], counters['scenarios']['low_6_to_3_close_high_over_6_close_sale']['profit_0_to_3'], counters['scenarios']['low_6_to_3_close_high_over_6_close_sale']['profit_3_to_6'], counters['scenarios']['low_6_to_3_close_high_over_6_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['low_6_to_3_close_high_over_6_close_sale']['loss_over_6'], counters['scenarios']['low_6_to_3_close_high_over_6_close_sale']['loss_6_to_3'], counters['scenarios']['low_6_to_3_close_high_over_6_close_sale']['loss_3_to_0'], counters['scenarios']['low_6_to_3_close_high_over_6_close_sale']['profit_0_to_3'], counters['scenarios']['low_6_to_3_close_high_over_6_close_sale']['profit_3_to_6'], counters['scenarios']['low_6_to_3_close_high_over_6_close_sale']['profit_over_6']) + elif next_close_differrange > -3 and next_close_differrange < 0 and saleprice_close_differrange < -6: + counters['scenarios']['low_3_to_0_close_low_over_6_close_sale']['loss_over_6'],counters['scenarios']['low_3_to_0_close_low_over_6_close_sale']['loss_6_to_3'], counters['scenarios']['low_3_to_0_close_low_over_6_close_sale']['loss_3_to_0'], counters['scenarios']['low_3_to_0_close_low_over_6_close_sale']['profit_0_to_3'], counters['scenarios']['low_3_to_0_close_low_over_6_close_sale']['profit_3_to_6'], counters['scenarios']['low_3_to_0_close_low_over_6_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['low_3_to_0_close_low_over_6_close_sale']['loss_over_6'], counters['scenarios']['low_3_to_0_close_low_over_6_close_sale']['loss_6_to_3'], counters['scenarios']['low_3_to_0_close_low_over_6_close_sale']['loss_3_to_0'], counters['scenarios']['low_3_to_0_close_low_over_6_close_sale']['profit_0_to_3'], counters['scenarios']['low_3_to_0_close_low_over_6_close_sale']['profit_3_to_6'], counters['scenarios']['low_3_to_0_close_low_over_6_close_sale']['profit_over_6']) + elif next_close_differrange > -3 and next_close_differrange < 0 and saleprice_close_differrange > -6 and saleprice_close_differrange < -3: + counters['scenarios']['low_3_to_0_close_low_6_to_3_close_sale']['loss_over_6'],counters['scenarios']['low_3_to_0_close_low_6_to_3_close_sale']['loss_6_to_3'], counters['scenarios']['low_3_to_0_close_low_6_to_3_close_sale']['loss_3_to_0'], counters['scenarios']['low_3_to_0_close_low_6_to_3_close_sale']['profit_0_to_3'], counters['scenarios']['low_3_to_0_close_low_6_to_3_close_sale']['profit_3_to_6'], counters['scenarios']['low_3_to_0_close_low_6_to_3_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['low_3_to_0_close_low_6_to_3_close_sale']['loss_over_6'], counters['scenarios']['low_3_to_0_close_low_6_to_3_close_sale']['loss_6_to_3'], counters['scenarios']['low_3_to_0_close_low_6_to_3_close_sale']['loss_3_to_0'], counters['scenarios']['low_3_to_0_close_low_6_to_3_close_sale']['profit_0_to_3'], counters['scenarios']['low_3_to_0_close_low_6_to_3_close_sale']['profit_3_to_6'], counters['scenarios']['low_3_to_0_close_low_6_to_3_close_sale']['profit_over_6']) + elif next_close_differrange > -3 and next_close_differrange < 0 and saleprice_close_differrange > -3 and saleprice_close_differrange < 0: + counters['scenarios']['low_3_to_0_close_low_3_to_0_close_sale']['loss_over_6'],counters['scenarios']['low_3_to_0_close_low_3_to_0_close_sale']['loss_6_to_3'], counters['scenarios']['low_3_to_0_close_low_3_to_0_close_sale']['loss_3_to_0'], counters['scenarios']['low_3_to_0_close_low_3_to_0_close_sale']['profit_0_to_3'], counters['scenarios']['low_3_to_0_close_low_3_to_0_close_sale']['profit_3_to_6'], counters['scenarios']['low_3_to_0_close_low_3_to_0_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['low_3_to_0_close_low_3_to_0_close_sale']['loss_over_6'], counters['scenarios']['low_3_to_0_close_low_3_to_0_close_sale']['loss_6_to_3'], counters['scenarios']['low_3_to_0_close_low_3_to_0_close_sale']['loss_3_to_0'], counters['scenarios']['low_3_to_0_close_low_3_to_0_close_sale']['profit_0_to_3'], counters['scenarios']['low_3_to_0_close_low_3_to_0_close_sale']['profit_3_to_6'], counters['scenarios']['low_3_to_0_close_low_3_to_0_close_sale']['profit_over_6']) + elif next_close_differrange > -3 and next_close_differrange < 0 and saleprice_close_differrange > 0 and saleprice_close_differrange < 3: + counters['scenarios']['low_3_to_0_close_high_0_to_3_close_sale']['loss_over_6'],counters['scenarios']['low_3_to_0_close_high_0_to_3_close_sale']['loss_6_to_3'], counters['scenarios']['low_3_to_0_close_high_0_to_3_close_sale']['loss_3_to_0'], counters['scenarios']['low_3_to_0_close_high_0_to_3_close_sale']['profit_0_to_3'], counters['scenarios']['low_3_to_0_close_high_0_to_3_close_sale']['profit_3_to_6'], counters['scenarios']['low_3_to_0_close_high_0_to_3_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['low_3_to_0_close_high_0_to_3_close_sale']['loss_over_6'], counters['scenarios']['low_3_to_0_close_high_0_to_3_close_sale']['loss_6_to_3'], counters['scenarios']['low_3_to_0_close_high_0_to_3_close_sale']['loss_3_to_0'], counters['scenarios']['low_3_to_0_close_high_0_to_3_close_sale']['profit_0_to_3'], counters['scenarios']['low_3_to_0_close_high_0_to_3_close_sale']['profit_3_to_6'], counters['scenarios']['low_3_to_0_close_high_0_to_3_close_sale']['profit_over_6']) + elif next_close_differrange > -3 and next_close_differrange < 0 and saleprice_close_differrange > 3 and saleprice_close_differrange < 6: + counters['scenarios']['low_3_to_0_close_high_3_to_6_close_sale']['loss_over_6'],counters['scenarios']['low_3_to_0_close_high_3_to_6_close_sale']['loss_6_to_3'], counters['scenarios']['low_3_to_0_close_high_3_to_6_close_sale']['loss_3_to_0'], counters['scenarios']['low_3_to_0_close_high_3_to_6_close_sale']['profit_0_to_3'], counters['scenarios']['low_3_to_0_close_high_3_to_6_close_sale']['profit_3_to_6'], counters['scenarios']['low_3_to_0_close_high_3_to_6_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['low_3_to_0_close_high_3_to_6_close_sale']['loss_over_6'], counters['scenarios']['low_3_to_0_close_high_3_to_6_close_sale']['loss_6_to_3'], counters['scenarios']['low_3_to_0_close_high_3_to_6_close_sale']['loss_3_to_0'], counters['scenarios']['low_3_to_0_close_high_3_to_6_close_sale']['profit_0_to_3'], counters['scenarios']['low_3_to_0_close_high_3_to_6_close_sale']['profit_3_to_6'], counters['scenarios']['low_3_to_0_close_high_3_to_6_close_sale']['profit_over_6']) + elif next_close_differrange > -3 and next_close_differrange < 0 and saleprice_close_differrange > 6: + counters['scenarios']['low_3_to_0_close_high_over_6_close_sale']['loss_over_6'],counters['scenarios']['low_3_to_0_close_high_over_6_close_sale']['loss_6_to_3'], counters['scenarios']['low_3_to_0_close_high_over_6_close_sale']['loss_3_to_0'], counters['scenarios']['low_3_to_0_close_high_over_6_close_sale']['profit_0_to_3'], counters['scenarios']['low_3_to_0_close_high_over_6_close_sale']['profit_3_to_6'], counters['scenarios']['low_3_to_0_close_high_over_6_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['low_3_to_0_close_high_over_6_close_sale']['loss_over_6'], counters['scenarios']['low_3_to_0_close_high_over_6_close_sale']['loss_6_to_3'], counters['scenarios']['low_3_to_0_close_high_over_6_close_sale']['loss_3_to_0'], counters['scenarios']['low_3_to_0_close_high_over_6_close_sale']['profit_0_to_3'], counters['scenarios']['low_3_to_0_close_high_over_6_close_sale']['profit_3_to_6'], counters['scenarios']['low_3_to_0_close_high_over_6_close_sale']['profit_over_6']) + elif next_close_differrange > 0 and next_close_differrange < 3 and saleprice_close_differrange < -6: + counters['scenarios']['high_0_to_3_close_low_over_6_close_sale']['loss_over_6'],counters['scenarios']['high_0_to_3_close_low_over_6_close_sale']['loss_6_to_3'], counters['scenarios']['high_0_to_3_close_low_over_6_close_sale']['loss_3_to_0'], counters['scenarios']['high_0_to_3_close_low_over_6_close_sale']['profit_0_to_3'], counters['scenarios']['high_0_to_3_close_low_over_6_close_sale']['profit_3_to_6'], counters['scenarios']['high_0_to_3_close_low_over_6_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['high_0_to_3_close_low_over_6_close_sale']['loss_over_6'], counters['scenarios']['high_0_to_3_close_low_over_6_close_sale']['loss_6_to_3'], counters['scenarios']['high_0_to_3_close_low_over_6_close_sale']['loss_3_to_0'], counters['scenarios']['high_0_to_3_close_low_over_6_close_sale']['profit_0_to_3'], counters['scenarios']['high_0_to_3_close_low_over_6_close_sale']['profit_3_to_6'], counters['scenarios']['high_0_to_3_close_low_over_6_close_sale']['profit_over_6']) + elif next_close_differrange > 0 and next_close_differrange < 3 and saleprice_close_differrange > -6 and saleprice_close_differrange < -3: + counters['scenarios']['high_0_to_3_close_low_6_to_3_close_sale']['loss_over_6'],counters['scenarios']['high_0_to_3_close_low_6_to_3_close_sale']['loss_6_to_3'], counters['scenarios']['high_0_to_3_close_low_6_to_3_close_sale']['loss_3_to_0'], counters['scenarios']['high_0_to_3_close_low_6_to_3_close_sale']['profit_0_to_3'], counters['scenarios']['high_0_to_3_close_low_6_to_3_close_sale']['profit_3_to_6'], counters['scenarios']['high_0_to_3_close_low_6_to_3_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['high_0_to_3_close_low_6_to_3_close_sale']['loss_over_6'], counters['scenarios']['high_0_to_3_close_low_6_to_3_close_sale']['loss_6_to_3'], counters['scenarios']['high_0_to_3_close_low_6_to_3_close_sale']['loss_3_to_0'], counters['scenarios']['high_0_to_3_close_low_6_to_3_close_sale']['profit_0_to_3'], counters['scenarios']['high_0_to_3_close_low_6_to_3_close_sale']['profit_3_to_6'], counters['scenarios']['high_0_to_3_close_low_6_to_3_close_sale']['profit_over_6']) + elif next_close_differrange > 0 and next_close_differrange < 3 and saleprice_close_differrange > -3 and saleprice_close_differrange < 0: + counters['scenarios']['high_0_to_3_close_low_3_to_0_close_sale']['loss_over_6'],counters['scenarios']['high_0_to_3_close_low_3_to_0_close_sale']['loss_6_to_3'], counters['scenarios']['high_0_to_3_close_low_3_to_0_close_sale']['loss_3_to_0'], counters['scenarios']['high_0_to_3_close_low_3_to_0_close_sale']['profit_0_to_3'], counters['scenarios']['high_0_to_3_close_low_3_to_0_close_sale']['profit_3_to_6'], counters['scenarios']['high_0_to_3_close_low_3_to_0_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['high_0_to_3_close_low_3_to_0_close_sale']['loss_over_6'], counters['scenarios']['high_0_to_3_close_low_3_to_0_close_sale']['loss_6_to_3'], counters['scenarios']['high_0_to_3_close_low_3_to_0_close_sale']['loss_3_to_0'], counters['scenarios']['high_0_to_3_close_low_3_to_0_close_sale']['profit_0_to_3'], counters['scenarios']['high_0_to_3_close_low_3_to_0_close_sale']['profit_3_to_6'], counters['scenarios']['high_0_to_3_close_low_3_to_0_close_sale']['profit_over_6']) + elif next_close_differrange > 0 and next_close_differrange < 3 and saleprice_close_differrange > 0 and saleprice_close_differrange < 3: + counters['scenarios']['high_0_to_3_close_high_0_to_3_close_sale']['loss_over_6'],counters['scenarios']['high_0_to_3_close_high_0_to_3_close_sale']['loss_6_to_3'], counters['scenarios']['high_0_to_3_close_high_0_to_3_close_sale']['loss_3_to_0'], counters['scenarios']['high_0_to_3_close_high_0_to_3_close_sale']['profit_0_to_3'], counters['scenarios']['high_0_to_3_close_high_0_to_3_close_sale']['profit_3_to_6'], counters['scenarios']['high_0_to_3_close_high_0_to_3_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['high_0_to_3_close_high_0_to_3_close_sale']['loss_over_6'], counters['scenarios']['high_0_to_3_close_high_0_to_3_close_sale']['loss_6_to_3'], counters['scenarios']['high_0_to_3_close_high_0_to_3_close_sale']['loss_3_to_0'], counters['scenarios']['high_0_to_3_close_high_0_to_3_close_sale']['profit_0_to_3'], counters['scenarios']['high_0_to_3_close_high_0_to_3_close_sale']['profit_3_to_6'], counters['scenarios']['high_0_to_3_close_high_0_to_3_close_sale']['profit_over_6']) + elif next_close_differrange > 0 and next_close_differrange < 3 and saleprice_close_differrange > 3 and saleprice_close_differrange < 6: + counters['scenarios']['high_0_to_3_close_high_3_to_6_close_sale']['loss_over_6'],counters['scenarios']['high_0_to_3_close_high_3_to_6_close_sale']['loss_6_to_3'], counters['scenarios']['high_0_to_3_close_high_3_to_6_close_sale']['loss_3_to_0'], counters['scenarios']['high_0_to_3_close_high_3_to_6_close_sale']['profit_0_to_3'], counters['scenarios']['high_0_to_3_close_high_3_to_6_close_sale']['profit_3_to_6'], counters['scenarios']['high_0_to_3_close_high_3_to_6_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['high_0_to_3_close_high_3_to_6_close_sale']['loss_over_6'], counters['scenarios']['high_0_to_3_close_high_3_to_6_close_sale']['loss_6_to_3'], counters['scenarios']['high_0_to_3_close_high_3_to_6_close_sale']['loss_3_to_0'], counters['scenarios']['high_0_to_3_close_high_3_to_6_close_sale']['profit_0_to_3'], counters['scenarios']['high_0_to_3_close_high_3_to_6_close_sale']['profit_3_to_6'], counters['scenarios']['high_0_to_3_close_high_3_to_6_close_sale']['profit_over_6']) + elif next_close_differrange > 0 and next_close_differrange < 3 and saleprice_close_differrange > 6: + counters['scenarios']['high_0_to_3_close_high_over_6_close_sale']['loss_over_6'],counters['scenarios']['high_0_to_3_close_high_over_6_close_sale']['loss_6_to_3'], counters['scenarios']['high_0_to_3_close_high_over_6_close_sale']['loss_3_to_0'], counters['scenarios']['high_0_to_3_close_high_over_6_close_sale']['profit_0_to_3'], counters['scenarios']['high_0_to_3_close_high_over_6_close_sale']['profit_3_to_6'], counters['scenarios']['high_0_to_3_close_high_over_6_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['high_0_to_3_close_high_over_6_close_sale']['loss_over_6'], counters['scenarios']['high_0_to_3_close_high_over_6_close_sale']['loss_6_to_3'], counters['scenarios']['high_0_to_3_close_high_over_6_close_sale']['loss_3_to_0'], counters['scenarios']['high_0_to_3_close_high_over_6_close_sale']['profit_0_to_3'], counters['scenarios']['high_0_to_3_close_high_over_6_close_sale']['profit_3_to_6'], counters['scenarios']['high_0_to_3_close_high_over_6_close_sale']['profit_over_6']) + elif next_close_differrange > 3 and next_close_differrange < 6 and saleprice_close_differrange < -6: + counters['scenarios']['high_3_to_6_close_low_over_6_close_sale']['loss_over_6'],counters['scenarios']['high_3_to_6_close_low_over_6_close_sale']['loss_6_to_3'], counters['scenarios']['high_3_to_6_close_low_over_6_close_sale']['loss_3_to_0'], counters['scenarios']['high_3_to_6_close_low_over_6_close_sale']['profit_0_to_3'], counters['scenarios']['high_3_to_6_close_low_over_6_close_sale']['profit_3_to_6'], counters['scenarios']['high_3_to_6_close_low_over_6_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['high_3_to_6_close_low_over_6_close_sale']['loss_over_6'], counters['scenarios']['high_3_to_6_close_low_over_6_close_sale']['loss_6_to_3'], counters['scenarios']['high_3_to_6_close_low_over_6_close_sale']['loss_3_to_0'], counters['scenarios']['high_3_to_6_close_low_over_6_close_sale']['profit_0_to_3'], counters['scenarios']['high_3_to_6_close_low_over_6_close_sale']['profit_3_to_6'], counters['scenarios']['high_3_to_6_close_low_over_6_close_sale']['profit_over_6']) + elif next_close_differrange > 3 and next_close_differrange < 6 and saleprice_close_differrange > -6 and saleprice_close_differrange < -3: + counters['scenarios']['high_3_to_6_close_low_6_to_3_close_sale']['loss_over_6'],counters['scenarios']['high_3_to_6_close_low_6_to_3_close_sale']['loss_6_to_3'], counters['scenarios']['high_3_to_6_close_low_6_to_3_close_sale']['loss_3_to_0'], counters['scenarios']['high_3_to_6_close_low_6_to_3_close_sale']['profit_0_to_3'], counters['scenarios']['high_3_to_6_close_low_6_to_3_close_sale']['profit_3_to_6'], counters['scenarios']['high_3_to_6_close_low_6_to_3_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['high_3_to_6_close_low_6_to_3_close_sale']['loss_over_6'], counters['scenarios']['high_3_to_6_close_low_6_to_3_close_sale']['loss_6_to_3'], counters['scenarios']['high_3_to_6_close_low_6_to_3_close_sale']['loss_3_to_0'], counters['scenarios']['high_3_to_6_close_low_6_to_3_close_sale']['profit_0_to_3'], counters['scenarios']['high_3_to_6_close_low_6_to_3_close_sale']['profit_3_to_6'], counters['scenarios']['high_3_to_6_close_low_6_to_3_close_sale']['profit_over_6']) + elif next_close_differrange > 3 and next_close_differrange < 6 and saleprice_close_differrange > -3 and saleprice_close_differrange < 0: + counters['scenarios']['high_3_to_6_close_low_3_to_0_close_sale']['loss_over_6'],counters['scenarios']['high_3_to_6_close_low_3_to_0_close_sale']['loss_6_to_3'], counters['scenarios']['high_3_to_6_close_low_3_to_0_close_sale']['loss_3_to_0'], counters['scenarios']['high_3_to_6_close_low_3_to_0_close_sale']['profit_0_to_3'], counters['scenarios']['high_3_to_6_close_low_3_to_0_close_sale']['profit_3_to_6'], counters['scenarios']['high_3_to_6_close_low_3_to_0_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['high_3_to_6_close_low_3_to_0_close_sale']['loss_over_6'], counters['scenarios']['high_3_to_6_close_low_3_to_0_close_sale']['loss_6_to_3'], counters['scenarios']['high_3_to_6_close_low_3_to_0_close_sale']['loss_3_to_0'], counters['scenarios']['high_3_to_6_close_low_3_to_0_close_sale']['profit_0_to_3'], counters['scenarios']['high_3_to_6_close_low_3_to_0_close_sale']['profit_3_to_6'], counters['scenarios']['high_3_to_6_close_low_3_to_0_close_sale']['profit_over_6']) + elif next_close_differrange > 3 and next_close_differrange < 6 and saleprice_close_differrange > 0 and saleprice_close_differrange < 3: + counters['scenarios']['high_3_to_6_close_high_0_to_3_close_sale']['loss_over_6'],counters['scenarios']['high_3_to_6_close_high_0_to_3_close_sale']['loss_6_to_3'], counters['scenarios']['high_3_to_6_close_high_0_to_3_close_sale']['loss_3_to_0'], counters['scenarios']['high_3_to_6_close_high_0_to_3_close_sale']['profit_0_to_3'], counters['scenarios']['high_3_to_6_close_high_0_to_3_close_sale']['profit_3_to_6'], counters['scenarios']['high_3_to_6_close_high_0_to_3_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['high_3_to_6_close_high_0_to_3_close_sale']['loss_over_6'], counters['scenarios']['high_3_to_6_close_high_0_to_3_close_sale']['loss_6_to_3'], counters['scenarios']['high_3_to_6_close_high_0_to_3_close_sale']['loss_3_to_0'], counters['scenarios']['high_3_to_6_close_high_0_to_3_close_sale']['profit_0_to_3'], counters['scenarios']['high_3_to_6_close_high_0_to_3_close_sale']['profit_3_to_6'], counters['scenarios']['high_3_to_6_close_high_0_to_3_close_sale']['profit_over_6']) + elif next_close_differrange > 3 and next_close_differrange < 6 and saleprice_close_differrange > 3 and saleprice_close_differrange < 6: + counters['scenarios']['high_3_to_6_close_high_3_to_6_close_sale']['loss_over_6'],counters['scenarios']['high_3_to_6_close_high_3_to_6_close_sale']['loss_6_to_3'], counters['scenarios']['high_3_to_6_close_high_3_to_6_close_sale']['loss_3_to_0'], counters['scenarios']['high_3_to_6_close_high_3_to_6_close_sale']['profit_0_to_3'], counters['scenarios']['high_3_to_6_close_high_3_to_6_close_sale']['profit_3_to_6'], counters['scenarios']['high_3_to_6_close_high_3_to_6_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['high_3_to_6_close_high_3_to_6_close_sale']['loss_over_6'], counters['scenarios']['high_3_to_6_close_high_3_to_6_close_sale']['loss_6_to_3'], counters['scenarios']['high_3_to_6_close_high_3_to_6_close_sale']['loss_3_to_0'], counters['scenarios']['high_3_to_6_close_high_3_to_6_close_sale']['profit_0_to_3'], counters['scenarios']['high_3_to_6_close_high_3_to_6_close_sale']['profit_3_to_6'], counters['scenarios']['high_3_to_6_close_high_3_to_6_close_sale']['profit_over_6']) + elif next_close_differrange > 3 and next_close_differrange < 6 and saleprice_close_differrange > 6: + counters['scenarios']['high_3_to_6_close_high_over_6_close_sale']['loss_over_6'],counters['scenarios']['high_3_to_6_close_high_over_6_close_sale']['loss_6_to_3'], counters['scenarios']['high_3_to_6_close_high_over_6_close_sale']['loss_3_to_0'], counters['scenarios']['high_3_to_6_close_high_over_6_close_sale']['profit_0_to_3'], counters['scenarios']['high_3_to_6_close_high_over_6_close_sale']['profit_3_to_6'], counters['scenarios']['high_3_to_6_close_high_over_6_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['high_3_to_6_close_high_over_6_close_sale']['loss_over_6'], counters['scenarios']['high_3_to_6_close_high_over_6_close_sale']['loss_6_to_3'], counters['scenarios']['high_3_to_6_close_high_over_6_close_sale']['loss_3_to_0'], counters['scenarios']['high_3_to_6_close_high_over_6_close_sale']['profit_0_to_3'], counters['scenarios']['high_3_to_6_close_high_over_6_close_sale']['profit_3_to_6'], counters['scenarios']['high_3_to_6_close_high_over_6_close_sale']['profit_over_6']) + elif next_close_differrange > 6 and saleprice_close_differrange < -6: + counters['scenarios']['high_over_6_close_low_over_6_close_sale']['loss_over_6'],counters['scenarios']['high_over_6_close_low_over_6_close_sale']['loss_6_to_3'], counters['scenarios']['high_over_6_close_low_over_6_close_sale']['loss_3_to_0'], counters['scenarios']['high_over_6_close_low_over_6_close_sale']['profit_0_to_3'], counters['scenarios']['high_over_6_close_low_over_6_close_sale']['profit_3_to_6'], counters['scenarios']['high_over_6_close_low_over_6_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['high_over_6_close_low_over_6_close_sale']['loss_over_6'], counters['scenarios']['high_over_6_close_low_over_6_close_sale']['loss_6_to_3'], counters['scenarios']['high_over_6_close_low_over_6_close_sale']['loss_3_to_0'], counters['scenarios']['high_over_6_close_low_over_6_close_sale']['profit_0_to_3'], counters['scenarios']['high_over_6_close_low_over_6_close_sale']['profit_3_to_6'], counters['scenarios']['high_over_6_close_low_over_6_close_sale']['profit_over_6']) + elif next_close_differrange > 6 and saleprice_close_differrange > -6 and saleprice_close_differrange < -3: + counters['scenarios']['high_over_6_close_low_6_to_3_close_sale']['loss_over_6'],counters['scenarios']['high_over_6_close_low_6_to_3_close_sale']['loss_6_to_3'], counters['scenarios']['high_over_6_close_low_6_to_3_close_sale']['loss_3_to_0'], counters['scenarios']['high_over_6_close_low_6_to_3_close_sale']['profit_0_to_3'], counters['scenarios']['high_over_6_close_low_6_to_3_close_sale']['profit_3_to_6'], counters['scenarios']['high_over_6_close_low_6_to_3_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['high_over_6_close_low_6_to_3_close_sale']['loss_over_6'], counters['scenarios']['high_over_6_close_low_6_to_3_close_sale']['loss_6_to_3'], counters['scenarios']['high_over_6_close_low_6_to_3_close_sale']['loss_3_to_0'], counters['scenarios']['high_over_6_close_low_6_to_3_close_sale']['profit_0_to_3'], counters['scenarios']['high_over_6_close_low_6_to_3_close_sale']['profit_3_to_6'], counters['scenarios']['high_over_6_close_low_6_to_3_close_sale']['profit_over_6']) + elif next_close_differrange > 6 and saleprice_close_differrange > -3 and saleprice_close_differrange < 0: + counters['scenarios']['high_over_6_close_low_3_to_0_close_sale']['loss_over_6'],counters['scenarios']['high_over_6_close_low_3_to_0_close_sale']['loss_6_to_3'], counters['scenarios']['high_over_6_close_low_3_to_0_close_sale']['loss_3_to_0'], counters['scenarios']['high_over_6_close_low_3_to_0_close_sale']['profit_0_to_3'], counters['scenarios']['high_over_6_close_low_3_to_0_close_sale']['profit_3_to_6'], counters['scenarios']['high_over_6_close_low_3_to_0_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['high_over_6_close_low_3_to_0_close_sale']['loss_over_6'], counters['scenarios']['high_over_6_close_low_3_to_0_close_sale']['loss_6_to_3'], counters['scenarios']['high_over_6_close_low_3_to_0_close_sale']['loss_3_to_0'], counters['scenarios']['high_over_6_close_low_3_to_0_close_sale']['profit_0_to_3'], counters['scenarios']['high_over_6_close_low_3_to_0_close_sale']['profit_3_to_6'], counters['scenarios']['high_over_6_close_low_3_to_0_close_sale']['profit_over_6']) + elif next_close_differrange > 6 and saleprice_close_differrange > 0 and saleprice_close_differrange < 3: + counters['scenarios']['high_over_6_close_high_0_to_3_close_sale']['loss_over_6'],counters['scenarios']['high_over_6_close_high_0_to_3_close_sale']['loss_6_to_3'], counters['scenarios']['high_over_6_close_high_0_to_3_close_sale']['loss_3_to_0'], counters['scenarios']['high_over_6_close_high_0_to_3_close_sale']['profit_0_to_3'], counters['scenarios']['high_over_6_close_high_0_to_3_close_sale']['profit_3_to_6'], counters['scenarios']['high_over_6_close_high_0_to_3_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['high_over_6_close_high_0_to_3_close_sale']['loss_over_6'], counters['scenarios']['high_over_6_close_high_0_to_3_close_sale']['loss_6_to_3'], counters['scenarios']['high_over_6_close_high_0_to_3_close_sale']['loss_3_to_0'], counters['scenarios']['high_over_6_close_high_0_to_3_close_sale']['profit_0_to_3'], counters['scenarios']['high_over_6_close_high_0_to_3_close_sale']['profit_3_to_6'], counters['scenarios']['high_over_6_close_high_0_to_3_close_sale']['profit_over_6']) + elif next_close_differrange > 6 and saleprice_close_differrange > 3 and saleprice_close_differrange < 6: + counters['scenarios']['high_over_6_close_high_3_to_6_close_sale']['loss_over_6'],counters['scenarios']['high_over_6_close_high_3_to_6_close_sale']['loss_6_to_3'], counters['scenarios']['high_over_6_close_high_3_to_6_close_sale']['loss_3_to_0'], counters['scenarios']['high_over_6_close_high_3_to_6_close_sale']['profit_0_to_3'], counters['scenarios']['high_over_6_close_high_3_to_6_close_sale']['profit_3_to_6'], counters['scenarios']['high_over_6_close_high_3_to_6_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['high_over_6_close_high_3_to_6_close_sale']['loss_over_6'], counters['scenarios']['high_over_6_close_high_3_to_6_close_sale']['loss_6_to_3'], counters['scenarios']['high_over_6_close_high_3_to_6_close_sale']['loss_3_to_0'], counters['scenarios']['high_over_6_close_high_3_to_6_close_sale']['profit_0_to_3'], counters['scenarios']['high_over_6_close_high_3_to_6_close_sale']['profit_3_to_6'], counters['scenarios']['high_over_6_close_high_3_to_6_close_sale']['profit_over_6']) + elif next_close_differrange > 6 and saleprice_close_differrange > 6: + counters['scenarios']['high_over_6_close_high_over_6_close_sale']['loss_over_6'],counters['scenarios']['high_over_6_close_high_over_6_close_sale']['loss_6_to_3'], counters['scenarios']['high_over_6_close_high_over_6_close_sale']['loss_3_to_0'], counters['scenarios']['high_over_6_close_high_over_6_close_sale']['profit_0_to_3'], counters['scenarios']['high_over_6_close_high_over_6_close_sale']['profit_3_to_6'], counters['scenarios']['high_over_6_close_high_over_6_close_sale']['profit_over_6'] = count_change(saleprice_close_differrange, counters['scenarios']['high_over_6_close_high_over_6_close_sale']['loss_over_6'], counters['scenarios']['high_over_6_close_high_over_6_close_sale']['loss_6_to_3'], counters['scenarios']['high_over_6_close_high_over_6_close_sale']['loss_3_to_0'], counters['scenarios']['high_over_6_close_high_over_6_close_sale']['profit_0_to_3'], counters['scenarios']['high_over_6_close_high_over_6_close_sale']['profit_3_to_6'], counters['scenarios']['high_over_6_close_high_over_6_close_sale']['profit_over_6']) + + else: + nextdate_str = date_list[i+1].strftime('%Y-%m-%d')#买入日 + saledate_str = date_list[i+2].strftime('%Y-%m-%d')#卖出日 + + print(f'正在处理{date_str}的数据') + + # 执行SQL查询(这只是一个示例,你需要根据你的实际需求和数据库结构进行修改) + query = f'select code,open,close,high,low, volumn,amount,differrange10,differrange20,differrange60 from stocks where islimit = "是" and trade_day = "{date_str}"' + df = pd.read_sql_query(query, engine) + limit_list = df['code'].tolist() + for code in limit_list: + # 总统计数 + total_count += 1 + print(f'正在处理{date_str} - {code}的数据') + query = f'select code,open,close,differrange from stocks where trade_day = "{nextdate_str}" and code = "{code}"' + dfnext = pd.read_sql_query(query,engine) + + if dfnext.size <= 0: + total_count -= 1 + continue + # 处理数据... + open = df.loc[df['code'] == code, 'open'].values[0] + nextopen = dfnext.loc[dfnext['code'] == code, 'open'].values[0] + nextclose = dfnext.loc[dfnext['code'] == code, 'close'].values[0] + nextdifferrange = dfnext.loc[dfnext['code'] == code, 'differrange'].values[0] + + df.loc[df['code'] == code, 'next_open'] = nextopen + df.loc[df['code'] == code, 'next_open_diff'] = 100 * (nextopen - open)/open + df.loc[df['code'] == code, 'next_close'] = nextclose + df.loc[df['code'] == code, 'next_close_differrange'] = nextdifferrange + + query = f'select code,open,close,differrange from stocks where trade_day = "{saledate_str}" and code = "{code}"' + dfsale = pd.read_sql_query(query,engine) + + if dfsale.size <= 0: + total_count -= 1 + continue + + saleopen = dfsale.loc[dfsale['code'] == code, 'open'].values[0] + saleclose = dfsale.loc[dfsale['code'] == code, 'close'].values[0] + + df.loc[df['code'] == code, 'saleprice_open'] = saleopen + df.loc[df['code'] == code, 'saleprice_close'] = saleclose + # 清仓盈亏 + df.loc[df['code'] == code, 'saleprice_open_differrange'] = 100 * (saleopen - nextopen)/nextopen + df.loc[df['code'] == code, 'saleprice_close_differrange'] = 100 * (saleclose - nextclose)/nextclose + + # 第二日开盘价分布 + next_open_diff = df.loc[df['code'] == code, 'next_open_diff'].values[0] + if next_open_diff < -3: + low_open_count += 1 + elif next_open_diff > 3: + high_open_count += 1 else: - if saleprice_open_differrange < -5: - normal_open_normal_sale_high_loss_count += 1 - elif saleprice_open_differrange > -5 and saleprice_open_differrange < 0: - normal_open_normal_sale_low_loss_count += 1 - elif saleprice_open_differrange > 0 and saleprice_open_differrange < 5: - normal_open_normal_sale_low_profit_count += 1 - else: - normal_open_normal_sale_high_profit_count += 1 - - - # 组合场景 低收盘-低清仓 低收盘-高清仓 低收盘-正常清仓 正常收盘-低清仓 正常收盘-高清仓 正常收盘-正常清仓 高收盘-低清仓 高收盘-高清仓 高收盘-正常清仓 - if next_close_differrange < -3 : - if saleprice_close_differrange < -3: - low_close_low_sale_count += 1 - elif saleprice_close_differrange > 3: - low_close_high_sale_count += 1 + normal_open_count += 1 + + # 第二日收盘价分布 + next_close_differrange = df.loc[df['code'] == code, 'next_close_differrange'].values[0] + if next_close_differrange < -3: + low_close_count += 1 + elif next_close_differrange > 3: + high_close_count += 1 else: - low_close_normal_sale_count += 1 - - if saleprice_close_differrange < -3: - if saleprice_close_differrange < -5: - low_close_low_sale_high_loss_count += 1 - elif saleprice_close_differrange > -5 and saleprice_close_differrange < 0: - low_close_low_sale_low_loss_count += 1 - elif saleprice_close_differrange > 0 and saleprice_close_differrange < 5: - low_close_low_sale_low_profit_count += 1 - else: - low_close_low_sale_high_profit_count += 1 - elif saleprice_close_differrange > 3: - if saleprice_close_differrange < -5: - low_close_high_sale_high_loss_count += 1 - elif saleprice_close_differrange > -5 and saleprice_close_differrange < 0: - low_close_high_sale_low_loss_count += 1 - elif saleprice_close_differrange > 0 and saleprice_close_differrange < 5: - low_close_high_sale_low_profit_count += 1 - else: - low_close_high_sale_high_profit_count += 1 + normal_close_count += 1 + + # 清仓盈亏分布-开盘清仓 + saleprice_open_differrange = df.loc[df['code'] == code, 'saleprice_open_differrange'].values[0] + if saleprice_open_differrange < -3: # 亏损大于-3 + low_sale_open_count += 1 + elif saleprice_open_differrange > 0: # 盈利大于0 + high_sale_open_count += 1 else: - if saleprice_close_differrange < -5: - low_close_normal_sale_high_loss_count += 1 - elif saleprice_close_differrange > -5 and saleprice_close_differrange < 0: - low_close_normal_sale_low_loss_count += 1 - elif saleprice_close_differrange > 0 and saleprice_close_differrange < 5: - low_close_normal_sale_low_profit_count += 1 - else: - low_close_normal_sale_high_profit_count += 1 + normal_sale_open_count += 1 # 亏损小于-3 - elif next_close_differrange > 3: + # 清仓盈亏分布-收盘清仓 + saleprice_close_differrange = df.loc[df['code'] == code, 'saleprice_close_differrange'].values[0] if saleprice_close_differrange < -3: - high_close_low_sale_count += 1 + low_sale_close_count += 1 elif saleprice_close_differrange > 3: - high_close_high_sale_count += 1 + high_sale_close_count += 1 else: - high_close_normal_sale_count += 1 - - if saleprice_close_differrange < -3: - if saleprice_close_differrange < -5: - high_close_low_sale_high_loss_count += 1 - elif saleprice_close_differrange > -5 and saleprice_close_differrange < 0: - high_close_low_sale_low_loss_count += 1 - elif saleprice_close_differrange > 0 and saleprice_close_differrange < 5: - high_close_low_sale_low_profit_count += 1 + normal_sale_close_count += 1 + + # 组合场景 低开盘-低清仓 低开盘-高清仓 低开盘-正常清仓 正常开盘-低清仓 正常开盘-高清仓 正常开盘-正常清仓 高开盘-低清仓 高开盘-高清仓 高开盘-正常清仓 + if next_open_diff < -3 : + if saleprice_open_differrange < -3: + low_open_low_sale_count += 1 + elif saleprice_open_differrange > 3: + low_open_high_sale_count += 1 else: - high_close_low_sale_high_profit_count += 1 - elif saleprice_close_differrange > 3: - if saleprice_close_differrange < -5: - high_close_high_sale_high_loss_count += 1 - elif saleprice_close_differrange > -5 and saleprice_close_differrange < 0: - high_close_high_sale_low_loss_count += 1 - elif saleprice_close_differrange > 0 and saleprice_close_differrange < 5: - high_close_high_sale_low_profit_count += 1 + low_open_normal_sale_count += 1 + elif next_open_diff > 3: + if saleprice_open_differrange < -3: + high_open_low_sale_count += 1 + elif saleprice_open_differrange > 3: + high_open_high_sale_count += 1 else: - high_close_high_sale_high_profit_count += 1 + high_open_normal_sale_count += 1 else: - if saleprice_close_differrange < -5: - high_close_normal_sale_high_loss_count += 1 - elif saleprice_close_differrange > -5 and saleprice_close_differrange < 0: - high_close_normal_sale_low_loss_count += 1 - elif saleprice_close_differrange > 0 and saleprice_close_differrange < 5: - high_close_normal_sale_low_profit_count += 1 + if saleprice_open_differrange < -3: + normal_open_low_sale_count += 1 + elif saleprice_open_differrange > 3: + normal_open_high_sale_count += 1 else: - high_close_normal_sale_high_profit_count += 1 - else: - if saleprice_close_differrange < -3: - normal_close_low_sale_count += 1 - elif saleprice_close_differrange > 3: - normal_close_high_sale_count += 1 - else: - normal_close_normal_sale_count += 1 - - if saleprice_close_differrange < -3: - if saleprice_close_differrange < -5: - normal_close_low_sale_high_loss_count += 1 - elif saleprice_close_differrange > -5 and saleprice_close_differrange < 0: - normal_close_low_sale_low_loss_count += 1 - elif saleprice_close_differrange > 0 and saleprice_close_differrange < 5: - normal_close_low_sale_low_profit_count += 1 + normal_open_normal_sale_count += 1 + + # 组合场景 低收盘-低清仓 低收盘-高清仓 低收盘-正常清仓 正常收盘-低清仓 正常收盘-高清仓 正常收盘-正常清仓 高收盘-低清仓 高收盘-高清仓 高收盘-正常清仓 + if next_close_differrange < -3 : + if saleprice_close_differrange < -3: + low_close_low_sale_count += 1 + elif saleprice_close_differrange > 3: + low_close_high_sale_count += 1 else: - normal_close_low_sale_high_profit_count += 1 - elif saleprice_close_differrange > 3: - if saleprice_close_differrange < -5: - normal_close_high_sale_high_loss_count += 1 - elif saleprice_close_differrange > -5 and saleprice_close_differrange < 0: - normal_close_high_sale_low_loss_count += 1 - elif saleprice_close_differrange > 0 and saleprice_close_differrange < 5: - normal_close_high_sale_low_profit_count += 1 + low_close_normal_sale_count += 1 + elif next_close_differrange > 3: + if saleprice_close_differrange < -3: + high_close_low_sale_count += 1 + elif saleprice_close_differrange > 3: + high_close_high_sale_count += 1 else: - normal_close_high_sale_high_profit_count += 1 + high_close_normal_sale_count += 1 else: - if saleprice_close_differrange < -5: - normal_close_normal_sale_high_loss_count += 1 - elif saleprice_close_differrange > -5 and saleprice_close_differrange < 0: - normal_close_normal_sale_low_loss_count += 1 - elif saleprice_close_differrange > 0 and saleprice_close_differrange < 5: - normal_close_normal_sale_low_profit_count += 1 + if saleprice_close_differrange < -3: + normal_close_low_sale_count += 1 + elif saleprice_close_differrange > 3: + normal_close_high_sale_count += 1 else: - normal_close_normal_sale_high_profit_count += 1 - else: - nextdate_str = date_list[i+1].strftime('%Y-%m-%d')#买入日 - saledate_str = date_list[i+2].strftime('%Y-%m-%d')#卖出日 - - print(f'正在处理{date_str}的数据') - - # 执行SQL查询(这只是一个示例,你需要根据你的实际需求和数据库结构进行修改) - query = f'select code,open,close,high,low, volumn,amount,differrange10,differrange20,differrange60 from stocks where islimit = "是" and trade_day = "{date_str}"' - df = pd.read_sql_query(query, engine) - limit_list = df['code'].tolist() - for code in limit_list: - # 总统计数 - total_count += 1 - print(f'正在处理{date_str} - {code}的数据') - query = f'select code,open,close,differrange from stocks where trade_day = "{nextdate_str}" and code = "{code}"' - dfnext = pd.read_sql_query(query,engine) - - if dfnext.size <= 0: - total_count -= 1 - continue - # 处理数据... - open = df.loc[df['code'] == code, 'open'].values[0] - nextopen = dfnext.loc[dfnext['code'] == code, 'open'].values[0] - nextclose = dfnext.loc[dfnext['code'] == code, 'close'].values[0] - nextdifferrange = dfnext.loc[dfnext['code'] == code, 'differrange'].values[0] - - df.loc[df['code'] == code, 'next_open'] = nextopen - df.loc[df['code'] == code, 'next_open_diff'] = 100 * (nextopen - open)/open - df.loc[df['code'] == code, 'next_close'] = nextclose - df.loc[df['code'] == code, 'next_close_differrange'] = nextdifferrange - - query = f'select code,open,close,differrange from stocks where trade_day = "{saledate_str}" and code = "{code}"' - dfsale = pd.read_sql_query(query,engine) - - if dfsale.size <= 0: - total_count -= 1 - continue - - saleopen = dfsale.loc[dfsale['code'] == code, 'open'].values[0] - saleclose = dfsale.loc[dfsale['code'] == code, 'close'].values[0] - - df.loc[df['code'] == code, 'saleprice_open'] = saleopen - df.loc[df['code'] == code, 'saleprice_close'] = saleclose - # 清仓盈亏 - df.loc[df['code'] == code, 'saleprice_open_differrange'] = 100 * (saleopen - nextopen)/nextopen - df.loc[df['code'] == code, 'saleprice_close_differrange'] = 100 * (saleclose - nextclose)/nextclose - - # 第二日开盘价分布 - next_open_diff = df.loc[df['code'] == code, 'next_open_diff'].values[0] - if next_open_diff < -3: - low_open_count += 1 - elif next_open_diff > 3: - high_open_count += 1 - else: - normal_open_count += 1 - - # 第二日收盘价分布 - next_close_differrange = df.loc[df['code'] == code, 'next_close_differrange'].values[0] - if next_close_differrange < -3: - low_close_count += 1 - elif next_close_differrange > 3: - high_close_count += 1 - else: - normal_close_count += 1 - - # 清仓盈亏分布-开盘清仓 - saleprice_open_differrange = df.loc[df['code'] == code, 'saleprice_open_differrange'].values[0] - if saleprice_open_differrange < -3: # 亏损大于-3 - low_sale_open_count += 1 - elif saleprice_open_differrange > 0: # 盈利大于0 - high_sale_open_count += 1 - else: - normal_sale_open_count += 1 # 亏损小于-3 - - # 清仓盈亏分布-收盘清仓 - saleprice_close_differrange = df.loc[df['code'] == code, 'saleprice_close_differrange'].values[0] - if saleprice_close_differrange < -3: - low_sale_close_count += 1 - elif saleprice_close_differrange > 3: - high_sale_close_count += 1 - else: - normal_sale_close_count += 1 - - # 组合场景 低开盘-低清仓 低开盘-高清仓 低开盘-正常清仓 正常开盘-低清仓 正常开盘-高清仓 正常开盘-正常清仓 高开盘-低清仓 高开盘-高清仓 高开盘-正常清仓 - if next_open_diff < -3 : - if saleprice_open_differrange < -3: - low_open_low_sale_count += 1 - elif saleprice_open_differrange > 3: - low_open_high_sale_count += 1 - else: - low_open_normal_sale_count += 1 - elif next_open_diff > 3: - if saleprice_open_differrange < -3: - high_open_low_sale_count += 1 - elif saleprice_open_differrange > 3: - high_open_high_sale_count += 1 - else: - high_open_normal_sale_count += 1 - else: - if saleprice_open_differrange < -3: - normal_open_low_sale_count += 1 - elif saleprice_open_differrange > 3: - normal_open_high_sale_count += 1 - else: - normal_open_normal_sale_count += 1 - - # 组合场景 低收盘-低清仓 低收盘-高清仓 低收盘-正常清仓 正常收盘-低清仓 正常收盘-高清仓 正常收盘-正常清仓 高收盘-低清仓 高收盘-高清仓 高收盘-正常清仓 - if next_close_differrange < -3 : - if saleprice_close_differrange < -3: - low_close_low_sale_count += 1 - elif saleprice_close_differrange > 3: - low_close_high_sale_count += 1 - else: - low_close_normal_sale_count += 1 - elif next_close_differrange > 3: - if saleprice_close_differrange < -3: - high_close_low_sale_count += 1 - elif saleprice_close_differrange > 3: - high_close_high_sale_count += 1 - else: - high_close_normal_sale_count += 1 - else: - if saleprice_close_differrange < -3: - normal_close_low_sale_count += 1 - elif saleprice_close_differrange > 3: - normal_close_high_sale_count += 1 - else: - normal_close_normal_sale_count += 1 - - # 将数据框保存到磁盘 - df.to_csv(f'D:/calculate_data/{date_str}_stock.csv', index=False) - # # 从磁盘加载数据框 - # df = pd.read_csv('df_distribution.csv') - -print(f'总统计数:{total_count}') -print(f'低于-3%的开盘价计数:{low_open_count}') -print(f'正常开盘,介于-3%和3%之间的计数:{normal_open_count}') -print(f'高于3%的开盘价计数:{high_open_count}') -print(f'低于-3%的收盘价计数:{low_close_count}') -print(f'正常收盘,介于-3%和3%之间的计数:{normal_close_count}') -print(f'高于3%的收盘价计数:{high_close_count}') -print(f'低开盘-低清仓:{low_open_low_sale_count}') -print(f'低开盘-高清仓:{low_open_high_sale_count}') -print(f'低开盘-正常清仓:{low_open_normal_sale_count}') -print(f'正常开盘-低清仓:{normal_open_low_sale_count}') -print(f'正常开盘-高清仓:{normal_open_high_sale_count}') -print(f'正常开盘-正常清仓:{normal_open_normal_sale_count}') -print(f'高开盘-低清仓:{high_open_low_sale_count}') -print(f'高开盘-高清仓:{high_open_high_sale_count}') -print(f'高开盘-正常清仓:{high_open_normal_sale_count}') -print(f'低收盘-低清仓:{low_close_low_sale_count}') -print(f'低收盘-高清仓:{low_close_high_sale_count}') -print(f'低收盘-正常清仓:{low_close_normal_sale_count}') -print(f'正常收盘-低清仓:{normal_close_low_sale_count}') -print(f'正常收盘-高清仓:{normal_close_high_sale_count}') -print(f'正常收盘-正常清仓:{normal_close_normal_sale_count}') -print(f'高收盘-低清仓:{high_close_low_sale_count}') -print(f'高收盘-高清仓:{high_close_high_sale_count}') -print(f'高收盘-正常清仓:{high_close_normal_sale_count}') -print(f'低开盘-低清仓-盈利高于5%:{low_open_low_sale_high_profit_count}') -print(f'低开盘-低清仓-盈利低于5%:{low_open_low_sale_low_profit_count}') -print(f'低开盘-低清仓-亏损低于5%:{low_open_low_sale_low_loss_count}') -print(f'低开盘-低清仓-亏损高于5%:{low_open_low_sale_high_loss_count}') -print(f'低开盘-高清仓-盈利高于5%:{low_open_high_sale_high_profit_count}') -print(f'低开盘-高清仓-盈利低于5%:{low_open_high_sale_low_profit_count}') -print(f'低开盘-高清仓-亏损低于5%:{low_open_high_sale_low_loss_count}') -print(f'低开盘-高清仓-亏损高于5%:{low_open_high_sale_high_loss_count}') -print(f'低开盘-正常清仓-盈利高于5%:{low_open_normal_sale_high_profit_count}') -print(f'低开盘-正常清仓-盈利低于5%:{low_open_normal_sale_low_profit_count}') -print(f'低开盘-正常清仓-亏损低于5%:{low_open_normal_sale_low_loss_count}') -print(f'低开盘-正常清仓-亏损高于5%:{low_open_normal_sale_high_loss_count}') -print(f'正常开盘-低清仓-盈利高于5%:{normal_open_low_sale_high_profit_count}') -print(f'正常开盘-低清仓-盈利低于5%:{normal_open_low_sale_low_profit_count}') -print(f'正常开盘-低清仓-亏损低于5%:{normal_open_low_sale_low_loss_count}') -print(f'正常开盘-低清仓-亏损高于5%:{normal_open_low_sale_high_loss_count}') -print(f'正常开盘-高清仓-盈利高于5%:{normal_open_high_sale_high_profit_count}') -print(f'正常开盘-高清仓-盈利低于5%:{normal_open_high_sale_low_profit_count}') -print(f'正常开盘-高清仓-亏损低于5%:{normal_open_high_sale_low_loss_count}') -print(f'正常开盘-高清仓-亏损高于5%:{normal_open_high_sale_high_loss_count}') -print(f'正常开盘-正常清仓-盈利高于5%:{normal_open_normal_sale_high_profit_count}') -print(f'正常开盘-正常清仓-盈利低于5%:{normal_open_normal_sale_low_profit_count}') -print(f'正常开盘-正常清仓-亏损低于5%:{normal_open_normal_sale_low_loss_count}') -print(f'正常开盘-正常清仓-亏损高于5%:{normal_open_normal_sale_high_loss_count}') -print(f'高开盘-低清仓-盈利高于5%:{high_open_low_sale_high_profit_count}') -print(f'高开盘-低清仓-盈利低于5%:{high_open_low_sale_low_profit_count}') -print(f'高开盘-低清仓-亏损低于5%:{high_open_low_sale_low_loss_count}') -print(f'高开盘-低清仓-亏损高于5%:{high_open_low_sale_high_loss_count}') -print(f'高开盘-高清仓-盈利高于5%:{high_open_high_sale_high_profit_count}') -print(f'高开盘-高清仓-盈利低于5%:{high_open_high_sale_low_profit_count}') -print(f'高开盘-高清仓-亏损低于5%:{high_open_high_sale_low_loss_count}') -print(f'高开盘-高清仓-亏损高于5%:{high_open_high_sale_high_loss_count}') -print(f'高开盘-正常清仓-盈利高于5%:{high_open_normal_sale_high_profit_count}') -print(f'高开盘-正常清仓-盈利低于5%:{high_open_normal_sale_low_profit_count}') -print(f'高开盘-正常清仓-亏损低于5%:{high_open_normal_sale_low_loss_count}') -print(f'高开盘-正常清仓-亏损高于5%:{high_open_normal_sale_high_loss_count}') -print(f'低收盘-低清仓-盈利高于5%:{low_close_low_sale_high_profit_count}') -print(f'低收盘-低清仓-盈利低于5%:{low_close_low_sale_low_profit_count}') -print(f'低收盘-低清仓-亏损低于5%:{low_close_low_sale_low_loss_count}') -print(f'低收盘-低清仓-亏损高于5%:{low_close_low_sale_high_loss_count}') -print(f'低收盘-高清仓-盈利高于5%:{low_close_high_sale_high_profit_count}') -print(f'低收盘-高清仓-盈利低于5%:{low_close_high_sale_low_profit_count}') -print(f'低收盘-高清仓-亏损低于5%:{low_close_high_sale_low_loss_count}') -print(f'低收盘-高清仓-亏损高于5%:{low_close_high_sale_high_loss_count}') -print(f'低收盘-正常清仓-盈利高于5%:{low_close_normal_sale_high_profit_count}') -print(f'低收盘-正常清仓-盈利低于5%:{low_close_normal_sale_low_profit_count}') -print(f'低收盘-正常清仓-亏损低于5%:{low_close_normal_sale_low_loss_count}') -print(f'低收盘-正常清仓-亏损高于5%:{low_close_normal_sale_high_loss_count}') -print(f'正常收盘-低清仓-盈利高于5%:{normal_close_low_sale_high_profit_count}') -print(f'正常收盘-低清仓-盈利低于5%:{normal_close_low_sale_low_profit_count}') -print(f'正常收盘-低清仓-亏损低于5%:{normal_close_low_sale_low_loss_count}') -print(f'正常收盘-低清仓-亏损高于5%:{normal_close_low_sale_high_loss_count}') -print(f'正常收盘-高清仓-盈利高于5%:{normal_close_high_sale_high_profit_count}') -print(f'正常收盘-高清仓-盈利低于5%:{normal_close_high_sale_low_profit_count}') -print(f'正常收盘-高清仓-亏损低于5%:{normal_close_high_sale_low_loss_count}') -print(f'正常收盘-高清仓-亏损高于5%:{normal_close_high_sale_high_loss_count}') -print(f'正常收盘-正常清仓-盈利高于5%:{normal_close_normal_sale_high_profit_count}') -print(f'正常收盘-正常清仓-盈利低于5%:{normal_close_normal_sale_low_profit_count}') -print(f'正常收盘-正常清仓-亏损低于5%:{normal_close_normal_sale_low_loss_count}') -print(f'正常收盘-正常清仓-亏损高于5%:{normal_close_normal_sale_high_loss_count}') -print(f'高收盘-低清仓-盈利高于5%:{high_close_low_sale_high_profit_count}') -print(f'高收盘-低清仓-盈利低于5%:{high_close_low_sale_low_profit_count}') -print(f'高收盘-低清仓-亏损低于5%:{high_close_low_sale_low_loss_count}') -print(f'高收盘-低清仓-亏损高于5%:{high_close_low_sale_high_loss_count}') -print(f'高收盘-高清仓-盈利高于5%:{high_close_high_sale_high_profit_count}') -print(f'高收盘-高清仓-盈利低于5%:{high_close_high_sale_low_profit_count}') -print(f'高收盘-高清仓-亏损低于5%:{high_close_high_sale_low_loss_count}') -print(f'高收盘-高清仓-亏损高于5%:{high_close_high_sale_high_loss_count}') -print(f'高收盘-正常清仓-盈利高于5%:{high_close_normal_sale_high_profit_count}') -print(f'高收盘-正常清仓-盈利低于5%:{high_close_normal_sale_low_profit_count}') -print(f'高收盘-正常清仓-亏损低于5%:{high_close_normal_sale_low_loss_count}') -print(f'高收盘-正常清仓-亏损高于5%:{high_close_normal_sale_high_loss_count}') - - - -df_distribution = pd.DataFrame({'test':[1]}) -df_distribution['total_count'] = total_count -df_distribution['low_open_count'] = low_open_count -df_distribution['normal_open_count'] = normal_open_count -df_distribution['high_open_count'] = high_open_count -df_distribution['low_close_count'] = low_close_count -df_distribution['normal_close_count'] = normal_close_count -df_distribution['high_close_count'] = high_close_count -df_distribution['low_open_low_sale_count'] = low_open_low_sale_count -df_distribution['low_open_high_sale_count'] = low_open_high_sale_count -df_distribution['low_open_normal_sale_count'] = low_open_normal_sale_count -df_distribution['normal_open_low_sale_count'] = normal_open_low_sale_count -df_distribution['normal_open_high_sale_count'] = normal_open_high_sale_count -df_distribution['normal_open_normal_sale_count'] = normal_open_normal_sale_count -df_distribution['high_open_low_sale_count'] = high_open_low_sale_count -df_distribution['high_open_high_sale_count'] = high_open_high_sale_count -df_distribution['high_open_normal_sale_count'] = high_open_normal_sale_count -df_distribution['low_close_low_sale_count'] = low_close_low_sale_count -df_distribution['low_close_high_sale_count'] = low_close_high_sale_count -df_distribution['low_close_normal_sale_count'] = low_close_normal_sale_count -df_distribution['normal_close_low_sale_count'] = normal_close_low_sale_count -df_distribution['normal_close_high_sale_count'] = normal_close_high_sale_count -df_distribution['normal_close_normal_sale_count'] = normal_close_normal_sale_count -df_distribution['high_close_low_sale_count'] = high_close_low_sale_count -df_distribution['high_close_high_sale_count'] = high_close_high_sale_count -df_distribution['high_close_normal_sale_count'] = high_close_normal_sale_count -df_distribution['low_open_low_sale_high_profit_count'] = low_open_low_sale_high_profit_count -df_distribution['low_open_low_sale_low_profit_count'] = low_open_low_sale_low_profit_count -df_distribution['low_open_low_sale_low_loss_count'] = low_open_low_sale_low_loss_count -df_distribution['low_open_low_sale_high_loss_count'] = low_open_low_sale_high_loss_count -df_distribution['low_open_high_sale_high_profit_count'] = low_open_high_sale_high_profit_count -df_distribution['low_open_high_sale_low_profit_count'] = low_open_high_sale_low_profit_count -df_distribution['low_open_high_sale_low_loss_count'] = low_open_high_sale_low_loss_count -df_distribution['low_open_high_sale_high_loss_count'] = low_open_high_sale_high_loss_count -df_distribution['low_open_normal_sale_high_profit_count'] = low_open_normal_sale_high_profit_count -df_distribution['low_open_normal_sale_low_profit_count'] = low_open_normal_sale_low_profit_count -df_distribution['low_open_normal_sale_low_loss_count'] = low_open_normal_sale_low_loss_count -df_distribution['low_open_normal_sale_high_loss_count'] = low_open_normal_sale_high_loss_count -df_distribution['normal_open_low_sale_high_profit_count'] = normal_open_low_sale_high_profit_count -df_distribution['normal_open_low_sale_low_profit_count'] = normal_open_low_sale_low_profit_count -df_distribution['normal_open_low_sale_low_loss_count'] = normal_open_low_sale_low_loss_count -df_distribution['normal_open_low_sale_high_loss_count'] = normal_open_low_sale_high_loss_count -df_distribution['normal_open_high_sale_high_profit_count'] = normal_open_high_sale_high_profit_count -df_distribution['normal_open_high_sale_low_profit_count'] = normal_open_high_sale_low_profit_count -df_distribution['normal_open_high_sale_low_loss_count'] = normal_open_high_sale_low_loss_count -df_distribution['normal_open_high_sale_high_loss_count'] = normal_open_high_sale_high_loss_count -df_distribution['normal_open_normal_sale_high_profit_count'] = normal_open_normal_sale_high_profit_count -df_distribution['normal_open_normal_sale_low_profit_count'] = normal_open_normal_sale_low_profit_count -df_distribution['normal_open_normal_sale_low_loss_count'] = normal_open_normal_sale_low_loss_count -df_distribution['normal_open_normal_sale_high_loss_count'] = normal_open_normal_sale_high_loss_count -df_distribution['high_open_low_sale_high_profit_count'] = high_open_low_sale_high_profit_count -df_distribution['high_open_low_sale_low_profit_count'] = high_open_low_sale_low_profit_count -df_distribution['high_open_low_sale_low_loss_count'] = high_open_low_sale_low_loss_count -df_distribution['high_open_low_sale_high_loss_count'] = high_open_low_sale_high_loss_count -df_distribution['high_open_high_sale_high_profit_count'] = high_open_high_sale_high_profit_count -df_distribution['high_open_high_sale_low_profit_count'] = high_open_high_sale_low_profit_count -df_distribution['high_open_high_sale_low_loss_count'] = high_open_high_sale_low_loss_count -df_distribution['high_open_high_sale_high_loss_count'] = high_open_high_sale_high_loss_count -df_distribution['high_open_normal_sale_high_profit_count'] = high_open_normal_sale_high_profit_count -df_distribution['high_open_normal_sale_low_profit_count'] = high_open_normal_sale_low_profit_count -df_distribution['high_open_normal_sale_low_loss_count'] = high_open_normal_sale_low_loss_count -df_distribution['high_open_normal_sale_high_loss_count'] = high_open_normal_sale_high_loss_count -df_distribution['low_close_low_sale_high_profit_count'] = low_close_low_sale_high_profit_count -df_distribution['low_close_low_sale_low_profit_count'] = low_close_low_sale_low_profit_count -df_distribution['low_close_low_sale_low_loss_count'] = low_close_low_sale_low_loss_count -df_distribution['low_close_low_sale_high_loss_count'] = low_close_low_sale_high_loss_count -df_distribution['low_close_high_sale_high_profit_count'] = low_close_high_sale_high_profit_count -df_distribution['low_close_high_sale_low_profit_count'] = low_close_high_sale_low_profit_count -df_distribution['low_close_high_sale_low_loss_count'] = low_close_high_sale_low_loss_count -df_distribution['low_close_high_sale_high_loss_count'] = low_close_high_sale_high_loss_count -df_distribution['low_close_normal_sale_high_profit_count'] = low_close_normal_sale_high_profit_count -df_distribution['low_close_normal_sale_low_profit_count'] = low_close_normal_sale_low_profit_count -df_distribution['low_close_normal_sale_low_loss_count'] = low_close_normal_sale_low_loss_count -df_distribution['low_close_normal_sale_high_loss_count'] = low_close_normal_sale_high_loss_count -df_distribution['normal_close_low_sale_high_profit_count'] = normal_close_low_sale_high_profit_count -df_distribution['normal_close_low_sale_low_profit_count'] = normal_close_low_sale_low_profit_count -df_distribution['normal_close_low_sale_low_loss_count'] = normal_close_low_sale_low_loss_count -df_distribution['normal_close_low_sale_high_loss_count'] = normal_close_low_sale_high_loss_count -df_distribution['normal_close_high_sale_high_profit_count'] = normal_close_high_sale_high_profit_count -df_distribution['normal_close_high_sale_low_profit_count'] = normal_close_high_sale_low_profit_count -df_distribution['normal_close_high_sale_low_loss_count'] = normal_close_high_sale_low_loss_count -df_distribution['normal_close_high_sale_high_loss_count'] = normal_close_high_sale_high_loss_count -df_distribution['normal_close_normal_sale_high_profit_count'] = normal_close_normal_sale_high_profit_count -df_distribution['normal_close_normal_sale_low_profit_count'] = normal_close_normal_sale_low_profit_count -df_distribution['normal_close_normal_sale_low_loss_count'] = normal_close_normal_sale_low_loss_count -df_distribution['normal_close_normal_sale_high_loss_count'] = normal_close_normal_sale_high_loss_count -df_distribution['high_close_low_sale_high_profit_count'] = high_close_low_sale_high_profit_count -df_distribution['high_close_low_sale_low_profit_count'] = high_close_low_sale_low_profit_count -df_distribution['high_close_low_sale_low_loss_count'] = high_close_low_sale_low_loss_count -df_distribution['high_close_low_sale_high_loss_count'] = high_close_low_sale_high_loss_count -df_distribution['high_close_high_sale_high_profit_count'] = high_close_high_sale_high_profit_count -df_distribution['high_close_high_sale_low_profit_count'] = high_close_high_sale_low_profit_count -df_distribution['high_close_high_sale_low_loss_count'] = high_close_high_sale_low_loss_count -df_distribution['high_close_high_sale_high_loss_count'] = high_close_high_sale_high_loss_count -df_distribution['high_close_normal_sale_high_profit_count'] = high_close_normal_sale_high_profit_count -df_distribution['high_close_normal_sale_low_profit_count'] = high_close_normal_sale_low_profit_count -df_distribution['high_close_normal_sale_low_loss_count'] = high_close_normal_sale_low_loss_count -df_distribution['high_close_normal_sale_high_loss_count'] = high_close_normal_sale_high_loss_count - - - -# 删除'test'列 -df_distribution = df_distribution.drop(columns=['test']) - -# 创建一个新的图形 -fig, ax = plt.subplots() - -# 创建一个条形图 -df_distribution.plot(kind='bar', ax=ax) - -# 设置图形的标题和轴标签 -ax.set_title('Distribution') -ax.set_xlabel('Category') -ax.set_ylabel('Count') - -# 显示图形 -plt.show() \ No newline at end of file + normal_close_normal_sale_count += 1 + + # 将数据框保存到磁盘 + df.to_csv(f'D:/calculate_data/{date_str}_stock.csv', index=False) + # # 从磁盘加载数据框 + # df = pd.read_csv('df_distribution.csv') + + # print(f'总统计数:{total_count}') + # print(f'低于-3%的开盘价计数:{low_open_count}') + # print(f'正常开盘,介于-3%和3%之间的计数:{normal_open_count}') + # print(f'高于3%的开盘价计数:{high_open_count}') + # print(f'低于-3%的收盘价计数:{low_close_count}') + # print(f'正常收盘,介于-3%和3%之间的计数:{normal_close_count}') + # print(f'高于3%的收盘价计数:{high_close_count}') + # print(f'低开盘-低清仓:{low_open_low_sale_count}') + # print(f'低开盘-高清仓:{low_open_high_sale_count}') + # print(f'低开盘-正常清仓:{low_open_normal_sale_count}') + # print(f'正常开盘-低清仓:{normal_open_low_sale_count}') + # print(f'正常开盘-高清仓:{normal_open_high_sale_count}') + # print(f'正常开盘-正常清仓:{normal_open_normal_sale_count}') + # print(f'高开盘-低清仓:{high_open_low_sale_count}') + # print(f'高开盘-高清仓:{high_open_high_sale_count}') + # print(f'高开盘-正常清仓:{high_open_normal_sale_count}') + # print(f'低收盘-低清仓:{low_close_low_sale_count}') + # print(f'低收盘-高清仓:{low_close_high_sale_count}') + # print(f'低收盘-正常清仓:{low_close_normal_sale_count}') + # print(f'正常收盘-低清仓:{normal_close_low_sale_count}') + # print(f'正常收盘-高清仓:{normal_close_high_sale_count}') + # print(f'正常收盘-正常清仓:{normal_close_normal_sale_count}') + # print(f'高收盘-低清仓:{high_close_low_sale_count}') + # print(f'高收盘-高清仓:{high_close_high_sale_count}') + # print(f'高收盘-正常清仓:{high_close_normal_sale_count}') + # print(f'低开盘-低清仓-盈利高于5%:{low_open_low_sale_high_profit_count}') + # print(f'低开盘-低清仓-盈利低于5%:{low_open_low_sale_low_profit_count}') + # print(f'低开盘-低清仓-亏损低于5%:{low_open_low_sale_low_loss_count}') + # print(f'低开盘-低清仓-亏损高于5%:{low_open_low_sale_high_loss_count}') + # print(f'低开盘-高清仓-盈利高于5%:{low_open_high_sale_high_profit_count}') + # print(f'低开盘-高清仓-盈利低于5%:{low_open_high_sale_low_profit_count}') + # print(f'低开盘-高清仓-亏损低于5%:{low_open_high_sale_low_loss_count}') + # print(f'低开盘-高清仓-亏损高于5%:{low_open_high_sale_high_loss_count}') + # print(f'低开盘-正常清仓-盈利高于5%:{low_open_normal_sale_high_profit_count}') + # print(f'低开盘-正常清仓-盈利低于5%:{low_open_normal_sale_low_profit_count}') + # print(f'低开盘-正常清仓-亏损低于5%:{low_open_normal_sale_low_loss_count}') + # print(f'低开盘-正常清仓-亏损高于5%:{low_open_normal_sale_high_loss_count}') + # print(f'正常开盘-低清仓-盈利高于5%:{normal_open_low_sale_high_profit_count}') + # print(f'正常开盘-低清仓-盈利低于5%:{normal_open_low_sale_low_profit_count}') + # print(f'正常开盘-低清仓-亏损低于5%:{normal_open_low_sale_low_loss_count}') + # print(f'正常开盘-低清仓-亏损高于5%:{normal_open_low_sale_high_loss_count}') + # print(f'正常开盘-高清仓-盈利高于5%:{normal_open_high_sale_high_profit_count}') + # print(f'正常开盘-高清仓-盈利低于5%:{normal_open_high_sale_low_profit_count}') + # print(f'正常开盘-高清仓-亏损低于5%:{normal_open_high_sale_low_loss_count}') + # print(f'正常开盘-高清仓-亏损高于5%:{normal_open_high_sale_high_loss_count}') + # print(f'正常开盘-正常清仓-盈利高于5%:{normal_open_normal_sale_high_profit_count}') + # print(f'正常开盘-正常清仓-盈利低于5%:{normal_open_normal_sale_low_profit_count}') + # print(f'正常开盘-正常清仓-亏损低于5%:{normal_open_normal_sale_low_loss_count}') + # print(f'正常开盘-正常清仓-亏损高于5%:{normal_open_normal_sale_high_loss_count}') + # print(f'高开盘-低清仓-盈利高于5%:{high_open_low_sale_high_profit_count}') + # print(f'高开盘-低清仓-盈利低于5%:{high_open_low_sale_low_profit_count}') + # print(f'高开盘-低清仓-亏损低于5%:{high_open_low_sale_low_loss_count}') + # print(f'高开盘-低清仓-亏损高于5%:{high_open_low_sale_high_loss_count}') + # print(f'高开盘-高清仓-盈利高于5%:{high_open_high_sale_high_profit_count}') + # print(f'高开盘-高清仓-盈利低于5%:{high_open_high_sale_low_profit_count}') + # print(f'高开盘-高清仓-亏损低于5%:{high_open_high_sale_low_loss_count}') + # print(f'高开盘-高清仓-亏损高于5%:{high_open_high_sale_high_loss_count}') + # print(f'高开盘-正常清仓-盈利高于5%:{high_open_normal_sale_high_profit_count}') + # print(f'高开盘-正常清仓-盈利低于5%:{high_open_normal_sale_low_profit_count}') + # print(f'高开盘-正常清仓-亏损低于5%:{high_open_normal_sale_low_loss_count}') + # print(f'高开盘-正常清仓-亏损高于5%:{high_open_normal_sale_high_loss_count}') + # print(f'低收盘-低清仓-盈利高于5%:{low_close_low_sale_high_profit_count}') + # print(f'低收盘-低清仓-盈利低于5%:{low_close_low_sale_low_profit_count}') + # print(f'低收盘-低清仓-亏损低于5%:{low_close_low_sale_low_loss_count}') + # print(f'低收盘-低清仓-亏损高于5%:{low_close_low_sale_high_loss_count}') + # print(f'低收盘-高清仓-盈利高于5%:{low_close_high_sale_high_profit_count}') + # print(f'低收盘-高清仓-盈利低于5%:{low_close_high_sale_low_profit_count}') + # print(f'低收盘-高清仓-亏损低于5%:{low_close_high_sale_low_loss_count}') + # print(f'低收盘-高清仓-亏损高于5%:{low_close_high_sale_high_loss_count}') + # print(f'低收盘-正常清仓-盈利高于5%:{low_close_normal_sale_high_profit_count}') + # print(f'低收盘-正常清仓-盈利低于5%:{low_close_normal_sale_low_profit_count}') + # print(f'低收盘-正常清仓-亏损低于5%:{low_close_normal_sale_low_loss_count}') + # print(f'低收盘-正常清仓-亏损高于5%:{low_close_normal_sale_high_loss_count}') + # print(f'正常收盘-低清仓-盈利高于5%:{normal_close_low_sale_high_profit_count}') + # print(f'正常收盘-低清仓-盈利低于5%:{normal_close_low_sale_low_profit_count}') + # print(f'正常收盘-低清仓-亏损低于5%:{normal_close_low_sale_low_loss_count}') + # print(f'正常收盘-低清仓-亏损高于5%:{normal_close_low_sale_high_loss_count}') + # print(f'正常收盘-高清仓-盈利高于5%:{normal_close_high_sale_high_profit_count}') + # print(f'正常收盘-高清仓-盈利低于5%:{normal_close_high_sale_low_profit_count}') + # print(f'正常收盘-高清仓-亏损低于5%:{normal_close_high_sale_low_loss_count}') + # print(f'正常收盘-高清仓-亏损高于5%:{normal_close_high_sale_high_loss_count}') + # print(f'正常收盘-正常清仓-盈利高于5%:{normal_close_normal_sale_high_profit_count}') + # print(f'正常收盘-正常清仓-盈利低于5%:{normal_close_normal_sale_low_profit_count}') + # print(f'正常收盘-正常清仓-亏损低于5%:{normal_close_normal_sale_low_loss_count}') + # print(f'正常收盘-正常清仓-亏损高于5%:{normal_close_normal_sale_high_loss_count}') + # print(f'高收盘-低清仓-盈利高于5%:{high_close_low_sale_high_profit_count}') + # print(f'高收盘-低清仓-盈利低于5%:{high_close_low_sale_low_profit_count}') + # print(f'高收盘-低清仓-亏损低于5%:{high_close_low_sale_low_loss_count}') + # print(f'高收盘-低清仓-亏损高于5%:{high_close_low_sale_high_loss_count}') + # print(f'高收盘-高清仓-盈利高于5%:{high_close_high_sale_high_profit_count}') + # print(f'高收盘-高清仓-盈利低于5%:{high_close_high_sale_low_profit_count}') + # print(f'高收盘-高清仓-亏损低于5%:{high_close_high_sale_low_loss_count}') + # print(f'高收盘-高清仓-亏损高于5%:{high_close_high_sale_high_loss_count}') + # print(f'高收盘-正常清仓-盈利高于5%:{high_close_normal_sale_high_profit_count}') + # print(f'高收盘-正常清仓-盈利低于5%:{high_close_normal_sale_low_profit_count}') + # print(f'高收盘-正常清仓-亏损低于5%:{high_close_normal_sale_low_loss_count}') + # print(f'高收盘-正常清仓-亏损高于5%:{high_close_normal_sale_high_loss_count}') + + # df_distribution = pd.DataFrame({'test':[1]}) + # df_distribution['total_count'] = total_count + # df_distribution['low_open_count'] = low_open_count + # df_distribution['normal_open_count'] = normal_open_count + # df_distribution['high_open_count'] = high_open_count + # df_distribution['low_close_count'] = low_close_count + # df_distribution['normal_close_count'] = normal_close_count + # df_distribution['high_close_count'] = high_close_count + # df_distribution['low_open_low_sale_count'] = low_open_low_sale_count + # df_distribution['low_open_high_sale_count'] = low_open_high_sale_count + # df_distribution['low_open_normal_sale_count'] = low_open_normal_sale_count + # df_distribution['normal_open_low_sale_count'] = normal_open_low_sale_count + # df_distribution['normal_open_high_sale_count'] = normal_open_high_sale_count + # df_distribution['normal_open_normal_sale_count'] = normal_open_normal_sale_count + # df_distribution['high_open_low_sale_count'] = high_open_low_sale_count + # df_distribution['high_open_high_sale_count'] = high_open_high_sale_count + # df_distribution['high_open_normal_sale_count'] = high_open_normal_sale_count + # df_distribution['low_close_low_sale_count'] = low_close_low_sale_count + # df_distribution['low_close_high_sale_count'] = low_close_high_sale_count + # df_distribution['low_close_normal_sale_count'] = low_close_normal_sale_count + # df_distribution['normal_close_low_sale_count'] = normal_close_low_sale_count + # df_distribution['normal_close_high_sale_count'] = normal_close_high_sale_count + # df_distribution['normal_close_normal_sale_count'] = normal_close_normal_sale_count + # df_distribution['high_close_low_sale_count'] = high_close_low_sale_count + # df_distribution['high_close_high_sale_count'] = high_close_high_sale_count + # df_distribution['high_close_normal_sale_count'] = high_close_normal_sale_count + # df_distribution['low_open_low_sale_high_profit_count'] = low_open_low_sale_high_profit_count + # df_distribution['low_open_low_sale_low_profit_count'] = low_open_low_sale_low_profit_count + # df_distribution['low_open_low_sale_low_loss_count'] = low_open_low_sale_low_loss_count + # df_distribution['low_open_low_sale_high_loss_count'] = low_open_low_sale_high_loss_count + # df_distribution['low_open_high_sale_high_profit_count'] = low_open_high_sale_high_profit_count + # df_distribution['low_open_high_sale_low_profit_count'] = low_open_high_sale_low_profit_count + # df_distribution['low_open_high_sale_low_loss_count'] = low_open_high_sale_low_loss_count + # df_distribution['low_open_high_sale_high_loss_count'] = low_open_high_sale_high_loss_count + # df_distribution['low_open_normal_sale_high_profit_count'] = low_open_normal_sale_high_profit_count + # df_distribution['low_open_normal_sale_low_profit_count'] = low_open_normal_sale_low_profit_count + # df_distribution['low_open_normal_sale_low_loss_count'] = low_open_normal_sale_low_loss_count + # df_distribution['low_open_normal_sale_high_loss_count'] = low_open_normal_sale_high_loss_count + # df_distribution['normal_open_low_sale_high_profit_count'] = normal_open_low_sale_high_profit_count + # df_distribution['normal_open_low_sale_low_profit_count'] = normal_open_low_sale_low_profit_count + # df_distribution['normal_open_low_sale_low_loss_count'] = normal_open_low_sale_low_loss_count + # df_distribution['normal_open_low_sale_high_loss_count'] = normal_open_low_sale_high_loss_count + # df_distribution['normal_open_high_sale_high_profit_count'] = normal_open_high_sale_high_profit_count + # df_distribution['normal_open_high_sale_low_profit_count'] = normal_open_high_sale_low_profit_count + # df_distribution['normal_open_high_sale_low_loss_count'] = normal_open_high_sale_low_loss_count + # df_distribution['normal_open_high_sale_high_loss_count'] = normal_open_high_sale_high_loss_count + # df_distribution['normal_open_normal_sale_high_profit_count'] = normal_open_normal_sale_high_profit_count + # df_distribution['normal_open_normal_sale_low_profit_count'] = normal_open_normal_sale_low_profit_count + # df_distribution['normal_open_normal_sale_low_loss_count'] = normal_open_normal_sale_low_loss_count + # df_distribution['normal_open_normal_sale_high_loss_count'] = normal_open_normal_sale_high_loss_count + # df_distribution['high_open_low_sale_high_profit_count'] = high_open_low_sale_high_profit_count + # df_distribution['high_open_low_sale_low_profit_count'] = high_open_low_sale_low_profit_count + # df_distribution['high_open_low_sale_low_loss_count'] = high_open_low_sale_low_loss_count + # df_distribution['high_open_low_sale_high_loss_count'] = high_open_low_sale_high_loss_count + # df_distribution['high_open_high_sale_high_profit_count'] = high_open_high_sale_high_profit_count + # df_distribution['high_open_high_sale_low_profit_count'] = high_open_high_sale_low_profit_count + # df_distribution['high_open_high_sale_low_loss_count'] = high_open_high_sale_low_loss_count + # df_distribution['high_open_high_sale_high_loss_count'] = high_open_high_sale_high_loss_count + # df_distribution['high_open_normal_sale_high_profit_count'] = high_open_normal_sale_high_profit_count + # df_distribution['high_open_normal_sale_low_profit_count'] = high_open_normal_sale_low_profit_count + # df_distribution['high_open_normal_sale_low_loss_count'] = high_open_normal_sale_low_loss_count + # df_distribution['high_open_normal_sale_high_loss_count'] = high_open_normal_sale_high_loss_count + # df_distribution['low_close_low_sale_high_profit_count'] = low_close_low_sale_high_profit_count + # df_distribution['low_close_low_sale_low_profit_count'] = low_close_low_sale_low_profit_count + # df_distribution['low_close_low_sale_low_loss_count'] = low_close_low_sale_low_loss_count + # df_distribution['low_close_low_sale_high_loss_count'] = low_close_low_sale_high_loss_count + # df_distribution['low_close_high_sale_high_profit_count'] = low_close_high_sale_high_profit_count + # df_distribution['low_close_high_sale_low_profit_count'] = low_close_high_sale_low_profit_count + # df_distribution['low_close_high_sale_low_loss_count'] = low_close_high_sale_low_loss_count + # df_distribution['low_close_high_sale_high_loss_count'] = low_close_high_sale_high_loss_count + # df_distribution['low_close_normal_sale_high_profit_count'] = low_close_normal_sale_high_profit_count + # df_distribution['low_close_normal_sale_low_profit_count'] = low_close_normal_sale_low_profit_count + # df_distribution['low_close_normal_sale_low_loss_count'] = low_close_normal_sale_low_loss_count + # df_distribution['low_close_normal_sale_high_loss_count'] = low_close_normal_sale_high_loss_count + # df_distribution['normal_close_low_sale_high_profit_count'] = normal_close_low_sale_high_profit_count + # df_distribution['normal_close_low_sale_low_profit_count'] = normal_close_low_sale_low_profit_count + # df_distribution['normal_close_low_sale_low_loss_count'] = normal_close_low_sale_low_loss_count + # df_distribution['normal_close_low_sale_high_loss_count'] = normal_close_low_sale_high_loss_count + # df_distribution['normal_close_high_sale_high_profit_count'] = normal_close_high_sale_high_profit_count + # df_distribution['normal_close_high_sale_low_profit_count'] = normal_close_high_sale_low_profit_count + # df_distribution['normal_close_high_sale_low_loss_count'] = normal_close_high_sale_low_loss_count + # df_distribution['normal_close_high_sale_high_loss_count'] = normal_close_high_sale_high_loss_count + # df_distribution['normal_close_normal_sale_high_profit_count'] = normal_close_normal_sale_high_profit_count + # df_distribution['normal_close_normal_sale_low_profit_count'] = normal_close_normal_sale_low_profit_count + # df_distribution['normal_close_normal_sale_low_loss_count'] = normal_close_normal_sale_low_loss_count + # df_distribution['normal_close_normal_sale_high_loss_count'] = normal_close_normal_sale_high_loss_count + # df_distribution['high_close_low_sale_high_profit_count'] = high_close_low_sale_high_profit_count + # df_distribution['high_close_low_sale_low_profit_count'] = high_close_low_sale_low_profit_count + # df_distribution['high_close_low_sale_low_loss_count'] = high_close_low_sale_low_loss_count + # df_distribution['high_close_low_sale_high_loss_count'] = high_close_low_sale_high_loss_count + # df_distribution['high_close_high_sale_high_profit_count'] = high_close_high_sale_high_profit_count + # df_distribution['high_close_high_sale_low_profit_count'] = high_close_high_sale_low_profit_count + # df_distribution['high_close_high_sale_low_loss_count'] = high_close_high_sale_low_loss_count + # df_distribution['high_close_high_sale_high_loss_count'] = high_close_high_sale_high_loss_count + # df_distribution['high_close_normal_sale_high_profit_count'] = high_close_normal_sale_high_profit_count + # df_distribution['high_close_normal_sale_low_profit_count'] = high_close_normal_sale_low_profit_count + # df_distribution['high_close_normal_sale_low_loss_count'] = high_close_normal_sale_low_loss_count + # df_distribution['high_close_normal_sale_high_loss_count'] = high_close_normal_sale_high_loss_count + + + + # # 删除'test'列 + # df_distribution = df_distribution.drop(columns=['test']) + + # # 创建一个新的图形 + # fig, ax = plt.subplots() + + # # 创建一个条形图 + # df_distribution.plot(kind='bar', ax=ax) + + # # 设置图形的标题和轴标签 + # ax.set_title('Distribution') + # ax.set_xlabel('Category') + # ax.set_ylabel('Count') + + # # 显示图形 + # plt.show() + + print(f'总统计数:{counters["total"]}') + # 买入日的开盘价分布 + print(f'买入日的开盘价低于-6%的开盘价计数:{counters["open"]["low_over_6"]}') + print(f'买入日的开盘价介于-6%和-3%之间的开盘价计数:{counters["open"]["low_6_to_3"]}') + print(f'买入日的开盘价介于-3%和0%之间的开盘价计数:{counters["open"]["low_3_to_0"]}') + print(f'买入日的开盘价介于0%和3%之间的开盘价计数:{counters["open"]["high_0_to_3"]}') + print(f'买入日的开盘价介于3%和6%之间的开盘价计数:{counters["open"]["high_3_to_6"]}') + print(f'买入日的开盘价高于6%的开盘价计数:{counters["open"]["high_over_6"]}') + # 买入日的收盘价分布 + print(f'买入日的收盘价低于-6%的收盘价计数:{counters["close"]["low_over_6"]}') + print(f'买入日的收盘价介于-6%和-3%之间的收盘价计数:{counters["close"]["low_6_to_3"]}') + print(f'买入日的收盘价介于-3%和0%之间的收盘价计数:{counters["close"]["low_3_to_0"]}') + print(f'买入日的收盘价介于0%和3%之间的收盘价计数:{counters["close"]["high_0_to_3"]}') + print(f'买入日的收盘价介于3%和6%之间的收盘价计数:{counters["close"]["high_3_to_6"]}') + print(f'买入日的收盘价高于6%的收盘价计数:{counters["close"]["high_over_6"]}') + # 清仓日的开盘价分布 + print(f'清仓日的开盘价低于-6%的开盘价计数:{counters["sale_open"]["low_over_6"]}') + print(f'清仓日的开盘价介于-6%和-3%之间的开盘价计数:{counters["sale_open"]["low_6_to_3"]}') + print(f'清仓日的开盘价介于-3%和0%之间的开盘价计数:{counters["sale_open"]["low_3_to_0"]}') + print(f'清仓日的开盘价介于0%和3%之间的开盘价计数:{counters["sale_open"]["high_0_to_3"]}') + print(f'清仓日的开盘价介于3%和6%之间的开盘价计数:{counters["sale_open"]["high_3_to_6"]}') + print(f'清仓日的开盘价高于6%的开盘价计数:{counters["sale_open"]["high_over_6"]}') + # 清仓日的收盘价分布 + print(f'清仓日的收盘价低于-6%的收盘价计数:{counters["sale_close"]["low_over_6"]}') + print(f'清仓日的收盘价介于-6%和-3%之间的收盘价计数:{counters["sale_close"]["low_6_to_3"]}') + print(f'清仓日的收盘价介于-3%和0%之间的收盘价计数:{counters["sale_close"]["low_3_to_0"]}') + print(f'清仓日的收盘价介于0%和3%之间的收盘价计数:{counters["sale_close"]["high_0_to_3"]}') + print(f'清仓日的收盘价介于3%和6%之间的收盘价计数:{counters["sale_close"]["high_3_to_6"]}') + print(f'清仓日的收盘价高于6%的收盘价计数:{counters["sale_close"]["high_over_6"]}') + # 组合场景: 开盘建仓 清仓日开盘清仓 盈亏分布 + print(f'# 组合场景: 开盘建仓 清仓日开盘清仓 盈亏分布') + print(f'小于-6开盘,小于-6清仓 !!! 亏损大于6:{counters["scenarios"]["low_over_6_open_low_over_6_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_over_6_open_low_over_6_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_over_6_open_low_over_6_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_over_6_open_low_over_6_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_over_6_open_low_over_6_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_over_6_open_low_over_6_open_sale"]["profit_over_6"]}') + print(f'小于-6开盘,大于-6小于-3清仓 !!! 亏损大于6:{counters["scenarios"]["low_over_6_open_low_6_to_3_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_over_6_open_low_6_to_3_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_over_6_open_low_6_to_3_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_over_6_open_low_6_to_3_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_over_6_open_low_6_to_3_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_over_6_open_low_6_to_3_open_sale"]["profit_over_6"]}') + print(f'小于-6开盘,大于-3小于0清仓 !!! 亏损大于6:{counters["scenarios"]["low_over_6_open_low_3_to_0_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_over_6_open_low_3_to_0_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_over_6_open_low_3_to_0_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_over_6_open_low_3_to_0_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_over_6_open_low_3_to_0_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_over_6_open_low_3_to_0_open_sale"]["profit_over_6"]}') + print(f'小于-6开盘,大于0小于3清仓 !!! 亏损大于6:{counters["scenarios"]["low_over_6_open_high_0_to_3_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_over_6_open_high_0_to_3_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_over_6_open_high_0_to_3_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_over_6_open_high_0_to_3_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_over_6_open_high_0_to_3_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_over_6_open_high_0_to_3_open_sale"]["profit_over_6"]}') + print(f'小于-6开盘,大于3小于6清仓 !!! 亏损大于6:{counters["scenarios"]["low_over_6_open_high_3_to_6_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_over_6_open_high_3_to_6_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_over_6_open_high_3_to_6_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_over_6_open_high_3_to_6_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_over_6_open_high_3_to_6_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_over_6_open_high_3_to_6_open_sale"]["profit_over_6"]}') + print(f'小于-6开盘,大于6清仓 !!! 亏损大于6:{counters["scenarios"]["low_over_6_open_high_over_6_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_over_6_open_high_over_6_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_over_6_open_high_over_6_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_over_6_open_high_over_6_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_over_6_open_high_over_6_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_over_6_open_high_over_6_open_sale"]["profit_over_6"]}') + print(f'大于-6小于-3开盘,小于-6清仓 !!! 亏损大于6:{counters["scenarios"]["low_6_to_3_open_low_over_6_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_6_to_3_open_low_over_6_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_6_to_3_open_low_over_6_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_6_to_3_open_low_over_6_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_6_to_3_open_low_over_6_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_6_to_3_open_low_over_6_open_sale"]["profit_over_6"]}') + print(f'大于-6小于-3开盘,大于-6小于-3清仓 !!! 亏损大于6:{counters["scenarios"]["low_6_to_3_open_low_6_to_3_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_6_to_3_open_low_6_to_3_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_6_to_3_open_low_6_to_3_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_6_to_3_open_low_6_to_3_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_6_to_3_open_low_6_to_3_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_6_to_3_open_low_6_to_3_open_sale"]["profit_over_6"]}') + print(f'大于-6小于-3开盘,大于-3小于0清仓 !!! 亏损大于6:{counters["scenarios"]["low_6_to_3_open_low_3_to_0_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_6_to_3_open_low_3_to_0_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_6_to_3_open_low_3_to_0_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_6_to_3_open_low_3_to_0_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_6_to_3_open_low_3_to_0_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_6_to_3_open_low_3_to_0_open_sale"]["profit_over_6"]}') + print(f'大于-6小于-3开盘,大于0小于3清仓 !!! 亏损大于6:{counters["scenarios"]["low_6_to_3_open_high_0_to_3_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_6_to_3_open_high_0_to_3_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_6_to_3_open_high_0_to_3_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_6_to_3_open_high_0_to_3_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_6_to_3_open_high_0_to_3_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_6_to_3_open_high_0_to_3_open_sale"]["profit_over_6"]}') + print(f'大于-6小于-3开盘,大于3小于6清仓 !!! 亏损大于6:{counters["scenarios"]["low_6_to_3_open_high_3_to_6_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_6_to_3_open_high_3_to_6_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_6_to_3_open_high_3_to_6_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_6_to_3_open_high_3_to_6_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_6_to_3_open_high_3_to_6_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_6_to_3_open_high_3_to_6_open_sale"]["profit_over_6"]}') + print(f'大于-6小于-3开盘,大于6清仓 !!! 亏损大于6:{counters["scenarios"]["low_6_to_3_open_high_over_6_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_6_to_3_open_high_over_6_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_6_to_3_open_high_over_6_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_6_to_3_open_high_over_6_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_6_to_3_open_high_over_6_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_6_to_3_open_high_over_6_open_sale"]["profit_over_6"]}') + print(f'大于-3小于0开盘,小于-6清仓 !!! 亏损大于6:{counters["scenarios"]["low_3_to_0_open_low_over_6_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_3_to_0_open_low_over_6_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_3_to_0_open_low_over_6_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_3_to_0_open_low_over_6_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_3_to_0_open_low_over_6_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_3_to_0_open_low_over_6_open_sale"]["profit_over_6"]}') + print(f'大于-3小于0开盘,大于-6小于-3清仓 !!! 亏损大于6:{counters["scenarios"]["low_3_to_0_open_low_6_to_3_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_3_to_0_open_low_6_to_3_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_3_to_0_open_low_6_to_3_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_3_to_0_open_low_6_to_3_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_3_to_0_open_low_6_to_3_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_3_to_0_open_low_6_to_3_open_sale"]["profit_over_6"]}') + print(f'大于-3小于0开盘,大于-3小于0清仓 !!! 亏损大于6:{counters["scenarios"]["low_3_to_0_open_low_3_to_0_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_3_to_0_open_low_3_to_0_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_3_to_0_open_low_3_to_0_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_3_to_0_open_low_3_to_0_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_3_to_0_open_low_3_to_0_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_3_to_0_open_low_3_to_0_open_sale"]["profit_over_6"]}') + print(f'大于-3小于0开盘,大于0小于3清仓 !!! 亏损大于6:{counters["scenarios"]["low_3_to_0_open_high_0_to_3_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_3_to_0_open_high_0_to_3_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_3_to_0_open_high_0_to_3_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_3_to_0_open_high_0_to_3_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_3_to_0_open_high_0_to_3_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_3_to_0_open_high_0_to_3_open_sale"]["profit_over_6"]}') + print(f'大于-3小于0开盘,大于3小于6清仓 !!! 亏损大于6:{counters["scenarios"]["low_3_to_0_open_high_3_to_6_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_3_to_0_open_high_3_to_6_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_3_to_0_open_high_3_to_6_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_3_to_0_open_high_3_to_6_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_3_to_0_open_high_3_to_6_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_3_to_0_open_high_3_to_6_open_sale"]["profit_over_6"]}') + print(f'大于-3小于0开盘,大于6清仓 !!! 亏损大于6:{counters["scenarios"]["low_3_to_0_open_high_over_6_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_3_to_0_open_high_over_6_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_3_to_0_open_high_over_6_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_3_to_0_open_high_over_6_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_3_to_0_open_high_over_6_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_3_to_0_open_high_over_6_open_sale"]["profit_over_6"]}') + print(f'大于0小于3开盘,小于-6清仓 !!! 亏损大于6:{counters["scenarios"]["high_0_to_3_open_low_over_6_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_0_to_3_open_low_over_6_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_0_to_3_open_low_over_6_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_0_to_3_open_low_over_6_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_0_to_3_open_low_over_6_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_0_to_3_open_low_over_6_open_sale"]["profit_over_6"]}') + print(f'大于0小于3开盘,大于-6小于-3清仓 !!! 亏损大于6:{counters["scenarios"]["high_0_to_3_open_low_6_to_3_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_0_to_3_open_low_6_to_3_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_0_to_3_open_low_6_to_3_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_0_to_3_open_low_6_to_3_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_0_to_3_open_low_6_to_3_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_0_to_3_open_low_6_to_3_open_sale"]["profit_over_6"]}') + print(f'大于0小于3开盘,大于-3小于0清仓 !!! 亏损大于6:{counters["scenarios"]["high_0_to_3_open_low_3_to_0_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_0_to_3_open_low_3_to_0_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_0_to_3_open_low_3_to_0_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_0_to_3_open_low_3_to_0_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_0_to_3_open_low_3_to_0_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_0_to_3_open_low_3_to_0_open_sale"]["profit_over_6"]}') + print(f'大于0小于3开盘,大于0小于3清仓 !!! 亏损大于6:{counters["scenarios"]["high_0_to_3_open_high_0_to_3_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_0_to_3_open_high_0_to_3_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_0_to_3_open_high_0_to_3_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_0_to_3_open_high_0_to_3_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_0_to_3_open_high_0_to_3_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_0_to_3_open_high_0_to_3_open_sale"]["profit_over_6"]}') + print(f'大于0小于3开盘,大于3小于6清仓 !!! 亏损大于6:{counters["scenarios"]["high_0_to_3_open_high_3_to_6_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_0_to_3_open_high_3_to_6_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_0_to_3_open_high_3_to_6_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_0_to_3_open_high_3_to_6_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_0_to_3_open_high_3_to_6_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_0_to_3_open_high_3_to_6_open_sale"]["profit_over_6"]}') + print(f'大于0小于3开盘,大于6清仓 !!! 亏损大于6:{counters["scenarios"]["high_0_to_3_open_high_over_6_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_0_to_3_open_high_over_6_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_0_to_3_open_high_over_6_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_0_to_3_open_high_over_6_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_0_to_3_open_high_over_6_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_0_to_3_open_high_over_6_open_sale"]["profit_over_6"]}') + print(f'大于3小于6开盘,小于-6清仓 !!! 亏损大于6:{counters["scenarios"]["high_3_to_6_open_low_over_6_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_3_to_6_open_low_over_6_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_3_to_6_open_low_over_6_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_3_to_6_open_low_over_6_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_3_to_6_open_low_over_6_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_3_to_6_open_low_over_6_open_sale"]["profit_over_6"]}') + print(f'大于3小于6开盘,大于-6小于-3清仓 !!! 亏损大于6:{counters["scenarios"]["high_3_to_6_open_low_6_to_3_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_3_to_6_open_low_6_to_3_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_3_to_6_open_low_6_to_3_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_3_to_6_open_low_6_to_3_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_3_to_6_open_low_6_to_3_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_3_to_6_open_low_6_to_3_open_sale"]["profit_over_6"]}') + print(f'大于3小于6开盘,大于-3小于0清仓 !!! 亏损大于6:{counters["scenarios"]["high_3_to_6_open_low_3_to_0_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_3_to_6_open_low_3_to_0_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_3_to_6_open_low_3_to_0_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_3_to_6_open_low_3_to_0_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_3_to_6_open_low_3_to_0_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_3_to_6_open_low_3_to_0_open_sale"]["profit_over_6"]}') + print(f'大于3小于6开盘,大于0小于3清仓 !!! 亏损大于6:{counters["scenarios"]["high_3_to_6_open_high_0_to_3_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_3_to_6_open_high_0_to_3_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_3_to_6_open_high_0_to_3_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_3_to_6_open_high_0_to_3_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_3_to_6_open_high_0_to_3_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_3_to_6_open_high_0_to_3_open_sale"]["profit_over_6"]}') + print(f'大于3小于6开盘,大于3小于6清仓 !!! 亏损大于6:{counters["scenarios"]["high_3_to_6_open_high_3_to_6_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_3_to_6_open_high_3_to_6_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_3_to_6_open_high_3_to_6_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_3_to_6_open_high_3_to_6_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_3_to_6_open_high_3_to_6_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_3_to_6_open_high_3_to_6_open_sale"]["profit_over_6"]}') + print(f'大于3小于6开盘,大于6清仓 !!! 亏损大于6:{counters["scenarios"]["high_3_to_6_open_high_over_6_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_3_to_6_open_high_over_6_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_3_to_6_open_high_over_6_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_3_to_6_open_high_over_6_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_3_to_6_open_high_over_6_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_3_to_6_open_high_over_6_open_sale"]["profit_over_6"]}') + print(f'大于6开盘,小于-6清仓 !!! 亏损大于6:{counters["scenarios"]["high_over_6_open_low_over_6_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_over_6_open_low_over_6_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_over_6_open_low_over_6_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_over_6_open_low_over_6_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_over_6_open_low_over_6_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_over_6_open_low_over_6_open_sale"]["profit_over_6"]}') + print(f'大于6开盘,大于-6小于-3清仓 !!! 亏损大于6:{counters["scenarios"]["high_over_6_open_low_6_to_3_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_over_6_open_low_6_to_3_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_over_6_open_low_6_to_3_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_over_6_open_low_6_to_3_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_over_6_open_low_6_to_3_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_over_6_open_low_6_to_3_open_sale"]["profit_over_6"]}') + print(f'大于6开盘,大于-3小于0清仓 !!! 亏损大于6:{counters["scenarios"]["high_over_6_open_low_3_to_0_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_over_6_open_low_3_to_0_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_over_6_open_low_3_to_0_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_over_6_open_low_3_to_0_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_over_6_open_low_3_to_0_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_over_6_open_low_3_to_0_open_sale"]["profit_over_6"]}') + print(f'大于6开盘,大于0小于3清仓 !!! 亏损大于6:{counters["scenarios"]["high_over_6_open_high_0_to_3_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_over_6_open_high_0_to_3_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_over_6_open_high_0_to_3_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_over_6_open_high_0_to_3_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_over_6_open_high_0_to_3_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_over_6_open_high_0_to_3_open_sale"]["profit_over_6"]}') + print(f'大于6开盘,大于3小于6清仓 !!! 亏损大于6:{counters["scenarios"]["high_over_6_open_high_3_to_6_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_over_6_open_high_3_to_6_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_over_6_open_high_3_to_6_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_over_6_open_high_3_to_6_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_over_6_open_high_3_to_6_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_over_6_open_high_3_to_6_open_sale"]["profit_over_6"]}') + print(f'大于6开盘,大于6清仓 !!! 亏损大于6:{counters["scenarios"]["high_over_6_open_high_over_6_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_over_6_open_high_over_6_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_over_6_open_high_over_6_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_over_6_open_high_over_6_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_over_6_open_high_over_6_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_over_6_open_high_over_6_open_sale"]["profit_over_6"]}') + # 组合场景: 开盘建仓 清仓日收盘清仓 盈亏分布 + print(f'# 组合场景: 开盘建仓 清仓日收盘清仓 盈亏分布') + print(f'小于-6开盘,小于-6清仓 !!! 亏损大于6:{counters["scenarios"]["low_over_6_open_low_over_6_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_over_6_open_low_over_6_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_over_6_open_low_over_6_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_over_6_open_low_over_6_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_over_6_open_low_over_6_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_over_6_open_low_over_6_close_sale"]["profit_over_6"]}') + print(f'小于-6开盘,大于-6小于-3清仓 !!! 亏损大于6:{counters["scenarios"]["low_over_6_open_low_6_to_3_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_over_6_open_low_6_to_3_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_over_6_open_low_6_to_3_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_over_6_open_low_6_to_3_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_over_6_open_low_6_to_3_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_over_6_open_low_6_to_3_close_sale"]["profit_over_6"]}') + print(f'小于-6开盘,大于-3小于0清仓 !!! 亏损大于6:{counters["scenarios"]["low_over_6_open_low_3_to_0_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_over_6_open_low_3_to_0_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_over_6_open_low_3_to_0_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_over_6_open_low_3_to_0_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_over_6_open_low_3_to_0_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_over_6_open_low_3_to_0_close_sale"]["profit_over_6"]}') + print(f'小于-6开盘,大于0小于3清仓 !!! 亏损大于6:{counters["scenarios"]["low_over_6_open_high_0_to_3_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_over_6_open_high_0_to_3_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_over_6_open_high_0_to_3_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_over_6_open_high_0_to_3_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_over_6_open_high_0_to_3_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_over_6_open_high_0_to_3_close_sale"]["profit_over_6"]}') + print(f'小于-6开盘,大于3小于6清仓 !!! 亏损大于6:{counters["scenarios"]["low_over_6_open_high_3_to_6_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_over_6_open_high_3_to_6_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_over_6_open_high_3_to_6_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_over_6_open_high_3_to_6_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_over_6_open_high_3_to_6_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_over_6_open_high_3_to_6_close_sale"]["profit_over_6"]}') + print(f'小于-6开盘,大于6清仓 !!! 亏损大于6:{counters["scenarios"]["low_over_6_open_high_over_6_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_over_6_open_high_over_6_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_over_6_open_high_over_6_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_over_6_open_high_over_6_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_over_6_open_high_over_6_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_over_6_open_high_over_6_close_sale"]["profit_over_6"]}') + print(f'大于-6小于-3开盘,小于-6清仓 !!! 亏损大于6:{counters["scenarios"]["low_6_to_3_open_low_over_6_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_6_to_3_open_low_over_6_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_6_to_3_open_low_over_6_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_6_to_3_open_low_over_6_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_6_to_3_open_low_over_6_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_6_to_3_open_low_over_6_close_sale"]["profit_over_6"]}') + print(f'大于-6小于-3开盘,大于-6小于-3清仓 !!! 亏损大于6:{counters["scenarios"]["low_6_to_3_open_low_6_to_3_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_6_to_3_open_low_6_to_3_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_6_to_3_open_low_6_to_3_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_6_to_3_open_low_6_to_3_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_6_to_3_open_low_6_to_3_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_6_to_3_open_low_6_to_3_close_sale"]["profit_over_6"]}') + print(f'大于-6小于-3开盘,大于-3小于0清仓 !!! 亏损大于6:{counters["scenarios"]["low_6_to_3_open_low_3_to_0_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_6_to_3_open_low_3_to_0_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_6_to_3_open_low_3_to_0_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_6_to_3_open_low_3_to_0_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_6_to_3_open_low_3_to_0_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_6_to_3_open_low_3_to_0_close_sale"]["profit_over_6"]}') + print(f'大于-6小于-3开盘,大于0小于3清仓 !!! 亏损大于6:{counters["scenarios"]["low_6_to_3_open_high_0_to_3_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_6_to_3_open_high_0_to_3_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_6_to_3_open_high_0_to_3_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_6_to_3_open_high_0_to_3_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_6_to_3_open_high_0_to_3_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_6_to_3_open_high_0_to_3_close_sale"]["profit_over_6"]}') + print(f'大于-6小于-3开盘,大于3小于6清仓 !!! 亏损大于6:{counters["scenarios"]["low_6_to_3_open_high_3_to_6_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_6_to_3_open_high_3_to_6_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_6_to_3_open_high_3_to_6_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_6_to_3_open_high_3_to_6_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_6_to_3_open_high_3_to_6_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_6_to_3_open_high_3_to_6_close_sale"]["profit_over_6"]}') + print(f'大于-6小于-3开盘,大于6清仓 !!! 亏损大于6:{counters["scenarios"]["low_6_to_3_open_high_over_6_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_6_to_3_open_high_over_6_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_6_to_3_open_high_over_6_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_6_to_3_open_high_over_6_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_6_to_3_open_high_over_6_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_6_to_3_open_high_over_6_close_sale"]["profit_over_6"]}') + print(f'大于-3小于0开盘,小于-6清仓 !!! 亏损大于6:{counters["scenarios"]["low_3_to_0_open_low_over_6_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_3_to_0_open_low_over_6_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_3_to_0_open_low_over_6_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_3_to_0_open_low_over_6_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_3_to_0_open_low_over_6_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_3_to_0_open_low_over_6_close_sale"]["profit_over_6"]}') + print(f'大于-3小于0开盘,大于-6小于-3清仓 !!! 亏损大于6:{counters["scenarios"]["low_3_to_0_open_low_6_to_3_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_3_to_0_open_low_6_to_3_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_3_to_0_open_low_6_to_3_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_3_to_0_open_low_6_to_3_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_3_to_0_open_low_6_to_3_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_3_to_0_open_low_6_to_3_close_sale"]["profit_over_6"]}') + print(f'大于-3小于0开盘,大于-3小于0清仓 !!! 亏损大于6:{counters["scenarios"]["low_3_to_0_open_low_3_to_0_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_3_to_0_open_low_3_to_0_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_3_to_0_open_low_3_to_0_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_3_to_0_open_low_3_to_0_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_3_to_0_open_low_3_to_0_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_3_to_0_open_low_3_to_0_close_sale"]["profit_over_6"]}') + print(f'大于-3小于0开盘,大于0小于3清仓 !!! 亏损大于6:{counters["scenarios"]["low_3_to_0_open_high_0_to_3_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_3_to_0_open_high_0_to_3_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_3_to_0_open_high_0_to_3_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_3_to_0_open_high_0_to_3_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_3_to_0_open_high_0_to_3_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_3_to_0_open_high_0_to_3_close_sale"]["profit_over_6"]}') + print(f'大于-3小于0开盘,大于3小于6清仓 !!! 亏损大于6:{counters["scenarios"]["low_3_to_0_open_high_3_to_6_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_3_to_0_open_high_3_to_6_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_3_to_0_open_high_3_to_6_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_3_to_0_open_high_3_to_6_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_3_to_0_open_high_3_to_6_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_3_to_0_open_high_3_to_6_close_sale"]["profit_over_6"]}') + print(f'大于-3小于0开盘,大于6清仓 !!! 亏损大于6:{counters["scenarios"]["low_3_to_0_open_high_over_6_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_3_to_0_open_high_over_6_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_3_to_0_open_high_over_6_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_3_to_0_open_high_over_6_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_3_to_0_open_high_over_6_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_3_to_0_open_high_over_6_close_sale"]["profit_over_6"]}') + print(f'大于0小于3开盘,小于-6清仓 !!! 亏损大于6:{counters["scenarios"]["high_0_to_3_open_low_over_6_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_0_to_3_open_low_over_6_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_0_to_3_open_low_over_6_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_0_to_3_open_low_over_6_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_0_to_3_open_low_over_6_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_0_to_3_open_low_over_6_close_sale"]["profit_over_6"]}') + print(f'大于0小于3开盘,大于-6小于-3清仓 !!! 亏损大于6:{counters["scenarios"]["high_0_to_3_open_low_6_to_3_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_0_to_3_open_low_6_to_3_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_0_to_3_open_low_6_to_3_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_0_to_3_open_low_6_to_3_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_0_to_3_open_low_6_to_3_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_0_to_3_open_low_6_to_3_close_sale"]["profit_over_6"]}') + print(f'大于0小于3开盘,大于-3小于0清仓 !!! 亏损大于6:{counters["scenarios"]["high_0_to_3_open_low_3_to_0_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_0_to_3_open_low_3_to_0_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_0_to_3_open_low_3_to_0_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_0_to_3_open_low_3_to_0_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_0_to_3_open_low_3_to_0_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_0_to_3_open_low_3_to_0_close_sale"]["profit_over_6"]}') + print(f'大于0小于3开盘,大于0小于3清仓 !!! 亏损大于6:{counters["scenarios"]["high_0_to_3_open_high_0_to_3_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_0_to_3_open_high_0_to_3_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_0_to_3_open_high_0_to_3_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_0_to_3_open_high_0_to_3_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_0_to_3_open_high_0_to_3_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_0_to_3_open_high_0_to_3_close_sale"]["profit_over_6"]}') + print(f'大于0小于3开盘,大于3小于6清仓 !!! 亏损大于6:{counters["scenarios"]["high_0_to_3_open_high_3_to_6_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_0_to_3_open_high_3_to_6_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_0_to_3_open_high_3_to_6_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_0_to_3_open_high_3_to_6_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_0_to_3_open_high_3_to_6_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_0_to_3_open_high_3_to_6_close_sale"]["profit_over_6"]}') + print(f'大于0小于3开盘,大于6清仓 !!! 亏损大于6:{counters["scenarios"]["high_0_to_3_open_high_over_6_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_0_to_3_open_high_over_6_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_0_to_3_open_high_over_6_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_0_to_3_open_high_over_6_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_0_to_3_open_high_over_6_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_0_to_3_open_high_over_6_close_sale"]["profit_over_6"]}') + print(f'大于3小于6开盘,小于-6清仓 !!! 亏损大于6:{counters["scenarios"]["high_3_to_6_open_low_over_6_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_3_to_6_open_low_over_6_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_3_to_6_open_low_over_6_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_3_to_6_open_low_over_6_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_3_to_6_open_low_over_6_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_3_to_6_open_low_over_6_close_sale"]["profit_over_6"]}') + print(f'大于3小于6开盘,大于-6小于-3清仓 !!! 亏损大于6:{counters["scenarios"]["high_3_to_6_open_low_6_to_3_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_3_to_6_open_low_6_to_3_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_3_to_6_open_low_6_to_3_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_3_to_6_open_low_6_to_3_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_3_to_6_open_low_6_to_3_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_3_to_6_open_low_6_to_3_close_sale"]["profit_over_6"]}') + print(f'大于3小于6开盘,大于-3小于0清仓 !!! 亏损大于6:{counters["scenarios"]["high_3_to_6_open_low_3_to_0_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_3_to_6_open_low_3_to_0_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_3_to_6_open_low_3_to_0_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_3_to_6_open_low_3_to_0_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_3_to_6_open_low_3_to_0_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_3_to_6_open_low_3_to_0_close_sale"]["profit_over_6"]}') + print(f'大于3小于6开盘,大于0小于3清仓 !!! 亏损大于6:{counters["scenarios"]["high_3_to_6_open_high_0_to_3_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_3_to_6_open_high_0_to_3_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_3_to_6_open_high_0_to_3_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_3_to_6_open_high_0_to_3_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_3_to_6_open_high_0_to_3_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_3_to_6_open_high_0_to_3_close_sale"]["profit_over_6"]}') + print(f'大于3小于6开盘,大于3小于6清仓 !!! 亏损大于6:{counters["scenarios"]["high_3_to_6_open_high_3_to_6_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_3_to_6_open_high_3_to_6_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_3_to_6_open_high_3_to_6_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_3_to_6_open_high_3_to_6_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_3_to_6_open_high_3_to_6_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_3_to_6_open_high_3_to_6_close_sale"]["profit_over_6"]}') + print(f'大于3小于6开盘,大于6清仓 !!! 亏损大于6:{counters["scenarios"]["high_3_to_6_open_high_over_6_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_3_to_6_open_high_over_6_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_3_to_6_open_high_over_6_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_3_to_6_open_high_over_6_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_3_to_6_open_high_over_6_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_3_to_6_open_high_over_6_close_sale"]["profit_over_6"]}') + print(f'大于6开盘,小于-6清仓 !!! 亏损大于6:{counters["scenarios"]["high_over_6_open_low_over_6_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_over_6_open_low_over_6_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_over_6_open_low_over_6_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_over_6_open_low_over_6_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_over_6_open_low_over_6_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_over_6_open_low_over_6_close_sale"]["profit_over_6"]}') + print(f'大于6开盘,大于-6小于-3清仓 !!! 亏损大于6:{counters["scenarios"]["high_over_6_open_low_6_to_3_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_over_6_open_low_6_to_3_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_over_6_open_low_6_to_3_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_over_6_open_low_6_to_3_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_over_6_open_low_6_to_3_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_over_6_open_low_6_to_3_close_sale"]["profit_over_6"]}') + print(f'大于6开盘,大于-3小于0清仓 !!! 亏损大于6:{counters["scenarios"]["high_over_6_open_low_3_to_0_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_over_6_open_low_3_to_0_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_over_6_open_low_3_to_0_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_over_6_open_low_3_to_0_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_over_6_open_low_3_to_0_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_over_6_open_low_3_to_0_close_sale"]["profit_over_6"]}') + print(f'大于6开盘,大于0小于3清仓 !!! 亏损大于6:{counters["scenarios"]["high_over_6_open_high_0_to_3_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_over_6_open_high_0_to_3_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_over_6_open_high_0_to_3_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_over_6_open_high_0_to_3_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_over_6_open_high_0_to_3_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_over_6_open_high_0_to_3_close_sale"]["profit_over_6"]}') + print(f'大于6开盘,大于3小于6清仓 !!! 亏损大于6:{counters["scenarios"]["high_over_6_open_high_3_to_6_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_over_6_open_high_3_to_6_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_over_6_open_high_3_to_6_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_over_6_open_high_3_to_6_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_over_6_open_high_3_to_6_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_over_6_open_high_3_to_6_close_sale"]["profit_over_6"]}') + print(f'大于6开盘,大于6清仓 !!! 亏损大于6:{counters["scenarios"]["high_over_6_open_high_over_6_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_over_6_open_high_over_6_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_over_6_open_high_over_6_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_over_6_open_high_over_6_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_over_6_open_high_over_6_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_over_6_open_high_over_6_close_sale"]["profit_over_6"]}') + # 组合场景: 收盘建仓 清仓日开盘清仓 盈亏分布 + print(f'# 组合场景: 收盘建仓 清仓日开盘清仓 盈亏分布') + print(f'小于-6开盘,小于-6清仓 !!! 亏损大于6:{counters["scenarios"]["low_over_6_close_low_over_6_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_over_6_close_low_over_6_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_over_6_close_low_over_6_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_over_6_close_low_over_6_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_over_6_close_low_over_6_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_over_6_close_low_over_6_open_sale"]["profit_over_6"]}') + print(f'小于-6开盘,大于-6小于-3清仓 !!! 亏损大于6:{counters["scenarios"]["low_over_6_close_low_6_to_3_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_over_6_close_low_6_to_3_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_over_6_close_low_6_to_3_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_over_6_close_low_6_to_3_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_over_6_close_low_6_to_3_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_over_6_close_low_6_to_3_open_sale"]["profit_over_6"]}') + print(f'小于-6开盘,大于-3小于0清仓 !!! 亏损大于6:{counters["scenarios"]["low_over_6_close_low_3_to_0_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_over_6_close_low_3_to_0_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_over_6_close_low_3_to_0_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_over_6_close_low_3_to_0_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_over_6_close_low_3_to_0_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_over_6_close_low_3_to_0_open_sale"]["profit_over_6"]}') + print(f'小于-6开盘,大于0小于3清仓 !!! 亏损大于6:{counters["scenarios"]["low_over_6_close_high_0_to_3_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_over_6_close_high_0_to_3_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_over_6_close_high_0_to_3_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_over_6_close_high_0_to_3_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_over_6_close_high_0_to_3_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_over_6_close_high_0_to_3_open_sale"]["profit_over_6"]}') + print(f'小于-6开盘,大于3小于6清仓 !!! 亏损大于6:{counters["scenarios"]["low_over_6_close_high_3_to_6_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_over_6_close_high_3_to_6_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_over_6_close_high_3_to_6_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_over_6_close_high_3_to_6_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_over_6_close_high_3_to_6_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_over_6_close_high_3_to_6_open_sale"]["profit_over_6"]}') + print(f'小于-6开盘,大于6清仓 !!! 亏损大于6:{counters["scenarios"]["low_over_6_close_high_over_6_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_over_6_close_high_over_6_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_over_6_close_high_over_6_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_over_6_close_high_over_6_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_over_6_close_high_over_6_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_over_6_close_high_over_6_open_sale"]["profit_over_6"]}') + print(f'大于-6小于-3开盘,小于-6清仓 !!! 亏损大于6:{counters["scenarios"]["low_6_to_3_close_low_over_6_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_6_to_3_close_low_over_6_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_6_to_3_close_low_over_6_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_6_to_3_close_low_over_6_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_6_to_3_close_low_over_6_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_6_to_3_close_low_over_6_open_sale"]["profit_over_6"]}') + print(f'大于-6小于-3开盘,大于-6小于-3清仓 !!! 亏损大于6:{counters["scenarios"]["low_6_to_3_close_low_6_to_3_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_6_to_3_close_low_6_to_3_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_6_to_3_close_low_6_to_3_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_6_to_3_close_low_6_to_3_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_6_to_3_close_low_6_to_3_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_6_to_3_close_low_6_to_3_open_sale"]["profit_over_6"]}') + print(f'大于-6小于-3开盘,大于-3小于0清仓 !!! 亏损大于6:{counters["scenarios"]["low_6_to_3_close_low_3_to_0_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_6_to_3_close_low_3_to_0_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_6_to_3_close_low_3_to_0_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_6_to_3_close_low_3_to_0_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_6_to_3_close_low_3_to_0_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_6_to_3_close_low_3_to_0_open_sale"]["profit_over_6"]}') + print(f'大于-6小于-3开盘,大于0小于3清仓 !!! 亏损大于6:{counters["scenarios"]["low_6_to_3_close_high_0_to_3_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_6_to_3_close_high_0_to_3_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_6_to_3_close_high_0_to_3_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_6_to_3_close_high_0_to_3_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_6_to_3_close_high_0_to_3_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_6_to_3_close_high_0_to_3_open_sale"]["profit_over_6"]}') + print(f'大于-6小于-3开盘,大于3小于6清仓 !!! 亏损大于6:{counters["scenarios"]["low_6_to_3_close_high_3_to_6_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_6_to_3_close_high_3_to_6_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_6_to_3_close_high_3_to_6_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_6_to_3_close_high_3_to_6_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_6_to_3_close_high_3_to_6_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_6_to_3_close_high_3_to_6_open_sale"]["profit_over_6"]}') + print(f'大于-6小于-3开盘,大于6清仓 !!! 亏损大于6:{counters["scenarios"]["low_6_to_3_close_high_over_6_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_6_to_3_close_high_over_6_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_6_to_3_close_high_over_6_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_6_to_3_close_high_over_6_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_6_to_3_close_high_over_6_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_6_to_3_close_high_over_6_open_sale"]["profit_over_6"]}') + print(f'大于-3小于0开盘,小于-6清仓 !!! 亏损大于6:{counters["scenarios"]["low_3_to_0_close_low_over_6_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_3_to_0_close_low_over_6_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_3_to_0_close_low_over_6_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_3_to_0_close_low_over_6_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_3_to_0_close_low_over_6_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_3_to_0_close_low_over_6_open_sale"]["profit_over_6"]}') + print(f'大于-3小于0开盘,大于-6小于-3清仓 !!! 亏损大于6:{counters["scenarios"]["low_3_to_0_close_low_6_to_3_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_3_to_0_close_low_6_to_3_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_3_to_0_close_low_6_to_3_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_3_to_0_close_low_6_to_3_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_3_to_0_close_low_6_to_3_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_3_to_0_close_low_6_to_3_open_sale"]["profit_over_6"]}') + print(f'大于-3小于0开盘,大于-3小于0清仓 !!! 亏损大于6:{counters["scenarios"]["low_3_to_0_close_low_3_to_0_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_3_to_0_close_low_3_to_0_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_3_to_0_close_low_3_to_0_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_3_to_0_close_low_3_to_0_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_3_to_0_close_low_3_to_0_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_3_to_0_close_low_3_to_0_open_sale"]["profit_over_6"]}') + print(f'大于-3小于0开盘,大于0小于3清仓 !!! 亏损大于6:{counters["scenarios"]["low_3_to_0_close_high_0_to_3_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_3_to_0_close_high_0_to_3_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_3_to_0_close_high_0_to_3_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_3_to_0_close_high_0_to_3_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_3_to_0_close_high_0_to_3_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_3_to_0_close_high_0_to_3_open_sale"]["profit_over_6"]}') + print(f'大于-3小于0开盘,大于3小于6清仓 !!! 亏损大于6:{counters["scenarios"]["low_3_to_0_close_high_3_to_6_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_3_to_0_close_high_3_to_6_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_3_to_0_close_high_3_to_6_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_3_to_0_close_high_3_to_6_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_3_to_0_close_high_3_to_6_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_3_to_0_close_high_3_to_6_open_sale"]["profit_over_6"]}') + print(f'大于-3小于0开盘,大于6清仓 !!! 亏损大于6:{counters["scenarios"]["low_3_to_0_close_high_over_6_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_3_to_0_close_high_over_6_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_3_to_0_close_high_over_6_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_3_to_0_close_high_over_6_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_3_to_0_close_high_over_6_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_3_to_0_close_high_over_6_open_sale"]["profit_over_6"]}') + print(f'大于0小于3开盘,小于-6清仓 !!! 亏损大于6:{counters["scenarios"]["high_0_to_3_close_low_over_6_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_0_to_3_close_low_over_6_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_0_to_3_close_low_over_6_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_0_to_3_close_low_over_6_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_0_to_3_close_low_over_6_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_0_to_3_close_low_over_6_open_sale"]["profit_over_6"]}') + print(f'大于0小于3开盘,大于-6小于-3清仓 !!! 亏损大于6:{counters["scenarios"]["high_0_to_3_close_low_6_to_3_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_0_to_3_close_low_6_to_3_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_0_to_3_close_low_6_to_3_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_0_to_3_close_low_6_to_3_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_0_to_3_close_low_6_to_3_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_0_to_3_close_low_6_to_3_open_sale"]["profit_over_6"]}') + print(f'大于0小于3开盘,大于-3小于0清仓 !!! 亏损大于6:{counters["scenarios"]["high_0_to_3_close_low_3_to_0_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_0_to_3_close_low_3_to_0_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_0_to_3_close_low_3_to_0_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_0_to_3_close_low_3_to_0_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_0_to_3_close_low_3_to_0_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_0_to_3_close_low_3_to_0_open_sale"]["profit_over_6"]}') + print(f'大于0小于3开盘,大于0小于3清仓 !!! 亏损大于6:{counters["scenarios"]["high_0_to_3_close_high_0_to_3_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_0_to_3_close_high_0_to_3_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_0_to_3_close_high_0_to_3_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_0_to_3_close_high_0_to_3_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_0_to_3_close_high_0_to_3_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_0_to_3_close_high_0_to_3_open_sale"]["profit_over_6"]}') + print(f'大于0小于3开盘,大于3小于6清仓 !!! 亏损大于6:{counters["scenarios"]["high_0_to_3_close_high_3_to_6_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_0_to_3_close_high_3_to_6_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_0_to_3_close_high_3_to_6_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_0_to_3_close_high_3_to_6_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_0_to_3_close_high_3_to_6_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_0_to_3_close_high_3_to_6_open_sale"]["profit_over_6"]}') + print(f'大于0小于3开盘,大于6清仓 !!! 亏损大于6:{counters["scenarios"]["high_0_to_3_close_high_over_6_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_0_to_3_close_high_over_6_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_0_to_3_close_high_over_6_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_0_to_3_close_high_over_6_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_0_to_3_close_high_over_6_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_0_to_3_close_high_over_6_open_sale"]["profit_over_6"]}') + print(f'大于3小于6开盘,小于-6清仓 !!! 亏损大于6:{counters["scenarios"]["high_3_to_6_close_low_over_6_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_3_to_6_close_low_over_6_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_3_to_6_close_low_over_6_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_3_to_6_close_low_over_6_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_3_to_6_close_low_over_6_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_3_to_6_close_low_over_6_open_sale"]["profit_over_6"]}') + print(f'大于3小于6开盘,大于-6小于-3清仓 !!! 亏损大于6:{counters["scenarios"]["high_3_to_6_close_low_6_to_3_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_3_to_6_close_low_6_to_3_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_3_to_6_close_low_6_to_3_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_3_to_6_close_low_6_to_3_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_3_to_6_close_low_6_to_3_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_3_to_6_close_low_6_to_3_open_sale"]["profit_over_6"]}') + print(f'大于3小于6开盘,大于-3小于0清仓 !!! 亏损大于6:{counters["scenarios"]["high_3_to_6_close_low_3_to_0_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_3_to_6_close_low_3_to_0_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_3_to_6_close_low_3_to_0_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_3_to_6_close_low_3_to_0_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_3_to_6_close_low_3_to_0_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_3_to_6_close_low_3_to_0_open_sale"]["profit_over_6"]}') + print(f'大于3小于6开盘,大于0小于3清仓 !!! 亏损大于6:{counters["scenarios"]["high_3_to_6_close_high_0_to_3_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_3_to_6_close_high_0_to_3_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_3_to_6_close_high_0_to_3_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_3_to_6_close_high_0_to_3_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_3_to_6_close_high_0_to_3_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_3_to_6_close_high_0_to_3_open_sale"]["profit_over_6"]}') + print(f'大于3小于6开盘,大于3小于6清仓 !!! 亏损大于6:{counters["scenarios"]["high_3_to_6_close_high_3_to_6_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_3_to_6_close_high_3_to_6_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_3_to_6_close_high_3_to_6_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_3_to_6_close_high_3_to_6_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_3_to_6_close_high_3_to_6_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_3_to_6_close_high_3_to_6_open_sale"]["profit_over_6"]}') + print(f'大于3小于6开盘,大于6清仓 !!! 亏损大于6:{counters["scenarios"]["high_3_to_6_close_high_over_6_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_3_to_6_close_high_over_6_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_3_to_6_close_high_over_6_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_3_to_6_close_high_over_6_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_3_to_6_close_high_over_6_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_3_to_6_close_high_over_6_open_sale"]["profit_over_6"]}') + print(f'大于6开盘,小于-6清仓 !!! 亏损大于6:{counters["scenarios"]["high_over_6_close_low_over_6_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_over_6_close_low_over_6_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_over_6_close_low_over_6_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_over_6_close_low_over_6_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_over_6_close_low_over_6_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_over_6_close_low_over_6_open_sale"]["profit_over_6"]}') + print(f'大于6开盘,大于-6小于-3清仓 !!! 亏损大于6:{counters["scenarios"]["high_over_6_close_low_6_to_3_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_over_6_close_low_6_to_3_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_over_6_close_low_6_to_3_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_over_6_close_low_6_to_3_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_over_6_close_low_6_to_3_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_over_6_close_low_6_to_3_open_sale"]["profit_over_6"]}') + print(f'大于6开盘,大于-3小于0清仓 !!! 亏损大于6:{counters["scenarios"]["high_over_6_close_low_3_to_0_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_over_6_close_low_3_to_0_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_over_6_close_low_3_to_0_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_over_6_close_low_3_to_0_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_over_6_close_low_3_to_0_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_over_6_close_low_3_to_0_open_sale"]["profit_over_6"]}') + print(f'大于6开盘,大于0小于3清仓 !!! 亏损大于6:{counters["scenarios"]["high_over_6_close_high_0_to_3_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_over_6_close_high_0_to_3_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_over_6_close_high_0_to_3_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_over_6_close_high_0_to_3_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_over_6_close_high_0_to_3_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_over_6_close_high_0_to_3_open_sale"]["profit_over_6"]}') + print(f'大于6开盘,大于3小于6清仓 !!! 亏损大于6:{counters["scenarios"]["high_over_6_close_high_3_to_6_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_over_6_close_high_3_to_6_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_over_6_close_high_3_to_6_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_over_6_close_high_3_to_6_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_over_6_close_high_3_to_6_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_over_6_close_high_3_to_6_open_sale"]["profit_over_6"]}') + print(f'大于6开盘,大于6清仓 !!! 亏损大于6:{counters["scenarios"]["high_over_6_close_high_over_6_open_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_over_6_close_high_over_6_open_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_over_6_close_high_over_6_open_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_over_6_close_high_over_6_open_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_over_6_close_high_over_6_open_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_over_6_close_high_over_6_open_sale"]["profit_over_6"]}') + + # 组合场景: 收盘建仓 清仓日收盘清仓 盈亏分布 + print(f'# 组合场景: 收盘建仓 清仓日收盘清仓 盈亏分布') + print(f'小于-6开盘,小于-6清仓 !!! 亏损大于6:{counters["scenarios"]["low_over_6_close_low_over_6_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_over_6_close_low_over_6_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_over_6_close_low_over_6_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_over_6_close_low_over_6_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_over_6_close_low_over_6_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_over_6_close_low_over_6_close_sale"]["profit_over_6"]}') + print(f'小于-6开盘,大于-6小于-3清仓 !!! 亏损大于6:{counters["scenarios"]["low_over_6_close_low_6_to_3_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_over_6_close_low_6_to_3_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_over_6_close_low_6_to_3_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_over_6_close_low_6_to_3_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_over_6_close_low_6_to_3_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_over_6_close_low_6_to_3_close_sale"]["profit_over_6"]}') + print(f'小于-6开盘,大于-3小于0清仓 !!! 亏损大于6:{counters["scenarios"]["low_over_6_close_low_3_to_0_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_over_6_close_low_3_to_0_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_over_6_close_low_3_to_0_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_over_6_close_low_3_to_0_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_over_6_close_low_3_to_0_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_over_6_close_low_3_to_0_close_sale"]["profit_over_6"]}') + print(f'小于-6开盘,大于0小于3清仓 !!! 亏损大于6:{counters["scenarios"]["low_over_6_close_high_0_to_3_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_over_6_close_high_0_to_3_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_over_6_close_high_0_to_3_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_over_6_close_high_0_to_3_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_over_6_close_high_0_to_3_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_over_6_close_high_0_to_3_close_sale"]["profit_over_6"]}') + print(f'小于-6开盘,大于3小于6清仓 !!! 亏损大于6:{counters["scenarios"]["low_over_6_close_high_3_to_6_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_over_6_close_high_3_to_6_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_over_6_close_high_3_to_6_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_over_6_close_high_3_to_6_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_over_6_close_high_3_to_6_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_over_6_close_high_3_to_6_close_sale"]["profit_over_6"]}') + print(f'小于-6开盘,大于6清仓 !!! 亏损大于6:{counters["scenarios"]["low_over_6_close_high_over_6_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_over_6_close_high_over_6_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_over_6_close_high_over_6_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_over_6_close_high_over_6_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_over_6_close_high_over_6_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_over_6_close_high_over_6_close_sale"]["profit_over_6"]}') + print(f'大于-6小于-3开盘,小于-6清仓 !!! 亏损大于6:{counters["scenarios"]["low_6_to_3_close_low_over_6_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_6_to_3_close_low_over_6_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_6_to_3_close_low_over_6_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_6_to_3_close_low_over_6_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_6_to_3_close_low_over_6_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_6_to_3_close_low_over_6_close_sale"]["profit_over_6"]}') + print(f'大于-6小于-3开盘,大于-6小于-3清仓 !!! 亏损大于6:{counters["scenarios"]["low_6_to_3_close_low_6_to_3_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_6_to_3_close_low_6_to_3_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_6_to_3_close_low_6_to_3_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_6_to_3_close_low_6_to_3_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_6_to_3_close_low_6_to_3_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_6_to_3_close_low_6_to_3_close_sale"]["profit_over_6"]}') + print(f'大于-6小于-3开盘,大于-3小于0清仓 !!! 亏损大于6:{counters["scenarios"]["low_6_to_3_close_low_3_to_0_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_6_to_3_close_low_3_to_0_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_6_to_3_close_low_3_to_0_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_6_to_3_close_low_3_to_0_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_6_to_3_close_low_3_to_0_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_6_to_3_close_low_3_to_0_close_sale"]["profit_over_6"]}') + print(f'大于-6小于-3开盘,大于0小于3清仓 !!! 亏损大于6:{counters["scenarios"]["low_6_to_3_close_high_0_to_3_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_6_to_3_close_high_0_to_3_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_6_to_3_close_high_0_to_3_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_6_to_3_close_high_0_to_3_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_6_to_3_close_high_0_to_3_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_6_to_3_close_high_0_to_3_close_sale"]["profit_over_6"]}') + print(f'大于-6小于-3开盘,大于3小于6清仓 !!! 亏损大于6:{counters["scenarios"]["low_6_to_3_close_high_3_to_6_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_6_to_3_close_high_3_to_6_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_6_to_3_close_high_3_to_6_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_6_to_3_close_high_3_to_6_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_6_to_3_close_high_3_to_6_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_6_to_3_close_high_3_to_6_close_sale"]["profit_over_6"]}') + print(f'大于-6小于-3开盘,大于6清仓 !!! 亏损大于6:{counters["scenarios"]["low_6_to_3_close_high_over_6_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_6_to_3_close_high_over_6_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_6_to_3_close_high_over_6_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_6_to_3_close_high_over_6_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_6_to_3_close_high_over_6_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_6_to_3_close_high_over_6_close_sale"]["profit_over_6"]}') + print(f'大于-3小于0开盘,小于-6清仓 !!! 亏损大于6:{counters["scenarios"]["low_3_to_0_close_low_over_6_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_3_to_0_close_low_over_6_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_3_to_0_close_low_over_6_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_3_to_0_close_low_over_6_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_3_to_0_close_low_over_6_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_3_to_0_close_low_over_6_close_sale"]["profit_over_6"]}') + print(f'大于-3小于0开盘,大于-6小于-3清仓 !!! 亏损大于6:{counters["scenarios"]["low_3_to_0_close_low_6_to_3_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_3_to_0_close_low_6_to_3_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_3_to_0_close_low_6_to_3_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_3_to_0_close_low_6_to_3_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_3_to_0_close_low_6_to_3_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_3_to_0_close_low_6_to_3_close_sale"]["profit_over_6"]}') + print(f'大于-3小于0开盘,大于-3小于0清仓 !!! 亏损大于6:{counters["scenarios"]["low_3_to_0_close_low_3_to_0_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_3_to_0_close_low_3_to_0_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_3_to_0_close_low_3_to_0_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_3_to_0_close_low_3_to_0_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_3_to_0_close_low_3_to_0_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_3_to_0_close_low_3_to_0_close_sale"]["profit_over_6"]}') + print(f'大于-3小于0开盘,大于0小于3清仓 !!! 亏损大于6:{counters["scenarios"]["low_3_to_0_close_high_0_to_3_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_3_to_0_close_high_0_to_3_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_3_to_0_close_high_0_to_3_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_3_to_0_close_high_0_to_3_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_3_to_0_close_high_0_to_3_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_3_to_0_close_high_0_to_3_close_sale"]["profit_over_6"]}') + print(f'大于-3小于0开盘,大于3小于6清仓 !!! 亏损大于6:{counters["scenarios"]["low_3_to_0_close_high_3_to_6_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_3_to_0_close_high_3_to_6_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_3_to_0_close_high_3_to_6_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_3_to_0_close_high_3_to_6_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_3_to_0_close_high_3_to_6_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_3_to_0_close_high_3_to_6_close_sale"]["profit_over_6"]}') + print(f'大于-3小于0开盘,大于6清仓 !!! 亏损大于6:{counters["scenarios"]["low_3_to_0_close_high_over_6_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["low_3_to_0_close_high_over_6_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["low_3_to_0_close_high_over_6_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["low_3_to_0_close_high_over_6_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["low_3_to_0_close_high_over_6_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["low_3_to_0_close_high_over_6_close_sale"]["profit_over_6"]}') + print(f'大于0小于3开盘,小于-6清仓 !!! 亏损大于6:{counters["scenarios"]["high_0_to_3_close_low_over_6_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_0_to_3_close_low_over_6_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_0_to_3_close_low_over_6_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_0_to_3_close_low_over_6_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_0_to_3_close_low_over_6_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_0_to_3_close_low_over_6_close_sale"]["profit_over_6"]}') + print(f'大于0小于3开盘,大于-6小于-3清仓 !!! 亏损大于6:{counters["scenarios"]["high_0_to_3_close_low_6_to_3_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_0_to_3_close_low_6_to_3_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_0_to_3_close_low_6_to_3_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_0_to_3_close_low_6_to_3_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_0_to_3_close_low_6_to_3_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_0_to_3_close_low_6_to_3_close_sale"]["profit_over_6"]}') + print(f'大于0小于3开盘,大于-3小于0清仓 !!! 亏损大于6:{counters["scenarios"]["high_0_to_3_close_low_3_to_0_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_0_to_3_close_low_3_to_0_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_0_to_3_close_low_3_to_0_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_0_to_3_close_low_3_to_0_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_0_to_3_close_low_3_to_0_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_0_to_3_close_low_3_to_0_close_sale"]["profit_over_6"]}') + print(f'大于0小于3开盘,大于0小于3清仓 !!! 亏损大于6:{counters["scenarios"]["high_0_to_3_close_high_0_to_3_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_0_to_3_close_high_0_to_3_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_0_to_3_close_high_0_to_3_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_0_to_3_close_high_0_to_3_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_0_to_3_close_high_0_to_3_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_0_to_3_close_high_0_to_3_close_sale"]["profit_over_6"]}') + print(f'大于0小于3开盘,大于3小于6清仓 !!! 亏损大于6:{counters["scenarios"]["high_0_to_3_close_high_3_to_6_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_0_to_3_close_high_3_to_6_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_0_to_3_close_high_3_to_6_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_0_to_3_close_high_3_to_6_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_0_to_3_close_high_3_to_6_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_0_to_3_close_high_3_to_6_close_sale"]["profit_over_6"]}') + print(f'大于0小于3开盘,大于6清仓 !!! 亏损大于6:{counters["scenarios"]["high_0_to_3_close_high_over_6_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_0_to_3_close_high_over_6_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_0_to_3_close_high_over_6_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_0_to_3_close_high_over_6_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_0_to_3_close_high_over_6_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_0_to_3_close_high_over_6_close_sale"]["profit_over_6"]}') + print(f'大于3小于6开盘,小于-6清仓 !!! 亏损大于6:{counters["scenarios"]["high_3_to_6_close_low_over_6_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_3_to_6_close_low_over_6_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_3_to_6_close_low_over_6_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_3_to_6_close_low_over_6_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_3_to_6_close_low_over_6_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_3_to_6_close_low_over_6_close_sale"]["profit_over_6"]}') + print(f'大于3小于6开盘,大于-6小于-3清仓 !!! 亏损大于6:{counters["scenarios"]["high_3_to_6_close_low_6_to_3_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_3_to_6_close_low_6_to_3_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_3_to_6_close_low_6_to_3_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_3_to_6_close_low_6_to_3_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_3_to_6_close_low_6_to_3_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_3_to_6_close_low_6_to_3_close_sale"]["profit_over_6"]}') + print(f'大于3小于6开盘,大于-3小于0清仓 !!! 亏损大于6:{counters["scenarios"]["high_3_to_6_close_low_3_to_0_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_3_to_6_close_low_3_to_0_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_3_to_6_close_low_3_to_0_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_3_to_6_close_low_3_to_0_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_3_to_6_close_low_3_to_0_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_3_to_6_close_low_3_to_0_close_sale"]["profit_over_6"]}') + print(f'大于3小于6开盘,大于0小于3清仓 !!! 亏损大于6:{counters["scenarios"]["high_3_to_6_close_high_0_to_3_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_3_to_6_close_high_0_to_3_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_3_to_6_close_high_0_to_3_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_3_to_6_close_high_0_to_3_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_3_to_6_close_high_0_to_3_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_3_to_6_close_high_0_to_3_close_sale"]["profit_over_6"]}') + print(f'大于3小于6开盘,大于3小于6清仓 !!! 亏损大于6:{counters["scenarios"]["high_3_to_6_close_high_3_to_6_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_3_to_6_close_high_3_to_6_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_3_to_6_close_high_3_to_6_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_3_to_6_close_high_3_to_6_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_3_to_6_close_high_3_to_6_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_3_to_6_close_high_3_to_6_close_sale"]["profit_over_6"]}') + print(f'大于3小于6开盘,大于6清仓 !!! 亏损大于6:{counters["scenarios"]["high_3_to_6_close_high_over_6_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_3_to_6_close_high_over_6_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_3_to_6_close_high_over_6_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_3_to_6_close_high_over_6_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_3_to_6_close_high_over_6_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_3_to_6_close_high_over_6_close_sale"]["profit_over_6"]}') + print(f'大于6开盘,小于-6清仓 !!! 亏损大于6:{counters["scenarios"]["high_over_6_close_low_over_6_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_over_6_close_low_over_6_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_over_6_close_low_over_6_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_over_6_close_low_over_6_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_over_6_close_low_over_6_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_over_6_close_low_over_6_close_sale"]["profit_over_6"]}') + print(f'大于6开盘,大于-6小于-3清仓 !!! 亏损大于6:{counters["scenarios"]["high_over_6_close_low_6_to_3_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_over_6_close_low_6_to_3_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_over_6_close_low_6_to_3_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_over_6_close_low_6_to_3_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_over_6_close_low_6_to_3_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_over_6_close_low_6_to_3_close_sale"]["profit_over_6"]}') + print(f'大于6开盘,大于-3小于0清仓 !!! 亏损大于6:{counters["scenarios"]["high_over_6_close_low_3_to_0_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_over_6_close_low_3_to_0_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_over_6_close_low_3_to_0_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_over_6_close_low_3_to_0_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_over_6_close_low_3_to_0_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_over_6_close_low_3_to_0_close_sale"]["profit_over_6"]}') + print(f'大于6开盘,大于0小于3清仓 !!! 亏损大于6:{counters["scenarios"]["high_over_6_close_high_0_to_3_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_over_6_close_high_0_to_3_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_over_6_close_high_0_to_3_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_over_6_close_high_0_to_3_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_over_6_close_high_0_to_3_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_over_6_close_high_0_to_3_close_sale"]["profit_over_6"]}') + print(f'大于6开盘,大于3小于6清仓 !!! 亏损大于6:{counters["scenarios"]["high_over_6_close_high_3_to_6_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_over_6_close_high_3_to_6_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_over_6_close_high_3_to_6_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_over_6_close_high_3_to_6_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_over_6_close_high_3_to_6_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_over_6_close_high_3_to_6_close_sale"]["profit_over_6"]}') + print(f'大于6开盘,大于6清仓 !!! 亏损大于6:{counters["scenarios"]["high_over_6_close_high_over_6_close_sale"]["loss_over_6"]},' + f'亏损介于6和3之间:{counters["scenarios"]["high_over_6_close_high_over_6_close_sale"]["loss_6_to_3"]},' + f'亏损介于3和0之间:{counters["scenarios"]["high_over_6_close_high_over_6_close_sale"]["loss_3_to_0"]},' + f'盈利介于0和3之间:{counters["scenarios"]["high_over_6_close_high_over_6_close_sale"]["profit_0_to_3"]},' + f'盈利介于3和6之间:{counters["scenarios"]["high_over_6_close_high_over_6_close_sale"]["profit_3_to_6"]},' + f'盈利大于6:{counters["scenarios"]["high_over_6_close_high_over_6_close_sale"]["profit_over_6"]}') + + + +if __name__ == "__main__": + main() \ No newline at end of file