Commit Graph

353 Commits

Author SHA1 Message Date
薇薇安
8bd7bae718 feat(config, market_scanner): 调整K线扫描限制以优化信号处理
在配置文件中将K线扫描限制从30根调整至50根,以支持4小时及日线周期的信号计算需求。同时,在市场扫描逻辑中增加了对K线限制的动态调整,确保在特定周期下信号处理的有效性。此改动旨在提升策略的灵活性与准确性,确保在市场波动时能够提供更可靠的交易建议。
2026-02-25 13:54:52 +08:00
薇薇安
09edc4f57d feat(market_scanner): 优化回退信号逻辑以提升信号处理能力
在市场扫描逻辑中调整了回退信号的计算方式,降低了信号强度为零时的触发条件,并引入24小时涨跌幅作为方向判断依据。这一改动旨在增强策略的灵活性,确保在市场波动时能够提供更有效的交易建议,同时提升用户体验。
2026-02-25 13:45:36 +08:00
薇薇安
d1c560ae16 feat(config): 更新默认交易配置以优化信号处理和风险控制
在默认交易配置中调整了信号强度和市场过滤参数,适度放宽了 `MIN_SIGNAL_STRENGTH` 和 `BETA_FILTER_THRESHOLD` 的要求,以增加交易机会。同时,允许在4H趋势中性时自动交易,旨在提升策略灵活性与用户友好性。此改动确保在市场波动中仍能有效捕捉短线机会。
2026-02-25 13:41:05 +08:00
薇薇安
0f0aa1bf5d feat(market_scanner, strategy): 引入回退信号逻辑以优化信号处理
在市场扫描和交易策略中增加了回退信号逻辑,当信号强度为零且方向未明确时,采用RSI、MACD和布林带的综合信号进行判断,避免长期无推荐。这一改动旨在提升策略的灵活性与可用性,确保在市场波动时仍能提供有效的交易建议。
2026-02-25 13:28:58 +08:00
薇薇安
5b2adb0b62 feat(strategy): 更新大盘暴跌提示信息,增加阈值说明
在交易策略中优化大盘暴跌的提示信息,新增阈值说明以指导用户调整 `BETA_FILTER_THRESHOLD` 设置。此改动旨在提升用户对市场波动的理解,增强策略的灵活性与可用性。
2026-02-25 11:29:06 +08:00
薇薇安
e99f0fc7c2 feat(market_scanner): 增加4H趋势中性允许选项以优化信号处理逻辑
在市场扫描逻辑中引入了配置选项 `AUTO_TRADE_ALLOW_4H_NEUTRAL`,允许在逆势情况下不清零信号强度,便于推荐与列表展示。此改动旨在提升策略灵活性,同时确保策略层仍然禁止逆势自动下单,增强了系统的可用性与用户友好性。
2026-02-25 11:20:17 +08:00
薇薇安
9c620e0aa0 feat(market_scanner): 增加趋势信号强度为零时的提示信息
在市场扫描逻辑中添加了对所有标的趋势信号强度为零的情况的日志记录,避免用户误解为异常。此改动旨在提升用户对市场状态的理解,并指导用户在特定情况下的交易决策。增强了系统的可用性与用户友好性。
2026-02-25 11:10:13 +08:00
薇薇安
9a720b9a19 feat(market_scanner): 增强单个交易对信息日志记录,包含信号强度与价格
更新 `_log_single_symbol` 方法,改进日志记录内容,新增信号强度和价格信息,便于用户判断未触发交易的原因。同时,添加异常处理以确保信号强度的正确转换,提升系统的健壮性与可读性。
2026-02-25 10:48:35 +08:00
薇薇安
9086c15f2e refactor(logging): 改进账户模型中的日志记录级别
将账户模型中的日志记录级别从 info 调整为 debug,以减少日志冗余并提高调试信息的可读性。同时,优化了配置重新加载的日志记录逻辑,确保只记录一次,避免重复日志输出。此改动提升了代码的可维护性与日志管理效率。
2026-02-25 09:31:35 +08:00
薇薇安
163b8303ec feat(spot_order): 增强现货下单API的错误处理与文档说明
在现货下单API中添加了对下单金额的最小限制(5 USDT),并改进了错误处理机制,针对不同的Binance API异常提供了详细的错误信息。更新了API文档说明,确保用户能够更清晰地理解下单逻辑与要求。此改动提升了系统的健壮性与用户体验。
2026-02-25 09:26:29 +08:00
薇薇安
3389e0aafc feat(recommendations): 添加现货推荐扫描与API支持
在后端API中新增现货推荐扫描功能,定时将数据写入Redis缓存,并提供相应的API接口以获取现货推荐。前端组件更新以支持现货推荐的展示与切换,提升用户体验与决策支持。此改动为用户提供了实时的现货推荐信息,增强了系统的功能性与灵活性。
2026-02-25 08:40:52 +08:00
薇薇安
24d01cba0d feat(trade_recommender): 引入4H趋势过滤逻辑以优化交易推荐
在交易推荐系统中新增 `BLOCK_LONG_WHEN_4H_DOWN` 和 `BLOCK_SHORT_WHEN_4H_UP` 配置,允许在4H趋势下跌时禁止开多和在4H趋势上涨时禁止开空。此改动增强了策略的灵活性与风险控制,确保推荐逻辑与市场趋势一致,提升交易决策的准确性。
2026-02-23 17:44:57 +08:00
薇薇安
d42cee2f1a feat(async_handling): 添加任务完成回调以处理异步任务异常
在多个流处理模块中引入 `_task_done_callback` 函数,确保在异步任务完成后能够捕获并记录异常,避免未处理的任务异常导致的潜在问题。此改动提升了系统的稳定性和错误处理能力,确保在执行异步操作时能够更好地管理任务状态。
2026-02-23 15:43:13 +08:00
薇薇安
cddcf35481 feat(config): 添加4H趋势过滤配置以优化交易策略
在配置管理中新增 `BLOCK_SHORT_WHEN_4H_UP` 参数,允许在4H上涨时禁止开空,增强策略灵活性与风险控制。同时,更新前端组件以展示该配置,提升用户体验。此改动确保在不同市场条件下,策略能够更有效地避免逆势操作。
2026-02-22 22:51:36 +08:00
薇薇安
452e40bdf5 feat(config): 添加市场状态方案以优化交易策略
在配置管理中引入市场状态方案,允许在不同市场条件下快速切换策略(如熊市、牛市、正常、保守)。更新相关参数以自动覆盖止损、仓位和趋势过滤设置,增强策略灵活性。同时,前端组件更新以支持市场状态方案的展示与选择,提升用户体验。
2026-02-22 19:15:05 +08:00
薇薇安
fa7208f5f3 feat(binance_order_event_logger, user_data_stream): 优化算法更新字段兼容性
在 `binance_order_event_logger.py` 和 `user_data_stream.py` 中更新了 ALGO_UPDATE 事件的字段处理逻辑,增强了对不同字段名的兼容性,确保在获取算法 ID 和客户端算法 ID 时能够正确解析多种可能的字段。这一改进提升了系统在处理算法订单时的灵活性与准确性。
2026-02-21 22:45:40 +08:00
薇薇安
32c50466f3 feat(binance_client, position_manager, user_data_stream): 增强算法更新处理与日志记录
在 `binance_client.py` 中新增 `client_algo_id` 参数以支持 ALGO_UPDATE 的精确匹配。更新 `position_manager.py` 以生成并缓存 SL_/TP_ 的 `client_algo_id`,确保在止损和止盈时能够正确关联到相应的订单。`user_data_stream.py` 中优化了 ALGO_UPDATE 处理逻辑,优先使用 `clientAlgoId` 进行订单匹配,并在 Redis 中缓存相关信息。这些改进提升了系统在处理算法订单时的准确性与效率。
2026-02-21 22:41:15 +08:00
薇薇安
fc6c31dd5d feat(user_data_stream): 增强订单和算法更新事件的日志记录
在 `user_data_stream.py` 中为 `ORDER_TRADE_UPDATE` 和 `ALGO_UPDATE` 事件添加了日志记录功能,确保在接收到相关推送时能够记录事件信息。这一改进提升了系统的可追踪性和调试能力。
2026-02-21 17:09:41 +08:00
薇薇安
e1759a7f4c feat(market_scanner, config): 增强K线扫描逻辑与预热机制
在 `config.py` 中新增 `SCAN_PREWARM_KLINE_ENABLED` 和 `SCAN_PREWARM_CONCURRENT` 配置,支持在扫描前预热K线数据以提高缓存命中率。更新了 `market_scanner.py` 中的扫描逻辑,添加 `_prewarm_klines_for_scan` 方法,批量预订阅WebSocket和REST预取K线,优化了数据获取效率和分析超时处理。这些改进提升了系统在高并发情况下的响应能力与稳定性。
2026-02-21 12:38:05 +08:00
薇薇安
83a09f24f8 feat(binance_client, listen_key_cache, user_data_stream): 增强 listenKey 创建逻辑与重试机制
在 `binance_client.py` 中将 `create_futures_listen_key` 方法的最大重试次数从 2 增加到 3,并调整了超时设置以提高稳定性。更新了 `listen_key_cache.py` 和 `user_data_stream.py` 中对该方法的调用,确保在创建新的 listenKey 时使用新的重试逻辑。这些改进提升了系统在高并发情况下的可靠性与响应能力。
2026-02-21 11:12:21 +08:00
薇薇安
e4e6e64608 feat(trade, binance_client, position_manager, user_data_stream): 增强待处理记录对账逻辑
在 `models.py` 中新增 `get_pending_recent` 方法,用于获取最近的待处理交易记录。`binance_client.py` 中添加 `get_order_by_client_order_id` 方法,以支持按 `client_order_id` 查询订单。`position_manager.py` 中实现 `_reconcile_pending_with_binance` 方法,增强对待处理记录的对账能力。`user_data_stream.py` 中在重连前执行待处理记录对账,确保系统在断线期间的交易状态得到及时更新。这些改进提升了系统的稳定性与交易记录的准确性。
2026-02-21 11:09:01 +08:00
薇薇安
a371e50a3e feat(config, strategy): 增强多账号错峰扫描逻辑
在 `config.py` 中新增随机延迟配置,允许在多账号环境下实现更灵活的错峰扫描策略。更新了 `strategy.py` 中的相关逻辑,支持随机延迟与固定步长延迟两种模式,提升了系统在低配服务器上的性能与稳定性。此改进有助于优化资源管理与并发处理能力。
2026-02-21 10:47:39 +08:00
薇薇安
3bfbafbab2 feat(binance_client, position_manager): 增强杠杆设置与异常处理逻辑
在 `binance_client.py` 中为杠杆设置添加了网络超时重试机制,确保在请求超时的情况下能够自动重试,提升了系统的稳定性。同时,在 `position_manager.py` 中优化了临时持仓记录的错误日志,增加了异常信息的详细记录,便于后续调试与问题追踪。这些改进增强了系统的可靠性与可维护性。
2026-02-21 10:44:55 +08:00
薇薇安
b588d5b82b feat(position_manager): 增强日志记录,添加账号信息
在 `position_manager.py` 中更新了日志记录,添加了账号 ID 信息,以便于在多账号环境中更好地追踪和管理交易记录。这一改进提升了系统的可维护性和调试能力。
2026-02-21 10:38:32 +08:00
薇薇安
8e0233dd5d feat(position_manager): 增强日志记录,添加账号信息
在 `position_manager.py` 中更新了日志记录,添加了账号 ID 信息,以便于在多账号环境中更好地追踪和管理交易记录。这一改进提升了系统的可维护性和调试能力。
2026-02-21 10:17:53 +08:00
薇薇安
1a9e5a382a 1 2026-02-21 10:12:23 +08:00
薇薇安
418eff6fb7 feat(risk_manager, user_data_stream): 增强多账号支持与缓存逻辑
在 `risk_manager.py` 中新增可用保证金检查,确保在保证金不足时拒绝开仓请求,提升风险控制能力。在 `user_data_stream.py` 中更新缓存填充逻辑,支持多账号隔离,确保 Redis 缓存键按账号区分,避免数据混淆。此更新优化了系统的稳定性与风险管理。
2026-02-21 10:09:59 +08:00
薇薇安
22901abe39 feat(book_ticker_stream, ticker_24h_stream): 引入串行化锁以优化 Redis 写入逻辑
在 `book_ticker_stream.py` 和 `ticker_24h_stream.py` 中新增了串行化锁,确保在写入 Redis 时避免并发合并导致内存膨胀。更新了合并逻辑,限制 Redis 中 USDT 交易对的数量,防止键值无限增长。此改进提升了内存管理与系统稳定性。
2026-02-21 01:09:27 +08:00
薇薇安
174943722a feat(trades, database, binance_client, position_manager, risk_manager): 优化交易记录查询与内存管理
在 `trades.py` 中为获取所有有记录的交易对添加了限制条数的逻辑,避免全表加载。`models.py` 中调整了查询逻辑,未传递 limit 时使用默认上限以防内存暴增。`binance_client.py` 中为交易对信息缓存添加了最大大小限制,确保内存使用合理。`position_manager.py` 和 `risk_manager.py` 中的交易记录查询也进行了条数限制,提升了系统的稳定性与性能。此更新有助于优化内存管理与查询效率。
2026-02-21 00:53:32 +08:00
薇薇安
3ce8493af2 feat(account, stats_dashboard, binance_client, position_manager): 增强开仓时间记录与条件单错误处理
在 `account.py` 中新增 `created_at` 字段以记录开仓时间,并在 `StatsDashboard.jsx` 中更新展示逻辑,优先显示开仓时间或创建时间。`binance_client.py` 中引入 `AlgoOrderPositionUnavailableError` 异常处理,确保在条件单被拒时记录警告信息。`position_manager.py` 中优化了止损单挂单失败的处理逻辑,提升了系统的稳定性与风险控制能力。
2026-02-21 00:24:45 +08:00
薇薇安
7569c88a67 fix(binance_client, position_manager, config): 增强止损与盈利保护逻辑
在 `binance_client.py` 中优化了错误处理,新增对特定错误信息的警告记录,确保在条件单被拒时能够清晰提示。同时,在 `position_manager.py` 中引入了保本止损逻辑,确保在盈利达到一定比例时自动将止损移至含手续费的保本价,提升了风险控制能力。此外,更新了 `config.py` 中的相关配置项,以支持移动止损与保本功能的灵活性。
2026-02-20 23:38:14 +08:00
薇薇安
13a0e7d580 delete: 移除过时的文档与代码文件
删除了多个不再使用的文档和代码文件,包括交易更新推送、条件订单推送、REST API 文档、WebSocket API 文档及相关的策略分析文档。这些文件的移除有助于清理代码库,确保项目的整洁性与可维护性。
2026-02-20 17:49:00 +08:00
薇薇安
f3089fdf7f fix(binance_client): 增强错误处理与止盈价校验逻辑
在 `binance_client.py` 中新增了对特定错误代码的处理,确保在遇到 -4509 和 -4061 错误时能够正确抛出异常。同时,优化了止盈价的合理性校验,确保在无法获取当前价格时,止盈价不低于 0.01,避免因错误数据导致的挂单被拒,提升了交易逻辑的稳定性与风险控制能力。
2026-02-20 17:14:44 +08:00
薇薇安
22830355c6 feat(binance_client): 优化超时设置与错误处理逻辑
在 `binance_client.py` 中调整了 API 请求的超时设置,首次请求超时为 25 秒,后续请求为 35 秒,以适应币安的响应时间。同时,增加了重试机制的等待时间,首次重试为 4 秒,后续重试为 5 秒,确保在网络波动时能更好地恢复。此外,新增了止盈价合理性校验,避免因错误数据导致的挂单被拒,提升了交易逻辑的稳定性与风险控制能力。
2026-02-20 11:23:11 +08:00
薇薇安
9299d70a31 feat(position_manager, database): 添加开仓时间记录功能以优化交易记录
在 `position_manager.py` 中引入了真实开仓时间的获取逻辑,确保在补建交易记录时使用币安的实际开仓时间,避免时间显示为“当前时间”。同时,在 `models.py` 中更新了 `Trade` 类,新增 `entry_time` 参数以存储开仓时间,提升了交易记录的准确性与分析能力。
2026-02-20 00:51:31 +08:00
薇薇安
2c5524bdcf feat(binance_client, config): 添加单向持仓模式配置以优化交易逻辑
在 `binance_client.py` 中引入了 `ONE_WAY_POSITION_ONLY` 配置,确保在单向持仓模式下不传递 `positionSide`,避免对冲模式检测。同时,更新了 `config.py`,新增该配置项以支持该功能,提升了交易策略的灵活性与风险控制能力。
2026-02-20 00:40:23 +08:00
薇薇安
bfe3d8ec75 feat(binance_client, position_manager): 优化对冲模式处理与持仓检查逻辑
在 `binance_client.py` 中增强了对冲模式的处理逻辑,添加了对对冲模式检测失败的处理,确保在尝试单向模式失败后再尝试对冲模式。同时,在 `position_manager.py` 中引入了持仓存在性检查,避免因持仓不存在或方向不匹配导致的错误,提升了系统的稳定性与风险控制能力。
2026-02-20 00:36:09 +08:00
薇薇安
d31c44a22a feat(position_manager, config): 添加早止盈功能以优化山寨币交易策略
在 `position_manager.py` 中实现了早止盈逻辑,允许在盈利达到一定比例且持仓时间超过指定小时数时,自动市价止盈,避免反转风险。同时,在 `config.py` 中新增相关配置项以支持该功能,提升了交易策略的灵活性与风险控制能力。
2026-02-20 00:33:28 +08:00
薇薇安
43daa922a4 feat(position_manager): 优化止损与止盈逻辑,确保实际止损距离与盈亏比计算一致
在 `position_manager.py` 中更新了止损和止盈计算逻辑,确保使用实际止损距离进行盈亏比的计算,避免因保证金封顶导致的止盈不合理。同时,新增止盈上限配置,防止止盈距离过大。此改动提升了交易策略的准确性与风险控制能力。
2026-02-19 18:30:23 +08:00
薇薇安
be43ec1c33 feat(kline_stream): 优化 Redis 数据处理逻辑与内存管理
在 `kline_stream.py` 中改进了 Redis 数据处理逻辑,避免每条消息都从 Redis 获取全量数据,减少内存占用。通过复用待处理列表,提升了性能并降低了内存使用。更新了缓存管理机制,确保在有 Redis 时优先使用其进行数据存储,进一步优化了系统的内存使用效率与稳定性。
2026-02-19 09:23:53 +08:00
薇薇安
95867e90f8 feat(redis_cache, binance_client, market_scanner, position_manager, ticker_24h_stream, book_ticker_stream): 引入 Redis 缓存机制以优化数据读取与内存管理
在多个模块中实现 Redis 缓存机制,优先从 Redis 读取数据,减少进程内存占用。更新 `binance_client.py`、`market_scanner.py`、`position_manager.py`、`ticker_24h_stream.py` 和 `book_ticker_stream.py`,确保在有 Redis 时优先使用其进行数据存储,降级到内存缓存。调整缓存管理逻辑,限制进程内缓存的最大条数为 500,避免内存无限增长。此改动提升了数据访问效率,优化了内存使用,增强了系统的整体性能与稳定性。
2026-02-19 00:45:56 +08:00
薇薇安
f4feea6b87 feat(ticker_stream, book_ticker_stream): 优化内存管理与Redis写入逻辑
在 `ticker_24h_stream.py` 和 `book_ticker_stream.py` 中引入新的内存管理机制,限制进程内缓存的最大条数为 500,避免内存无限增长。更新 Redis 写入逻辑,确保在有 Redis 时优先写入 Redis,而不在进程内存中常驻数据。通过定期从 Redis 拉取数据并合并,提升了系统的内存使用效率与稳定性,同时优化了日志记录以减少高负载时的输出频率。此改动进一步增强了系统性能与资源管理能力。
2026-02-19 00:34:35 +08:00
薇薇安
a498520c51 feat(kline_stream): 优化 Redis 写入逻辑与内存管理
在 `kline_stream.py` 中增强了 Redis 写入机制,限制待处理队列大小以防止无限增长,并在 Redis 处理失败时降级到进程内存。更新了缓存管理逻辑,确保在有 Redis 时优先使用 Redis 进行数据存储,提升了系统的内存使用效率与稳定性。同时,调整了日志记录以减少高负载时的输出频率。此改动进一步优化了消息处理与系统性能。
2026-02-19 00:26:34 +08:00
薇薇安
59e25558cd feat(redis_cache, kline_stream, user_data_stream, risk_manager): 优化缓存机制与内存管理
在多个模块中引入 Redis 作为主要缓存机制,减少进程内存占用。更新 `binance_client.py`、`kline_stream.py`、`user_data_stream.py` 和 `risk_manager.py`,实现优先从 Redis 读取数据,降级到内存缓存。调整缓存 TTL 和最大条数,确保系统稳定性与性能。此改动提升了数据访问效率,优化了内存使用,增强了系统的整体性能。
2026-02-19 00:19:54 +08:00
薇薇安
80872231a5 feat(kline_stream, diagnostics): 增强 K线缓存管理与系统负载诊断功能
在 `kline_stream.py` 中新增缓存清理机制,限制缓存总大小并定期清理过期条目,防止内存无限增长。更新 `backend/诊断负载.sh` 脚本,优化系统负载检查逻辑,提供更详细的进程与日志信息,提升用户对交易服务状态的监控能力。此改动增强了系统的稳定性与性能。
2026-02-19 00:06:23 +08:00
薇薇安
7139b5de76 feat(trades, database): 增强订单同步与记录完善逻辑
在 `trades.py` 中更新 `sync_trades_from_binance` 方法,确保使用当前账号的 API 密钥进行订单同步,并优化了日志记录以反映同步状态。新增自动全量同步逻辑,处理无记录情况下的补全需求。更新 `database/models.py` 中的 `update_pending_by_entry_order_id` 方法,提供兜底机制以完善 pending 记录,确保在缺失 clientOrderId 时仍能更新交易状态。此改动提升了交易记录的完整性与系统的稳定性。
2026-02-18 22:11:06 +08:00
薇薇安
44458dca90 feat(kline_stream): 优化消息处理与Redis写入逻辑
在 `kline_stream.py` 中引入并发限制,使用信号量控制同时处理的消息数量,避免任务堆积导致性能下降。优化消息处理为异步方法,减少事件循环阻塞。增加批量写入Redis的机制,降低写入频率,提升系统性能与稳定性。同时,调整日志记录频率,减少高负载时的日志输出。此改动显著提升了消息处理效率与系统的响应能力。
2026-02-18 00:52:45 +08:00
薇薇安
c9d9836df5 feat(kline_stream, market_scanner, config): 优化 K线订阅逻辑与缓存机制
在 `config.py` 中新增 `SCAN_LIMIT_KLINE_SUBSCRIBE` 配置,限制 K线订阅数量以降低负载。更新 `kline_stream.py`,引入订阅统计与数量限制,避免过多订阅导致性能问题。修改 `market_scanner.py`,优化 K线数据获取流程,优先使用已有缓存,减少不必要的订阅。此改动提升了系统的稳定性与性能。
2026-02-18 00:36:44 +08:00
薇薇安
0a7bb0de2d feat(user_data_stream, binance_client): 优化 listenKey 管理与缓存机制
在 `user_data_stream.py` 中更新 `start` 方法,优先从缓存获取 listenKey,避免重复创建。增强了错误处理和日志记录,确保在缓存不可用时能够回退到创建新 key 的逻辑。更新 `binance_client.py` 中的 `create_futures_listen_key` 方法,新增重试机制以提高稳定性。此改动提升了 listenKey 管理的灵活性和系统的性能。
2026-02-18 00:11:54 +08:00
薇薇安
a404f1fdf8 feat(binance_client, market_scanner): 优化 K线数据获取逻辑与缓存机制
在 `binance_client.py` 中更新 `get_klines` 方法,新增多账号共享 Redis 缓存机制,提升 K线数据获取效率,减少 REST API 调用。优化日志记录,确保清晰反馈缓存来源。更新 `config.py`,引入 `SCAN_PREFER_WEBSOCKET` 配置,优先使用 WebSocket 获取数据。修改 `market_scanner.py`,增强 K线数据获取流程,优先从共享缓存读取,确保数据完整性与实时性。此改动提升了系统的性能与稳定性。
2026-02-17 23:59:31 +08:00