code_attribute/code_nature_analyse.py | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
constant.py | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
output/code_info_output.py | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
server.py | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
code_attribute/code_nature_analyse.py
@@ -188,14 +188,19 @@ datas = datas[-10:] limit_ups = [] limit_up_count = 0 max_price = datas[0]["high"] for data in datas: limit_up_price = float(gpcode_manager.get_limit_up_price_by_preprice(data["pre_close"])) date = data['bob'].strftime("%Y-%m-%d") if data["high"] > max_price: max_price = data["high"] if abs(limit_up_price - data["high"]) < 0.01: limit_ups.append((date, True)) limit_up_count += 1 else: limit_ups.append((date, False)) # 下降幅度 limit_down_rate = round((max_price - datas[-1]["close"]) / max_price, 3) if limit_up_count < 3: return False @@ -208,8 +213,10 @@ for t in temp_datas: if t[1]: t_count += 1 if t_count >= 3: if t_count >= 3 and limit_down_rate < 0.2: # 降幅小于20% return True return False constant.py
@@ -138,7 +138,7 @@ ########华鑫配置######## if not is_windows() or True: # 下单1手 BUY_MONEY_PER_CODE = 1000 BUY_MONEY_PER_CODE = 2500 L2_SOURCE_TYPE = L2_SOURCE_TYPE_HUAXIN JUEJIN_LOCAL_API = False TRADE_WAY = TRADE_WAY_HUAXIN output/code_info_output.py
@@ -155,9 +155,22 @@ else: if trade_progress < len(total_datas): data = total_datas[trade_progress] params["trade_data"]["trade_progress"] = {"time": data['val']['time'], "num": data['val']['num'], "money": round( data['val']['num'] * float(data['val']['price']) * 100 / 10000, 1)} trade_progress_datas = [] for min_money in [30000, 20000, 10000]: for i in range(trade_progress - 1, -1, -1): # 是否为涨停买 if L2DataUtil.is_limit_up_price_buy(total_datas[i]['val']): if data['val']['num'] * float(data['val']['price']) > min_money: trade_progress_datas.append({"time": data['val']['time'], "num": data['val']['num'], "money": money_desc(round( data['val']['num'] * float(data['val']['price']) * 100))}) break if trade_progress_datas: break trade_progress_datas.append({"time": data['val']['time'], "num": data['val']['num'], "money": money_desc(round( data['val']['num'] * float(data['val']['price']) * 100))}) # 买入信号 buy_single_index, buy_exec_index, compute_index, num, count, max_num_set, volume_rate = l2_data_manager.TradePointManager().get_buy_compute_start_data_cache( @@ -375,12 +388,23 @@ extra_datas)) elif type == trade_record_log_util.TYPE_REAL_PLACE_ORDER_POSITION: _datas = [] MIN_MONEYS = [30000, 20000, 10000] for min_money in MIN_MONEYS: for i in range(data['index'], 0, -1): if L2DataUtil.is_limit_up_price_buy(total_datas[i]['val']) and total_datas[i]['val'][ 'num'] * float(total_datas[i]['val']['price']) >= min_money: _datas.append(f"【{format_l2_data(total_datas[i])}】") if len(_datas) >= 1: break if len(_datas) >= 1: break for i in range(data['index'], 0, -1): if L2DataUtil.is_limit_up_price_buy(total_datas[i]['val']) and total_datas[i]['val'][ 'num'] * float(total_datas[i]['val']['price']) >= 3000: if len(_datas) >= 2: if _datas and _datas[-1]["index"] == i: break _datas.append(f"【{format_l2_data(total_datas[i])}】") break records_new_data.append( (time_, "实际挂单位", "".join(_datas), [])) server.py
@@ -960,11 +960,11 @@ time.sleep(1.5) if __name__ == "__main__": codes = ["605151"] # gpcode_manager.FirstGPCodesManager().get_first_gp_codes() codes = ["002792"] # gpcode_manager.FirstGPCodesManager().get_first_gp_codes() for code in codes: volumes_data = inited_data.get_volumns_by_code(code, 150) # volumes_data = volumes_data[1:] print(code, code_nature_analyse.is_have_latest_max_volume(volumes_data, 2)) print(code, code_nature_analyse.is_up_too_high_in_10d(volumes_data)) # try: # global_data_loader.load_zyltgb() # limit_up_price = float(gpcode_manager.get_limit_up_price(code))