diff --git a/.gitignore b/.gitignore index 0dc5c6c..2861ef6 100644 --- a/.gitignore +++ b/.gitignore @@ -31,6 +31,10 @@ research/live/cache/ # Scratch outputs from short shakedown runs, superseded by the real collection. research/out/archive/ +# Per-trade simulation dumps from research/step*.py. 70MB+ and regenerable by +# rerunning the step; the summaries they feed live in HANDOFF.md. +research/out/*.feather + # Virtualenvs. venv writes its own .gitignore since 3.11, but only for the # directory it creates — declare it here so other layouts are covered too. .venv/ diff --git a/research/HANDOFF.md b/research/HANDOFF.md index 305dde1..1c9a086 100644 --- a/research/HANDOFF.md +++ b/research/HANDOFF.md @@ -62,6 +62,45 @@ run_trades(cdf, entries, SL, TP, MAX_BARS, fee=..., entry_delay=1) - 研究口径成本:**4bp 手续费 + 1bp 滑点 = 5bp**(所有带「已扣 5bp」的数字都是这个) - ATR 取信号根的值(`atr[sig_idx]`),不是入场根 +> ⚠️ **TP=3.0 已被证明偏小(step41/42,见 3.5 与 5.3)**,且出场参数要按级别分开定。 +> 本文档所有历史数字仍是 TP=3.0 口径,**改口径前不要混用**。 + +#### 成本模型:不是一刀切的 5bp(用户 2026-08-27 指出) + +用户指出「只有开仓才是 taker」。对了一半——**止盈挂限价确实是 maker, +但止损是 stop-market,成交时仍是 taker**(做成 stop-limit 会有急跌不成交的 +风险,那种损失远大于省下的费)。所以按出场原因分别计费。 + +**实际费率档位(用户 2026-08-27 给的,单边):返佣前 taker 0.040% / +maker 0.016%,API 返 50% → taker 2.0bp / maker 0.8bp。** + +| 环节 | 性质 | 单边费率 | +|---|---|---| +| 入场(次根开盘市价) | taker + 滑点 | **2.0bp** | +| 止盈(限价被动成交) | **maker,无滑点** | **0.8bp** | +| 止损(stop-market) | taker + 滑点 | 2.0bp | +| 超时(到点市价平) | taker + 滑点 | 2.0bp | + +> ⚠️ **step41/42 首轮跑的时候这里写的是 taker 3.0 / maker 1.0bp**, +> 隐含「原始 taker 6bp、返 50% 得 3bp」的错误前提。真实原始是 4bp。 +> **方向是保守的**——taker 高估了 50%,所以那两步跑出来的净收益、 +> 滑点余量、均R 全部偏低,不是偏高。`exit_model.py` 已改成实际值, +> 但**本文档里凡是标注「旧费率 3/1bp」的数字尚未逐条重算**。 + +`SL1.5/TP3/48根` 1m 样本外实测(止盈成交占 60%): + +| 口径 | 平均成本 | 说明 | +|---|---|---| +| 全 taker 双边 | 8.00bp | 最早的口径,双重高估 | +| 混合费率 @ 3/1bp | 6.20bp | step41/42 首轮 | +| **混合费率 @ 实际 2/0.8bp** | **2.00bp** | 当前 | +| 研究口径 固定 5bp | 5.00bp | §2 那批老数字 | + +**注意方向变了:研究口径的 5bp 现在是偏保守的。** 实际混合费率只有 2bp。 +实现在 `research/lib/exit_model.py`,step41/42 共用。 +**分批离场不额外增加费用**(手续费按名义额收,出场 0.5+0.5 总额不变), +而且第一批必然是止盈成交,所以分批在成本上还占便宜。 + ### 1.4 阶梯过滤(顺向推进) 对应缠论「趋势 vs 盘整」:当前中枢相对前一个中枢是否同向推进。 @@ -165,6 +204,38 @@ push = z_above if direction == 1 else z_below - **持仓重叠**(step35 §3-4):单腿平均并发 0.01,组合 9 腿平均并发 0.1, 有仓位时间仅 8.6% → t 值没被虚高,各笔基本独立 +### 3.35 跨 venue:信号身份不迁移,但总体期望迁移(live 前置测量) + +**回测全部跑在 Binance 数据上,实盘要在 Bitget 成交。** 服务器侧的 +`research/live/venue_parity.py` 把这件事量了: + +| 品种 | Bitget信号 | Binance信号 | 同根重合 | +|---|---|---|---| +| BTC | 47 | 38 | 42.6% | +| ETH | 39 | 35 | 28.2% | +| SOL | 48 | 29 | **14.6%** | + +(5m 同向过滤后口径。SOL 差得最多是因为 tick 粗细不同:Bitget 0.001、 +Binance 0.01,粗 10 倍会让 `close > high[j-1]` 大量平局不触发, +Bitget 上信号多出 74%。**这是系统性差异,不是随机扰动。**) + +`signal_sensitivity.py` 进一步显示 **0.25bp 的数据扰动就能换掉一半信号**。 + +但 `aggregate_robustness.py` 的结论是:**总体期望不塌**。 +加 0.5 / 1 / 2bp 噪声重跑,毛均收益与 PF 都在原区间内摆动,没有单调恶化。 + +> **脆的是信号身份,不是 alpha。** 这决定了两件事: +> 一、滑点**不能逐笔对照 Binance 回测**,只能对照同一 venue 上的总体毛均收益; +> 二、影子测量必须跑在生产路径上(Bitget 原生数据 + Hummingbot), +> 换个运行时测出来的数就不作数。 + +同窗口 Bitget vs Binance 毛均收益(210 天、TP=3.0 口径): +BTC 5.87 vs 6.09、ETH 10.02 vs 12.06、SOL 8.92 vs 9.87bp。 +**Bitget 一致略低 0.2~2bp,但没有量级差异,总体口径可迁移。** + +⚠️ 上面那批数字用的是 `毛均收益 − 6.0bp`、只有同向过滤、`TP=3.0`, +**不能直接当预算用**,正确的逐币预算见 `lib/shadow_budget.py` 与 5.3。 + ### 3.4 alpha 的来源(step32 消融) 逐条拆掉 `fast_bsp3` 的条件后发现:**alpha 完全来自缠论中枢的上下文定位, @@ -173,6 +244,122 @@ push = z_above if direction == 1 else z_below 这个结论回答了用户当时的问题(「如果有这个,那就可以去判断任何笔的端点了」): **不能**。脱离中枢上下文,那个触发条件没有预测力。 +### 3.5 出场:TP=3.0 把右尾截早了(step41) + +起因是用户看图指出「止盈没做好」。查下来确实如此。 + +先量 MFE(每笔在被止损打掉之前最远走到几个 ATR): + +| 分组 | 级别 | 笔数 | 中位 MFE | ≥3ATR | ≥5ATR | ≥8ATR | +|---|---|---|---|---|---|---| +| 样本内 | 15m/30m/5m | 2309 | 3.66 / 4.30 / 4.27 | 55~62% | 41~45% | 23~28% | +| 样本外 | 15m/30m/5m | 5859 | 4.08 / 3.80 / 4.30 | 57~61% | 42~45% | 25~28% | + +**中位数就已经高于 TP=3**,样本内外一致。抬高 TP 的样本外结果: + +| 出场 | 胜率 | 均收益 | 中位 | PF | t值 | 剔10%PF | 均持仓 | +|---|---|---|---|---|---|---|---| +| tp3(现用) | 62.6% | +0.559% | +0.588% | 2.71 | +28.31 | 1.64 | 11.2 | +| tp4 | 58.7% | +0.692% | +0.579% | 2.95 | +29.24 | 1.71 | 15.3 | +| **tp5** | 56.5% | **+0.783%** | +0.485% | **3.12** | **+29.36** | **1.75** | 18.8 | +| tp6 | 55.3% | +0.860% | +0.369% | 3.28 | +29.17 | 1.77 | 21.7 | +| tp8 | 54.1% | +0.983% | +0.284% | 3.56 | +28.27 | 1.78 | 25.7 | + +- **8 个样本外币逐个看,均收益与 PF 全部提升**;2020~2026 七年 PF 也全部提升 +- 剔掉最好 10% 后 PF 仍从 1.64 升到 1.75 → 不是几笔暴利撑起来的 +- t 值在 tp5 见顶(+29.36)后走平,tp6/tp8 靠的是越来越薄的右尾 +- 基线复现校验:step41 的 tp3 = 5859 笔 / PF 2.71 / t +28.31 / 剔10% 1.64, + 对上 §2.2 的 2.73 / +28.50 / 1.66,差在千分位(同根内止损与新高并存时保守 + 假定止损先到),说明对比是在正确基线上做的 + +**代价不是零**:胜率 62.6%→56.5%,中位 +0.588%→+0.485%(过半单子变差, +输在「摸到 3ATR 没走到 5ATR 又反手止损」那批),**平均持仓 11.2→18.8 根**, +§3.3 的并发数据需重算。心理上也更难拿。 + +#### 分批离场更优(用户提的方案,改一处后成立) + +用户方案:到 3 ATR 平一半 + 止损移到开仓价,剩下跑到大目标。 +**前两步对,「止损移到开仓价」是错的。** 用户随后要求把剩余半仓的止损位 +也扫一遍(0 / 0.5 / 1 / 1.5 / 2 ATR),结果**严格单调,三组初始 SL 全一致**: + +样本外 5859 笔,初始 SL1.5、分批→8 ATR、48 根: + +| 剩余半仓止损位 | 净均收益 | 中位 | PF | t值 | 剔10%PF | +|---|---|---|---|---|---| +| 保本损(0) | +0.611% | +0.420% | 2.81 | +25.66 | 1.50 | +| 留损 0.5 ATR | +0.688% | +0.455% | 3.03 | +27.65 | 1.65 | +| 留损 1.0 ATR | +0.732% | +0.475% | 3.17 | +28.64 | 1.74 | +| **留损 1.5 ATR(不动)** | +0.754% | +0.498% | 3.23 | +29.25 | 1.79 | +| 留损 2.0 ATR(放宽) | +0.762% | +0.510% | 3.25 | +29.48 | 1.81 | + +**没有中间最优点,越松越好,但增量在「不动」处饱和**: +保本→0.5 加 0.077%,0.5→1 加 0.044%,1→1.5 加 0.022%,1.5→2 只加 0.008%。 +所以**止损保持原位即可,放得比原止损更宽是拿实打实的风险换千分之一的收益**。 + +机理与移动止损失败同源(§4):回抽到成本价是突破后的正常结构,不是信号失效。 +信号已用「摸到 3 ATR」自证,此时收紧止损等于用最坏价格淘汰掉最好的单子。 + +**胜率与整仓 TP3 完全相同是结构决定的**:摸到 3 ATR 的单子在分批下必然是赢家 +(半仓 +3 ATR,剩余半仓最坏 −1.5 ATR,净 +0.75 ATR)。这正是分批相对整仓 +高 TP 的价值——同一批单子在整仓 TP5 下会变成 −1.5 ATR 的亏损。 + +#### 初始 SL 扫描:必须用 R 倍数口径,否则会把仓位差异算成策略优势 + +用户要求扫 1 / 1.5 / 2 ATR 初始止损。**百分比收益会误导**:SL 越宽每笔风险越大, +固定风险仓位下仓位越小,raw % 里 SL2 看着比 SL1.5 好 68%,其中大半是仓位效应。 + +样本外,分批→8 ATR、留损=初始 SL、48 根,§2.3 的 1%风险 + 20倍上限 + 复利: + +| 配置 | 均R | R夏普 | 最差1%R | 平均杠杆 | 最大回撤(样本外/内) | Sharpe(外/内) | +|---|---|---|---|---|---|---| +| 现用 SL1.5 整仓TP3 | +0.722 | 0.494 | −1.55 | 1.97x | 12.1% / 11.9% | 14.79 / 8.33 | +| SL1.0 分批→8 | +1.023 | 0.381 | −1.93 | 2.70x | 16.0% / 14.7% | 11.36 / 6.72 | +| **SL1.5 分批→8** | **+1.023** | 0.530 | −1.55 | 1.97x | 13.5% / 9.4% | 15.79 / 9.30 | +| **SL2.0 分批→8** | +0.943 | **0.638** | **−1.37** | 1.53x | 13.1% / **6.4%** | **19.00 / 11.35** | + +- **SL=1.0 明确最差**:均R 与 SL1.5 打平,但 R夏普 只有 0.381、回撤最大、 + 最差单笔 −1.93R。止损太紧被噪声打掉,和 §3.2「滞后是第一驱动」是一类问题 +- **SL=1.5 期望值最高**(均R 1.023),**SL=2.0 风险调整最好** + (R夏普 0.638、回撤 6.4%、Sharpe 11.35,样本内外一致) +- SL2 只让出 8% 的单位风险期望,换来 20% 更高的 R夏普和更好的最差单笔。 + **纠正一次误判:修正仓位效应后 SL=2.0 仍然占优,不是纯粹的仓位错觉** +- 按剔10%PF 排全网格,前 14 名全是 SL=2 的分批配置, + 第一名 `SL2 分批→8ATR 留损2 48根`:剔10%PF 2.26(现用 1.59)、 + 净 +0.920%、PF 3.84、滑点余量 61.79bp(现用 40.05bp) +- 该配置样本外 **8/8 币、7/7 年**对现用全面提升,无例外 + +> 上表的年化数字是 §2.3 的口径 A(复利+杠杆),且把 8 个币当一个账户串起来算, +> 严重虚高,**故意不记录**。只有回撤、Sharpe、R 这些比值可以横向比。 + +#### 换成实际费率(2/0.8bp)后:几乎没变 + +step41 首轮跑的是错误的 3/1bp(见 §1.3),已用实际费率重算分析段 +(feather 存的是毛收益+出场原因,不必重跑模拟): + +| 组 | 口径 | 平均费 | 净均收益 | 余量bp | 剔10%PF | 均R | +|---|---|---|---|---|---|---| +| 样本外 | 现用 SL1.5/TP3/48 | 3.00→**2.00bp** | 0.579→**0.589%** | 41.34→**42.05** | 2.01→2.05 | 0.790→0.811 | +| 样本外 | 最优 SL2 分批→8 留损2/48 | 4.45→**3.01bp** | 0.941→**0.955%** | 62.17→**63.13** | 2.69→2.75 | 0.975→0.998 | +| 样本内 | 最优 SL2 分批→8 留损2/48 | 4.43→**2.99bp** | 0.866→**0.881%** | 57.15→**58.10** | 2.91→2.98 | 0.960→0.984 | + +**结论一个都没变,量级也没变**(余量动了 2%)。原因还是那条: +成本固定在 bp、目标随 ATR 缩放,所以**费率只对 1m 有杠杆**—— +同一次改动在 1m 上把均R 抬了 8%,在这里只有 2%。 + +#### ATR 门控在这三条腿上是惰性的 + +1m 上有效的 `ATR ≥ 8bp` 门控(见 5.3),搬到这里几乎不触发: + +| 级别 | ATR中位 | <8bp 占比 | 门控后保留 | 均R 变化 | +|---|---|---|---|---| +| 5m | 33.6bp | 2.60% | 97.4% | 1.007 → 1.006 | +| 15m | 60.2bp | 0.16% | 99.8% | 0.995 → 0.992 | +| 30m | 82.5bp | 0.00% | 100% | 0.947 → 0.947 | + +**无害也无用**,所以可以当全局规则统一写进执行层,不必按级别分叉: +`ATR ≥ 5 + 1.1 × taker费(bp)`,当前费率下即 ≥ 8bp。 +它只在 1m 上真正起作用(那里 21.5% 的信号在阈值以下)。 + --- ## 4. 已验证无效 / 不要重做的方向 @@ -180,9 +367,12 @@ push = z_above if direction == 1 else z_below | 方向 | 结论 | 出处 | |---|---|---| | 动态止盈(小级别三买后等大级别三买再调止盈) | 无效。持仓期太短(8~13 根),大级别确认来得太罕见 | step27 | +| 移动止损(1.5 ATR 跟踪距离) | 明显劣于固定 TP:样本外 PF 2.32、剔10%PF 0.94(TP=3 是 2.71/1.64)。突破后的正常回抽就能把它洗出去,和 §3.2「滞后是第一驱动」同源 | step41 | +| **分批后收紧剩余半仓的止损(保本损及一切更紧的位置)** | 直觉上该做,数据上是负的。止损位 0/0.5/1/1.5/2 ATR 严格单调,越紧越差,三组初始 SL 全一致:保本损比不动少赚 0.14%/笔,剔10%PF 从 1.79 塌到 1.50。与移动止损同源——回抽到成本价是正常结构,不是信号失效。**分批要做,止损保持原位** | step41 §3.5 | +| 初始止损收到 1.0 ATR | 5m/15m/30m 上均R 与 1.5 打平但 R夏普 只有 0.381(1.5 是 0.530)、回撤 16.0%、最差单笔 −1.93R。**1m 上更极端**:剔10%PF 0.78~0.99、中位收益 −0.122%、回撤 25.5%。1 ATR 就是噪声宽度 | step41/42 | | 同一中枢重复入场(二次、三次) | 质量骤降,**只做首次** | step25 | -| 缠论引擎原生 `find_all_bsp` 的 B3/S3 | 因 `is_sure` 确认滞后,统计上呈逆势、显著亏损。几何位置没错,但实时不可用 | step30/31 | -| 刷交易额换 VIP 费率 | 成本收益不划算,见 5.3 | step23 | +| 缠论引擎原生 `find_all_bsp` 的 B3/S3 | 统计上呈逆势、显著亏损:胜率 27.4%(低于 SL1.5/TP3.0 的随机基准 33%)、PF 0.66、t −18.76。**不是滞后造成的**——同一组过滤器把 B4 从 1.59 提到 2.26,对它无效(0.66→0.71),且入场后移 1~4 根只是平滑衰减。它几乎不筛(627 个中枢发 625 个信号),把「价格早已离开、再没回来」的历史区间也当信号发出来。B4/S4 因此单独立类,不是它的提前版 | step30/31 | +| 刷交易额换 VIP 费率 | 成本收益不划算,见 5.3。**但前提已变**:该结论算于「原始 taker 6bp、全 taker、TP=3.0、无门控」,四个前提现在全不成立(实际 2/0.8bp、混合费率、分批出场、有 ATR 门控)。已在返 50% 的档位上,继续压缩的空间本就有限,但**若要重估需重跑,不要直接引用旧结论** | step23 | | 线段(`Chan_XD`)做大级别 | 滞后太大,且中枢极少 | 早期,用户也这么说 | --- @@ -238,6 +428,11 @@ push = z_above if direction == 1 else z_below 按 Bitget 真实费率算滑点预算: +> ⚠️ **下表的费率档位是错的**:它假设原始 taker 0.12%、返 50% 得 0.060% 双边。 +> 实际是原始 taker 0.040% / maker 0.016%,返 50% 后 taker 2.0bp / maker 0.8bp +> (见 §1.3)。整张表连同下面那张「四条腿对比」都**只保留跨级别的相对关系**, +> 绝对数字全部作废。 + | 档位 | 双边费率 | PF=1 滑点上限 | t>2 实用上限 | |---|---|---|---| | VIP1 taker + API 返50% | 0.060% | **3.9bp** | ~2.5bp | @@ -256,8 +451,162 @@ push = z_above if direction == 1 else z_below **1m 和 30m 的余量差 23 倍。** -> **重要判断:1m 若失败,唯一的结论是「执行成本超了 3.9bp」, -> 绝不能拿它去否定 5m/30m。** 三条腿的成本敏感度不在一个量级上。 +> **重要判断:1m 若失败,绝不能拿它去否定 5m/30m。** +> 三条腿的成本敏感度不在一个量级上。 + +#### ⚠️ 上面的 3.91bp 已被 step42 推翻:那是 30m 的参数套在 1m 上量出来的 + +用户指出:`SL1.5/TP3.0/MAXB48` 是在 5m/15m/30m 上定的,1m 不该混用。 +**成本固定 5bp,而目标随 ATR 缩放**,1m 的 3 ATR 只有 0.39%、30m 是 1.87%, +成本占比差 5 倍,最优 TP 不可能相同。查证后确实如此,而且原因比成本更根本: + +| 级别 | MFE 中位 | ≥6 ATR | ≥10 ATR | +|---|---|---|---| +| **1m** | **5.16 ATR** | **46.1%** | **28.6%** | +| 5m | 4.29 | 37.8% | 18.6% | +| 15m | 3.98 | 34.7% | 17.0% | +| 30m | 3.94 | 36.6% | 18.7% | + +**1m 以 ATR 计的右尾是其他级别的两倍。** 机理:1m 的 ATR 量的是分钟级噪声, +但信号一旦成立抓到的是几小时级别的趋势,所以「行程 / ATR」比值天然更大; +30m 的 ATR 本身已经吃进了一部分趋势。所以 TP=3 ATR 在 1m 上是个远比在 30m 上 +更紧的目标——**这不是调参问题,是量纲问题**。 + +(MFE 本身也随初始止损变化,止损越松活得越久、右尾越长: +1m 上 SL1.0 中位 2.37 ATR、SL1.5 是 5.16、SL2.0 是 6.73。 +所以 TP 和 SL 必须一起定,不能固定一个扫另一个。) + +#### 1m 全网格重测(step42,11 币 × 7 年,25476 笔) + +> ⚠️ 本小节的表用的是**旧费率 3/1bp**(跑的时候费率档位写错了,见 §1.3)。 +> 实际是 2/0.8bp,所以下面所有净收益、余量、均R **都偏保守**。 +> 用实际费率重算的版本在再下一小节,**决策请用那一版**。 + +扫描空间:`SL ∈ {1.0, 1.5, 2.0}` × `TP ∈ {2,3,4,5,6,8,10,12}` × +`MAXB ∈ {48, 96}` × 分批(3 ATR 减半 → 剩余目标 {5,6,8,不设} × 留损 {0,0.5,1,1.5,2})。 + +**结论与 5m/15m/30m 同向,但幅度更大,且 1m 上没有取舍——最优解在每个指标上都赢。** + +样本外(8 个未调参币,17734 笔): + +| 口径 | 胜率 | 毛bp | 净均收益 | 中位 | PF | 剔10%PF | **滑点余量** | 均R | R夏普 | 最大回撤 | 均持仓 | +|---|---|---|---|---|---|---|---|---|---|---|---| +| 现用 SL1.5 / 整仓TP3 / 48根 | 60.8% | 20.27 | +0.141% | +0.169% | 2.09 | 1.24 | **11.06bp** | +0.434 | 0.274 | 14.7% | 9.7 | +| SL1 分批→8ATR 留损1 / 48根 | 45.9% | 20.29 | +0.133% | −0.122% | 2.01 | 0.96 | 9.07bp | +0.649 | 0.225 | 25.5% | 17.5 | +| SL1.5 分批→8ATR 留损1.5 / 48根 | 58.9% | 28.60 | +0.219% | +0.132% | 2.70 | 1.49 | 15.12bp | +0.781 | 0.376 | 14.1% | 23.7 | +| **SL2 分批→8ATR 留损2 / 48根** | 67.6% | 34.90 | **+0.284%** | +0.233% | **3.41** | **2.01** | **20.12bp** | **+0.792** | **0.500** | **12.6%** | 28.4 | + +(滑点余量口径已改:分子是毛收益减实际手续费,分母是 taker 名义额, +即**每条 taker 腿能承受多少滑点**。旧表按双边固定 6bp 扣、不除 taker 腿, +所以数字偏大——上一版写的 14.27bp 就是旧口径,与 11.06bp 是同一件事的两种算法。) + +- **滑点余量 11.06 → 20.12bp,接近翻倍**;均 R +0.434 → +0.792(+82%) +- **8/8 样本外币、7/7 年份全部提升**,无例外。最弱的 2026 年: + 现用余量 4.69bp / 剔10%PF 0.92(已跌破 1),最优 9.84bp / 1.45 +- 样本内同向:净 +0.100% → +0.221%,剔10%PF 1.07 → 1.72,回撤 19.7% → 10.2% +- **`MAX_BARS=48` 不用改**:1m 上 96 根在同配置下一致略差(剔10%PF 2.01 → 1.95), + 这点与 5m/15m/30m 不同,是 1m 唯一沿用原参数的地方 +- 纯整仓高 TP(TP8/TP10)毛收益更高(44~47bp)但胜率跌到 59~60%、 + 中位收益反而更低;分批版 PF 与剔10%PF 更好,是更稳的那一侧 + +**1m 上 SL=1.0 是废的**(比其他级别更明确):剔10%PF 只有 0.78~0.99, +中位收益 −0.122%(一半以上的交易是亏的),最差 1% 到 −3.69R,回撤 25.5%。 +1 ATR 在 1m 上就是噪声宽度,止损放在噪声里必然被反复扫。 + +**减仓后剩余半仓的止损位——三组初始 SL 下都是同一条单调曲线:** + +| 初始SL | 保本损(0) | 留损0.5 | 留损1 | 留损1.5 | 留损2 | +|---|---|---|---|---|---| +| SL1.0 剔10%PF | 0.78 | 0.91 | 0.96 | 0.98 | **0.99** | +| SL1.5 剔10%PF | 1.23 | 1.38 | 1.45 | 1.49 | **1.50** | +| SL2.0 剔10%PF | 1.68 | 1.86 | 1.95 | 2.00 | **2.01** | + +**越松越好,到「不动」(= 初始 SL)为止基本饱和**,再放宽只有 +0.01 的边际。 +保本损在 SL2 上直接砍掉 0.33 的剔10%PF,是全表最差的一档。 +结论与 5m/15m/30m 完全一致:**减仓后不要动止损**。 + +#### 逐年余量在衰减——那是波动率压缩,不是 alpha 衰减 + +用户看到余量逐年递减后提的假设:「是不是跟波动率有关,2026 是熊市、2025 是牛市」。 +**查证成立,而且相关性高到接近恒等式。** + +`余量bp` 与 `当年 ATR 中位数` 的跨年相关系数 **r = +0.989**(n=7)。 + +| 年 | ATR中位 | 毛bp | **毛/ATR** | 余量bp(旧费率) | 均R | +|---|---|---|---|---|---| +| 2020 | 16.3 | 39.8 | 2.44 | 23.98 | 0.939 | +| 2021 牛 | **22.1** | 58.7 | 2.65 | **36.49** | 1.031 | +| 2022 | 15.4 | 36.5 | 2.37 | 21.30 | 0.876 | +| 2023 | 9.8 | 24.9 | 2.53 | 13.88 | 0.846 | +| 2024 | 11.7 | 31.3 | 2.67 | 18.07 | 0.877 | +| 2025 | 11.6 | 27.8 | 2.40 | 15.76 | 0.883 | +| 2026 熊 | **8.8** | 19.8 | 2.26 | **10.28** | 0.713 | + +**关键是「毛/ATR」列:2.26~2.67,七年无趋势。** 信号质量以 ATR 计几乎没衰减。 +衰减的是 ATR 本身——2021 的 22.1bp 压到 2026 的 8.8bp,掉了 60%。 +余量是 bp 口径,自然跟着掉。这就是 §5.3 的论证从跨级别搬到跨时间: +**成本固定在 bp,目标随 ATR 缩放**。低波动年份等于「1m 变得更像 1m」。 + +保留意见:2026 的毛/ATR 2.26 与余量/ATR 1.17 都是七年最低, +**可能还有一点真衰减**,但 8 个月 1682 笔分不出是噪声还是趋势。 + +#### ATR 门控:低 ATR 的信号毛质量不差,是被固定成本吃掉的 + +按信号根 ATR 分桶看**毛** R(零成本口径),结论与直觉相反: + +| ATR桶 | 毛R | 净R @2/0.8bp | 净R @6/2bp | +|---|---|---|---| +| <6bp | **1.156** | — | 0.025 | +| 6-8 | **1.160** | — | 0.527 | +| 8-10 | 1.227 | — | 0.736 | +| 12-15 | 1.203 | — | 0.870 | +| >30 | **0.940** | — | 0.829 | + +**低 ATR 桶的毛 R 不但不差,还是最高的一批**(1.16 vs 高 ATR 桶的 0.94)。 +断崖只在扣费之后出现。所以「低波动时段信号变差」是错的说法, +正确说法是**固定成本在低波动时占比过大**。 + +**推论:门控阈值是费率的函数,不是市场常数。** 换 VIP 档 / 换返佣 / +换交易所都要重算,不能抄: + +| 单边 taker | 最优 ATR 阈值 | +|---|---| +| 0(假想) | 5bp | +| 1.5bp | 8bp | +| 3bp | 9bp | +| 6bp | 12bp | + +大致 `阈值 ≈ 5 + 1.1 × taker费(bp)`,亚线性。 + +#### 实际费率(2/0.8bp)下的最终口径——**决策用这一版** + +| 口径 | 笔数 | 平均费 | 净bp | 余量bp | PF | 剔10%PF | 均R | R夏普 | +|---|---|---|---|---|---|---|---|---| +| 现用 SL1.5/TP3/48 | 17734 | 2.00bp | 18.3 | 13.06 | 2.73 | 1.96 | 0.702 | 0.482 | +| 最优 SL2 分批→8 留损2/48 | 17734 | 2.99bp | 31.9 | 21.45 | 4.18 | 2.85 | 0.958 | 0.639 | +| **最优 + ATR≥8bp 门控** | 13929 | 3.00bp | 36.5 | **25.39** | **4.23** | **2.98** | **0.987** | **0.662** | + +逐年(最优 + 8bp 门控,样本外): + +| 年 | ATR中位 | 无门控余量 | 门控余量 | 保留% | 笔/周 | 剔10%PF | 均R | +|---|---|---|---|---|---|---|---| +| 2021 牛 | 22.1 | 37.47 | 37.80 | 98.6% | 55.5 | 3.41 | 1.064 | +| 2023 | 9.8 | 14.84 | **19.45** | 63.5% | 28.4 | 2.84 | 0.982 | +| 2025 | 11.6 | 16.73 | 20.79 | 71.2% | 45.5 | 3.11 | 1.007 | +| 2026 熊 | 8.8 | 11.21 | **15.19** | 55.4% | 27.5 | 2.51 | 0.824 | + +- **门控是自适应的**:高波动年份几乎不触发(2021 保留 98.6%), + 低波动年份才发力(2026 保留 55.4%、余量 +36%)。不是拟合出来的常数 +- **费率降低后门控的边际价值也降低**:旧费率下门控带来 +5.6% 均R, + 实际费率下只有 +3.0%。阈值曲线在 5~12bp 之间很平(均R 0.972~0.987), + **8bp 是峰值但不敏感**,不必纠结精确值 +- **影子交易判据:14~15bp**(2026 最差年份口径)。近两年合计是 19.17bp, + 全样本外 25.39bp。**用 2026 那个数做及格线,别用平均值** + +**与旧 3.91bp 的差距来源未完全对齐**:旧数字来自 step23(2.28 年数据、 +3578 笔、毛均收益 0.0991%),本步是 7 年、25476 笔、毛均收益 0.2027%, +且滤网口径可能不同(§5.3 原文写的是「1m 同向信号」,未提阶梯), +费率口径也已改成混合 maker/taker。**在重新对齐之前,两个数字不要混用。** 风险点:入场条件恰好是「收盘突破转强」,那一刻价格正朝我们的方向跑, 所以延迟造成的是**系统性的追高/追低,不会正负抵消**。这正是 @@ -311,15 +660,77 @@ push = z_above if direction == 1 else z_below --probe 60 --workers 3`,约 4 分钟。瓶颈不在窗口重建,而在 `run_one` 开头 那次 120 万根 1m 的全量 `TF_DF`。) -### 第 2 步:向用户确认交易所(当前的阻塞项) - -这个问题必须他回答,因为它决定框架: - -- 留 Bitget → 只有 Hummingbot 支持,或用 ccxt 自己写执行层 -- 换 Hyperliquid / Binance / Bybit / OKX → freqtrade 和 Nautilus 都能用 +### ~~第 2 步:向用户确认交易所~~ ✅ 已定:Bitget + Hummingbot 他已选定**先只上 1m**(在我问「先从哪条腿落地」时选的 `1m_first`)。 +#### 延迟已实测完成(2026-08-27,服务器侧) + +四路对照(宿主机 ccxt.pro / 宿主机原始 WS / 容器原始 WS / 容器 Hummingbot, +同一批 K 线对齐),把最初测到的「Hummingbot 慢 1030ms」拆开了: + +- 容器网络 2~18ms +- **Hummingbot 自身处理开销 −10~−30ms(不慢反快)** +- 剩下 1350~1480ms 全在上游连接器的一个 bug 上 + +**Bug**:Bitget 换根时推的是带两根 K 线的消息 `[上一根, 新一根]`, +而上游解析写的是 `data["data"][0]`,拿到的是上一根;新一根要等下一条 +单元素消息、约 1.1 秒后才进 deque。ccxt 遍历全部元素,所以没这问题。 + +**修法**:不能简单改成 `[-1]`——那样上一根的收盘价会永远停在换根前 +约 1 秒的那次推送上,而我们的信号对 0.25bp 的扰动都会换掉一半结果, +收盘价偏一个 tick 不可接受。正确做法是处理消息里的**全部元素**: +前面的就地写回,最后一根交基类 append。 + +20 分钟 / 60 根配对验证: + +| 币 | 上游 lag | 补丁后 lag | 上游漂移 | 补丁后漂移 | +|---|---|---|---|---| +| BTC | 1454ms | **547ms** | 0.81bp | **0.50bp** | +| ETH | 1683ms | **506ms** | 1.20bp | **0.66bp** | +| SOL | 1408ms | **642ms** | 1.29bp | **0.87bp** | + +补丁后与原始 WS 只差 5~14ms,贴着理论下限;19 根已收盘 K 线 OHLCV 逐根相同。 + +**漂移 0.50~0.87bp 对 15.19bp 的预算只用掉 6%,延迟这一关过了。** + +⚠️ 但这是**无条件漂移**(60 根里绝大多数是普通换根),而我们只在 +「收盘突破转强」那一刻入场,那一刻价格正朝我们方向跑。§3.2 已量化 +滞后与收益严格单调且是系统性追高。**信号根上的条件漂移预计显著更高, +影子测量必须按信号根条件化统计**,见第 3 步。 +另外测的是 BTC/ETH/SOL——既是流动性最好的,又恰好是样本内那三个; +真正要跑的 8 个样本外币盘口更薄,至少补测 TRX 和 ADA。 + +#### 容器内可行性(同批确认) + +Python 3.13.14 + pandas 3.0.5 + numpy 2.4.6,与本机 `.venv` 的 pandas 同版本。 +同一份切片喂进去,三个币的**信号下标、中枢数、中枢 checksum 全部逐一相同**, +容器内 0.26s/币 比本机 0.29s 还快。**chanlun 直接挂载进容器即可, +不需要另起信号服务。**(装进现有 `.venv` 走不通:Hummingbot 要 +`numba>=0.61.2` 和 `aiohttp<3.14`,与本机 Python 3.14 冲突。) + +2000 根 1m 够取:单次上限 1000、分两页,1m 限 30 天。 + +#### 补丁落地方式:子类覆盖(已定) + +不改镜像,用子类覆盖连接器的解析方法,升级 Hummingbot 不冲突。 + +⚠️ **这个方案有一个缺口必须堵**:如果上游把被覆盖的方法改名, +子类覆盖会变成**死代码,静默退回 1.4s,不报任何错**。 +所以启动时要断言基类上确实存在该方法名(有条件的话连签名一起校验), +把静默失效转成启动即失败。 + +⚠️ **无论用哪种补丁方式,都要有运行时 lag 探针**——补丁机制只防得住 +「上游代码变了」,防不住 Bitget 再改一次消息格式: + +- 每根 K 线收盘记 `本地接收时间 − K线收盘时间` +- 最近 30 根取滚动中位数 +- **中位数 > 800ms 告警并停止开新仓**(补丁后实测 506~642ms, + 理论下限约 500ms;800ms 留足抖动余量又能对 1.4s 的退化一刀切死) + +要停开仓而不只是打日志,因为损失是**经济性且静默的**—— +不会崩、不会报错,只会让收益慢慢变差,几周后才从统计里看出来。 + ### 第 3 步:写影子交易器测滑点(核心工作) **关键判断:测滑点不需要任何交易框架。** 完整框架解决的是「如何可靠下单」, @@ -344,24 +755,86 @@ push = z_above if direction == 1 else z_below 滑点应分解成三块:**延迟漂移**(`t_book` 中间价 − 次根开盘价)、 **盘口价差**(ask − 中间价)、**深度冲击**(加权成交价 − ask)。 -预期延迟漂移是主项,价差可忽略(0.01bp)。 +延迟漂移已单独测过(第 2 步,0.50~0.87bp 无条件), +但**信号根上的条件漂移才是要测的量**。 -建议路径 `research/live/shadow.py`,复用 `research/lib/` 下同一套信号代码, -这样两边数字直接可比。代码量约两三百行。 +#### 形态已定:Hummingbot V2 controller(不再写独立 shadow.py) -实现要点: +- 信号承载在 V2 controller 里,chanlun 挂载进容器直接用 +- **chanlun 计算走 `ProcessPoolExecutor`**:0.26s 是纯 CPU 且受 GIL 限制, + 直接放进 async 会卡住事件循环 +- 滑点测量**读连接器真实盘口**,不用 paper trade 的模拟成交 + +#### 必须记录的字段(否则数据回来无法对判据) + +时间戳四件套,拆开才知道该优化哪里: + +| 字段 | 含义 | +|---|---| +| `t_close` | K 线收盘时刻 | +| `t_data` | 数据到手时刻 → 拉取延迟 | +| `t_signal` | 信号算完时刻 → 计算延迟 | +| `t_book` | 盘口快照时刻 → 下单时点 | + +**每笔还必须记 `atr_pct`**——判据是 bp 口径而 ATR 逐年变化(见 5.3), +不记 ATR 就无法把实测滑点换算成 R、也无法验证门控是否正确执行。 + +**统计口径三条硬要求:** + +1. **只统计通过全部滤网的信号根**(同向 + 阶梯 + `ATR ≥ 8bp` 门控)。 + 在未过滤的根上测滑点会把判据算宽——那些单子我们根本不做 +2. **条件漂移与无条件漂移分开报**。无条件值(0.5~0.87bp)已知, + 要的是信号根上的值。两者的差就是「系统性追高」的大小 +3. **出场腿单独统计**:止盈是 maker 不吃滑点,止损/超时是 taker 要吃。 + §1.3 的费率模型按出场原因分别计费,滑点也必须这样分, + 否则会把 60% 不吃滑点的止盈腿混进平均值里,低估真实成本 + +对判据时用**每条 taker 腿的滑点**(入场 + 止损/超时出场), +不是每笔的总滑点——余量 15.19bp 就是这个口径。 + +**记录与报表已在服务器侧实现**:`research/live/shadow_hb.py`(采集)与 +`shadow_report.py`(报表)。它的设计比研究侧曾经写过的那版好,不要重复造: +**每个信号在 0.5s / 1s / 2s / 5s / actual 五个延迟上各测一次**——同信号内的 +受控对比,能直接读出「延迟压到 X 秒滑点是多少」,决策不被当前实现拖累; +另外还扫了仓位,滑点也已拆成漂移 / 价差 / 冲击。 + +**判据常数留在研究侧**:`research/lib/shadow_budget.py` +(逐币 `BUDGET_BP`、`ATR_GATE_BP`、`LEG_IS_TAKER`、`lag_healthy()`、 +`verdict()`)。分工的理由是这些数会变——2026-08-27 一天之内预算就动了四次, +费率也改了一次,写死在 live 侧的任何一份都会静默过期。 + +其他实现要点: - 数据格式必须与 `lib/data.py` 一致:`timestamp`(int64 ms), `date`(tz Asia/Shanghai), `open/high/low/close/volume` -- ccxt 拉 Bitget 需 `proxies = {'http': 'http://127.0.0.1:7897', 'https': ...}` - 和 `options={'defaultType':'swap'}` -- 持仓也要影子管理:SL/TP/48 根超时,出场同样记录真实盘口 +- 持仓也要影子管理:出场按 1m 自己的参数(3 ATR 减半 / 留损 2 / 目标 8 ATR + / 48 根超时),出场同样记录真实盘口 - 状态要落盘,重启不能丢 ### 第 4 步:根据滑点结果决策 -- 滑点 ≤ 2.5bp → 1m 可行,`t>2`,可以进入真实 dry run -- 2.5~3.9bp → 1m 勉强不亏但无统计显著性,考虑争取 60% 手动返佣或 VIP2 -- > 3.9bp → 1m 放弃,**但 5m/30m 不受影响**(余量 26bp / 89bp) +~~旧阈值(2.5 / 3.9bp)已作废~~:那是 TP=3.0、全 taker、原始费率记错 +三重错误叠加出来的,见 5.3。**新判据如下。** + +前提:1m 用自己的出场参数(`SL2 / 3ATR减半 / 留损2 / 目标8ATR / 48根`) ++ `ATR ≥ 8bp` 门控 + 实际费率 2/0.8bp。 + +**判据用 2026 那个最差年份的 15.19bp,不要用全样本的 25.39bp。** +低波动环境是当前状态,不是尾部情形。 + +| 实测滑点(每条 taker 腿) | 判断 | +|---|---| +| ≤ 5bp | 1m 可行,各年份都有厚余量,进真实 dry run | +| 5~10bp | 可行但只在中高波动期,门控阈值要上调(见 5.3 的费率-阈值关系) | +| 10~15bp | 仅 2021 型牛市能做,常态环境不要开 | +| > 15bp | 1m 放弃 | + +**5m/30m 不受影响这一句仍成立**(余量 26bp / 89bp,且那是旧费率下的保守值)。 + +另外两点: +- 滑点必须用 **WebSocket** 测。代理下 REST 单次往返约 2.4s,而信号计算只要 + 0.20s(§5.4),REST 测出来的全是代理的账 +- 入场条件是「收盘突破转强」,那一刻价格正朝我们方向跑, + **延迟造成系统性追高、不会正负抵消**(§3.2 已量化滞后与收益严格单调) ### 第 5 步(后续):1m 与 5m 分实例 @@ -420,8 +893,8 @@ API 限流风险隔离三个好处。 | 文件 | 作用 | |---|---| | `data.py` | 数据层,本地 feather 优先 | -| `fast_bsp3.py` | **核心**:自研低滞后第三类买卖点。滞后 2.2 根 | -| `nested_level.py` | `build_htf_zones`:构建中枢,可传入已建好的 `chan` 复用 | +| `fast_bsp3.py` | **实现已移入引擎**(`chanlun/analysis/fast_bsp.py`),这里只剩转发导入。所有 step 脚本的 `from lib.fast_bsp3 import find_fast_bsp3` 不用改 | +| `nested_level.py` | `build_htf_zones` 同样移入引擎并转发;`annotate_position` 仍在本地 | | `nested_bsp.py` | `htf_fx_timeline` / `attach_htf_context`:区间套上下文。 `confirm_ts` 已 `+period` 修正 K 线收盘时刻 | | `fx_signal.py` | 分型信号提取与背驰 | @@ -431,6 +904,23 @@ API 限流风险隔离三个好处。 ### 8.2 缠论引擎 `chanlun/` - `TF_DF(df, 1, tf)` 是入口,`.dataframe` 拿到含缠论标注的 DataFrame +- `analysis/fast_bsp.py`:**核心**,自研第四类买卖点 B4/S4(滞后 2.2 根), + 2026-08-27 从 `research/lib/` 搬来,回测与 web 图表现在共用同一份代码。 + 搬运时逐条比对过 BTC/ETH/SOL × 15m/30m 六组,中枢与信号完全一致。 + **它不是「B3/S3 提前几根」**:判据(收盘价实时 vs 笔端点事后)、方向来源 + (突破侧 vs 离开笔)、选样口径(627 个中枢里认 212 个 vs 引擎发 625 个)都不同。 + step30 同条件对拍见 §4——同一组过滤器把 B4 从 PF 1.59 提到 2.26,对引擎 + B3/S3 无效(0.66→0.71);引擎那批胜率 27.4% 低于 SL1.5/TP3.0 的随机基准 33%, + 是系统性反向样本,不是滞后造成的衰减 + 除 `find_fast_bsp3` / `build_htf_zones` 外,还有过滤用的 `add_zone_ladder` + (中枢阶梯,§1.4)与 `htf_fx_timeline` / `attach_htf_agree`(区间套同向,§1.1 第三层) +- `pipeline/builders/fast_bsp.py`:`TF_DF.cal_fast_bsp()`,把上面那套包成 + `ChanFastBSP`(类型 `Chan_BSP_TYPE.B4/S4`)。大级别由同一份 df 重采样得到, + 配对表 `FAST_BSP_HTF_PAIR` 就是 §1.5 那张表。 + **不在 `init_TF_DF` 里默认计算**,要显式调用 +- web 端:`/api/analyze` 返回 `fast_bsp_list` / `element_fast_bsp_list` / + `sub_sub_fast_bsp_list`,每条带 `htf_agree` 与 `ladder_ok` 两个过滤标志。 + 图上深色 B4/S4 = 两个标志都满足,浅色 = 未通过过滤 - `pipeline/builders/incremental.py`:增量更新(`init_stream` / `append_bar` / `replace_last_bar` / `rebuild_bi_zs`)。**注释写明「最后一笔 is_sure 允许收回」**, 这是 step38 要验证的那个隐患(已证实无影响)。 @@ -462,7 +952,10 @@ API 限流风险隔离三个好处。 | 36 | 偏差审计(生效时刻、多空、时间样本外) | | 37 | **跨品种样本外**(8 个新币) | | 38 | **时点重建**(无未来函数) | -| 39 | **1m 时点重建 + 窗口扫描**(新写,待跑完) | +| 39 | **1m 时点重建 + 窗口扫描**(2000 根窗口饱和) | +| 40 | 第四类买卖点的过滤消融(web 端原始 vs 过滤) | +| 41 | **出场口径全扫**(SL × TP × MAX_BARS × 分批 × 剩余半仓止损位 + 真实费率模型)。TP=3 截早了;分批要做但止损保持原位;SL=1.0 最差 | +| 42 | **1m 单独定出场**(同一张全网格,11 币 7 年 25476 笔)。1m 右尾是其他级别 2 倍,TP 不能混用;`SL2 分批→8ATR 留损2 48根` 在均R/R夏普/回撤/剔10%PF 四项全赢,滑点余量 11.06→20.12bp;`MAX_BARS=48` 反而不用改 | 输出都在 `research/out/`。**2026-08-27 清理过一轮**:step1~20 的输出(早期方法论 已被推翻,含未来函数偏差)与旧口径备份一并删除,只留支撑当前结论的证据。 @@ -486,14 +979,49 @@ API 限流风险隔离三个好处。 - [x] **step39**:1m 时点重建 + 窗口扫描 → **2000 根窗口饱和,计算 0.20s, 假阳性 0%,1m 回测口径可信** -- [ ] **向用户确认交易所**(阻塞后续框架选择,这是当前第一件事) -- [ ] 写 `research/live/shadow.py` 影子交易器,测 1m 真实滑点。 - **务必用 WebSocket 而非 REST 轮询**——代理下单次 REST 往返约 2.4s, - 而信号计算只要 0.20s,网络是延迟主项 +- [ ] **对齐 step23 与 step42 的 1m 数字**(3.91bp vs 11.06bp)。差距可能来自 + 数据年限(2.28 年 vs 7 年)或滤网(§5.3 原文只提「同向」,未提阶梯)。 + §6 第 4 步的三条决策阈值全部依赖这个数字,对齐前不要据它做去留判断 +- [ ] **决定是否改出场口径**(step41/42 样本外均已过,见 3.5 与 5.3)。 + **出场参数要按级别分开定,不能一套走天下。** 5m/15m/30m 的首选是 + 「初始 SL 2.0 ATR、到 3 ATR 平一半、剩余半仓止损保持原位、跑到 8 ATR、 + 48 根超时」;若更看重单位风险期望而非回撤,初始 SL 用 1.5。 + **1m 用同一套形状,但 SL=2.0 是无争议的最优**(均 R、R夏普、回撤、 + 剔10%PF 四项全赢,见 5.3),`MAX_BARS=48` 不变。 + 改的话 `run_trades` 要支持分批(现在只支持整仓单目标), + 并重跑 step28/35/37 刷新本文档的年化/回撤/并发数字——**不要新旧口径混用**。 + 注意分批后平均持仓从 11 根拉到 30 根,§3.3 的并发数据必须重算 +- [x] **用实际费率(2/0.8bp)重算 step41/42 的分析段** → 1m 见 5.3 末尾 + (均R +8%,判据 15.19bp);5m/15m/30m 见 3.5 末尾(余量只动 2%,结论不变) +- [x] **ATR 门控搬到 5m/15m/30m 验证** → 惰性(30m 触发 0%、15m 0.16%、5m 2.6%), + 可作全局规则 `ATR ≥ 5 + 1.1×taker费(bp)`,当前即 ≥ 8bp +- [x] **确认交易所与框架** → Bitget + Hummingbot,先只上 1m +- [x] **测执行延迟** → 上游连接器 bug 已定位并修好,补丁后 lag 506~642ms、 + 无条件漂移 0.50~0.87bp,占预算 6%。见 §6 第 2 步 +- [ ] **写 V2 controller + 盘口缓冲,跑影子测量**(当前第一件事)。 + 字段与统计口径见 §6 第 3 步,**三条硬要求别漏**:只统计过滤后的信号根、 + 条件漂移与无条件漂移分开报、出场腿按 maker/taker 分开统计 +- [ ] **改掉 `shadow_report.py` 的 `BUDGET_BP`**(当前 BTC −0.13 / ETH 4.02 / + SOL 2.92)。那三个数由六处差异叠加而来:只有同向没有阶梯过滤、 + 费率按 6bp 双边 taker、`TP=3.0`、余量没除 taker 名义额、无 ATR 门控、 + 且 BTC/ETH/SOL 恰是 ATR 最低的三个币。正确值 8.58 / 20.64 / 16.83, + 直接从 `lib/shadow_budget.py` import。 + **这条优先级最高**:报表里 `drift > b` 与 `drift > b*0.6` 是自动停机开关, + 用错的预算会让它比真实情况早约五倍触发,误杀一个可行的策略 +- [ ] **live 信号路径补上中枢阶梯过滤与 ATR 门控**。现在是 + `fin = full[full["h1_agree"] == 1]`,只有同向。缺这两项测的就不是 + 我们要交易的那批信号,改常数解决不了 +- [ ] **子类覆盖加启动断言** + **运行时 lag 探针(>800ms 停开仓)**,见 §6 第 2 步 +- [ ] 补测 ADA / DOGE / AVAX 的漂移——真正要交易的是这批(预算 15~22bp)。 + BTC/ETH/SOL 流动性最好,测滑点偏乐观是安全方向,但判可行性不能只看它们。 + **BTC 大概率不该做 1m**:ATR 中位 2026 仅 6.5bp(11 币最低), + 门控刷掉 58.5%,修正后预算 8.58bp 仍是最低。TRX 2026 门控后只剩 4.2% - [ ] 收集 1~2 周影子数据,与回测口径逐笔对比 -- [ ] 按 6.4 的判据决策 1m 是否可行 -- [ ] 若可行:选框架(Bitget→Hummingbot)做真实 dry run +- [ ] 按 §6 第 4 步的四档判据决策 1m 是否可行 +- [ ] 若可行:真实 dry run - [ ] 补一项研究阶段的缺口:**资金费率**从未计入任何回测。 + 注:1m 新参数下平均持仓 28.4 根 = 28 分钟,很少跨 8 小时结算点, + 这一项对 1m 影响小;30m 腿才是真问题。 30m 腿平均持仓 6.5 小时会跨结算点,需要评估影响 - [ ] 补:同时持仓的保证金约束也未建模(组合有仓位时间仅 8.6%, 预计影响小,但没算过) diff --git a/research/lib/exit_model.py b/research/lib/exit_model.py new file mode 100644 index 0000000..bbe136c --- /dev/null +++ b/research/lib/exit_model.py @@ -0,0 +1,236 @@ +"""出场模拟与费率模型,step41(5m/15m/30m)与 step42(1m)共用。 + +单独抽出来是因为两边必须用同一份实现——`fast_bsp3` 当初分散在两处的教训。 + +## 费率模型(用户 2026-08-27 指出) + +原先所有数字都按「双边 taker」算(§5.3 的 6bp),这在两个方向上都错了: +费率档位记高了(见下方 FEE_TAKER 注释),且没有区分出场性质—— + + 入场 信号在收盘出现,次根开盘市价单进场 → **taker + 滑点** + 止盈 挂在目标价的限价单被动成交 → **maker,无滑点** + 止损 stop-market,触发后市价成交 → **taker + 滑点** + 超时 到点市价平 → **taker + 滑点** + +止损做不成 maker:stop-limit 在急跌里可能不成交,那种情况下的损失远大于 +省下的 2bp。所以按出场原因分别计费,不是一刀切。 + +分批离场不额外增加费用:手续费按名义额收,入场 1.0、出场 0.5+0.5,总额不变。 +但**第一批必然是止盈成交(maker)**,这正是分批在成本上占便宜的地方。 + +## 出场配置 + + 整仓 `s{SL}_tp{TP}_m{MAXB}` + 分批 `s{SL}_so{目标}_k{剩余半仓止损}_m{MAXB}` + 到 3 ATR 平一半,剩余半仓止损挪到「开仓价下方 k 个 ATR」。 + k=0 即保本损,k 等于原 SL 即止损不动,k 更大则是主动放宽。 + +## 实现 + +每笔只前推两遍:第一遍记录各价位的首次触及根,第二遍从减仓根起记录剩余 +半仓各止损位的首次触及根。之后所有配置都是解析推导,不再重复走 K 线。 +同一根内止损与目标并存时一律判止损先到,宁可低估。 +""" +from __future__ import annotations + +import numpy as np +import pandas as pd + +# 单边费率。用户 2026-08-27 给的实际档位:返佣前 taker 0.040% / maker 0.016%, +# API 返 50% → taker 0.020% / maker 0.008%。 +# 注意:此前这里写的是 0.030/0.010,隐含「原始 taker 6bp」的错误前提, +# 所以 step41/42 首轮跑出来的所有数字都偏保守(taker 高估 50%)。 +FEE_TAKER = 0.00020 +FEE_MAKER = 0.00008 +SLIP = 0.00010 + +TP, SL_, TIME = 0, 1, 2 # 出场原因编码 + + +def taker_notional(reason: np.ndarray, scaled: np.ndarray) -> np.ndarray: + """每笔走 taker 的名义额(入场 1.0,加上非止盈出场的部分)。滑点只发生在这上面。""" + exit_taker = np.where(reason == TP, 0.0, 1.0) + exit_taker = np.where(scaled == 1, 0.5 * exit_taker, exit_taker) + return 1.0 + exit_taker + + +def fee_of(reason: np.ndarray, scaled: np.ndarray, + fee_taker: float = FEE_TAKER, fee_maker: float = FEE_MAKER) -> np.ndarray: + """只算手续费,不含滑点。分批时第一半必然是止盈成交(maker)。""" + exit_fee = np.where(reason == TP, fee_maker, fee_taker) + exit_fee = np.where(scaled == 1, 0.5 * fee_maker + 0.5 * exit_fee, exit_fee) + return fee_taker + exit_fee + + +def cost_of(reason: np.ndarray, scaled: np.ndarray, slip: float = SLIP) -> np.ndarray: + """新口径:入场 taker、止盈 maker、止损/超时 taker,滑点只加在 taker 腿上。""" + return fee_of(reason, scaled) + slip * taker_notional(reason, scaled) + + +def all_taker_cost(reason: np.ndarray, scaled: np.ndarray) -> np.ndarray: + """旧口径:进出都当 taker,双边费 + 双边滑点。用来对照新旧差多少。""" + return np.full(len(reason), 2.0 * (FEE_TAKER + SLIP)) + + +def flat_cost(reason: np.ndarray, scaled: np.ndarray) -> np.ndarray: + """研究口径的固定 5bp,用于和 step28/35/37 的历史数字对齐。""" + return np.full(len(reason), 0.0005) + + +def slip_budget(gross: np.ndarray, reason: np.ndarray, scaled: np.ndarray) -> float: + """盈亏平衡的单边滑点上限(bp):毛收益扣掉手续费后,摊到走 taker 的名义额上。""" + net_of_fee = gross.mean() - fee_of(reason, scaled).mean() + return net_of_fee / taker_notional(reason, scaled).mean() * 10000 + + +def cfg_name(sl: float, target, maxb: int, rstop=None) -> str: + """整仓 s{SL}_tp{T}_m{B};分批 s{SL}_so{T}_k{K}_m{B}。target=None 表示不设目标。""" + t = f"{target:g}" if target is not None else "R" + if rstop is None: + return f"s{sl:g}_tp{t}_m{maxb}" + return f"s{sl:g}_so{t}_k{rstop:g}_m{maxb}" + + +def walk_exits(cdf: pd.DataFrame, sig: pd.DataFrame, sls, tps, maxbs, + scale_at: float = 3.0, runners=(5.0, 6.0, 8.0, None), + runner_stops=(0.0, 0.5, 1.0, 1.5, 2.0)) -> pd.DataFrame: + """前推每笔信号,解析出全部出场配置的结果。 + + 每个配置四列:`{cfg}_g` 毛收益率、`{cfg}_r` 出场原因、`{cfg}_c` 是否分批、 + `{cfg}_b` 持仓根数。另有 `s{SL}_mfe` 各初始止损下的最大有利偏移。 + """ + high = cdf["high"].to_numpy(float) + low = cdf["low"].to_numpy(float) + open_ = cdf["open"].to_numpy(float) + close = cdf["close"].to_numpy(float) + atr = cdf["atr"].to_numpy(float) + n = len(cdf) + horizon = max(maxbs) + ups = sorted(set(list(tps) + [scale_at] + [r for r in runners if r])) + downs = sorted(set(list(sls) + list(runner_stops))) + out = [] + + for s, d in zip(sig["entry_idx"].astype(int), sig["direction"].astype(int)): + e = s + 1 + if e >= n - 1: + continue + a = atr[s] + if not np.isfinite(a) or a <= 0: + continue + entry = open_[e] + end = min(e + horizon, n - 1) + + # 第一遍:各价位的首次触及根(与止损无关,纯价格事件) + up_bar = {t: None for t in ups} + dn_bar = {L: None for L in downs} + mfe = {sl: 0.0 for sl in sls} + alive = {sl: True for sl in sls} + for j in range(e, end + 1): + adv = (high[j] - entry) / a if d == 1 else (entry - low[j]) / a + ret = (entry - low[j]) / a if d == 1 else (high[j] - entry) / a + for L in downs: + if dn_bar[L] is None and ret >= L: + dn_bar[L] = j + for sl in sls: + if alive[sl]: + if dn_bar[sl] is not None and dn_bar[sl] == j: + alive[sl] = False # 同根内止损优先,不更新 MFE + elif adv > mfe[sl]: + mfe[sl] = adv + for t in ups: + if up_bar[t] is None and adv >= t: + up_bar[t] = j + for sl in sls: + mfe[sl] = mfe[sl] + + # 第二遍:从减仓根起,剩余半仓各止损位的首次触及根 + j0 = up_bar[scale_at] + dn_after = {L: None for L in runner_stops} + if j0 is not None: + for j in range(j0, end + 1): + ret = (entry - low[j]) / a if d == 1 else (high[j] - entry) / a + for L in runner_stops: + if dn_after[L] is None and ret >= L: + dn_after[L] = j + if all(v is not None for v in dn_after.values()): + break + + row = {"sig_idx": s, "direction": d, "atr_pct": a / entry} + row.update({f"s{sl:g}_mfe": mfe[sl] for sl in sls}) + + def resolve(target, stop_bar, stop_ret, cap, start): + """在 cap 根之前,目标与止损谁先到。返回 (毛收益率, 原因, 出场根)。""" + tb = up_bar[target] if target is not None else None + if tb is not None and tb <= cap and (stop_bar is None or tb < stop_bar): + return target * a / entry, TP, tb + if stop_bar is not None and stop_bar <= cap: + return stop_ret, SL_, stop_bar + k = min(cap, n - 1) + return d * (close[k] - entry) / entry, TIME, k + + for sl in sls: + dead = dn_bar[sl] + for b in maxbs: + cap = e + b + for t in tps: + g, r, xb = resolve(t, dead, -sl * a / entry, cap, e) + c = cfg_name(sl, t, b) + row[f"{c}_g"], row[f"{c}_r"], row[f"{c}_c"], row[f"{c}_b"] = g, r, 0, xb - e + 1 + # 分批:先看能否走到减仓点 + scaled_ok = (j0 is not None and j0 <= cap + and (dead is None or j0 < dead)) + for rn in runners: + for k in runner_stops: + c = cfg_name(sl, rn, b, k) + if not scaled_ok: + g, r, xb = resolve(scale_at, dead, -sl * a / entry, cap, e) + row[f"{c}_g"], row[f"{c}_r"] = g, r + row[f"{c}_c"], row[f"{c}_b"] = 0, xb - e + 1 + else: + rg, rr, rxb = resolve(rn, dn_after[k], -k * a / entry, cap, j0) + row[f"{c}_g"] = 0.5 * (scale_at * a / entry) + 0.5 * rg + row[f"{c}_r"], row[f"{c}_c"] = rr, 1 + row[f"{c}_b"] = rxb - e + 1 + out.append(row) + return pd.DataFrame(out) + + +def stat(g: pd.DataFrame, cfg: str, label: str, cost_fn=cost_of, minn: int = 25) -> dict: + """给一个配置出统计。`滑点余量bp` 是滑点的盈亏平衡上限。""" + gross = g[f"{cfg}_g"].to_numpy() + if len(gross) < minn: + return {} + reason, scaled = g[f"{cfg}_r"].to_numpy(), g[f"{cfg}_c"].to_numpy() + r = gross - cost_fn(reason, scaled) + w, o = r[r > 0], r[r <= 0] + sd = r.std(ddof=1) + t10 = r[r <= np.quantile(r, 0.90)] + return {"口径": label, "笔数": len(r), + "胜率": f"{(r > 0).mean() * 100:.1f}%", + "毛bp": f"{gross.mean() * 10000:.2f}", + "净均收益": f"{r.mean() * 100:+.3f}%", + "中位": f"{np.median(r) * 100:+.3f}%", + "PF": f"{w.sum() / abs(o.sum()):.2f}" if len(o) else "inf", + "t值": f"{r.mean() / (sd / np.sqrt(len(r))):+.2f}", + "剔10%PF": f"{t10[t10 > 0].sum() / abs(t10[t10 <= 0].sum()):.2f}" if (t10 <= 0).any() else "inf", + "滑点余量bp": f"{slip_budget(gross, reason, scaled):.2f}", + "止盈占比": f"{(reason == TP).mean() * 100:.0f}%", + "均持仓": f"{g[f'{cfg}_b'].mean():.1f}"} + + +def rstat(g: pd.DataFrame, cfg: str, label: str, sl: float, cost_fn=cost_of) -> dict: + """R 倍数口径:固定风险仓位下,不同初始止损之间唯一可比的量。 + + SL 越宽,每笔风险越大、仓位越小,直接比百分比收益会把仓位差异算成策略优势。 + """ + gross = g[f"{cfg}_g"].to_numpy() + reason, scaled = g[f"{cfg}_r"].to_numpy(), g[f"{cfg}_c"].to_numpy() + net = gross - cost_fn(reason, scaled) + risk = sl * g["atr_pct"].to_numpy() + r = net / risk + return {"口径": label, "笔数": len(r), "风险%": f"{risk.mean() * 100:.2f}%", + "净均收益": f"{net.mean() * 100:+.3f}%", + "均R": f"{r.mean():+.3f}", "中位R": f"{np.median(r):+.3f}", + "R夏普": f"{r.mean() / r.std(ddof=1):.3f}", + "最差1%R": f"{np.percentile(r, 1):.2f}", + "胜率": f"{(r > 0).mean() * 100:.1f}%"} diff --git a/research/lib/shadow_budget.py b/research/lib/shadow_budget.py new file mode 100644 index 0000000..bbf8cd8 --- /dev/null +++ b/research/lib/shadow_budget.py @@ -0,0 +1,128 @@ +"""影子测量要对照的那条线:逐币滑点预算、ATR 门控、lag 阈值。 + +记录与报表由 `research/live/shadow_hb.py` / `shadow_report.py` 负责, +**这里只放从回测推出来的常数和判据**。分工的理由是这些数会变—— +2026-08-27 一天之内预算就动了四次(3.91 → 11.06 → 14.25 → 15.19bp), +费率也从 3/1bp 改成 2/0.8bp。写死在 live 侧的任何一份都会静默过期。 + +## 预算的定义 + + 余量 = (毛均收益 − 实际手续费) / taker 名义额 + +分母是 **taker 名义额**(入场 1.0 + 非止盈出场的部分),所以这个数的含义是 +**每条 taker 腿能承受多少 bp 滑点**。止盈挂限价是 maker、不吃滑点, +不能混进分母——否则会被那 60% 零滑点的止盈腿稀释,低估真实成本。 + +对照时用入场滑点即可(入场必然是 taker),无需等出场腿。 + +## 口径必须一致,否则数字不可比 + +预算算在这套口径上,live 侧的信号路径要对齐,缺一项数就不作数: + + 滤网 同向(h1_agree)**+ 中枢阶梯**。只有同向会显著偏低,见 §1.4 + 门控 ATR ≥ ATR_GATE_BP + 出场 SL 2.0 / 3 ATR 减半 / 剩余半仓止损保持 2.0 / 目标 8 ATR / 48 根 + 费率 taker 2.0bp、maker 0.8bp(返佣后) + +> 曾经的 `毛均收益 − 6.0bp` 是错的:6bp 假设双边 taker 且原始费率 0.12%, +> 而实际是原始 taker 0.040%、返 50% 后 2.0bp,且止盈是 maker。 +""" +from __future__ import annotations + +import numpy as np + +from .exit_model import FEE_TAKER, FEE_MAKER + +# ATR 门控。阈值是**费率的函数**,不是市场常数——低 ATR 的信号毛质量其实 +# 更好(毛R 1.16 vs 高 ATR 桶的 0.94),断崖只在扣费之后出现。见 §5.3。 +ATR_GATE_BP = 8.0 + +# lag 探针。补丁后实测 506~642ms,理论下限约 500ms。 +# 超阈值要**停止开新仓**,不能只打日志——退化是静默的,不崩也不报错。 +LAG_ALARM_MS = 800.0 +LAG_WINDOW = 30 + +# 逐币滑点预算(bp / taker 腿)。取 2026 年——那是七年里 ATR 最低的一年, +# 也是当前所处的环境,**不要用全样本平均值**,低波动是现状不是尾部情形。 +BUDGET_BP = { + "BTC": 8.58, # 全期 14.61。ATR 中位 2026 仅 6.5bp,11 个币里最低, + # 门控要刷掉 58.5% 的信号 —— **不建议作为 1m 交易标的**, + # 但流动性最好,适合做滑点测量的乐观边界 + "BNB": 15.48, # 全期 22.11。2026 门控只保留 25.2% + "ETH": 20.64, # 全期 20.80 + "SOL": 16.83, # 全期 28.29 + "LINK": 9.18, # 全期 26.24。2026 波动压缩得厉害 + "LTC": 9.63, # 全期 23.63 + "AVAX": 15.02, # 全期 29.00 + "XRP": 17.04, # 全期 24.52 + "DOGE": 18.55, # 全期 28.48 + "ADA": 22.28, # 全期 23.53。2026 唯一没被波动压缩的 + "TRX": np.nan, # 2026 门控后只剩 4.2% 的信号,当前环境基本不能做 +} + +# 组合口径(8 个样本外币合计)。单币样本薄时用这个判整体。 +BUDGET_PORTFOLIO_2026 = 15.19 +BUDGET_PORTFOLIO_RECENT = 19.17 # 2025+2026 +BUDGET_PORTFOLIO_FULL = 25.39 # 全样本外 + +# 腿 → 是否 taker。这不是日志字段,**这就是成本模型本身**: +# 止盈挂限价是 maker 不吃滑点,止损是 stop-market、超时是市价,都吃。 +# 止损做不成 maker——stop-limit 在急跌里可能不成交,损失远大于省下的费。 +LEG_IS_TAKER = { + "entry": True, + "scale": False, # 3 ATR 减半,限价 + "runner_tp": False, # 剩余半仓到 8 ATR,限价 + "stop": True, # stop-market + "timeout": True, # 48 根到点市价平 +} + + +def gate_threshold_bp(fee_taker: float = FEE_TAKER) -> float: + """换费率档位时的粗略指引,**不是** ATR_GATE_BP 的定义式。 + + 拟合自 taker 0/1.5/3/6bp 上实测的最优阈值 5/8/9/12bp。当前费率下 + 公式给 7.2 而实测峰值是 8——不必调和:均R 在 5~12bp 之间只在 + 0.972~0.987 之间动,**曲线是平的,精确值不重要**。 + 要记住的是阈值随费率上移,换 VIP 档 / 换交易所要重扫,别抄 8bp。 + """ + return 5.0 + 1.1 * fee_taker * 1e4 + + +def fee_rate(leg: str) -> float: + return FEE_TAKER if LEG_IS_TAKER[leg] else FEE_MAKER + + +def budget_of(symbol: str) -> float: + """取该币的预算。未收录或当前环境不可做的返回 nan。""" + return BUDGET_BP.get(symbol.upper(), np.nan) + + +def lag_healthy(recent_lag_ms, alarm_ms: float = LAG_ALARM_MS, + window: int = LAG_WINDOW) -> bool: + """滚动中位数是否还在阈值内。False 时应告警并**停止开新仓**。 + + 用中位数而非均值:单根的网络抖动不该触发停机,持续退化才该。 + """ + x = np.asarray(recent_lag_ms, dtype=float)[-window:] + if len(x) < window: + return True + return bool(np.median(x) <= alarm_ms) + + +def verdict(measured_slip_bp: float, symbol: str | None = None, + budget_bp: float | None = None) -> str: + """把实测滑点翻成 §6 第 4 步的四档判断。 + + `measured_slip_bp` 用**每条 taker 腿**的中位滑点,不是每笔的总滑点。 + """ + if budget_bp is None: + budget_bp = budget_of(symbol) if symbol else BUDGET_PORTFOLIO_2026 + if not np.isfinite(budget_bp): + return "该币当前环境预算不足,不作交易标的" + if measured_slip_bp <= 5: + return "可行,进真实 dry run" + if measured_slip_bp <= 10: + return "可行但仅中高波动期,门控阈值要上调" + if measured_slip_bp <= budget_bp: + return "仅 2021 型牛市能做,常态不要开" + return "放弃该腿" diff --git a/research/out/step17_fast_bsp3_trades.csv b/research/out/step17_fast_bsp3_trades.csv new file mode 100644 index 0000000..e9c89f1 --- /dev/null +++ b/research/out/step17_fast_bsp3_trades.csv @@ -0,0 +1,919 @@ +entry_idx,exit_idx,direction,entry,exit,ret,reason,bars_held,gross,risk_pct,boosted,symbol,date,h1_agree,h2_agree,depth,year +1076,1081,-1,10207.64,10265.816831912982,-0.006499342052911582,sl,5,-0.005699342052911582,0.005699342052911594,False,BTC,2019-09-20 06:45:00+08:00,0.0,0.0,-0.00022793377062850747,2019 +1720,1731,-1,7921.82,8061.213708522294,-0.018396172157697878,sl,11,-0.01759617215769788,0.017596172157697886,False,BTC,2019-09-26 23:45:00+08:00,1.0,0.0,-0.0031707317073170734,2019 +2632,2644,-1,8039.21,7968.878481466982,0.007948560932357586,tp,12,0.008748560932357586,0.004374280466178768,False,BTC,2019-10-06 11:45:00+08:00,1.0,0.0,0.0027294088548107482,2019 +3793,3818,-1,7894.44,7944.063776651064,-0.007085914726195141,sl,25,-0.0062859147261951406,0.0062859147261951406,False,BTC,2019-10-18 14:00:00+08:00,1.0,0.0,0.002735257683185616,2019 +4678,4679,1,9596.62,9487.593235342762,-0.012160954654580388,sl,1,-0.011360954654580388,0.011360954654580454,False,BTC,2019-10-27 19:15:00+08:00,1.0,0.0,-0.0035162493340436867,2019 +5457,5460,1,9251.3,9315.143722242545,0.006101054148340826,tp,3,0.006901054148340826,0.003450527074170432,False,BTC,2019-11-04 22:00:00+08:00,1.0,1.0,0.000569745535365462,2019 +5818,5821,-1,9098.38,9009.422675516824,0.008977270732061686,tp,3,0.009777270732061687,0.004888635366030857,False,BTC,2019-11-08 16:15:00+08:00,1.0,0.0,-0.0016420361247947851,2019 +7384,7391,-1,6979.96,7064.0593971633025,-0.01284869328238306,sl,7,-0.012048693282383059,0.012048693282383071,False,BTC,2019-11-24 23:45:00+08:00,1.0,1.0,0.001269876945552616,2019 +7856,7904,1,7740.96,7741.36,-0.000748326822513017,time,48,5.1673177486983035e-05,0.011394280259283098,False,BTC,2019-11-29 21:45:00+08:00,0.0,1.0,0.003416197828077937,2019 +10079,10084,1,7332.2,7425.97228255147,0.011989105937027114,tp,5,0.012789105937027114,0.006394552968513537,False,BTC,2019-12-23 01:30:00+08:00,1.0,1.0,0.004200553250345767,2019 +10274,10280,-1,7209.73,7270.1049899911195,-0.009174098612724741,sl,6,-0.00837409861272474,0.00837409861272471,False,BTC,2019-12-25 02:15:00+08:00,0.0,0.0,0.0025006885155604316,2019 +11367,11388,1,7464.83,7426.749186460953,-0.005901363800521524,sl,21,-0.0051013638005215235,0.0051013638005214836,False,BTC,2020-01-05 11:30:00+08:00,1.0,1.0,0.0016641821385011174,2020 +11619,11634,1,8075.8,7995.727128844512,-0.010715162727592119,sl,15,-0.009915162727592118,0.009915162727592087,False,BTC,2020-01-08 02:30:00+08:00,1.0,1.0,0.008810390262266286,2020 +12749,12782,-1,8626.41,8721.018150269878,-0.011767267990957772,sl,33,-0.010967267990957772,0.010967267990957834,False,BTC,2020-01-19 21:00:00+08:00,1.0,0.0,0.00025581901841543683,2020 +13661,13666,1,9398.32,9308.838054993004,-0.010321057487614317,sl,5,-0.009521057487614316,0.009521057487614277,False,BTC,2020-01-29 09:00:00+08:00,1.0,1.0,0.017908437474119195,2020 +15589,15595,-1,9706.69,9763.331547984493,-0.0066353102844010385,sl,6,-0.005835310284401038,0.005835310284400997,False,BTC,2020-02-18 11:00:00+08:00,0.0,0.0,-0.0003476103073122481,2020 +16312,16334,-1,9404.39,9251.008840602248,0.015509527720325466,tp,22,0.016309527720325467,0.008154763860162739,False,BTC,2020-02-25 23:45:00+08:00,1.0,1.0,0.0012479079497908253,2020 +21097,21107,-1,6722.26,6770.2498846602875,-0.007938950986764469,sl,10,-0.0071389509867644686,0.007138950986764446,False,BTC,2020-04-15 20:00:00+08:00,1.0,1.0,0.002820166686230816,2020 +21554,21570,-1,7154.66,7091.797835123753,0.007986184790925973,tp,16,0.008786184790925973,0.004393092395463005,False,BTC,2020-04-20 14:15:00+08:00,0.0,1.0,0.001208623087621641,2020 +23221,23223,1,9543.19,9462.47933494767,-0.009257409425184977,sl,2,-0.008457409425184977,0.008457409425184918,False,BTC,2020-05-07 23:00:00+08:00,1.0,1.0,0.00650975825004068,2020 +24754,24762,1,9188.94,9137.518263459233,-0.006396046610465146,sl,8,-0.005596046610465146,0.005596046610465112,False,BTC,2020-05-23 22:15:00+08:00,1.0,0.0,-0.004954999397068737,2020 +25227,25239,1,9399.28,9519.7192959904,0.012013672535598454,tp,12,0.012813672535598454,0.0064068362677992706,False,BTC,2020-05-28 20:30:00+08:00,0.0,0.0,0.00011484290357524277,2020 +25652,25653,1,9734.51,9842.399131341195,0.01028315994756747,tp,1,0.011083159947567471,0.005541579973783751,False,BTC,2020-06-02 06:45:00+08:00,1.0,1.0,-0.0013809919070346015,2020 +27310,27325,-1,9295.24,9342.240513261428,-0.0058564066405415935,sl,15,-0.005056406640541593,0.005056406640541632,False,BTC,2020-06-19 13:15:00+08:00,1.0,1.0,0.0006844634287981182,2020 +29183,29213,1,9423.01,9386.960793482587,-0.00462565724937287,sl,30,-0.0038256572493728692,0.0038256572493728033,False,BTC,2020-07-09 01:30:00+08:00,0.0,1.0,0.0035986307231492746,2020 +30399,30410,1,9329.6,9396.770255534977,0.006399692970221296,tp,11,0.007199692970221296,0.0035998464851106082,False,BTC,2020-07-21 17:30:00+08:00,1.0,1.0,0.002425500164238022,2020 +30547,30548,1,9519.17,9483.77061582041,-0.004518746926422254,sl,1,-0.003718746926422254,0.003718746926422191,False,BTC,2020-07-23 06:30:00+08:00,0.0,1.0,0.004210889526450547,2020 +31440,31471,1,11614.52,11516.386978725643,-0.009249167186793583,sl,31,-0.008449167186793583,0.008449167186793538,False,BTC,2020-08-01 13:45:00+08:00,1.0,0.0,-0.0011689668588715841,2020 +32289,32291,1,12045.48,11967.321375819023,-0.0072886267862282295,sl,2,-0.006488626786228229,0.006488626786228205,False,BTC,2020-08-10 10:00:00+08:00,1.0,1.0,0.004017607720308061,2020 +32614,32617,1,11590.73,11497.374187577876,-0.008854351401691142,sl,3,-0.008054351401691142,0.00805435140169111,False,BTC,2020-08-13 19:15:00+08:00,1.0,1.0,0.0013693500093622973,2020 +33008,33015,1,12132.85,12348.075032635035,0.016939033502848463,tp,7,0.017739033502848462,0.008869516751424222,False,BTC,2020-08-17 21:45:00+08:00,1.0,0.0,0.000806667783548266,2020 +33251,33266,-1,11729.04,11791.088936728875,-0.006090197384344648,sl,15,-0.005290197384344647,0.00529019738434463,False,BTC,2020-08-20 10:30:00+08:00,0.0,1.0,-0.0011532599491956648,2020 +33562,33576,-1,11585.89,11525.904777228985,0.004377437622057035,tp,14,0.005177437622057035,0.002588718811028518,False,BTC,2020-08-23 16:15:00+08:00,0.0,1.0,-0.00038783054814803595,2020 +34543,34591,-1,11377.81,11419.12,-0.004430751436348587,time,48,-0.0036307514363485864,0.009790163199069786,False,BTC,2020-09-02 21:30:00+08:00,1.0,1.0,0.00038898155830655886,2020 +34634,34647,-1,10800.53,10486.698631217772,0.028257034125383506,tp,13,0.029057034125383505,0.014528517062691723,False,BTC,2020-09-03 20:15:00+08:00,1.0,1.0,0.013479036574487098,2020 +37188,37194,-1,10770.77,10694.352277439513,0.006294917314220539,tp,6,0.007094917314220539,0.0035474586571102406,False,BTC,2020-09-30 10:45:00+08:00,1.0,0.0,0.00017632939438698805,2020 +37816,37828,1,10726.87,10683.389599060092,-0.004853409889362748,sl,12,-0.0040534098893627475,0.004053409889362815,False,BTC,2020-10-06 23:45:00+08:00,0.0,0.0,0.0026164537941397994,2020 +38004,38019,1,10909.99,10841.707532243687,-0.007058710388947474,sl,15,-0.006258710388947474,0.006258710388947481,False,BTC,2020-10-08 22:45:00+08:00,1.0,0.0,0.007699742537247636,2020 +38748,38760,-1,11305.01,11355.440575602132,-0.005260904997176587,sl,12,-0.004460904997176587,0.0044609049971766545,False,BTC,2020-10-16 16:45:00+08:00,1.0,0.0,-2.377863674437319e-05,2020 +40192,40193,1,13890.98,14123.513302889363,0.015939877452085006,tp,1,0.016739877452085005,0.008369938726042508,False,BTC,2020-10-31 17:45:00+08:00,1.0,0.0,-0.0005294236531551147,2020 +40583,40598,1,13724.19,13915.580553715448,0.01314548994989488,tp,15,0.01394548994989488,0.006972744974947408,False,BTC,2020-11-04 19:30:00+08:00,0.0,1.0,-0.00037214063974355324,2020 +41006,41010,-1,15270.18,15405.71648986001,-0.009675893398768657,sl,4,-0.008875893398768656,0.008875893398768639,False,BTC,2020-11-09 05:15:00+08:00,1.0,0.0,-0.00022092646582441559,2020 +42032,42069,1,18023.42,17836.425950929774,-0.011175059176905646,sl,37,-0.010375059176905645,0.01037505917690573,False,BTC,2020-11-19 21:45:00+08:00,1.0,0.0,-0.002335121277279981,2020 +42100,42102,1,18184.86,18436.877563745216,0.013058647454267765,tp,2,0.013858647454267766,0.006929323727133889,False,BTC,2020-11-20 14:45:00+08:00,1.0,0.0,0.0009583054058395293,2020 +42480,42481,-1,18346.99,18096.862068936833,0.012833186210008776,tp,1,0.013633186210008776,0.006816593105004437,False,BTC,2020-11-24 13:45:00+08:00,1.0,0.0,0.00039180621037227355,2020 +43183,43231,1,18835.87,18888.39,0.0019882970099071844,time,48,0.0027882970099071844,0.024303498699666477,False,BTC,2020-12-01 21:30:00+08:00,0.0,0.0,0.022509068101773343,2020 +43264,43279,-1,19047.14,19268.013068084387,-0.01239612771704242,sl,15,-0.01159612771704242,0.011596127717042357,False,BTC,2020-12-02 17:45:00+08:00,0.0,0.0,-0.001976581524273429,2020 +43893,43928,-1,18279.99,17933.28421643968,0.018166409913808638,tp,35,0.018966409913808636,0.009483204956904353,False,BTC,2020-12-09 07:00:00+08:00,1.0,1.0,0.009795425257731975,2020 +44092,44101,-1,18010.0,17763.67023581231,0.012877388350232584,tp,9,0.013677388350232585,0.006838694175116267,False,BTC,2020-12-11 08:45:00+08:00,1.0,0.0,0.0003353893600616888,2020 +45925,45929,1,28105.9,27809.188372304994,-0.011356916081499163,sl,4,-0.010556916081499163,0.010556916081499142,False,BTC,2020-12-30 11:00:00+08:00,1.0,1.0,-0.0037737410071942393,2020 +46667,46679,1,35420.8,36783.71933707012,0.03767793773912835,tp,12,0.03847793773912835,0.01923896886956415,False,BTC,2021-01-07 04:30:00+08:00,1.0,0.0,0.01878550724637677,2021 +47222,47258,1,34089.0,33172.56252237664,-0.027683671495888993,sl,36,-0.026883671495888994,0.026883671495889046,False,BTC,2021-01-12 23:15:00+08:00,0.0,1.0,0.002818706687763171,2021 +47335,47344,1,36091.71,37141.56635886247,0.02828857349409234,tp,9,0.02908857349409234,0.014544286747046173,False,BTC,2021-01-14 03:30:00+08:00,1.0,0.0,0.0005140514893735835,2021 +48027,48035,-1,35270.73,34463.53032250836,0.022085822819421105,tp,8,0.022885822819421104,0.011442911409710568,False,BTC,2021-01-21 08:30:00+08:00,1.0,0.0,-0.003024313850878869,2021 +49565,49568,1,39040.04,38653.93107527527,-0.010690075028732787,sl,3,-0.009890075028732787,0.009890075028732848,False,BTC,2021-02-06 09:00:00+08:00,1.0,1.0,-0.000878643289319631,2021 +51993,51996,1,50062.81,50929.72385339253,0.016516524050338544,tp,3,0.017316524050338542,0.008658262025169275,False,BTC,2021-03-03 16:00:00+08:00,1.0,1.0,0.0002551814781114674,2021 +52528,52530,1,51889.85,51458.41333810557,-0.00911447117103684,sl,2,-0.00831447117103684,0.008314471171036873,False,BTC,2021-03-09 05:45:00+08:00,1.0,1.0,-0.0010700389105058367,2021 +52961,53000,1,59426.74,60774.81724973707,0.021884691264186306,tp,39,0.022684691264186305,0.01134234563209314,False,BTC,2021-03-13 18:00:00+08:00,1.0,1.0,-0.0018071427325226678,2021 +53504,53529,1,57421.0,58609.7045970198,0.019901565577398538,tp,25,0.020701565577398537,0.010350782788699239,False,BTC,2021-03-19 09:45:00+08:00,0.0,0.0,-0.0011226530970346235,2021 +54066,54114,-1,52479.97,52897.4,-0.008754082290824486,time,48,-0.007954082290824485,0.015501297899183097,False,BTC,2021-03-25 06:15:00+08:00,1.0,1.0,0.009115551718152448,2021 +54332,54338,1,56180.01,55677.8566561866,-0.009738292175693797,sl,6,-0.008938292175693797,0.008938292175693826,False,BTC,2021-03-28 00:45:00+08:00,1.0,0.0,0.0009064370383564383,2021 +54495,54522,1,57739.99,57234.66007001838,-0.009551818799788862,sl,27,-0.008751818799788862,0.008751818799788891,False,BTC,2021-03-29 17:30:00+08:00,1.0,1.0,0.012202486678507993,2021 +54797,54816,1,58955.0,58516.51194379823,-0.008237673754588611,sl,19,-0.007437673754588611,0.007437673754588562,False,BTC,2021-04-01 21:00:00+08:00,1.0,0.0,-0.0011983222462738363,2021 +55274,55276,1,58981.71,58631.69100744089,-0.0067343649507467865,sl,2,-0.005934364950746786,0.005934364950746821,False,BTC,2021-04-06 20:15:00+08:00,0.0,0.0,0.00013139376967699187,2021 +55364,55397,-1,56857.17,55656.60261686567,0.020315496658281272,tp,33,0.02111549665828127,0.010557748329140665,False,BTC,2021-04-07 18:45:00+08:00,1.0,0.0,-0.005345631298392798,2021 +56334,56352,-1,60840.0,59916.07894578944,0.014386079129036118,tp,18,0.015186079129036118,0.0075930395645180775,False,BTC,2021-04-17 21:15:00+08:00,1.0,1.0,-0.001276967208600098,2021 +56841,56845,-1,52709.99,51191.765085689156,0.02800336183540999,tp,4,0.028803361835409987,0.014401680917704987,False,BTC,2021-04-23 04:00:00+08:00,1.0,1.0,-0.001648304095225283,2021 +57589,57592,1,56225.48,57155.83599109152,0.015746875030529107,tp,3,0.016546875030529106,0.008273437515264577,False,BTC,2021-04-30 23:00:00+08:00,1.0,1.0,0.006636154655310527,2021 +58365,58409,1,58941.0,58309.52841333695,-0.011513621870396675,sl,44,-0.010713621870396674,0.010713621870396633,False,BTC,2021-05-09 01:00:00+08:00,0.0,1.0,0.0013847083189506939,2021 +59126,59133,-1,47963.58,46982.95095819804,0.01964528456387041,tp,7,0.02044528456387041,0.010222642281935188,False,BTC,2021-05-16 23:15:00+08:00,1.0,0.0,-0.0024861855670103455,2021 +59699,59703,-1,37502.82,38301.70761431125,-0.02210206779946815,sl,4,-0.021302067799468152,0.021302067799468055,False,BTC,2021-05-22 22:30:00+08:00,0.0,1.0,-0.004450649350649313,2021 +60534,60545,1,35741.01,36682.512625772186,0.025542362058939682,tp,11,0.02634236205893968,0.013171181029469866,False,BTC,2021-05-31 15:15:00+08:00,1.0,0.0,0.00516325820221998,2021 +61262,61283,-1,33962.61,32919.92657592727,0.02990092151553526,tp,21,0.03070092151553526,0.015350460757767683,False,BTC,2021-06-08 05:15:00+08:00,1.0,1.0,0.015897443181818082,2021 +62008,62016,1,40056.8,40786.70679963437,0.017421795041899644,tp,8,0.018221795041899642,0.009110897520949861,False,BTC,2021-06-15 23:45:00+08:00,0.0,0.0,-0.0026410681955340684,2021 +63792,63800,1,35185.64,35634.457851252046,0.01195571088807952,tp,8,0.01275571088807952,0.0063778554440397555,False,BTC,2021-07-04 13:45:00+08:00,1.0,0.0,0.010076853801801759,2021 +63941,63947,1,34131.61,33819.611111829494,-0.009941053942972707,sl,6,-0.009141053942972707,0.009141053942972608,False,BTC,2021-07-06 03:00:00+08:00,1.0,0.0,0.0015063231296537998,2021 +64155,64183,-1,33209.11,32630.652126925877,0.01661865027620804,tp,28,0.01741865027620804,0.00870932513810404,False,BTC,2021-07-08 08:30:00+08:00,1.0,1.0,0.009093824989902265,2021 +64430,64442,1,33352.04,33776.58356795167,0.011929163432031946,tp,12,0.012729163432031947,0.0063645817160159985,False,BTC,2021-07-11 05:15:00+08:00,0.0,1.0,0.00195812622382889,2021 +64850,64867,-1,32472.62,32057.033682456735,0.011998053176591977,tp,17,0.012798053176591977,0.00639902658829599,False,BTC,2021-07-15 14:15:00+08:00,1.0,1.0,-0.0005500581974399967,2021 +65263,65269,-1,30664.6,30919.196413407863,-0.009102616483106384,sl,6,-0.008302616483106384,0.00830261648310633,False,BTC,2021-07-19 21:30:00+08:00,1.0,1.0,0.00905908798972378,2021 +65600,65607,1,32741.29,32511.521873253692,-0.007817687047343234,sl,7,-0.007017687047343233,0.007017687047343278,False,BTC,2021-07-23 09:45:00+08:00,1.0,0.0,-0.001011128284389463,2021 +65686,65689,1,33275.89,33781.04269187153,0.014380741728366446,tp,3,0.015180741728366446,0.007590370864183251,False,BTC,2021-07-24 07:15:00+08:00,1.0,0.0,0.006056183206106763,2021 +66068,66069,1,39147.03,38693.5679849357,-0.0123835611300347,sl,1,-0.0115835611300347,0.011583561130034711,False,BTC,2021-07-28 06:45:00+08:00,1.0,0.0,0.004502622422063525,2021 +66351,66361,1,41372.0,42389.111929317645,0.02378454822869683,tp,10,0.02458454822869683,0.012292274114348455,False,BTC,2021-07-31 05:30:00+08:00,1.0,1.0,0.0032446882944667825,2021 +67117,67120,1,44144.01,43672.23177391669,-0.01148725351601071,sl,3,-0.010687253516010709,0.010687253516010737,False,BTC,2021-08-08 05:00:00+08:00,1.0,0.0,0.00010622119815669544,2021 +67269,67309,1,45777.6,45271.956194020575,-0.011845660016676795,sl,40,-0.011045660016676794,0.01104566001667672,False,BTC,2021-08-09 19:00:00+08:00,1.0,0.0,-0.0018288059235469915,2021 +68044,68050,-1,46667.09,45889.42014251797,0.01586420292077406,tp,6,0.016664202920774057,0.008332101460387029,False,BTC,2021-08-17 20:45:00+08:00,0.0,0.0,-0.001446193109315185,2021 +69511,69521,-1,48221.01,48576.9561827438,-0.00818155801265463,sl,10,-0.007381558012654629,0.007381558012654619,False,BTC,2021-09-02 03:30:00+08:00,0.0,0.0,0.0012715758520986018,2021 +69871,69893,1,50258.52,50748.11381391446,0.00894150878128651,tp,22,0.00974150878128651,0.0048707543906432406,False,BTC,2021-09-05 21:30:00+08:00,1.0,1.0,-3.727963676005848e-05,2021 +70581,70587,1,46364.37,45987.10650684472,-0.008936926979818382,sl,6,-0.008136926979818382,0.008136926979818368,False,BTC,2021-09-13 07:00:00+08:00,1.0,1.0,0.0057219415769821395,2021 +71412,71415,-1,42419.5,42893.07347947735,-0.01196405142628632,sl,3,-0.01116405142628632,0.011164051426286285,False,BTC,2021-09-21 22:45:00+08:00,1.0,0.0,0.002176648799813597,2021 +71689,71695,-1,41100.0,41851.97781320563,-0.019096297158287853,sl,6,-0.018296297158287855,0.018296297158287907,False,BTC,2021-09-24 20:00:00+08:00,1.0,0.0,0.003299389741966901,2021 +71904,71911,-1,43130.78,43406.66505689027,-0.007196477339159431,sl,7,-0.006396477339159431,0.006396477339159489,False,BTC,2021-09-27 01:45:00+08:00,0.0,1.0,-0.0041060183156097895,2021 +72666,72699,1,48647.42,49664.47174044002,0.02010659156107402,tp,33,0.02090659156107402,0.010453295780537004,False,BTC,2021-10-05 00:15:00+08:00,0.0,1.0,0.005290678249248258,2021 +72843,72845,1,52481.5,53481.49751932635,0.01825428616419791,tp,2,0.01905428616419791,0.009527143082098954,False,BTC,2021-10-06 20:30:00+08:00,1.0,0.0,0.009200077324569848,2021 +73166,73183,1,54740.56,54447.443470409475,-0.006154649817073903,sl,17,-0.005354649817073903,0.005354649817073925,False,BTC,2021-10-10 05:15:00+08:00,0.0,1.0,-0.0005972515040597309,2021 +73454,73488,1,55703.73,55109.9379214904,-0.011459826164416757,sl,34,-0.010659826164416757,0.010659826164416807,False,BTC,2021-10-13 05:15:00+08:00,0.0,0.0,-0.0014646887029316292,2021 +74300,74348,-1,62870.17,63091.75,-0.004324405930507294,time,48,-0.003524405930507294,0.015566868078392158,False,BTC,2021-10-22 00:45:00+08:00,1.0,1.0,-0.002712576634209825,2021 +75629,75631,1,61983.83,61622.91471183104,-0.006622732931620373,sl,2,-0.005822732931620373,0.005822732931620409,False,BTC,2021-11-04 21:00:00+08:00,0.0,0.0,0.00022648253452481443,2021 +76054,76057,1,67728.53,67241.48934327549,-0.007991070834174434,sl,3,-0.0071910708341744334,0.007191070834174466,False,BTC,2021-11-09 07:15:00+08:00,1.0,1.0,-0.0015485947157099493,2021 +76739,76742,-1,61865.45,60580.20295073717,0.01997487594873758,tp,3,0.02077487594873758,0.010387437974368786,False,BTC,2021-11-16 10:30:00+08:00,1.0,1.0,0.0016926143712607895,2021 +77184,77186,1,57939.75,58626.563577809844,0.011053927188326563,tp,2,0.011853927188326563,0.005926963594163271,False,BTC,2021-11-21 01:45:00+08:00,0.0,1.0,0.0011878040305768349,2021 +77732,77780,-1,54450.0,54107.37,0.005492561983471026,time,48,0.006292561983471026,0.01332970724508316,False,BTC,2021-11-26 18:45:00+08:00,1.0,1.0,0.0042290013376463705,2021 +78681,78682,1,48458.3,47894.694770639726,-0.012430726405182951,sl,1,-0.01163072640518295,0.01163072640518289,False,BTC,2021-12-06 16:00:00+08:00,0.0,0.0,0.002924625256930757,2021 +78745,78793,1,50631.8,51300.37,0.012404547339814102,time,48,0.013204547339814103,0.010363965964304916,False,BTC,2021-12-07 08:00:00+08:00,1.0,1.0,0.014422289766970577,2021 +78907,78955,-1,50475.6,49653.32,0.015490643399979373,time,48,0.016290643399979373,0.011288509705299248,False,BTC,2021-12-09 00:30:00+08:00,0.0,1.0,-0.002296643334124606,2021 +79913,79921,1,47862.22,47522.80524462923,-0.007891496286022117,sl,8,-0.007091496286022117,0.007091496286022088,False,BTC,2021-12-19 12:00:00+08:00,1.0,1.0,0.004164242040902426,2021 +80830,80878,-1,48028.85,47777.6,0.0044312308123138485,time,48,0.005231230812313849,0.008872129272696094,False,BTC,2021-12-29 01:15:00+08:00,1.0,1.0,0.0018340274874357107,2021 +81417,81419,-1,46301.16,45697.92481036935,0.012228511372731265,tp,2,0.013028511372731266,0.006514255686365652,False,BTC,2022-01-04 04:00:00+08:00,1.0,1.0,-0.001497752728920836,2022 +81608,81615,-1,44673.22,43468.117941887824,0.026175939010265603,tp,7,0.0269759390102656,0.013487969505132829,False,BTC,2022-01-06 03:45:00+08:00,1.0,1.0,-0.004248054879852951,2022 +82583,82631,-1,43161.77,42994.0,0.003087004633961879,time,48,0.003887004633961879,0.005437820510440227,False,BTC,2022-01-16 07:30:00+08:00,1.0,0.0,-0.0021937345099888044,2022 +83028,83033,1,42941.36,43460.64039839311,0.011292779511247618,tp,5,0.012092779511247619,0.006046389755623836,False,BTC,2022-01-20 22:45:00+08:00,1.0,1.0,0.004895424278339533,2022 +83060,83071,-1,41137.96,40202.33210609536,0.02194366288227804,tp,11,0.02274366288227804,0.011371831441139065,False,BTC,2022-01-21 06:45:00+08:00,1.0,0.0,0.0026045424738279418,2022 +83481,83483,1,36329.48,36020.28674259676,-0.009310808781277349,sl,2,-0.008510808781277348,0.008510808781277305,False,BTC,2022-01-25 16:00:00+08:00,0.0,0.0,0.002587817429242612,2022 +83638,83647,1,36788.89,36293.02071201717,-0.014278778185012662,sl,9,-0.013478778185012662,0.013478778185012575,False,BTC,2022-01-27 07:15:00+08:00,0.0,1.0,-0.0015921052631579426,2022 +84096,84144,1,38449.98,38433.9,-0.0012182056791707498,time,48,-0.00041820567917074975,0.008890608935480116,False,BTC,2022-02-01 01:45:00+08:00,1.0,1.0,0.002868421052631579,2022 +84695,84697,1,42548.99,42224.373170683524,-0.00842924876281373,sl,2,-0.00762924876281373,0.007629248762813804,False,BTC,2022-02-07 07:30:00+08:00,1.0,0.0,0.009257179097950206,2022 +85170,85218,-1,42279.83,42285.95,-0.0009447498724568038,time,48,-0.00014474987245680372,0.011229631504703502,False,BTC,2022-02-12 06:15:00+08:00,1.0,1.0,-0.0019253337073661216,2022 +86776,86803,1,40792.8,41959.17106448568,0.027792571838306673,tp,27,0.02859257183830667,0.014296285919153346,False,BTC,2022-02-28 23:45:00+08:00,1.0,1.0,-0.003448362720403059,2022 +87452,87457,-1,38823.3,37992.7902015409,0.020592045458760713,tp,5,0.021392045458760712,0.010696022729380396,False,BTC,2022-03-08 00:45:00+08:00,1.0,0.0,0.0035628636452834273,2022 +88512,88521,1,41634.8,42320.72248007735,0.01567473940255134,tp,9,0.016474739402551338,0.008237369701275699,False,BTC,2022-03-19 01:45:00+08:00,1.0,1.0,-0.0013737010779839211,2022 +88841,88842,1,42363.4,42977.1386653557,0.01368747421962583,tp,1,0.01448747421962583,0.007243737109812901,False,BTC,2022-03-22 12:00:00+08:00,1.0,1.0,0.002191102219681814,2022 +90538,90586,-1,42646.1,42361.9,0.005864149828471938,time,48,0.006664149828471938,0.009921124548351003,False,BTC,2022-04-09 04:15:00+08:00,1.0,1.0,-0.000299303944315579,2022 +91446,91466,-1,38918.3,39152.50069460389,-0.00681775243532963,sl,20,-0.0060177524353296295,0.006017752435329659,False,BTC,2022-04-18 15:15:00+08:00,0.0,1.0,0.005210191082802548,2022 +92248,92263,-1,38546.9,37823.53005647777,0.017965969339226496,tp,15,0.018765969339226495,0.009382984669613202,False,BTC,2022-04-26 23:45:00+08:00,1.0,1.0,0.0010010443465193436,2022 +92840,92888,1,38551.9,38553.1,-0.0007688731294696996,time,48,3.112687053030044e-05,0.008835824578962832,False,BTC,2022-05-03 03:45:00+08:00,0.0,0.0,-0.0002908881259990709,2022 +93328,93329,-1,34972.2,35215.044344354115,-0.0077439252993554385,sl,1,-0.006943925299355438,0.006943925299355509,False,BTC,2022-05-08 05:45:00+08:00,1.0,1.0,-0.00013966480446927373,2022 +93848,93854,-1,30172.3,30585.948453546087,-0.014509543307805097,sl,6,-0.013709543307805097,0.013709543307805126,False,BTC,2022-05-13 15:45:00+08:00,1.0,0.0,-0.0025823913597761493,2022 +94012,94056,-1,29949.7,30277.700000709945,-0.011751695700122014,sl,44,-0.010951695700122013,0.010951695700122,False,BTC,2022-05-15 08:45:00+08:00,0.0,1.0,-0.003638112293967457,2022 +94552,94600,-1,29142.0,29246.8,-0.004396184201496098,time,48,-0.0035961842014960977,0.01079242666801459,False,BTC,2022-05-20 23:45:00+08:00,1.0,0.0,-0.0015151669918317177,2022 +94993,95015,-1,29791.0,29414.42246072892,0.011840647822197254,tp,22,0.012640647822197254,0.0063203239110985986,False,BTC,2022-05-25 14:00:00+08:00,1.0,0.0,0.0015778908858491757,2022 +96787,96792,-1,27072.7,26541.605272136523,0.01881735356515891,tp,5,0.01961735356515891,0.009808676782579438,False,BTC,2022-06-13 06:30:00+08:00,1.0,0.0,0.0032315321414847216,2022 +97302,97343,-1,19230.0,18615.582206014828,0.03115100332736206,tp,41,0.03195100332736206,0.01597550166368103,False,BTC,2022-06-18 15:15:00+08:00,1.0,1.0,0.03538925222598685,2022 +98451,98460,-1,19495.3,19170.86404828558,0.015841752202552333,tp,9,0.016641752202552332,0.008320876101276175,False,BTC,2022-06-30 14:30:00+08:00,1.0,1.0,0.006716867469879481,2022 +98964,98970,-1,19453.4,19634.236886535342,-0.010095901309557221,sl,6,-0.00929590130955722,0.009295901309557255,False,BTC,2022-07-05 22:45:00+08:00,1.0,1.0,0.0016430436877203508,2022 +100309,100315,1,22747.4,23356.194752026975,0.025963267539453896,tp,6,0.026763267539453895,0.013381633769726965,False,BTC,2022-07-19 23:00:00+08:00,1.0,1.0,0.0035827972456414065,2022 +100606,100616,-1,23012.3,22584.04608818948,0.017809783107751928,tp,10,0.018609783107751927,0.009304891553875955,False,BTC,2022-07-23 01:15:00+08:00,1.0,0.0,-0.0015666244608021976,2022 +101092,101124,1,22544.9,23101.91637630246,0.023906979241533895,tp,32,0.024706979241533894,0.012353489620766944,False,BTC,2022-07-28 02:45:00+08:00,1.0,1.0,-0.00275,2022 +101668,101716,-1,22973.0,23028.6,-0.003220232446785293,time,48,-0.0024202324467852932,0.009687316548625776,False,BTC,2022-08-03 02:45:00+08:00,0.0,0.0,0.0003315821204030974,2022 +103063,103087,-1,23845.7,23500.08680089094,0.01369373258529053,tp,24,0.01449373258529053,0.007246866292645288,False,BTC,2022-08-17 15:30:00+08:00,0.0,1.0,0.011260844727746475,2022 +103804,103826,1,21467.0,21696.09498280411,0.009871960814464453,tp,22,0.010671960814464454,0.005335980407232216,False,BTC,2022-08-25 08:45:00+08:00,0.0,0.0,0.004163934426229576,2022 +105256,105257,1,19936.0,20224.647274399034,0.013678695545697951,tp,1,0.014478695545697952,0.007239347772848965,False,BTC,2022-09-09 11:45:00+08:00,1.0,1.0,-0.0009034589571502323,2022 +105680,105699,-1,21188.3,20551.91190510968,0.029234882217559724,tp,19,0.030034882217559723,0.01501744110877988,False,BTC,2022-09-13 21:45:00+08:00,0.0,0.0,-0.0032587260665452125,2022 +108292,108305,-1,19216.6,19001.972283115065,0.010368870501802284,tp,13,0.011168870501802285,0.005584435250901149,False,BTC,2022-10-11 02:45:00+08:00,1.0,0.0,0.0001501812532367403,2022 +109067,109070,1,19378.8,19269.272905004735,-0.006451902852357454,sl,3,-0.005651902852357454,0.0056519028523573855,False,BTC,2022-10-19 04:30:00+08:00,0.0,0.0,-0.00020376175548596944,2022 +109245,109251,-1,19135.9,18973.47634339909,0.0076879026646728445,tp,6,0.008487902664672845,0.004243951332336405,False,BTC,2022-10-21 01:00:00+08:00,1.0,0.0,-0.00019195849546047874,2022 +109956,109995,-1,20214.5,19999.08374995535,0.009856521311170246,tp,39,0.010656521311170246,0.005328260655585102,False,BTC,2022-10-28 10:45:00+08:00,0.0,1.0,0.00010821925220482411,2022 +110299,110328,-1,20350.1,20491.67898182089,-0.007757163936338912,sl,29,-0.0069571639363389115,0.006957163936338859,False,BTC,2022-11-01 00:30:00+08:00,0.0,0.0,0.005244356984640176,2022 +111014,111017,-1,20364.3,20107.657457969843,0.011802571265899472,tp,3,0.012602571265899472,0.006301285632949752,False,BTC,2022-11-08 11:15:00+08:00,0.0,1.0,-0.0004505464692660894,2022 +111305,111346,1,17147.5,16888.40719891155,-0.015909654532057095,sl,41,-0.015109654532057096,0.015109654532057079,False,BTC,2022-11-11 12:00:00+08:00,0.0,1.0,0.0032408500590319633,2022 +113359,113363,-1,16877.5,16958.523460095155,-0.005600679016154959,sl,4,-0.004800679016154959,0.004800679016154854,False,BTC,2022-12-02 21:30:00+08:00,1.0,0.0,0.0036651053864167767,2022 +114166,114173,-1,17115.7,17140.87942708444,-0.00227113042904703,sl,7,-0.0014711304290470299,0.0014711304290470426,False,BTC,2022-12-11 07:15:00+08:00,1.0,0.0,-0.000517956805894105,2022 +115294,115305,-1,16617.4,16668.46025574574,-0.00387269824074396,sl,11,-0.00307269824074396,0.0030726982407439556,False,BTC,2022-12-23 01:15:00+08:00,1.0,1.0,-0.00042514970059871526,2022 +116035,116052,-1,16498.4,16427.70412087335,0.003485014251482056,tp,17,0.004285014251482056,0.00214250712574104,False,BTC,2022-12-30 18:30:00+08:00,1.0,1.0,0.0008503914212995034,2022 +118081,118089,1,21384.4,21610.108082225728,0.009754800799916138,tp,8,0.010554800799916138,0.005277400399958091,False,BTC,2023-01-21 02:00:00+08:00,1.0,1.0,0.0017325800376647492,2023 +118576,118577,1,23593.3,23370.586666674877,-0.010239685560100633,sl,1,-0.009439685560100632,0.009439685560100677,False,BTC,2023-01-26 05:45:00+08:00,1.0,1.0,0.00986446143082492,2023 +119604,119610,-1,23159.8,22997.490952364056,0.006208223198643468,tp,6,0.007008223198643468,0.0035041115993217674,False,BTC,2023-02-05 22:45:00+08:00,1.0,0.0,-0.00016288878982199137,2023 +122690,122691,-1,21314.0,21048.164692206414,0.01167233310470049,tp,1,0.01247233310470049,0.006236166552350265,False,BTC,2023-03-10 02:15:00+08:00,1.0,0.0,-0.0008491879350347691,2023 +123058,123061,1,23345.1,24082.90320702327,0.0308041998973349,tp,3,0.0316041998973349,0.015802099948667436,False,BTC,2023-03-13 22:15:00+08:00,1.0,0.0,0.014541744299529735,2023 +123383,123390,1,25025.9,25426.486969660546,0.015206895642536097,tp,7,0.016006895642536097,0.008003447821268059,False,BTC,2023-03-17 07:30:00+08:00,0.0,1.0,-0.0011348088531187416,2023 +123810,123826,1,28033.6,27790.922948079296,-0.009456649589089596,sl,16,-0.008656649589089595,0.008656649589089538,False,BTC,2023-03-21 18:15:00+08:00,1.0,0.0,-0.0007971014492753623,2023 +124307,124337,-1,27797.3,27977.35387349352,-0.007277387138086134,sl,30,-0.006477387138086134,0.006477387138086164,False,BTC,2023-03-26 22:30:00+08:00,0.0,0.0,0.00044162060516273914,2023 +124405,124407,-1,26705.6,26971.27059594981,-0.010748123088408813,sl,2,-0.009948123088408813,0.009948123088408874,False,BTC,2023-03-27 23:00:00+08:00,1.0,0.0,0.012709691597685152,2023 +125538,125568,-1,28001.4,27893.070955892927,0.003068700997345664,tp,30,0.003868700997345664,0.0019343504986728604,False,BTC,2023-04-08 18:15:00+08:00,1.0,0.0,-0.0005298813990291953,2023 +126410,126423,-1,29511.5,29223.0063425817,0.00897563517334941,tp,13,0.00977563517334941,0.004887817586674696,False,BTC,2023-04-17 20:15:00+08:00,1.0,1.0,-0.00031898890590163054,2023 +126593,126609,-1,29150.3,29396.470947182304,-0.009244885547740679,sl,16,-0.008444885547740678,0.00844488554774071,False,BTC,2023-04-19 18:00:00+08:00,1.0,1.0,0.0002281239359891293,2023 +127003,127008,1,27616.4,27471.473570774368,-0.006047839299316128,sl,5,-0.005247839299316127,0.0052478392993161585,False,BTC,2023-04-24 00:30:00+08:00,0.0,1.0,-0.001179357232052201,2023 +129056,129074,1,27191.5,27480.173107698836,0.009816299494284473,tp,18,0.010616299494284474,0.005308149747142255,False,BTC,2023-05-15 09:45:00+08:00,0.0,0.0,-0.00034106791329449696,2023 +129186,129194,-1,27016.7,27117.788699475655,-0.004541711588597228,sl,8,-0.0037417115885972274,0.0037417115885972014,False,BTC,2023-05-16 18:15:00+08:00,1.0,1.0,-0.00032352941176467913,2023 +129798,129806,-1,26834.6,26928.943831752174,-0.004315753234711004,sl,8,-0.003515753234711004,0.003515753234710947,False,BTC,2023-05-23 03:15:00+08:00,0.0,1.0,-0.001380190555341216,2023 +130370,130384,1,27590.3,27855.924859760453,0.008827472690056053,tp,14,0.009627472690056054,0.004813736345028018,False,BTC,2023-05-29 02:15:00+08:00,1.0,0.0,-0.0013181083859598126,2023 +131092,131125,-1,26758.5,26572.302549688367,0.006158441254615638,tp,33,0.006958441254615639,0.0034792206273078123,False,BTC,2023-06-05 14:45:00+08:00,1.0,1.0,0.0008648207260039816,2023 +131565,131613,-1,25603.5,25670.3,-0.0034090182982795037,time,48,-0.002609018298279504,0.007347255185746186,False,BTC,2023-06-10 13:00:00+08:00,1.0,1.0,0.010297482837528604,2023 +132012,132014,-1,24920.1,25164.32229256468,-0.0106002131839231,sl,2,-0.0098002131839231,0.009800213183923101,False,BTC,2023-06-15 04:45:00+08:00,1.0,0.0,0.0012050313973277754,2023 +132489,132537,1,26805.5,26772.6,-0.002027360056704835,time,48,-0.001227360056704835,0.007342813016896116,False,BTC,2023-06-20 04:00:00+08:00,0.0,0.0,0.0013835012760630562,2023 +133474,133479,1,30559.2,30795.6674289838,0.006938011105781575,tp,5,0.007738011105781576,0.0038690055528908048,False,BTC,2023-06-30 10:15:00+08:00,0.0,0.0,-0.0003393996909155973,2023 +134890,134893,-1,30007.7,30241.389320048496,-0.008587645172688863,sl,3,-0.0077876451726888625,0.007787645172688915,False,BTC,2023-07-15 04:15:00+08:00,1.0,1.0,-0.0007014594989858857,2023 +138717,138727,1,26489.4,26795.70440670202,0.010763282169547821,tp,10,0.011563282169547821,0.0057816410847739376,False,BTC,2023-08-24 01:00:00+08:00,1.0,0.0,0.0009864874165500192,2023 +139774,139777,-1,25821.5,25888.30960427859,-0.003387363409507232,sl,3,-0.002587363409507232,0.002587363409507176,False,BTC,2023-09-04 01:15:00+08:00,1.0,0.0,0.00021972345682822356,2023 +140012,140049,-1,25741.9,25651.43536384662,0.00271429522115234,tp,37,0.00351429522115234,0.0017571476105761796,False,BTC,2023-09-06 12:45:00+08:00,0.0,0.0,0.001536645313618886,2023 +140934,140947,1,26414.0,26576.553076240158,0.005354049982590962,tp,13,0.0061540499825909626,0.003077024991295492,False,BTC,2023-09-16 03:15:00+08:00,1.0,1.0,-0.00011409447022134328,2023 +145249,145294,1,34365.1,34170.82846669413,-0.0064531636254766,sl,45,-0.0056531636254765994,0.005653163625476689,False,BTC,2023-10-31 02:00:00+08:00,0.0,1.0,0.001137916004832316,2023 +145845,145849,1,35186.2,34965.05225881053,-0.007085070317040961,sl,4,-0.0062850703170409606,0.006285070317040952,False,BTC,2023-11-06 07:00:00+08:00,0.0,0.0,0.0002794905779979568,2023 +147356,147359,1,37198.0,36895.86457906982,-0.008922356603316818,sl,3,-0.008122356603316817,0.008122356603316783,False,BTC,2023-11-22 00:45:00+08:00,0.0,0.0,-0.002720386996989046,2023 +147684,147694,1,37822.1,37708.65977764861,-0.0037993105182258474,sl,10,-0.0029993105182258475,0.002999310518225834,False,BTC,2023-11-25 10:45:00+08:00,1.0,1.0,2.6560424966412963e-06,2023 +148039,148047,1,38286.1,38043.5221696032,-0.007135924275306087,sl,8,-0.006335924275306087,0.006335924275306073,False,BTC,2023-11-29 03:30:00+08:00,1.0,1.0,-0.0019556025369978857,2023 +149761,149777,-1,42463.8,42147.36592978803,0.006651854761278392,tp,16,0.007451854761278393,0.0037259273806392315,False,BTC,2023-12-17 02:00:00+08:00,1.0,0.0,0.0011834874210520149,2023 +150094,150098,-1,42644.8,42842.59570985099,-0.005438214034325097,sl,4,-0.0046382140343250965,0.004638214034325146,False,BTC,2023-12-20 13:15:00+08:00,0.0,1.0,0.0033053066979145417,2023 +150681,150688,-1,42747.4,42342.78819473823,0.008665179291881491,tp,7,0.009465179291881492,0.004732589645940704,False,BTC,2023-12-26 16:00:00+08:00,1.0,1.0,0.0047884094032011465,2023 +151228,151239,1,42503.5,42312.16224363724,-0.005301694127842607,sl,11,-0.004501694127842607,0.004501694127842551,False,BTC,2024-01-01 08:45:00+08:00,0.0,0.0,9.467455621336218e-06,2024 +151945,151946,1,45148.1,44829.941451816536,-0.007846997507834498,sl,1,-0.007046997507834499,0.007046997507834448,False,BTC,2024-01-08 20:00:00+08:00,1.0,1.0,-0.004790497826722144,2024 +152343,152347,-1,44564.1,43704.14199427953,0.01849710250449276,tp,4,0.01929710250449276,0.009648551252246347,False,BTC,2024-01-12 23:30:00+08:00,1.0,1.0,0.0003600912820354858,2024 +153806,153818,1,42091.0,41983.693189269616,-0.003349400364220007,sl,12,-0.002549400364220007,0.002549400364219945,False,BTC,2024-01-28 05:15:00+08:00,1.0,1.0,0.00010982189753136,2024 +155150,155153,1,48061.3,47822.03626334921,-0.005778303471832671,sl,3,-0.004978303471832671,0.004978303471832678,False,BTC,2024-02-11 05:15:00+08:00,1.0,1.0,0.0016129745482723389,2024 +156224,156230,-1,51268.5,51548.47065061496,-0.0062608707220800225,sl,6,-0.005460870722080022,0.005460870722080072,False,BTC,2024-02-22 09:45:00+08:00,0.0,1.0,-0.00030977135002226483,2024 +156583,156586,1,51743.0,52031.77725883251,0.004780991802417906,tp,3,0.005580991802417906,0.0027904959012089374,False,BTC,2024-02-26 03:30:00+08:00,1.0,0.0,3.4978964039738246e-05,2024 +156663,156665,1,52583.0,53152.15644229141,0.010023962921313141,tp,2,0.010823962921313142,0.005411981460656577,False,BTC,2024-02-26 23:30:00+08:00,1.0,0.0,0.002424151257781668,2024 +156825,156828,1,58495.9,59189.07885053749,0.011050041636037502,tp,3,0.011850041636037503,0.005925020818018758,False,BTC,2024-02-28 16:00:00+08:00,1.0,1.0,0.002850232751670896,2024 +157862,157865,1,69027.1,69678.0885127553,0.00863091210199036,tp,3,0.00943091210199036,0.004715456050995138,False,BTC,2024-03-10 11:15:00+08:00,1.0,1.0,0.0006209125081805343,2024 +158473,158496,-1,68262.3,67313.408096704,0.013100672894057138,tp,23,0.013900672894057138,0.00695033644702859,False,BTC,2024-03-16 20:00:00+08:00,1.0,1.0,-0.0015612244897960032,2024 +158746,158777,-1,63768.6,64605.311732780574,-0.013921061663272762,sl,31,-0.013121061663272761,0.013121061663272765,False,BTC,2024-03-19 16:15:00+08:00,1.0,1.0,-0.0005806949806949583,2024 +159993,160013,-1,69525.4,69894.83145339607,-0.006113618524971758,sl,20,-0.005313618524971758,0.005313618524971686,False,BTC,2024-04-01 16:00:00+08:00,0.0,1.0,0.0005338310031300374,2024 +160067,160102,-1,66683.2,65213.74020307516,0.02123643191875668,tp,35,0.022036431918756677,0.011018215959378333,False,BTC,2024-04-02 10:30:00+08:00,1.0,0.0,0.009158937909913033,2024 +160533,160535,1,69572.0,69253.81258034009,-0.0053734982415326454,sl,2,-0.004573498241532645,0.0045734982415325505,False,BTC,2024-04-07 07:00:00+08:00,1.0,1.0,0.0036198647711562196,2024 +161193,161203,-1,62563.1,63851.32064028765,-0.021390741831649237,sl,10,-0.02059074183164924,0.02059074183164929,False,BTC,2024-04-14 04:00:00+08:00,1.0,1.0,0.013030267083975916,2024 +161557,161569,-1,60776.9,61553.85298318127,-0.013583688920976042,sl,12,-0.012783688920976042,0.012783688920975998,False,BTC,2024-04-17 23:00:00+08:00,1.0,1.0,0.00012391513905055842,2024 +161848,161893,1,64771.0,65469.998267565556,0.009991839983411643,tp,45,0.010791839983411643,0.005395919991705823,False,BTC,2024-04-20 23:45:00+08:00,0.0,0.0,-0.0009026006180306782,2024 +162790,162809,-1,61276.1,60452.86775201552,0.012634801627134897,tp,19,0.013434801627134898,0.006717400813567467,False,BTC,2024-04-30 19:15:00+08:00,1.0,1.0,0.000249396621078037,2024 +163600,163648,-1,61464.0,61272.7,0.0023123909931017004,time,48,0.0031123909931017003,0.006722316877457217,False,BTC,2024-05-09 05:45:00+08:00,1.0,0.0,-0.00033599341517213564,2024 +165982,165986,-1,67985.4,67543.94093402439,0.005693439267484001,tp,4,0.006493439267484001,0.0032467196337420358,False,BTC,2024-06-03 01:15:00+08:00,1.0,0.0,-0.000576843116241123,2024 +167128,167129,-1,66380.0,65701.75872870094,0.009417554554068433,tp,1,0.010217554554068434,0.005108777277034206,False,BTC,2024-06-14 23:45:00+08:00,1.0,0.0,-0.0021861924686192905,2024 +167454,167502,-1,65408.2,64874.0,0.007367171700184336,time,48,0.008167171700184337,0.006659503400758167,False,BTC,2024-06-18 09:15:00+08:00,1.0,0.0,0.002047978622428313,2024 +168035,168046,-1,63045.7,62505.79684376458,0.007763679303035955,tp,11,0.008563679303035955,0.004281839651517971,False,BTC,2024-06-24 10:30:00+08:00,1.0,1.0,0.0010686488684615498,2024 +169081,169084,-1,56876.7,57400.66644200281,-0.010012321425167302,sl,3,-0.009212321425167301,0.009212321425167308,False,BTC,2024-07-05 08:00:00+08:00,0.0,0.0,0.004912256339935082,2024 +170481,170490,1,65522.1,66435.7511528946,0.013144167737215483,tp,9,0.013944167737215483,0.006972083868607724,False,BTC,2024-07-19 22:00:00+08:00,1.0,0.0,0.0037884640343124384,2024 +170596,170599,1,67429.1,67128.60249533739,-0.005256495855092542,sl,3,-0.0044564958550925415,0.004456495855092587,False,BTC,2024-07-21 02:45:00+08:00,1.0,1.0,-0.0014536408458091683,2024 +170968,170974,-1,66155.7,66554.18528718704,-0.006823446009747293,sl,6,-0.006023446009747292,0.006023446009747276,False,BTC,2024-07-24 23:45:00+08:00,0.0,0.0,0.00017215620406049118,2024 +171183,171200,1,68042.1,67664.05364821361,-0.006356065315244492,sl,17,-0.005556065315244492,0.0055560653152444935,False,BTC,2024-07-27 05:30:00+08:00,0.0,1.0,0.0027893713391355566,2024 +171451,171458,-1,66874.9,67448.74515215623,-0.009380874919532416,sl,7,-0.008580874919532416,0.008580874919532444,False,BTC,2024-07-30 00:30:00+08:00,1.0,0.0,0.007733022126345365,2024 +176246,176260,1,61132.7,60640.55984824491,-0.00885035851115825,sl,14,-0.00805035851115825,0.008050358511158283,False,BTC,2024-09-17 23:15:00+08:00,1.0,1.0,0.01273571360993488,2024 +176753,176755,-1,62616.8,62896.2582852714,-0.005262992124659738,sl,2,-0.004462992124659737,0.004462992124659688,False,BTC,2024-09-23 06:00:00+08:00,0.0,1.0,0.0037507866981821296,2024 +177091,177105,1,64351.6,64846.17132072827,0.00688545491842111,tp,14,0.00768545491842111,0.0038427274592105613,False,BTC,2024-09-26 18:30:00+08:00,1.0,1.0,0.0030123024495474055,2024 +177752,177754,-1,60898.6,60348.69548879006,0.008229838308433053,tp,2,0.009029838308433054,0.004514919154216538,False,BTC,2024-10-03 15:45:00+08:00,1.0,0.0,-0.0012132083163473536,2024 +177880,177928,1,61843.1,61835.5,-0.0009228916402961453,time,48,-0.00012289164029614531,0.007304401318062403,False,BTC,2024-10-04 23:45:00+08:00,0.0,1.0,0.000142512445267802,2024 +178218,178222,1,62709.5,62430.40988863478,-0.005250523626647026,sl,4,-0.004450523626647026,0.004450523626647009,False,BTC,2024-10-08 12:15:00+08:00,1.0,0.0,-0.0010843064288463772,2024 +178564,178578,1,62889.4,62552.76115756157,-0.006152870951836637,sl,14,-0.0053528709518366364,0.005352870951836622,False,BTC,2024-10-12 02:45:00+08:00,1.0,1.0,0.0017939198587888382,2024 +178780,178782,-1,62483.4,62733.70318114216,-0.004805914869263846,sl,2,-0.004005914869263846,0.004005914869263843,False,BTC,2024-10-14 08:45:00+08:00,0.0,0.0,0.00039586645469000725,2024 +180706,180714,-1,68232.7,68499.38632304428,-0.004708482634342232,sl,8,-0.003908482634342232,0.00390848263434231,False,BTC,2024-11-03 10:15:00+08:00,1.0,1.0,-2.4558808233226183e-05,2024 +180845,180847,1,69132.0,68843.48176715054,-0.004973439692898451,sl,2,-0.0041734396928984506,0.0041734396928984644,False,BTC,2024-11-04 21:00:00+08:00,1.0,1.0,-0.0016915588297912675,2024 +181367,181368,1,76898.5,76642.0744680315,-0.0041345973194341044,sl,1,-0.0033345973194341045,0.003334597319434044,False,BTC,2024-11-10 07:30:00+08:00,1.0,0.0,-0.00039030677064372997,2024 +182370,182373,1,93369.9,92947.78490347612,-0.005320890528145341,sl,3,-0.0045208905281453405,0.0045208905281453405,False,BTC,2024-11-20 18:15:00+08:00,1.0,1.0,-0.00032620982935891596,2024 +182868,182870,-1,95444.4,96085.25019705418,-0.007514382373970436,sl,2,-0.006714382373970436,0.006714382373970418,False,BTC,2024-11-25 22:45:00+08:00,1.0,0.0,6.054038967497743e-05,2024 +183400,183418,1,96404.0,97141.73405766377,0.006852525389649446,tp,18,0.007652525389649447,0.003826262694824744,False,BTC,2024-12-01 11:45:00+08:00,0.0,0.0,0.0006730211251537089,2024 +183717,183722,-1,96467.6,95853.50727738645,0.005565792479688036,tp,5,0.006365792479688036,0.0031828962398440267,False,BTC,2024-12-04 19:00:00+08:00,1.0,0.0,-0.0001465379884255328,2024 +185521,185533,-1,95038.0,95755.45307481795,-0.008349117982469676,sl,12,-0.007549117982469677,0.0075491179824696535,False,BTC,2024-12-23 14:00:00+08:00,1.0,1.0,4.064748313905066e-05,2024 +187010,187058,-1,97049.6,96172.6,0.008236616328145607,time,48,0.009036616328145607,0.00829259231994448,False,BTC,2025-01-08 02:15:00+08:00,1.0,1.0,-0.0001319529756418303,2025 +187311,187359,-1,94681.7,94297.5,0.003257806313152353,time,48,0.004057806313152353,0.007657150648256152,False,BTC,2025-01-11 05:30:00+08:00,1.0,1.0,0.0006332570204364843,2025 +187906,187908,1,101821.4,101194.10973435506,-0.0069606918157178125,sl,2,-0.006160691815717812,0.006160691815717847,False,BTC,2025-01-17 10:15:00+08:00,1.0,1.0,0.005038799351075878,2025 +189608,189629,1,101831.9,100720.60598169944,-0.011713024487420502,sl,21,-0.010913024487420502,0.010913024487420535,False,BTC,2025-02-04 03:45:00+08:00,1.0,1.0,0.0068866259713088185,2025 +190374,190382,-1,94988.2,95472.80296429759,-0.005901717521729982,sl,8,-0.005101717521729982,0.0051017175217299765,False,BTC,2025-02-12 03:15:00+08:00,1.0,1.0,-0.0029838770341767368,2025 +190655,190668,1,97930.0,97306.11503689933,-0.007170723609728115,sl,13,-0.006370723609728114,0.006370723609728047,False,BTC,2025-02-15 01:30:00+08:00,1.0,1.0,7.36228127025879e-05,2025 +192604,192606,-1,85477.9,86929.42483018567,-0.017781287914018444,sl,2,-0.016981287914018445,0.01698128791401843,False,BTC,2025-03-07 08:45:00+08:00,0.0,1.0,0.005097998331943353,2025 +192836,192848,-1,84816.7,84138.40518395319,0.0071971847059223906,tp,12,0.007997184705922391,0.003998592352961217,False,BTC,2025-03-09 18:45:00+08:00,1.0,1.0,-0.0003927298229209961,2025 +193063,193091,1,83302.6,82256.77624391673,-0.013354515178197062,sl,28,-0.012554515178197062,0.012554515178197006,False,BTC,2025-03-12 03:30:00+08:00,1.0,1.0,0.0005268181873105185,2025 +196114,196139,1,84856.7,85858.6247987474,0.011007256218394166,tp,25,0.011807256218394166,0.005903628109197083,False,BTC,2025-04-12 22:15:00+08:00,1.0,1.0,0.001260730795284328,2025 +197031,197069,1,88201.5,89205.60662424867,0.010584235236914003,tp,38,0.011384235236914004,0.005692117618457019,False,BTC,2025-04-22 11:30:00+08:00,1.0,0.0,0.00014138739804992774,2025 +197353,197354,1,94764.2,94372.66119691111,-0.004931716440268437,sl,1,-0.004131716440268437,0.00413171644026844,False,BTC,2025-04-25 20:00:00+08:00,1.0,1.0,8.919280511365902e-05,2025 +197586,197593,-1,93766.3,93250.59144769945,0.004699934969179242,tp,7,0.005499934969179243,0.002749967484589584,False,BTC,2025-04-28 06:15:00+08:00,0.0,1.0,0.0011556958539014621,2025 +197798,197837,1,94608.6,94263.48322420545,-0.004447837255752134,sl,39,-0.003647837255752134,0.0036478372557522077,False,BTC,2025-04-30 11:15:00+08:00,1.0,1.0,-0.00063096978143386,2025 +198452,198458,1,96206.2,97098.44813744376,0.008474330941703996,tp,6,0.009274330941703997,0.004637165470851987,False,BTC,2025-05-07 06:45:00+08:00,0.0,1.0,0.0032650628861776174,2025 +198561,198567,1,98020.0,98991.95195153284,0.009115853412903926,tp,6,0.009915853412903927,0.004957926706451959,False,BTC,2025-05-08 10:00:00+08:00,1.0,1.0,0.0010590393938025371,2025 +199768,199776,1,105294.5,106226.8910610943,0.008055078480778183,tp,8,0.008855078480778183,0.0044275392403890605,False,BTC,2025-05-20 23:45:00+08:00,1.0,0.0,-0.0005838629484792118,2025 +199891,199894,1,108885.3,110461.51455866646,0.013675916938893088,tp,3,0.014475916938893088,0.00723795846944654,False,BTC,2025-05-22 06:30:00+08:00,1.0,1.0,-0.0006076887447893082,2025 +200622,200623,-1,108250.0,107540.90362596668,0.005750543870977593,tp,1,0.006550543870977594,0.003275271935488802,False,BTC,2025-05-29 21:15:00+08:00,1.0,0.0,-0.0002766366134532321,2025 +200643,200668,-1,106154.9,104913.69129460344,0.01089242969845529,tp,25,0.01169242969845529,0.005846214849227625,False,BTC,2025-05-30 02:30:00+08:00,1.0,1.0,-0.001131775700934634,2025 +201297,201300,-1,104223.8,104655.27269831063,-0.00493986726938207,sl,3,-0.00413986726938207,0.0041398672693820455,False,BTC,2025-06-05 22:00:00+08:00,0.0,0.0,0.001619503023893537,2025 +203896,203897,1,108695.3,109533.58650140539,0.0069122608006545105,tp,1,0.007712260800654511,0.0038561304003272667,False,BTC,2025-07-02 23:45:00+08:00,1.0,1.0,0.0008891696359683938,2025 +204581,204582,1,109623.5,110299.03591477411,0.0053623275554430475,tp,1,0.006162327555443048,0.003081163777721519,False,BTC,2025-07-10 03:00:00+08:00,1.0,1.0,-0.0006910622010972142,2025 +206789,206837,-1,113645.1,113628.6,-0.0006548111621178564,time,48,0.0001451888378821436,0.006213249374798341,False,BTC,2025-08-02 03:00:00+08:00,1.0,1.0,-0.0009707718029744149,2025 +207134,207147,1,114545.6,114217.44664812618,-0.0036648272118163312,sl,13,-0.0028648272118163313,0.0028648272118162806,False,BTC,2025-08-05 17:15:00+08:00,1.0,0.0,0.0015666666666667177,2025 +207330,207333,1,115824.9,116414.53929108783,0.004290781784295388,tp,3,0.005090781784295388,0.0025453908921477184,False,BTC,2025-08-07 18:15:00+08:00,1.0,0.0,9.32548830261043e-05,2025 +207589,207590,1,117875.2,117588.60053309865,-0.003231380535526941,sl,1,-0.0024313805355269413,0.002431380535526967,False,BTC,2025-08-10 11:00:00+08:00,1.0,0.0,-0.0002381205266746632,2025 +207899,207909,1,119903.4,120652.74672726975,0.005449586978098702,tp,10,0.006249586978098702,0.0031247934890493386,False,BTC,2025-08-13 16:30:00+08:00,1.0,0.0,-0.000783279953322248,2025 +207929,207949,1,121507.4,123055.1588856803,0.011937980449588296,tp,20,0.012737980449588297,0.00636899022479413,False,BTC,2025-08-14 00:00:00+08:00,0.0,1.0,-0.0008113937997862913,2025 +208352,208356,-1,116214.0,115396.5379931616,0.006234109546512431,tp,4,0.007034109546512431,0.0035170547732562246,False,BTC,2025-08-18 09:45:00+08:00,1.0,1.0,0.0011350039314895466,2025 +210104,210109,1,112900.1,112511.66075216966,-0.004240557163637135,sl,5,-0.003440557163637135,0.0034405571636371528,False,BTC,2025-09-05 15:45:00+08:00,1.0,1.0,0.0007076201060360189,2025 +210474,210481,1,111902.3,112522.95980719093,0.004746443703042071,tp,7,0.0055464437030420715,0.0027732218515210336,False,BTC,2025-09-09 12:15:00+08:00,1.0,0.0,-0.0008116401602787343,2025 +214412,214427,1,110369.3,111609.92710848266,0.010440690196301493,tp,15,0.011240690196301494,0.005620345098150739,False,BTC,2025-10-20 12:45:00+08:00,1.0,1.0,0.004886560996957244,2025 +214761,214780,-1,109852.1,110497.89049211083,-0.006678726871045956,sl,19,-0.005878726871045956,0.005878726871045967,False,BTC,2025-10-24 04:00:00+08:00,1.0,0.0,-0.00024784649437410326,2025 +215747,215753,-1,108816.9,107839.30579514877,0.008183845384781431,tp,6,0.008983845384781431,0.0044919226923907166,False,BTC,2025-11-03 10:30:00+08:00,1.0,0.0,-0.0003884359162801267,2025 +216814,216843,-1,97224.3,95416.97222635138,0.017789259821347336,tp,29,0.018589259821347334,0.009294629910673646,False,BTC,2025-11-14 13:15:00+08:00,1.0,1.0,0.0066868037746941125,2025 +218015,218045,1,89473.2,90832.33128656783,0.014390373056600566,tp,30,0.015190373056600566,0.007595186528300254,False,BTC,2025-11-27 01:30:00+08:00,1.0,0.0,-0.00020463691238332472,2025 +218847,218850,-1,91014.3,91398.90399932429,-0.005025753528009208,sl,3,-0.004225753528009208,0.004225753528009262,False,BTC,2025-12-05 17:30:00+08:00,1.0,1.0,0.00346264765571028,2025 +219408,219443,1,90262.0,89727.7200991646,-0.006719211859203264,sl,35,-0.005919211859203264,0.005919211859203253,False,BTC,2025-12-11 13:45:00+08:00,0.0,1.0,-0.0013546935228716586,2025 +220024,220072,-1,87191.4,86575.1,0.006268357659126799,time,48,0.007068357659126799,0.011555679676356753,False,BTC,2025-12-17 23:45:00+08:00,0.0,1.0,0.012104448871921018,2025 +221536,221553,1,89429.9,89176.69387413036,-0.0036313363413090476,sl,17,-0.0028313363413090477,0.0028313363413091258,False,BTC,2026-01-02 17:45:00+08:00,1.0,1.0,0.0006593055464923576,2026 +221603,221614,1,90259.9,89984.60328067763,-0.0038500445859386,sl,11,-0.0030500445859386,0.0030500445859385755,False,BTC,2026-01-03 10:30:00+08:00,1.0,1.0,-0.0002803114571746061,2026 +221692,221695,1,91301.4,90984.1406078585,-0.004274857911724196,sl,3,-0.0034748579117241957,0.003474857911724195,False,BTC,2026-01-04 08:45:00+08:00,0.0,1.0,0.0006418151417470873,2026 +221952,221956,-1,91547.6,92150.0246186455,-0.007380452340044943,sl,4,-0.006580452340044942,0.00658045234004502,False,BTC,2026-01-07 01:45:00+08:00,1.0,0.0,-0.0013081519488761246,2026 +223840,223855,-1,87630.4,87999.34714240358,-0.005010264273626361,sl,15,-0.00421026427362636,0.004210264273626427,False,BTC,2026-01-26 17:45:00+08:00,0.0,0.0,0.0005833636932141885,2026 +224115,224121,1,88293.5,87976.64630026092,-0.004388641290005228,sl,6,-0.0035886412900052274,0.0035886412900052954,False,BTC,2026-01-29 14:30:00+08:00,1.0,0.0,-0.0006710493391870067,2026 +224339,224340,-1,80964.0,81506.99302773151,-0.007506598336686853,sl,1,-0.006706598336686852,0.006706598336686825,False,BTC,2026-01-31 22:30:00+08:00,1.0,1.0,0.006191814722975898,2026 +224727,224734,-1,74327.8,72567.42040872827,0.02288399967807109,tp,7,0.02368399967807109,0.011841999839035553,False,BTC,2026-02-04 23:30:00+08:00,1.0,1.0,-0.005135498352952298,2026 +225321,225355,-1,68728.6,67494.30305779116,0.017159000215468522,tp,34,0.01795900021546852,0.008979500107734262,False,BTC,2026-02-11 04:00:00+08:00,0.0,0.0,0.001663449325075805,2026 +225593,225641,1,69020.1,68863.2,-0.00307325083562627,time,48,-0.00227325083562627,0.009204546930098624,False,BTC,2026-02-14 00:00:00+08:00,1.0,1.0,0.001049675835403687,2026 +225871,225879,-1,68393.1,67253.06983498827,0.015868789176272644,tp,8,0.016668789176272642,0.008334394588136356,False,BTC,2026-02-16 21:30:00+08:00,1.0,1.0,0.00511903970687253,2026 +226359,226361,1,68593.2,68366.81402141534,-0.0041004143061507264,sl,2,-0.0033004143061507265,0.0033004143061508328,False,BTC,2026-02-21 23:30:00+08:00,1.0,1.0,-8.813290441986516e-05,2026 +226494,226515,-1,65006.7,65449.132798644314,-0.007605956903585582,sl,21,-0.0068059569035855815,0.0068059569035855555,False,BTC,2026-02-23 09:15:00+08:00,1.0,0.0,0.017745957348488755,2026 +227592,227600,-1,70185.6,69499.2826932912,0.008978605678498244,tp,8,0.009778605678498245,0.004889302839249119,False,BTC,2026-03-06 19:45:00+08:00,1.0,1.0,-0.0001161262547299794,2026 +227860,227866,-1,67229.8,67737.70750184539,-0.008354797156103213,sl,6,-0.007554797156103212,0.0075547971561031255,False,BTC,2026-03-09 14:45:00+08:00,0.0,0.0,0.00018165089651367493,2026 +228752,228756,-1,72104.4,71239.53802673102,0.011194579710377862,tp,4,0.011994579710377862,0.005997289855188955,False,BTC,2026-03-18 21:45:00+08:00,1.0,1.0,-0.00012904660641758014,2026 +229232,229239,1,71450.0,70667.75185422362,-0.011748189583994106,sl,7,-0.010948189583994105,0.010948189583994157,False,BTC,2026-03-23 21:45:00+08:00,1.0,1.0,0.0002126603813709506,2026 +229868,229907,1,67579.1,67126.21917851601,-0.007501492347249305,sl,39,-0.006701492347249305,0.006701492347249284,False,BTC,2026-03-30 12:45:00+08:00,1.0,1.0,-0.00020566318926979003,2026 +230961,230987,1,72667.3,73385.94961448296,0.00908958740015052,tp,26,0.00988958740015052,0.004944793700075223,False,BTC,2026-04-10 22:00:00+08:00,0.0,0.0,-0.0010633122524150392,2026 +232783,232792,-1,76529.9,75885.75852340233,0.007616860293789303,tp,9,0.008416860293789304,0.004208430146894688,False,BTC,2026-04-29 21:30:00+08:00,1.0,0.0,0.0002751557601210545,2026 +232807,232815,-1,75395.6,75861.89582903204,-0.006984655723040051,sl,8,-0.00618465572304005,0.006184655723040077,False,BTC,2026-04-30 03:30:00+08:00,0.0,1.0,-0.0009192383453709783,2026 +232971,232975,1,77912.1,78445.06208910997,0.006040556076783478,tp,4,0.006840556076783478,0.003420278038391729,False,BTC,2026-05-01 20:30:00+08:00,1.0,1.0,0.0009970025351242842,2026 +234242,234246,1,81813.1,81343.94755157444,-0.006534441653299584,sl,4,-0.0057344416532995835,0.005734441653299625,False,BTC,2026-05-15 02:15:00+08:00,1.0,1.0,-0.0030454791553871144,2026 +235184,235186,-1,76765.0,76309.75880190425,0.005130322387751644,tp,2,0.005930322387751644,0.0029651611938758095,False,BTC,2026-05-24 21:45:00+08:00,1.0,0.0,0.0013624700948812645,2026 +236157,236181,-1,65694.5,64623.063486656254,0.015509379222670787,tp,24,0.016309379222670787,0.008154689611335397,False,BTC,2026-06-04 01:00:00+08:00,1.0,1.0,0.00040067482075082576,2026 +236336,236346,-1,60700.4,61431.58121365706,-0.012845739627038024,sl,10,-0.012045739627038024,0.012045739627038074,False,BTC,2026-06-05 21:45:00+08:00,1.0,1.0,-0.0025615116780475407,2026 +236556,236561,1,61843.0,62649.84573831126,0.012246678497344272,tp,5,0.013046678497344272,0.00652333924867214,False,BTC,2026-06-08 04:45:00+08:00,0.0,0.0,-0.0008052053680357869,2026 +236830,236871,-1,61871.3,62396.64192880755,-0.009290882344601546,sl,41,-0.008490882344601545,0.008490882344601597,False,BTC,2026-06-11 01:15:00+08:00,0.0,1.0,-0.0006011426519528319,2026 +240726,240739,1,65932.8,66382.3091249815,0.006017685961789903,tp,13,0.006817685961789903,0.0034088429808949105,False,BTC,2026-07-21 15:15:00+08:00,1.0,1.0,-0.00045098302109855917,2026 +240867,240879,-1,65751.1,66029.6212712818,-0.005035994094118401,sl,12,-0.0042359940941184004,0.004235994094118487,False,BTC,2026-07-23 02:30:00+08:00,0.0,1.0,-0.0005576376715226105,2026 +241018,241022,-1,65363.1,64932.4818685733,0.005788092232876064,tp,4,0.006588092232876064,0.00329404611643802,False,BTC,2026-07-24 16:15:00+08:00,0.0,0.0,-5.177512540231068e-05,2026 +241040,241088,-1,64129.1,64039.2,0.0006018596861643381,time,48,0.0014018596861643381,0.004506589247593315,False,BTC,2026-07-24 21:45:00+08:00,1.0,1.0,0.003361489930978208,2026 +241465,241470,1,63987.2,63763.8643542493,-0.004290317528360299,sl,5,-0.0034903175283602992,0.003490317528360311,False,BTC,2026-07-29 08:00:00+08:00,0.0,1.0,0.0023553554088325272,2026 +242158,242165,1,64408.2,64199.95623946291,-0.004033187087002695,sl,7,-0.0032331870870026943,0.003233187087002695,False,BTC,2026-08-05 13:15:00+08:00,0.0,0.0,-9.990820933269832e-05,2026 +242207,242242,1,64664.5,64408.45377069678,-0.004759610440090279,sl,35,-0.003959610440090279,0.003959610440090236,False,BTC,2026-08-06 01:30:00+08:00,1.0,1.0,-0.0008671894669116385,2026 +242772,242787,-1,63747.0,63344.14312977136,0.00551962084848923,tp,15,0.00631962084848923,0.0031598104242445864,False,BTC,2026-08-11 22:45:00+08:00,1.0,1.0,0.00040691886317437663,2026 +242779,242795,-1,63470.3,63694.426541703375,-0.004331203440087284,sl,16,-0.0035312034400872836,0.0035312034400872432,False,BTC,2026-08-12 00:30:00+08:00,1.0,0.0,0.0002849810299716172,2026 +243613,243631,1,71910.0,71355.22042567248,-0.008514915510047561,sl,18,-0.007714915510047561,0.007714915510047584,False,BTC,2026-08-20 17:00:00+08:00,1.0,1.0,0.01359349704917467,2026 +244011,244015,1,78711.4,78195.51508335938,-0.007354132141476514,sl,4,-0.0065541321414765135,0.00655413214147659,False,BTC,2026-08-24 20:30:00+08:00,1.0,1.0,0.001006785528998944,2026 +490,492,1,149.91,148.82273445348744,-0.008052788649940329,sl,2,-0.007252788649940329,0.007252788649940293,False,ETH,2019-12-02 18:15:00+08:00,1.0,1.0,0.0011437029063510221,2019 +1867,1915,-1,133.03,131.13,0.013482492670826171,time,48,0.014282492670826171,0.012989060467203517,False,ETH,2019-12-17 02:30:00+08:00,1.0,0.0,0.00021269053527118848,2019 +4583,4593,1,147.5,149.625664934136,0.013611287689057706,tp,10,0.014411287689057707,0.007205643844528891,False,ETH,2020-01-14 09:30:00+08:00,1.0,1.0,-0.00020668274199105158,2020 +5333,5356,1,169.79,168.31174356607346,-0.009506381023184712,sl,23,-0.008706381023184712,0.008706381023184651,False,ETH,2020-01-22 05:00:00+08:00,1.0,0.0,0.009832901007419891,2020 +5634,5667,-1,159.76,161.17032990551002,-0.009627803614859948,sl,33,-0.008827803614859948,0.008827803614859978,False,ETH,2020-01-25 08:15:00+08:00,0.0,0.0,0.00030695561421807937,2020 +6018,6057,1,176.83,175.32886569659658,-0.00928913817453731,sl,39,-0.00848913817453731,0.008489138174537251,False,ETH,2020-01-29 08:15:00+08:00,1.0,1.0,0.005506481587702236,2020 +6430,6443,1,187.89,191.442311571979,0.018106336537223933,tp,13,0.01890633653722393,0.009453168268611964,False,ETH,2020-02-02 15:15:00+08:00,1.0,1.0,0.00786803407672699,2020 +6732,6737,1,195.52,198.38342430806813,0.013845173425061981,tp,5,0.014645173425061981,0.0073225867125309724,False,ETH,2020-02-05 18:45:00+08:00,0.0,1.0,0.006718346253230033,2020 +7162,7180,1,227.44,226.06620282104276,-0.006840261954613229,sl,18,-0.006040261954613229,0.006040261954613246,False,ETH,2020-02-10 06:15:00+08:00,0.0,0.0,0.0006211180124222997,2020 +8168,8175,1,258.89,255.72364266277214,-0.013030512330440924,sl,7,-0.012230512330440924,0.012230512330440937,False,ETH,2020-02-20 17:45:00+08:00,1.0,1.0,0.004094365373367172,2020 +14392,14404,1,194.4,192.7269063419686,-0.00940644885818624,sl,12,-0.00860644885818624,0.00860644885818617,False,ETH,2020-04-25 13:45:00+08:00,1.0,0.0,0.00031670625494854723,2020 +15246,15251,-1,203.3,198.9867414333097,0.020416225118988236,tp,5,0.021216225118988234,0.010608112559494114,False,ETH,2020-05-04 11:15:00+08:00,1.0,0.0,9.740417863931344e-05,2020 +15815,15863,-1,190.91,190.24,0.002709507097585184,time,48,0.003509507097585184,0.02427671910481727,False,ETH,2020-05-10 09:30:00+08:00,1.0,1.0,0.052266171221825634,2020 +17587,17596,1,209.63,211.76393895527846,0.009379549469438853,tp,9,0.010179549469438854,0.005089774734719414,False,ETH,2020-05-28 20:30:00+08:00,1.0,1.0,0.003469210754553334,2020 +18010,18013,1,244.19,248.29574012003522,0.016013711126726,tp,3,0.016813711126726,0.008406855563363026,False,ETH,2020-06-02 06:15:00+08:00,1.0,0.0,-0.003489821354382946,2020 +18231,18246,-1,243.34,240.28614568309436,0.011749742405299754,tp,15,0.012549742405299755,0.00627487120264985,False,ETH,2020-06-04 13:30:00+08:00,1.0,0.0,-0.0011778563015311808,2020 +18577,18579,1,243.2,241.3693986998394,-0.008327143503949815,sl,2,-0.007527143503949814,0.007527143503949838,False,ETH,2020-06-08 04:00:00+08:00,1.0,1.0,0.0002088031403991604,2020 +21485,21489,1,241.86,240.38185089815016,-0.00691158977032106,sl,4,-0.006111589770321059,0.006111589770321087,False,ETH,2020-07-08 11:00:00+08:00,1.0,0.0,-0.00045772303595200244,2020 +22134,22161,-1,240.68,238.8580181912769,0.006770142133634323,tp,27,0.007570142133634323,0.0037850710668171673,False,ETH,2020-07-15 05:15:00+08:00,0.0,0.0,0.001735537190082593,2020 +23080,23091,1,279.3,284.9805278213683,0.019538445475718893,tp,11,0.02033844547571889,0.01016922273785944,False,ETH,2020-07-25 01:45:00+08:00,1.0,1.0,-0.0008322477927341808,2020 +23435,23456,1,312.76,321.78050352015254,0.02804161504077422,tp,21,0.02884161504077422,0.014420807520387073,False,ETH,2020-07-28 18:30:00+08:00,0.0,0.0,0.0038785998254629713,2020 +23660,23661,1,331.13,336.61566824273183,0.015766509355032265,tp,1,0.016566509355032264,0.008283254677516123,False,ETH,2020-07-31 02:45:00+08:00,1.0,0.0,0.0031813037227370333,2020 +24968,24973,1,386.78,395.59181166390863,0.021982490469798485,tp,5,0.022782490469798484,0.011391245234899218,False,ETH,2020-08-13 17:45:00+08:00,0.0,1.0,0.0038743455497382675,2020 +26013,26017,1,397.95,402.59633688641134,0.010875680076420022,tp,4,0.011675680076420022,0.005837840038209991,False,ETH,2020-08-24 15:00:00+08:00,1.0,0.0,0.0008632728196013075,2020 +26767,26776,1,443.51,451.44835956343434,0.017098941542320008,tp,9,0.017898941542320006,0.008949470771160014,False,ETH,2020-09-01 11:30:00+08:00,1.0,0.0,0.004031247864805115,2020 +26994,27000,-1,405.6,415.1531858804414,-0.024353219626334785,sl,6,-0.023553219626334786,0.023553219626334755,False,ETH,2020-09-03 20:15:00+08:00,1.0,1.0,0.009121140142517756,2020 +30845,30856,1,380.11,376.62052015713306,-0.009980184269992781,sl,11,-0.00918018426999278,0.009180184269992713,False,ETH,2020-10-13 23:00:00+08:00,0.0,0.0,0.0036436170212766077,2020 +32095,32099,-1,396.39,389.66237362064163,0.016172240418169875,tp,4,0.016972240418169873,0.008486120209084931,False,ETH,2020-10-26 23:30:00+08:00,1.0,1.0,-2.483854942869077e-05,2020 +33412,33424,1,448.22,456.8519478508656,0.01845828354572659,tp,12,0.01925828354572659,0.009629141772863278,False,ETH,2020-11-09 16:45:00+08:00,0.0,1.0,0.006423838074200887,2020 +33612,33616,1,464.61,460.60041348450227,-0.009430004768510674,sl,4,-0.008630004768510674,0.008630004768510682,False,ETH,2020-11-11 18:45:00+08:00,0.0,1.0,0.00037069341474042534,2020 +35624,35672,-1,595.53,598.34,-0.005518486054439003,time,48,-0.004718486054439003,0.012857815438655508,False,ETH,2020-12-02 17:45:00+08:00,0.0,0.0,0.004585174602119986,2020 +35872,35883,-1,567.68,575.1237789938186,-0.013912632105796722,sl,11,-0.013112632105796721,0.013112632105796784,False,ETH,2020-12-05 07:45:00+08:00,1.0,1.0,-0.002181818181818166,2020 +36591,36601,1,557.86,554.7581043076638,-0.006360347923020573,sl,10,-0.0055603479230205725,0.005560347923020512,False,ETH,2020-12-12 19:30:00+08:00,0.0,1.0,-0.0006668228594085183,2020 +36977,36983,1,595.15,602.4223497929802,0.011419356116912052,tp,6,0.012219356116912052,0.006109678058456015,False,ETH,2020-12-16 20:00:00+08:00,1.0,1.0,0.00010141473556117695,2020 +37398,37399,-1,646.16,635.2289127713298,0.01611699769201159,tp,1,0.01691699769201159,0.008458498846005752,False,ETH,2020-12-21 05:15:00+08:00,0.0,1.0,0.011564211807668931,2020 +39581,39589,1,1045.3,1110.0642885886984,0.0611576089052889,tp,8,0.061957608905288904,0.0309788044526445,False,ETH,2021-01-12 23:00:00+08:00,0.0,0.0,-0.006985365853658505,2021 +40196,40198,1,1265.0,1294.5496024057197,0.02255936949068753,tp,2,0.02335936949068753,0.011679684745343722,False,ETH,2021-01-19 08:45:00+08:00,1.0,1.0,0.0049546953542727685,2021 +40768,40770,1,1394.24,1434.5875552103632,0.028138744556434492,tp,2,0.02893874455643449,0.014469372278217266,False,ETH,2021-01-25 07:45:00+08:00,1.0,1.0,0.009065901561760523,2021 +42860,42861,-1,1809.73,1826.2858428874397,-0.009948239177910333,sl,1,-0.009148239177910333,0.00914823917791029,False,ETH,2021-02-16 02:45:00+08:00,0.0,0.0,-0.00189779265384701,2021 +43552,43554,1,1778.3,1745.553087507009,-0.01921472895067817,sl,2,-0.01841472895067817,0.0184147289506782,False,ETH,2021-02-23 07:45:00+08:00,0.0,0.0,0.004837904671158586,2021 +44843,44878,1,1714.46,1759.6811903896007,0.02557634613207697,tp,35,0.02637634613207697,0.013188173066038464,False,ETH,2021-03-08 18:30:00+08:00,0.0,1.0,-0.004397724784109039,2021 +45330,45343,1,1895.0,1868.5599030729577,-0.014752557745141058,sl,13,-0.013952557745141057,0.01395255774514105,False,ETH,2021-03-13 20:15:00+08:00,1.0,1.0,-0.001952701236710734,2021 +46227,46229,-1,1704.37,1664.2495537808331,0.022739751473662854,tp,2,0.023539751473662853,0.01176987573683145,False,ETH,2021-03-23 04:30:00+08:00,1.0,1.0,-0.0005301864203865593,2021 +46417,46426,-1,1608.18,1565.3001919768767,0.02586356255091057,tp,9,0.02666356255091057,0.013331781275455307,False,ETH,2021-03-25 04:00:00+08:00,1.0,1.0,-0.002326141979028504,2021 +47082,47085,1,1875.36,1909.7672736723678,0.017547023330116814,tp,3,0.018347023330116813,0.009173511665058413,False,ETH,2021-04-01 02:15:00+08:00,1.0,1.0,-0.0027100271002710027,2021 +47651,47699,1,2101.77,2085.75,-0.008422147047488537,time,48,-0.007622147047488537,0.011507349173438774,False,ETH,2021-04-07 00:30:00+08:00,0.0,0.0,-0.0033536921799957693,2021 +47891,47913,-1,2074.96,2086.9700028976445,-0.006588064780836463,sl,22,-0.005788064780836462,0.005788064780836482,False,ETH,2021-04-09 12:30:00+08:00,1.0,0.0,-0.0005747126436780739,2021 +49226,49231,-1,2195.45,2284.646830450568,-0.04142804001483436,sl,5,-0.04062804001483436,0.04062804001483438,False,ETH,2021-04-23 10:15:00+08:00,1.0,1.0,0.005791556728232222,2021 +49993,50021,1,2836.47,2811.582453682315,-0.009574126402776906,sl,28,-0.008774126402776906,0.008774126402776968,False,ETH,2021-05-01 10:00:00+08:00,1.0,1.0,-0.0018529867695302182,2021 +50408,50425,1,3382.11,3329.3683246279547,-0.016394311057903316,sl,17,-0.015594311057903317,0.015594311057903376,False,ETH,2021-05-05 17:45:00+08:00,1.0,0.0,0.005715551086852409,2021 +50861,50868,1,4018.34,4099.759423190904,0.019461954735264842,tp,7,0.02026195473526484,0.010130977367632391,False,ETH,2021-05-10 11:00:00+08:00,1.0,1.0,0.003967383216934905,2021 +51718,51725,-1,3256.18,3106.3719181058145,0.04520730975995962,tp,7,0.04600730975995962,0.023003654879979827,False,ETH,2021-05-19 09:15:00+08:00,0.0,0.0,0.01045400238948626,2021 +52246,52250,-1,2382.43,2450.5218312897864,-0.029380831877447215,sl,4,-0.028580831877447217,0.028580831877447272,False,ETH,2021-05-24 21:15:00+08:00,0.0,0.0,-0.00612844596293273,2021 +52390,52394,1,2722.28,2844.075263788218,0.0439401677227242,tp,4,0.044740167722724204,0.022370083861362085,False,ETH,2021-05-26 09:15:00+08:00,1.0,1.0,0.005971984203859698,2021 +53265,53268,1,2761.54,2720.3073683661455,-0.015731028206672527,sl,3,-0.014931028206672529,0.014931028206672551,False,ETH,2021-06-04 12:00:00+08:00,0.0,0.0,-0.0008498802441475628,2021 +53622,53644,-1,2600.0,2503.884701523607,0.0361674224909204,tp,22,0.0369674224909204,0.018483711245460183,False,ETH,2021-06-08 05:15:00+08:00,1.0,1.0,0.007794117647058851,2021 +54078,54126,-1,2404.87,2346.467989077706,0.02348489312199571,tp,48,0.024284893121995707,0.01214244656099789,False,ETH,2021-06-12 23:15:00+08:00,0.0,0.0,-0.005203394163292524,2021 +54376,54382,1,2576.68,2552.4296696903734,-0.010211463708969064,sl,6,-0.009411463708969064,0.009411463708968995,False,ETH,2021-06-16 01:45:00+08:00,1.0,0.0,-0.0021742543171114456,2021 +54898,54901,-1,2097.67,2129.6270733931037,-0.01603455710054663,sl,3,-0.015234557100546633,0.01523455710054666,False,ETH,2021-06-21 12:15:00+08:00,1.0,1.0,0.002067746387213212,2021 +55310,55325,-1,1854.8,1801.7448262677722,0.027804255840105558,tp,15,0.028604255840105557,0.014302127920052775,False,ETH,2021-06-25 19:15:00+08:00,1.0,1.0,0.001015733285368189,2021 +55820,55825,1,2213.51,2273.812420894392,0.026442895173001982,tp,5,0.02724289517300198,0.013621447586500982,False,ETH,2021-07-01 02:45:00+08:00,1.0,0.0,0.010755316548521219,2021 +56358,56368,-1,2266.84,2296.413906363624,-0.013846313971706777,sl,10,-0.013046313971706776,0.013046313971706873,False,ETH,2021-07-06 17:15:00+08:00,0.0,0.0,0.003480459212827468,2021 +56972,56973,-1,2023.23,2045.084852375851,-0.011601961406192522,sl,1,-0.010801961406192521,0.010801961406192486,False,ETH,2021-07-13 02:45:00+08:00,1.0,1.0,-0.0021906654388600694,2021 +57195,57213,-1,1989.31,1944.2280219616105,0.02186211804011918,tp,18,0.022662118040119177,0.011331059020059561,False,ETH,2021-07-15 10:30:00+08:00,0.0,0.0,0.00013893850978522723,2021 +57623,57666,-1,1814.53,1834.9738393233329,-0.012066740876884315,sl,43,-0.011266740876884314,0.011266740876884286,False,ETH,2021-07-19 21:30:00+08:00,1.0,1.0,0.0020035978585201527,2021 +57959,57989,1,2060.96,2039.168536597647,-0.011373452858062735,sl,30,-0.010573452858062734,0.010573452858062705,False,ETH,2021-07-23 09:30:00+08:00,1.0,0.0,0.0007462354644697976,2021 +58705,58708,1,2394.28,2430.962124917967,0.014520733129778711,tp,3,0.015320733129778712,0.0076603665648893255,False,ETH,2021-07-31 04:00:00+08:00,1.0,1.0,-0.0008096651123356737,2021 +59361,59374,1,2869.48,2936.4788393033014,0.022548773751098226,tp,13,0.023348773751098225,0.011674386875549073,False,ETH,2021-08-07 00:00:00+08:00,1.0,0.0,8.900756564307967e-05,2021 +60405,60417,-1,3229.85,3153.7960342986985,0.022747212935988182,tp,12,0.02354721293598818,0.011773606467994082,False,ETH,2021-08-17 21:00:00+08:00,0.0,0.0,0.00039327949367550587,2021 +60786,60814,1,3265.26,3239.852455106583,-0.008581170532642807,sl,28,-0.007781170532642807,0.007781170532642776,False,ETH,2021-08-21 20:15:00+08:00,1.0,1.0,-0.0009970826101407722,2021 +60943,60954,1,3357.68,3325.1226893998796,-0.010496370887076856,sl,11,-0.009696370887076856,0.009696370887076911,False,ETH,2021-08-23 11:30:00+08:00,1.0,1.0,0.0015690440060698249,2021 +61238,61246,-1,3133.11,3076.797464659927,0.017173366827233416,tp,8,0.017973366827233415,0.008986683413616693,False,ETH,2021-08-26 13:15:00+08:00,1.0,1.0,-0.0005177813699736918,2021 +61614,61635,-1,3174.33,3196.8420849799727,-0.007891917028151695,sl,21,-0.007091917028151695,0.007091917028151686,False,ETH,2021-08-30 11:15:00+08:00,1.0,0.0,-0.0016704858070806581,2021 +63781,63795,-1,2916.39,2816.2494128641483,0.0335371727155324,tp,14,0.0343371727155324,0.017168586357766236,False,ETH,2021-09-22 01:00:00+08:00,1.0,1.0,0.007853543836076624,2021 +65207,65251,1,3586.59,3528.7878953053114,-0.016916172937160016,sl,44,-0.016116172937160018,0.01611617293716005,False,ETH,2021-10-06 21:30:00+08:00,1.0,0.0,0.0025772386728505742,2021 +66222,66232,1,3884.71,3858.5711909744255,-0.007528638437766159,sl,10,-0.006728638437766159,0.006728638437766136,False,ETH,2021-10-17 11:15:00+08:00,1.0,0.0,0.000783289817232376,2021 +69344,69373,-1,4070.65,3958.1241252882865,0.026843220299390427,tp,29,0.027643220299390425,0.013821610149695233,False,ETH,2021-11-18 23:45:00+08:00,1.0,1.0,-0.0018481134342705119,2021 +70460,70477,1,4414.4,4497.898387709964,0.018115002652673965,tp,17,0.018915002652673964,0.009457501326337027,False,ETH,2021-11-30 14:45:00+08:00,0.0,1.0,0.003484184959400625,2021 +70478,70480,1,4524.52,4618.1111420989555,0.01988531956957977,tp,2,0.02068531956957977,0.010342659784789847,False,ETH,2021-11-30 19:15:00+08:00,1.0,0.0,-0.0011210762331838565,2021 +71742,71744,-1,3863.41,3788.1233399215166,0.018687100793983356,tp,2,0.019487100793983355,0.009743550396991683,False,ETH,2021-12-13 23:15:00+08:00,1.0,1.0,0.0018045855307365318,2021 +72717,72762,1,4107.76,4073.674834711315,-0.009097749938819552,sl,45,-0.008297749938819552,0.008297749938819604,False,ETH,2021-12-24 03:00:00+08:00,1.0,1.0,0.0025076870347401246,2021 +73791,73796,1,3771.2,3742.7537426002264,-0.008343025402994659,sl,5,-0.007543025402994659,0.007543025402994604,False,ETH,2022-01-04 07:30:00+08:00,1.0,0.0,0.0013937113809021407,2022 +74234,74243,-1,3190.39,3145.1643774894487,0.013375578067430987,tp,9,0.014175578067430987,0.007087789033715519,False,ETH,2022-01-08 22:15:00+08:00,1.0,0.0,0.0018446740868396148,2022 +74846,74849,-1,3299.17,3321.7111014449497,-0.007632355242363873,sl,3,-0.006832355242363873,0.00683235524236394,False,ETH,2022-01-15 07:15:00+08:00,0.0,0.0,-0.0010817405204975898,2022 +74902,74907,1,3297.26,3338.9479561116063,0.011843211670176487,tp,5,0.012643211670176487,0.0063216058350882695,False,ETH,2022-01-15 21:15:00+08:00,0.0,0.0,-0.0005101775845688305,2022 +75392,75399,1,3260.67,3234.641636164943,-0.008782520106314655,sl,7,-0.007982520106314655,0.007982520106314698,False,ETH,2022-01-20 23:45:00+08:00,1.0,1.0,0.0041249263406009755,2022 +75893,75904,-1,2426.46,2464.3348806181734,-0.016409109821787043,sl,11,-0.015609109821787044,0.015609109821787074,False,ETH,2022-01-26 05:00:00+08:00,1.0,0.0,-0.004048780487804893,2022 +75998,76007,1,2468.87,2417.097002345887,-0.021770321505025666,sl,9,-0.020970321505025667,0.020970321505025726,False,ETH,2022-01-27 07:15:00+08:00,0.0,1.0,0.0007300745335978576,2022 +76799,76801,1,2803.44,2855.393756421412,0.01773214494385897,tp,2,0.018532144943858967,0.009266072471929463,False,ETH,2022-02-04 15:30:00+08:00,1.0,1.0,-0.00028922736524706423,2022 +77225,77237,1,3060.19,3125.8176461840826,0.020645611607149412,tp,12,0.02144561160714941,0.010722805803574676,False,ETH,2022-02-09 02:00:00+08:00,0.0,0.0,0.0041636197139487425,2022 +77269,77271,-1,3064.67,3087.488773191379,-0.00824575213363234,sl,2,-0.0074457521336323395,0.007445752133632294,False,ETH,2022-02-09 13:00:00+08:00,1.0,0.0,-0.008391203703703675,2022 +78435,78443,-1,2724.44,2678.8076526890286,0.015949257576225374,tp,8,0.016749257576225373,0.008374628788112667,False,ETH,2022-02-21 16:30:00+08:00,1.0,0.0,-0.002909090909090909,2022 +78691,78700,-1,2567.46,2503.7643768354283,0.024008808380489577,tp,9,0.024808808380489576,0.012404404190244822,False,ETH,2022-02-24 08:30:00+08:00,1.0,1.0,9.62186086789185e-05,2022 +79323,79325,1,3025.25,2982.041874525572,-0.015082497471094296,sl,2,-0.014282497471094295,0.014282497471094283,False,ETH,2022-03-02 22:30:00+08:00,0.0,1.0,0.002102486863716622,2022 +79806,79809,-1,2601.83,2628.0859263030525,-0.010891330449357778,sl,3,-0.010091330449357777,0.0100913304493578,False,ETH,2022-03-07 23:15:00+08:00,0.0,1.0,0.001980934454597817,2022 +80093,80133,1,2602.52,2572.273722978709,-0.012421919148091468,sl,40,-0.011621919148091468,0.011621919148091398,False,ETH,2022-03-10 23:00:00+08:00,0.0,0.0,-6.648338111014448e-05,2022 +80439,80446,-1,2564.46,2586.6282061446323,-0.00944439536769231,sl,7,-0.00864439536769231,0.008644395367692372,False,ETH,2022-03-14 13:30:00+08:00,1.0,1.0,0.00017425313171593568,2022 +80686,80734,1,2742.62,2757.68,0.004691099751332647,time,48,0.005491099751332647,0.014729887173275625,False,ETH,2022-03-17 03:15:00+08:00,0.0,1.0,-0.0005732913669065497,2022 +81146,81148,-1,2896.54,2921.7198477151064,-0.009493077849816147,sl,2,-0.008693077849816147,0.008693077849816142,False,ETH,2022-03-21 22:15:00+08:00,0.0,0.0,0.0019764195061340566,2022 +81721,81727,1,3146.59,3167.922972766207,0.0059797116135901695,tp,6,0.00677971161359017,0.003389855806795071,False,ETH,2022-03-27 22:00:00+08:00,0.0,1.0,0.0013839746601590859,2022 +81731,81746,1,3177.62,3163.38713374385,-0.0052790963853921865,sl,15,-0.004479096385392186,0.0044790963853922235,False,ETH,2022-03-28 00:30:00+08:00,1.0,0.0,0.00012347985220421905,2022 +82205,82244,1,3427.55,3491.632883743049,0.017896411064185505,tp,39,0.018696411064185504,0.009348205532092778,False,ETH,2022-04-01 23:00:00+08:00,1.0,0.0,0.0036613985660256965,2022 +84604,84609,-1,2894.71,2845.4842214324017,0.016205426646399245,tp,5,0.017005426646399244,0.008502713323199641,False,ETH,2022-04-26 22:45:00+08:00,1.0,0.0,0.0004402339724121471,2022 +84883,84885,1,2873.03,2850.7120656458815,-0.008568082600640693,sl,2,-0.007768082600640693,0.007768082600640706,False,ETH,2022-04-29 20:30:00+08:00,0.0,0.0,0.00242548659127742,2022 +85000,85008,-1,2784.52,2804.691445721826,-0.008044137489343182,sl,8,-0.007244137489343182,0.007244137489343166,False,ETH,2022-05-01 01:45:00+08:00,1.0,0.0,0.0013427264826976985,2022 +85358,85362,1,2876.78,2856.876376464301,-0.007718715903092817,sl,4,-0.0069187159030928164,0.006918715903092873,False,ETH,2022-05-04 19:15:00+08:00,1.0,1.0,0.0006001158118233472,2022 +85546,85548,-1,2719.06,2681.819219567699,0.012896196638654942,tp,2,0.013696196638654942,0.0068480983193274425,False,ETH,2022-05-06 18:15:00+08:00,1.0,1.0,-0.004347762439431464,2022 +85802,85810,-1,2456.71,2479.783894915216,-0.01019219318324751,sl,8,-0.00939219318324751,0.009392193183247566,False,ETH,2022-05-09 10:15:00+08:00,1.0,1.0,0.0001352426412092862,2022 +86197,86208,1,2106.05,2064.1127358908984,-0.02071275805849897,sl,11,-0.019912758058498972,0.019912758058499035,False,ETH,2022-05-13 13:00:00+08:00,1.0,1.0,-0.0030243902439024612,2022 +86333,86337,1,1981.0,1957.3872858671334,-0.012719593201850876,sl,4,-0.011919593201850875,0.011919593201850851,False,ETH,2022-05-14 23:00:00+08:00,0.0,0.0,-1.5320661444125592e-05,2022 +86382,86391,-1,2005.7,2027.712441534119,-0.01177494218184127,sl,9,-0.01097494218184127,0.010974942181841248,False,ETH,2022-05-15 11:15:00+08:00,1.0,0.0,-0.0009623698724493668,2022 +86906,86909,-1,2010.64,1969.2675634753944,0.01977674995255528,tp,3,0.02057674995255528,0.01028837497627764,False,ETH,2022-05-20 22:15:00+08:00,1.0,0.0,-0.002823616769743432,2022 +88234,88244,-1,1780.08,1749.3736470110398,0.016449984825940484,tp,10,0.017249984825940482,0.00862499241297024,False,ETH,2022-06-03 18:15:00+08:00,1.0,1.0,0.0010528240620169289,2022 +88448,88450,1,1810.53,1799.406035973363,-0.006944037396031517,sl,2,-0.006144037396031516,0.006144037396031523,False,ETH,2022-06-05 23:45:00+08:00,1.0,0.0,-0.0002697417223009071,2022 +88449,88450,1,1813.98,1801.797033403837,-0.007516152656679204,sl,1,-0.006716152656679204,0.00671615265667917,False,ETH,2022-06-06 00:00:00+08:00,1.0,1.0,0.0008224781042991254,2022 +89662,89703,-1,999.75,959.7036915417766,0.03925632253885811,tp,41,0.04005632253885811,0.020028161269429072,False,ETH,2022-06-18 15:15:00+08:00,1.0,1.0,0.027436140018921477,2022 +90391,90407,1,1243.89,1228.9054829564384,-0.01284649691175402,sl,16,-0.01204649691175402,0.012046496911754074,False,ETH,2022-06-26 05:30:00+08:00,0.0,0.0,0.005092354949361623,2022 +91138,91152,1,1056.05,1071.3368906787048,0.013675536838885302,tp,14,0.014475536838885302,0.007237768419442701,False,ETH,2022-07-04 00:15:00+08:00,1.0,0.0,0.0013756866491521898,2022 +92086,92087,-1,1020.99,1041.9705811825888,-0.021349252375232684,sl,1,-0.020549252375232686,0.020549252375232717,False,ETH,2022-07-13 21:15:00+08:00,0.0,0.0,-0.022201665124884366,2022 +92791,92797,1,1549.8,1519.7111977432223,-0.02021463560251492,sl,6,-0.019414635602514923,0.019414635602514982,False,ETH,2022-07-21 05:30:00+08:00,0.0,0.0,-0.0014689631898999035,2022 +93048,93052,1,1532.08,1514.6285162795261,-0.01219071309623113,sl,4,-0.01139071309623113,0.011390713096231098,False,ETH,2022-07-23 21:45:00+08:00,0.0,0.0,-0.0020197368421052213,2022 +94774,94796,1,1838.85,1809.4816366634968,-0.01677104893629338,sl,22,-0.01597104893629338,0.015971048936293388,False,ETH,2022-08-10 21:15:00+08:00,1.0,1.0,0.00505670736112122,2022 +95423,95447,-1,1889.0,1847.6928878796298,0.021067184817559672,tp,24,0.02186718481755967,0.010933592408779854,False,ETH,2022-08-17 15:30:00+08:00,0.0,0.0,0.007477701721634553,2022 +95442,95443,-1,1863.74,1879.7865048841788,-0.009409840902796974,sl,1,-0.008609840902796973,0.008609840902796954,False,ETH,2022-08-17 20:15:00+08:00,1.0,1.0,0.00032388062078895585,2022 +95756,95764,-1,1579.33,1545.1104506913027,0.020867130560868977,tp,8,0.021667130560868976,0.010833565280434512,False,ETH,2022-08-21 02:45:00+08:00,1.0,1.0,-0.00043999082836022007,2022 +96186,96219,1,1692.61,1717.2824838052306,0.013776591066595815,tp,33,0.014576591066595816,0.007288295533297893,False,ETH,2022-08-25 14:15:00+08:00,1.0,1.0,-0.0003529341389006075,2022 +96315,96318,-1,1645.31,1587.9817310412518,0.03404344528310661,tp,3,0.034843445283106615,0.017421722641553308,False,ETH,2022-08-26 22:30:00+08:00,0.0,1.0,-0.005021563183080286,2022 +97396,97408,1,1581.22,1559.1689116277364,-0.014745616911159498,sl,12,-0.013945616911159498,0.013945616911159552,False,ETH,2022-09-07 04:45:00+08:00,0.0,0.0,-0.0002938377121540453,2022 +97617,97651,1,1689.16,1721.897120682314,0.018580710342604514,tp,34,0.019380710342604513,0.00969035517130223,False,ETH,2022-09-09 12:00:00+08:00,1.0,1.0,0.0024833934448127547,2022 +98333,98342,-1,1445.93,1407.215610362132,0.025974732966234846,tp,9,0.026774732966234845,0.013387366483117443,False,ETH,2022-09-16 23:00:00+08:00,1.0,1.0,-0.002735395189003449,2022 +98459,98465,1,1461.39,1450.6690259093803,-0.008136148523405693,sl,6,-0.007336148523405694,0.007336148523405757,False,ETH,2022-09-18 06:30:00+08:00,0.0,0.0,0.0,2022 +99295,99305,-1,1315.72,1330.5147123932702,-0.012044575132452325,sl,10,-0.011244575132452325,0.01124457513245229,False,ETH,2022-09-26 23:30:00+08:00,0.0,0.0,-0.00013504388926388798,2022 +99418,99430,1,1329.24,1316.2350713975884,-0.0105837325106163,sl,12,-0.009783732510616299,0.00978373251061628,False,ETH,2022-09-28 06:15:00+08:00,0.0,0.0,-0.0024197598502488727,2022 +99858,99874,-1,1292.25,1300.2545729320905,-0.006994291299741125,sl,16,-0.0061942912997411245,0.006194291299741147,False,ETH,2022-10-02 20:15:00+08:00,1.0,0.0,0.0001916928007851737,2022 +100027,100033,1,1339.25,1353.2489979915565,0.00965286391006646,tp,6,0.010452863910066461,0.005226431955033202,False,ETH,2022-10-04 14:30:00+08:00,1.0,1.0,0.003596689240030077,2022 +100561,100568,-1,1317.0,1322.4148129262646,-0.004911475266715741,sl,7,-0.0041114752667157405,0.00411147526671572,False,ETH,2022-10-10 04:00:00+08:00,0.0,0.0,-0.00012056454347488254,2022 +101424,101428,1,1300.18,1318.2942634315918,0.01313211973080018,tp,4,0.01393211973080018,0.006966059865400128,False,ETH,2022-10-19 03:45:00+08:00,0.0,0.0,-0.00023230602446970875,2022 +101433,101481,-1,1308.77,1305.28,0.0018666259159363444,time,48,0.0026666259159363443,0.006832528403839035,False,ETH,2022-10-19 06:00:00+08:00,0.0,1.0,-0.0006392596764127777,2022 +101788,101799,1,1314.82,1310.0894784994023,-0.004397847234296452,sl,11,-0.003597847234296452,0.003597847234296423,False,ETH,2022-10-22 22:45:00+08:00,1.0,1.0,0.00043596980335462417,2022 +102657,102699,-1,1564.35,1584.308179634547,-0.013558129340970467,sl,42,-0.012758129340970467,0.012758129340970481,False,ETH,2022-11-01 00:00:00+08:00,0.0,0.0,0.018237687073137457,2022 +103429,103432,-1,1530.49,1458.2671304690052,0.04638937695182248,tp,3,0.04718937695182248,0.023594688475911226,False,ETH,2022-11-09 01:00:00+08:00,0.0,1.0,0.004368098788204812,2022 +103716,103764,1,1249.49,1256.79,0.005042383692546522,time,48,0.005842383692546522,0.026517329574890235,False,ETH,2022-11-12 00:45:00+08:00,1.0,1.0,0.0008934426229507525,2022 +104199,104205,1,1215.94,1200.8062316335734,-0.01324614731518553,sl,6,-0.01244614731518553,0.012446147315185582,False,ETH,2022-11-17 01:30:00+08:00,1.0,0.0,0.005889713856678022,2022 +104559,104566,-1,1165.79,1176.1103490126295,-0.009652665585250818,sl,7,-0.008852665585250817,0.008852665585250727,False,ETH,2022-11-20 19:30:00+08:00,1.0,0.0,-0.0013700918964077696,2022 +105094,105119,1,1221.54,1212.3877168908232,-0.008292413763918316,sl,25,-0.007492413763918316,0.0074924137639183095,False,ETH,2022-11-26 09:15:00+08:00,1.0,1.0,0.0032648326151806886,2022 +106176,106198,-1,1223.73,1233.0326490289528,-0.008401880340396026,sl,22,-0.007601880340396026,0.007601880340396101,False,ETH,2022-12-07 15:45:00+08:00,1.0,0.0,0.009773662551440394,2022 +106519,106527,-1,1270.01,1262.4034151333055,0.005189389742359861,tp,8,0.005989389742359861,0.0029946948711799736,False,ETH,2022-12-11 05:30:00+08:00,0.0,0.0,-0.0008543056219579416,2022 +108674,108681,1,1214.85,1224.3361640126798,0.007008506410404466,tp,7,0.007808506410404466,0.0039042532052022657,False,ETH,2023-01-02 16:15:00+08:00,1.0,1.0,0.001520034553790889,2023 +110001,110017,1,1570.99,1558.0463705798136,-0.00903915455870911,sl,16,-0.00823915455870911,0.00823915455870904,False,ETH,2023-01-16 12:00:00+08:00,1.0,1.0,-0.003695652173913026,2023 +110063,110069,1,1598.09,1581.7317682919252,-0.011036114178847721,sl,6,-0.01023611417884772,0.010236114178847735,False,ETH,2023-01-17 03:30:00+08:00,1.0,0.0,0.002918848416160606,2023 +110440,110449,1,1591.87,1612.6967250968999,0.012283182104631637,tp,9,0.013083182104631637,0.006541591052315821,False,ETH,2023-01-21 01:45:00+08:00,1.0,1.0,0.0018373967256323756,2023 +112262,112268,1,1658.41,1645.0364691359384,-0.008864067910867426,sl,6,-0.008064067910867426,0.008064067910867423,False,ETH,2023-02-09 01:15:00+08:00,0.0,0.0,7.305847112979947e-05,2023 +112913,112919,1,1581.61,1572.8269841356382,-0.006353212147344597,sl,6,-0.005553212147344597,0.005553212147344608,False,ETH,2023-02-15 20:00:00+08:00,1.0,1.0,0.00281218442816792,2023 +113358,113383,1,1682.0,1703.6076289425284,0.01204639057225234,tp,25,0.01284639057225234,0.006423195286126151,False,ETH,2023-02-20 11:15:00+08:00,1.0,0.0,-0.0019221556886227763,2023 +113686,113688,1,1662.35,1650.055298407829,-0.008195976534526962,sl,2,-0.007395976534526962,0.00739597653452702,False,ETH,2023-02-23 21:15:00+08:00,0.0,0.0,0.004012121212121146,2023 +115053,115057,-1,1498.97,1477.9219166682446,0.013241697520134077,tp,4,0.014041697520134077,0.007020848760067073,False,ETH,2023-03-10 03:00:00+08:00,1.0,0.0,5.25089429292949e-05,2023 +115420,115421,1,1643.08,1687.9789184420306,0.026526069602229148,tp,1,0.027326069602229146,0.013663034801114539,False,ETH,2023-03-13 22:45:00+08:00,1.0,0.0,0.005878712871287129,2023 +116304,116322,-1,1716.12,1743.9371669720128,-0.01700933674335883,sl,18,-0.01620933674335883,0.016209336743358848,False,ETH,2023-03-23 03:45:00+08:00,1.0,0.0,0.004333258621977761,2023 +116391,116395,1,1828.96,1810.4141936255749,-0.010940083093356433,sl,4,-0.010140083093356433,0.010140083093356466,False,ETH,2023-03-24 01:30:00+08:00,1.0,1.0,0.00432795014555647,2023 +116466,116472,1,1771.82,1752.2092396421308,-0.011868144821634896,sl,6,-0.011068144821634896,0.01106814482163487,False,ETH,2023-03-24 20:15:00+08:00,0.0,0.0,0.008139774837777752,2023 +116667,116702,-1,1768.99,1781.7477396124814,-0.008011877745200013,sl,35,-0.007211877745200014,0.0072118777452000685,False,ETH,2023-03-26 22:30:00+08:00,0.0,0.0,0.0016242011553596304,2023 +116926,116931,1,1805.83,1827.800438317215,0.011366393468496473,tp,5,0.012166393468496474,0.006083196734248223,False,ETH,2023-03-29 15:15:00+08:00,0.0,1.0,-0.0011077047015910768,2023 +117421,117432,-1,1802.18,1810.1387339960781,-0.005216170413653509,sl,11,-0.004416170413653509,0.004416170413653533,False,ETH,2023-04-03 19:00:00+08:00,1.0,0.0,-0.0009816790019964332,2023 +118372,118374,1,1962.99,1991.7035347383853,0.013827448299983855,tp,2,0.014627448299983855,0.007313724149991938,False,ETH,2023-04-13 16:45:00+08:00,1.0,1.0,0.007823834196891144,2023 +118945,118946,-1,2027.47,1996.6681875550582,0.014392240795149515,tp,1,0.015192240795149515,0.007596120397574771,False,ETH,2023-04-19 16:00:00+08:00,1.0,1.0,0.001883257266394462,2023 +119082,119094,-1,1925.57,1944.7752521652924,-0.010773801090218716,sl,12,-0.009973801090218715,0.00997380109021868,False,ETH,2023-04-21 02:15:00+08:00,1.0,1.0,-0.00034385777631798774,2023 +119672,119682,1,1877.12,1936.230684123714,0.03069009340037612,tp,10,0.03149009340037612,0.015745046700188052,False,ETH,2023-04-27 05:45:00+08:00,0.0,0.0,0.0020641976387326334,2023 +119767,119815,-1,1917.0,1907.76,0.004020031298904543,time,48,0.004820031298904543,0.007640569602550531,False,ETH,2023-04-28 05:30:00+08:00,0.0,1.0,0.0015260699302146563,2023 +121517,121565,1,1810.23,1817.38,0.0031497743380675884,time,48,0.003949774338067588,0.004619843563060181,False,ETH,2023-05-16 11:00:00+08:00,0.0,0.0,0.0005331171247216609,2023 +122338,122351,-1,1786.41,1796.26799860852,-0.006318329279683775,sl,13,-0.005518329279683775,0.005518329279683743,False,ETH,2023-05-25 00:15:00+08:00,0.0,1.0,0.004666703484840142,2023 +122671,122690,1,1849.73,1843.1475274572003,-0.004358612631464959,sl,19,-0.003558612631464959,0.0035586126314649073,False,ETH,2023-05-28 11:30:00+08:00,0.0,0.0,-0.00047393364928916394,2023 +122745,122793,1,1906.39,1904.06,-0.0020222053200028085,time,48,-0.0012222053200028086,0.007129240249188019,False,ETH,2023-05-29 06:00:00+08:00,1.0,1.0,0.0048155820397622045,2023 +123711,123759,1,1831.36,1843.76,0.005970924340380969,time,48,0.006770924340380969,0.005503364664935462,False,ETH,2023-06-08 07:30:00+08:00,0.0,0.0,0.000658454278581056,2023 +125699,125710,-1,1855.89,1837.2708079264128,0.009232486878849137,tp,11,0.010032486878849138,0.005016243439424588,False,ETH,2023-06-29 00:30:00+08:00,0.0,1.0,0.0003109919571045186,2023 +126100,126106,1,1917.8,1931.8596062393829,0.006531111815300293,tp,6,0.007331111815300293,0.003665555907650169,False,ETH,2023-07-03 04:45:00+08:00,1.0,0.0,0.0007807055692077196,2023 +126118,126142,1,1941.43,1967.164041546782,0.012455199284435704,tp,24,0.013255199284435705,0.0066275996422178445,False,ETH,2023-07-03 09:15:00+08:00,1.0,0.0,-0.012784569382329658,2023 +126458,126463,-1,1870.58,1886.0808197806537,-0.009086638251587063,sl,5,-0.008286638251587063,0.008286638251587108,False,ETH,2023-07-06 22:15:00+08:00,1.0,0.0,-0.0016232397335356728,2023 +127135,127136,1,1933.6,1923.1204105714564,-0.006219729741696048,sl,1,-0.005419729741696047,0.005419729741696018,False,ETH,2023-07-13 23:30:00+08:00,0.0,1.0,-0.0013208984239764467,2023 +127498,127501,-1,1904.15,1912.2010949086543,-0.005028183130874274,sl,3,-0.004228183130874274,0.004228183130874267,False,ETH,2023-07-17 18:15:00+08:00,1.0,0.0,-0.00043104791383192625,2023 +129013,129047,-1,1861.47,1850.477580303212,0.005105236021417438,tp,34,0.0059052360214174385,0.002952618010708698,False,ETH,2023-08-02 13:00:00+08:00,1.0,0.0,-0.00029434430791623205,2023 +131260,131261,-1,1638.94,1648.429801593418,-0.006590206836990953,sl,1,-0.005790206836990952,0.005790206836990936,False,ETH,2023-08-25 22:45:00+08:00,0.0,1.0,-0.011400445160239645,2023 +131275,131323,1,1649.0,1651.39,0.0006493632504548818,time,48,0.0014493632504548818,0.005700957966086194,False,ETH,2023-08-26 02:30:00+08:00,0.0,1.0,0.001049862358161781,2023 +132780,132781,-1,1621.05,1623.7356236233263,-0.002456718561010681,sl,1,-0.001656718561010681,0.0016567185610107129,False,ETH,2023-09-10 18:45:00+08:00,1.0,1.0,0.00042375483633240473,2023 +132839,132845,-1,1606.75,1613.2761517161694,-0.004861709485712994,sl,6,-0.004061709485712993,0.0040617094857130056,False,ETH,2023-09-11 09:30:00+08:00,1.0,0.0,0.0016068228168839437,2023 +133294,133301,1,1622.06,1631.3724535689016,0.004941127682639159,tp,7,0.005741127682639159,0.002870563841319574,False,ETH,2023-09-16 03:15:00+08:00,0.0,0.0,-0.0008666369533997493,2023 +134352,134358,1,1588.71,1583.9440059983658,-0.0037999143969851172,sl,6,-0.0029999143969851173,0.002999914396985155,False,ETH,2023-09-27 03:45:00+08:00,0.0,1.0,-0.0015931922641664392,2023 +136616,136626,1,1617.89,1608.0363925227882,-0.006890406317618553,sl,10,-0.006090406317618553,0.006090406317618619,False,ETH,2023-10-20 17:45:00+08:00,1.0,1.0,0.0019164382963050423,2023 +136732,136733,1,1621.41,1615.7214131369872,-0.004308419747635031,sl,1,-0.0035084197476350307,0.0035084197476350693,False,ETH,2023-10-21 22:45:00+08:00,1.0,1.0,8.07719311325354e-05,2023 +136860,136866,1,1665.9,1656.8738857846035,-0.00621816088324422,sl,6,-0.00541816088324422,0.005418160883244216,False,ETH,2023-10-23 06:45:00+08:00,1.0,1.0,0.004963986762702016,2023 +137130,137166,-1,1784.95,1800.1907252462288,-0.009338460599024483,sl,36,-0.008538460599024482,0.008538460599024451,False,ETH,2023-10-26 02:15:00+08:00,1.0,1.0,0.004403750933584153,2023 +139716,139719,1,2005.69,1984.9427304756907,-0.011144205497514237,sl,3,-0.010344205497514237,0.010344205497514187,False,ETH,2023-11-22 00:45:00+08:00,0.0,0.0,0.004542893544015332,2023 +139978,139980,1,2114.61,2101.141074997743,-0.007169460563535138,sl,2,-0.006369460563535137,0.006369460563535181,False,ETH,2023-11-24 18:15:00+08:00,1.0,1.0,0.005967220959444814,2023 +140235,140255,-1,2047.13,2027.9717879948773,0.008558571270570397,tp,20,0.009358571270570397,0.004679285635285196,False,ETH,2023-11-27 10:30:00+08:00,1.0,0.0,0.00019849050392396807,2023 +141247,141269,1,2323.44,2359.1022425505244,0.014548897561600169,tp,22,0.01534889756160017,0.007674448780800085,False,ETH,2023-12-07 23:30:00+08:00,1.0,0.0,0.010094389092815901,2023 +142234,142238,-1,2230.23,2209.389102624505,0.008544730084114613,tp,4,0.009344730084114614,0.004672365042057257,False,ETH,2023-12-18 06:15:00+08:00,0.0,1.0,0.00169625088485526,2023 +142351,142393,1,2236.28,2223.5593373967517,-0.006488313897744673,sl,42,-0.005688313897744672,0.00568831389774477,False,ETH,2023-12-19 11:30:00+08:00,1.0,1.0,0.0005167633538391433,2023 +142655,142663,1,2289.89,2332.3863770580824,0.017758261339227015,tp,8,0.018558261339227014,0.009279130669613476,False,ETH,2023-12-22 15:30:00+08:00,1.0,1.0,-0.007301849536842644,2023 +143031,143061,-1,2236.96,2249.6099424668046,-0.006454970346722576,sl,30,-0.005654970346722576,0.005654970346722582,False,ETH,2023-12-26 13:30:00+08:00,1.0,1.0,0.003673354054817817,2023 +143830,143878,-1,2222.51,2207.55,0.00593112831888272,time,48,0.00673112831888272,0.020051770066938146,False,ETH,2024-01-03 21:15:00+08:00,1.0,0.0,0.014656612752259164,2024 +144841,144877,-1,2565.2,2538.721062436624,0.009522367676351121,tp,36,0.010322367676351122,0.00516118383817553,False,ETH,2024-01-14 10:00:00+08:00,1.0,0.0,0.0004687941916012368,2024 +148200,148210,-1,2781.23,2793.0005958182073,-0.005032154772603241,sl,10,-0.004232154772603241,0.004232154772603167,False,ETH,2024-02-18 09:45:00+08:00,0.0,0.0,-3.2194598461865687e-05,2024 +149006,149010,1,3065.76,3046.2127199144898,-0.007175998149075748,sl,4,-0.006375998149075747,0.006375998149075765,False,ETH,2024-02-26 19:15:00+08:00,0.0,1.0,-0.0010160070268356656,2024 +149856,149870,1,3789.84,3889.4368393860004,0.025479958886391058,tp,14,0.026279958886391057,0.0131399794431955,False,ETH,2024-03-06 15:45:00+08:00,1.0,1.0,-0.0015755336420420379,2024 +150472,150520,1,3953.8,4041.35,0.021343254590520444,time,48,0.022143254590520443,0.01387945495572751,False,ETH,2024-03-13 01:45:00+08:00,0.0,0.0,0.005912300870422063,2024 +152077,152085,1,3555.4,3535.04568088408,-0.006524902715846356,sl,8,-0.005724902715846356,0.005724902715846314,False,ETH,2024-03-29 19:00:00+08:00,1.0,1.0,-0.0004652231510925291,2024 +152388,152400,-1,3447.99,3480.5099041077824,-0.010231554067089123,sl,12,-0.009431554067089122,0.009431554067089168,False,ETH,2024-04-02 00:45:00+08:00,1.0,1.0,0.0033843526167630354,2024 +153856,153875,-1,3082.85,3106.405431584097,-0.008440797179265056,sl,19,-0.007640797179265056,0.007640797179265091,False,ETH,2024-04-17 07:45:00+08:00,1.0,1.0,0.001145919075517593,2024 +154535,154537,1,3245.22,3228.788532625036,-0.005863283036269847,sl,2,-0.0050632830362698465,0.0050632830362698665,False,ETH,2024-04-24 09:30:00+08:00,1.0,0.0,0.0026859157293939507,2024 +155444,155456,1,3033.52,3079.1129499868357,0.014229717947083163,tp,12,0.015029717947083163,0.007514858973541608,False,ETH,2024-05-03 20:45:00+08:00,0.0,0.0,0.011612008123378873,2024 +156063,156092,-1,3027.75,3043.986467016693,-0.006162552065623992,sl,29,-0.005362552065623992,0.005362552065623965,False,ETH,2024-05-10 07:30:00+08:00,0.0,0.0,0.002497768091586911,2024 +156787,156794,1,3057.0,3093.7928399570405,0.011235603518822551,tp,7,0.012035603518822552,0.0060178017594112575,False,ETH,2024-05-17 20:30:00+08:00,0.0,1.0,-0.0023738734861176647,2024 +157096,157102,1,3142.55,3185.7696574263146,0.012953053229483816,tp,6,0.013753053229483817,0.006876526614741913,False,ETH,2024-05-21 01:45:00+08:00,1.0,0.0,-0.00031740942609803836,2024 +157637,157639,1,3816.92,3796.7445339732803,-0.006085797456252616,sl,2,-0.005285797456252616,0.005285797456252631,False,ETH,2024-05-26 17:00:00+08:00,1.0,1.0,7.943001024700109e-06,2024 +157943,157991,-1,3796.82,3773.51,0.005339348191381194,time,48,0.006139348191381194,0.007505989177733449,False,ETH,2024-05-29 21:30:00+08:00,0.0,0.0,0.007891006129341668,2024 +158130,158131,1,3818.51,3858.4001945518166,0.00964653400195794,tp,1,0.010446534001957941,0.005223267000978955,False,ETH,2024-05-31 20:15:00+08:00,1.0,1.0,0.002095938624589662,2024 +158633,158637,1,3858.35,3836.948234025239,-0.0063468700285772475,sl,4,-0.005546870028577247,0.005546870028577285,False,ETH,2024-06-06 02:00:00+08:00,1.0,1.0,0.0009206465449599785,2024 +158745,158793,1,3808.22,3815.17,0.0010249996061152647,time,48,0.0018249996061152646,0.00450982569663293,False,ETH,2024-06-07 06:00:00+08:00,1.0,0.0,0.0017514198916920114,2024 +158824,158825,-1,3725.33,3677.0285327019715,0.012165688220380062,tp,1,0.012965688220380063,0.006482844110190024,False,ETH,2024-06-08 01:45:00+08:00,1.0,0.0,0.0015264559331417478,2024 +159386,159387,-1,3480.02,3504.1637550315627,-0.007737820768720497,sl,1,-0.006937820768720497,0.0069378207687204605,False,ETH,2024-06-13 22:15:00+08:00,0.0,1.0,0.0020130578262962193,2024 +160352,160371,-1,3473.0,3451.9139385747917,0.005271425691105182,tp,19,0.006071425691105183,0.0030357128455525766,False,ETH,2024-06-23 23:45:00+08:00,1.0,1.0,-0.0003724896347595084,2024 +162300,162303,1,3190.98,3175.7074789226663,-0.005586153807712286,sl,3,-0.0047861538077122855,0.004786153807712288,False,ETH,2024-07-14 06:45:00+08:00,1.0,1.0,0.007855848984650667,2024 +164759,164762,-1,2445.77,2475.3675083927988,-0.012901509296785378,sl,3,-0.012101509296785377,0.012101509296785358,False,ETH,2024-08-08 21:30:00+08:00,0.0,1.0,-0.0014937786139348624,2024 +165440,165446,1,2667.05,2645.2645894102334,-0.008968354770164338,sl,6,-0.008168354770164338,0.008168354770164333,False,ETH,2024-08-15 23:45:00+08:00,1.0,0.0,-0.002788702722774029,2024 +165775,165781,1,2645.62,2629.2414744469256,-0.00699080803481765,sl,6,-0.0061908080348176495,0.006190808034817711,False,ETH,2024-08-19 11:30:00+08:00,1.0,0.0,-0.001126481837383227,2024 +166571,166579,-1,2639.9,2608.076929772019,0.01125464988370057,tp,8,0.01205464988370057,0.006027324941850281,False,ETH,2024-08-27 18:30:00+08:00,1.0,0.0,0.002386348286781909,2024 +166891,166893,1,2533.49,2504.370348013888,-0.012293888661929544,sl,2,-0.011493888661929543,0.011493888661929602,False,ETH,2024-08-31 02:30:00+08:00,1.0,0.0,0.011032001255740324,2024 +167408,167452,-1,2404.43,2373.440517303408,0.012088494444251632,tp,44,0.012888494444251632,0.006444247222125792,False,ETH,2024-09-05 11:45:00+08:00,1.0,0.0,0.004218525364551235,2024 +168031,168073,1,2333.48,2382.2057542762554,0.020081153588741036,tp,42,0.020881153588741035,0.010440576794370526,False,ETH,2024-09-11 23:30:00+08:00,0.0,0.0,0.003606534499751416,2024 +169276,169287,1,2611.69,2647.271404587132,0.01282390045799159,tp,11,0.01362390045799159,0.006811950228995762,False,ETH,2024-09-24 22:45:00+08:00,0.0,1.0,0.003044315992292906,2024 +169947,169949,-1,2566.76,2529.6009164062543,0.013677038598757144,tp,2,0.014477038598757144,0.007238519299378542,False,ETH,2024-10-01 22:30:00+08:00,1.0,0.0,0.00398308342945026,2024 +171003,171036,1,2469.11,2488.2500173652047,0.006951788039092865,tp,33,0.007751788039092865,0.00387589401954639,False,ETH,2024-10-12 22:30:00+08:00,1.0,1.0,-0.00126509957557946,2024 +172268,172285,-1,2482.07,2430.083769493687,0.020144707645760575,tp,17,0.020944707645760573,0.010472353822880257,False,ETH,2024-10-26 02:45:00+08:00,1.0,0.0,-0.003118420213105406,2024 +172508,172509,1,2490.79,2511.6472801006657,0.0075737609757007916,tp,1,0.008373760975700792,0.004186880487850383,False,ETH,2024-10-28 14:45:00+08:00,1.0,0.0,-0.0020376295710486034,2024 +172697,172698,1,2683.78,2667.3963648894755,-0.00690468634184794,sl,1,-0.0061046863418479395,0.006104686341847947,False,ETH,2024-10-30 14:00:00+08:00,1.0,0.0,-0.0006177354500563197,2024 +173987,174027,1,3265.5,3211.742064725778,-0.017262390223310928,sl,40,-0.01646239022331093,0.016462390223310988,False,ETH,2024-11-13 00:30:00+08:00,1.0,1.0,0.004981366459627318,2024 +174426,174455,1,3115.49,3088.796331860565,-0.009368048088562305,sl,29,-0.008568048088562305,0.008568048088562352,False,ETH,2024-11-17 14:15:00+08:00,1.0,0.0,-0.0022151151698200774,2024 +175399,175402,-1,3410.47,3435.5700130104156,-0.008159693241815865,sl,3,-0.007359693241815865,0.007359693241815844,False,ETH,2024-11-27 17:30:00+08:00,1.0,0.0,-0.0025111867250863316,2024 +175671,175673,1,3670.0,3726.2238530778673,0.014519850974895712,tp,2,0.015319850974895712,0.007659925487447864,False,ETH,2024-11-30 13:30:00+08:00,1.0,1.0,-0.00025681597892447574,2024 +177253,177256,1,3975.99,4041.3200584256024,0.015631142539493964,tp,3,0.016431142539493963,0.008215571269746973,False,ETH,2024-12-17 01:00:00+08:00,1.0,0.0,-0.0029949238578680665,2024 +178970,178975,1,3510.67,3547.56593804702,0.009709657144368477,tp,5,0.010509657144368478,0.005254828572184243,False,ETH,2025-01-03 22:15:00+08:00,1.0,0.0,-0.0002791447235892413,2025 +183166,183176,-1,2693.48,2705.45628046342,-0.005246396655412386,sl,10,-0.004446396655412386,0.004446396655412346,False,ETH,2025-02-16 15:15:00+08:00,0.0,0.0,0.0007182770191871381,2025 +183695,183715,-1,2633.54,2674.590327999777,-0.016387508828336377,sl,20,-0.015587508828336377,0.015587508828336448,False,ETH,2025-02-22 03:30:00+08:00,1.0,0.0,-0.0027227094133289373,2025 +183781,183788,1,2780.99,2762.0103132740123,-0.0076247950283846585,sl,7,-0.006824795028384658,0.006824795028384645,False,ETH,2025-02-23 01:00:00+08:00,1.0,1.0,0.004295766223314558,2025 +184659,184668,-1,2103.67,2152.7233660434604,-0.02411799476318068,sl,9,-0.02331799476318068,0.023317994763180732,False,ETH,2025-03-04 04:30:00+08:00,1.0,1.0,0.0010134646011293231,2025 +184966,185014,1,2162.78,2190.81,0.012160171630956335,time,48,0.012960171630956335,0.01740589880057325,False,ETH,2025-03-07 09:15:00+08:00,1.0,0.0,0.007302057209661805,2025 +185195,185208,-1,2143.87,2116.9902899295216,0.011737938433990059,tp,13,0.01253793843399006,0.006268969216995075,False,ETH,2025-03-09 18:30:00+08:00,1.0,1.0,0.004299990279892784,2025 +185216,185220,-1,2095.86,2057.884836037308,0.017319131985291013,tp,4,0.018119131985291012,0.009059565992645464,False,ETH,2025-03-09 23:45:00+08:00,1.0,1.0,0.0007998494401055202,2025 +185319,185324,-1,1923.8,1843.2339570694633,0.04107859597179369,tp,5,0.04187859597179369,0.020939297985896856,False,ETH,2025-03-11 01:30:00+08:00,1.0,1.0,0.01793809286070897,2025 +186605,186612,1,2006.23,2031.7537100752577,0.011922225305801263,tp,7,0.012722225305801263,0.006361112652900619,False,ETH,2025-03-24 11:00:00+08:00,0.0,0.0,-0.0005649660515935665,2025 +186612,186617,1,2039.57,2067.6108238420798,0.012948399830395533,tp,5,0.013748399830395533,0.00687419991519776,False,ETH,2025-03-24 12:45:00+08:00,1.0,0.0,0.0022698763514724055,2025 +187319,187320,-1,1803.91,1822.6317304508893,-0.011178417133276745,sl,1,-0.010378417133276745,0.010378417133276762,False,ETH,2025-03-31 21:30:00+08:00,0.0,1.0,0.0017246178279638345,2025 +187895,187896,-1,1763.09,1743.1878349564772,0.010488229780398449,tp,1,0.01128822978039845,0.005644114890199252,False,ETH,2025-04-06 21:30:00+08:00,1.0,1.0,0.00022465347201946115,2025 +188206,188239,1,1641.0,1602.3672961944483,-0.02434217172794133,sl,33,-0.023542171727941333,0.023542171727941385,False,ETH,2025-04-10 03:15:00+08:00,1.0,1.0,-0.0008304875705758986,2025 +188459,188467,-1,1588.18,1598.7698355461507,-0.00746790637468716,sl,8,-0.006667906374687159,0.006667906374687226,False,ETH,2025-04-12 18:30:00+08:00,0.0,0.0,-0.0009806371018113282,2025 +188582,188584,1,1615.16,1647.5075038704988,0.019227430019625742,tp,2,0.02002743001962574,0.010013715009812874,False,ETH,2025-04-14 01:15:00+08:00,1.0,0.0,-0.00027657648597006346,2025 +190288,190295,1,1844.79,1832.282544716592,-0.0075798802483795094,sl,7,-0.006779880248379509,0.006779880248379528,False,ETH,2025-05-01 19:45:00+08:00,1.0,1.0,0.0011496276086645166,2025 +191590,191592,-1,2614.99,2571.9178899725407,0.01567123317009208,tp,2,0.016471233170092078,0.008235616585046058,False,ETH,2025-05-15 09:15:00+08:00,0.0,1.0,-0.0003567281200428281,2025 +191952,191953,-1,2406.78,2338.9408543542245,0.02738668330540212,tp,1,0.028186683305402117,0.01409334165270102,False,ETH,2025-05-19 03:45:00+08:00,1.0,0.0,0.006373897217846868,2025 +192254,192271,1,2555.97,2627.3112160563596,0.02711160148842116,tp,17,0.02791160148842116,0.01395580074421062,False,ETH,2025-05-22 07:15:00+08:00,1.0,1.0,-0.0016219316810728126,2025 +193291,193292,-1,2500.04,2517.810956433126,-0.007908268840949037,sl,1,-0.007108268840949037,0.007108268840949128,False,ETH,2025-06-02 02:30:00+08:00,0.0,1.0,0.0003636363636363924,2025 +193949,193976,1,2517.58,2540.3496961137816,0.008244279075056888,tp,27,0.009044279075056888,0.004522139537528451,False,ETH,2025-06-08 23:00:00+08:00,0.0,0.0,-0.0009875457289647781,2025 +196256,196257,1,2497.74,2530.3080279479145,0.012238998433750007,tp,1,0.013038998433750008,0.006519499216874994,False,ETH,2025-07-02 23:45:00+08:00,1.0,1.0,-0.00015803293568477996,2025 +196657,196663,1,2546.28,2570.17630059082,0.008584789021953563,tp,6,0.009384789021953563,0.0046923945109767886,False,ETH,2025-07-07 04:00:00+08:00,0.0,1.0,0.0005615178380772651,2025 +196750,196754,1,2549.57,2530.8138023429688,-0.008156612156964275,sl,4,-0.007356612156964275,0.007356612156964315,False,ETH,2025-07-08 03:15:00+08:00,1.0,0.0,0.0019272407147446317,2025 +197362,197368,1,3047.48,3023.933851767962,-0.008526432407116018,sl,6,-0.007726432407116018,0.0077264324071160745,False,ETH,2025-07-14 12:15:00+08:00,1.0,1.0,0.00011628756919107344,2025 +197935,197937,1,3671.67,3642.3012845627177,-0.008798735027189914,sl,2,-0.007998735027189913,0.007998735027189865,False,ETH,2025-07-20 11:30:00+08:00,1.0,1.0,0.003114731937175654,2025 +198789,198794,1,3781.2,3744.1957085231315,-0.010586388309760997,sl,5,-0.009786388309760996,0.009786388309761048,False,ETH,2025-07-29 09:00:00+08:00,1.0,0.0,0.0035245694190987487,2025 +199141,199162,-1,3571.02,3487.858344054658,0.02248792780363646,tp,21,0.02328792780363646,0.011643963901818212,False,ETH,2025-08-02 01:00:00+08:00,1.0,1.0,-0.0003542105394238393,2025 +200018,200028,-1,4212.95,4237.970659762659,-0.0067389880636274605,sl,10,-0.00593898806362746,0.005938988063627469,False,ETH,2025-08-11 04:15:00+08:00,0.0,0.0,0.003170109587815106,2025 +200716,200742,-1,4318.72,4224.6561170613495,0.020980500458156758,tp,26,0.021780500458156757,0.010890250229078422,False,ETH,2025-08-18 10:45:00+08:00,1.0,1.0,0.0005737117098656848,2025 +202055,202057,1,4422.81,4390.999608717887,-0.007992348593340751,sl,2,-0.007192348593340752,0.007192348593340844,False,ETH,2025-09-01 09:30:00+08:00,0.0,0.0,0.0018866888952921968,2025 +202809,202814,1,4322.39,4300.0538008714675,-0.005967557561564973,sl,5,-0.005167557561564973,0.005167557561564978,False,ETH,2025-09-09 06:00:00+08:00,1.0,0.0,4.880871863169089e-05,2025 +204359,204361,-1,4082.65,4107.25162584918,-0.006825896378376674,sl,2,-0.006025896378376674,0.006025896378376766,False,ETH,2025-09-25 09:30:00+08:00,1.0,1.0,0.00020070998133153598,2025 +204472,204499,-1,3919.61,3949.758324424511,-0.008491664329999917,sl,27,-0.007691664329999917,0.007691664329999897,False,ETH,2025-09-26 13:45:00+08:00,0.0,0.0,-0.000191870739712249,2025 +206912,206916,1,4080.41,4031.661843867459,-0.012746876939459705,sl,4,-0.011946876939459705,0.011946876939459679,False,ETH,2025-10-21 23:45:00+08:00,1.0,0.0,-0.0015622244685580503,2025 +207763,207782,-1,3809.29,3746.5536844425787,0.015669293636720025,tp,19,0.016469293636720023,0.00823464681836002,False,ETH,2025-10-30 20:30:00+08:00,1.0,1.0,0.0035105665728966035,2025 +208047,208051,1,3888.24,3871.4057290140763,-0.005129534953069633,sl,4,-0.004329534953069632,0.00432953495306962,False,ETH,2025-11-02 19:30:00+08:00,0.0,1.0,0.00011139896373052753,2025 +209096,209114,-1,3485.2,3418.8564433916986,0.01823579611164388,tp,18,0.01903579611164388,0.009517898055821964,False,ETH,2025-11-13 17:45:00+08:00,1.0,0.0,0.00018136476989354098,2025 +209124,209129,-1,3326.74,3233.2727623322476,0.027295744683309253,tp,5,0.028095744683309252,0.014047872341654631,False,ETH,2025-11-14 00:45:00+08:00,1.0,1.0,-0.005159012697282506,2025 +209795,209836,-1,2867.29,2775.156379142082,0.03133264820018825,tp,41,0.032132648200188255,0.01606632410009412,False,ETH,2025-11-21 00:30:00+08:00,1.0,1.0,-0.0007133198106829369,2025 +210121,210124,1,2857.99,2827.0791367292272,-0.01161559532075779,sl,3,-0.01081559532075779,0.010815595320757848,False,ETH,2025-11-24 10:00:00+08:00,1.0,1.0,-0.002173005799479041,2025 +210375,210423,1,3013.29,3022.2,0.0021569009288849913,time,48,0.002956900928884991,0.010232575321608525,False,ETH,2025-11-27 01:30:00+08:00,1.0,0.0,-0.0025328161175498043,2025 +210702,210703,-1,2985.92,2998.2651366094606,-0.004934449887960996,sl,1,-0.004134449887960996,0.0041344498879609445,False,ETH,2025-11-30 11:15:00+08:00,1.0,1.0,0.001432378414390467,2025 +210786,210788,-1,2891.76,2833.9509132636963,0.019190969767997317,tp,2,0.019990969767997316,0.009995484883998661,False,ETH,2025-12-01 08:15:00+08:00,1.0,1.0,0.020433191706094443,2025 +210962,210969,-1,2982.82,3009.546096448357,-0.009760009805605653,sl,7,-0.008960009805605653,0.008960009805605611,False,ETH,2025-12-03 04:15:00+08:00,0.0,0.0,-0.003122632802860667,2025 +211904,211952,-1,3070.0,3088.46,-0.006813029315960924,time,48,-0.006013029315960924,0.01200541410193169,False,ETH,2025-12-12 23:45:00+08:00,1.0,1.0,0.00011374407582942412,2025 +212381,212383,1,3019.31,2986.2375237666283,-0.011753653726636754,sl,2,-0.010953653726636753,0.010953653726636712,False,ETH,2025-12-17 23:00:00+08:00,1.0,0.0,0.007741664322248522,2025 +214539,214564,-1,3114.79,3068.5270530204934,0.014052669675806883,tp,25,0.014852669675806883,0.007426334837903426,False,ETH,2026-01-09 10:30:00+08:00,1.0,0.0,0.0023241484773314897,2026 +214605,214653,-1,3083.36,3090.99,-0.0032745731928803816,time,48,-0.0024745731928803817,0.008693257120884795,False,ETH,2026-01-10 03:00:00+08:00,1.0,1.0,0.0017659759595243525,2026 +215397,215406,-1,3300.81,3308.556959873513,-0.003146987519279473,sl,9,-0.002346987519279473,0.0023469875192794754,False,ETH,2026-01-18 09:00:00+08:00,0.0,0.0,-0.00020519381763092762,2026 +215490,215538,-1,3202.71,3225.7,-0.007978295880675983,time,48,-0.007178295880675984,0.008911244041305817,False,ETH,2026-01-19 08:15:00+08:00,1.0,1.0,0.012729203713169062,2026 +217062,217079,-1,2259.89,2216.590047437033,0.01836020362184313,tp,17,0.01916020362184313,0.009580101810921546,False,ETH,2026-02-04 17:15:00+08:00,0.0,0.0,-0.0014153878513273176,2026 +217174,217179,-1,2052.53,2088.691151072947,-0.018417842892891563,sl,5,-0.017617842892891564,0.01761784289289151,False,ETH,2026-02-05 21:15:00+08:00,1.0,1.0,-0.003259905096254108,2026 +217853,217857,-1,1965.98,1928.0567366075452,0.018489750349675392,tp,4,0.01928975034967539,0.009644875174837721,False,ETH,2026-02-12 23:00:00+08:00,1.0,0.0,2.0044398342310028e-05,2026 +219276,219287,-1,1979.6,1943.8171548185455,0.017275795706937956,tp,11,0.018075795706937955,0.009037897853468983,False,ETH,2026-02-27 18:45:00+08:00,1.0,0.0,0.00038015206082432515,2026 +219585,219591,1,2069.36,2036.9725699146616,-0.01645094042860525,sl,6,-0.01565094042860525,0.015650940428605212,False,ETH,2026-03-03 00:00:00+08:00,1.0,1.0,0.0024259562434885513,2026 +219750,219759,1,2075.44,2052.563386056651,-0.0118225368805406,sl,9,-0.0110225368805406,0.011022536880540598,False,ETH,2026-03-04 17:15:00+08:00,1.0,1.0,-0.0017492711370261948,2026 +219952,219960,-1,2050.02,2023.693067349435,0.0120422808804621,tp,8,0.0128422808804621,0.006421140440231059,False,ETH,2026-03-06 19:45:00+08:00,0.0,1.0,-4.8390999274091e-05,2026 +220592,220602,1,2117.77,2099.446921978839,-0.00945206232081912,sl,10,-0.00865206232081912,0.00865206232081912,False,ETH,2026-03-13 11:45:00+08:00,1.0,1.0,0.0018849101670039216,2026 +221286,221293,-1,2141.23,2157.231770686519,-0.00827316761231591,sl,7,-0.007473167612315909,0.007473167612315853,False,ETH,2026-03-20 17:15:00+08:00,0.0,1.0,-0.0011604092407408882,2026 +222505,222537,-1,2077.85,2035.0239394572545,0.019810756571814803,tp,32,0.0206107565718148,0.010305378285907423,False,ETH,2026-04-02 10:00:00+08:00,1.0,0.0,0.004563072753290866,2026 +223019,223033,-1,2098.0,2071.746362226897,0.011713650034844154,tp,14,0.012513650034844155,0.0062568250174220895,False,ETH,2026-04-07 18:30:00+08:00,0.0,1.0,-0.000593779453346003,2026 +223632,223641,1,2261.2,2298.044785292072,0.015494350474116477,tp,9,0.016294350474116478,0.008147175237058282,False,ETH,2026-04-14 03:45:00+08:00,0.0,0.0,0.00037075750672273917,2026 +224409,224426,1,2314.37,2349.64706504404,0.01444262112110001,tp,17,0.01524262112110001,0.007621310560550003,False,ETH,2026-04-22 06:00:00+08:00,1.0,0.0,0.0002573149404033065,2026 +225128,225131,1,2338.8,2328.561778214149,-0.0051775533546482115,sl,3,-0.004377553354648211,0.004377553354648198,False,ETH,2026-04-29 17:45:00+08:00,0.0,1.0,-0.0005991379310344279,2026 +226305,226309,1,2338.49,2325.3078325057368,-0.006437042490779526,sl,4,-0.005637042490779526,0.005637042490779554,False,ETH,2026-05-12 00:00:00+08:00,1.0,0.0,1.7254022343943242e-05,2026 +226486,226489,-1,2278.58,2254.5041493658086,0.009766164292757456,tp,3,0.010566164292757457,0.005283082146378717,False,ETH,2026-05-13 21:15:00+08:00,1.0,0.0,0.0035327684969399197,2026 +226680,226690,-1,2212.67,2225.683282059206,-0.006681257512058157,sl,10,-0.005881257512058156,0.005881257512058134,False,ETH,2026-05-15 21:45:00+08:00,1.0,1.0,-2.667105257306554e-05,2026 +227386,227424,-1,2072.0,2048.9540502654822,0.010322562613184249,tp,38,0.011122562613184249,0.005561281306592116,False,ETH,2026-05-23 06:15:00+08:00,1.0,1.0,-7.194244604320909e-05,2026 +227583,227599,1,2105.2,2091.6525524973363,-0.007235230620683805,sl,16,-0.006435230620683805,0.006435230620683901,False,ETH,2026-05-25 07:30:00+08:00,1.0,0.0,0.0070493940418134855,2026 +229591,229639,1,1715.59,1714.79,-0.0012663118810438128,time,48,-0.0004663118810438127,0.006835832251427009,False,ETH,2026-06-15 05:30:00+08:00,1.0,0.0,0.009769062455406022,2026 +231363,231364,1,1730.7,1720.1369286787033,-0.00690335200860737,sl,1,-0.006103352008607369,0.006103352008607328,False,ETH,2026-07-03 16:30:00+08:00,1.0,1.0,0.0014708553815140967,2026 +231565,231569,1,1763.11,1755.6629293909732,-0.005023826425479236,sl,4,-0.004223826425479236,0.0042238264254792855,False,ETH,2026-07-05 19:00:00+08:00,0.0,0.0,0.0005247068485650824,2026 +235132,235135,-1,1872.67,1856.016076872,0.008093143547982339,tp,3,0.00889314354798234,0.004446571773991141,False,ETH,2026-08-11 22:45:00+08:00,1.0,1.0,0.0007974144759772241,2026 +236426,236428,1,2528.89,2509.200817369884,-0.008585701485677803,sl,2,-0.007785701485677803,0.007785701485677821,False,ETH,2026-08-25 10:15:00+08:00,1.0,0.0,-0.0005352845057271124,2026 +1668,1669,-1,2.8056,2.744257819009535,0.02106419339551792,tp,1,0.021864193395517918,0.010932096697758976,False,SOL,2020-10-02 00:00:00+08:00,1.0,1.0,0.016059551297515164,2020 +2914,2915,-1,2.3256,2.267357744775424,0.02424396939481254,tp,1,0.02504396939481254,0.012521984697406237,False,SOL,2020-10-14 23:30:00+08:00,0.0,1.0,0.010877782444350942,2020 +3060,3064,-1,2.1464,2.172960835900414,-0.013174597419126976,sl,4,-0.012374597419126976,0.012374597419126984,False,SOL,2020-10-16 12:00:00+08:00,1.0,1.0,0.004432108161346455,2020 +3331,3332,1,2.2186,2.2005401613688553,-0.0089401959033375,sl,1,-0.0081401959033375,0.008140195903337491,False,SOL,2020-10-19 07:45:00+08:00,0.0,1.0,0.005331996536480801,2020 +3589,3610,-1,1.9596,1.8700272299298175,0.044909721407523216,tp,21,0.04570972140752322,0.0228548607037616,False,SOL,2020-10-22 00:15:00+08:00,0.0,1.0,0.02278358027690063,2020 +3721,3743,1,1.9474,1.9241946958938134,-0.012716044010571324,sl,22,-0.011916044010571324,0.01191604401057131,False,SOL,2020-10-23 09:15:00+08:00,0.0,0.0,0.0006238627501950039,2020 +4789,4797,-1,1.4314,1.4483317379639915,-0.01262879555958607,sl,8,-0.01182879555958607,0.0118287955595861,False,SOL,2020-11-03 12:15:00+08:00,1.0,1.0,0.0023189196562541587,2020 +5502,5504,1,2.2171,2.1763858614409974,-0.019163690658518973,sl,2,-0.018363690658518974,0.018363690658519,False,SOL,2020-11-10 22:30:00+08:00,1.0,1.0,-0.0025015919221322938,2020 +6015,6026,1,2.0263,2.1281001785380282,0.04943944062479803,tp,11,0.05023944062479803,0.02511972031239899,False,SOL,2020-11-16 06:45:00+08:00,0.0,1.0,0.00020408163265303876,2020 +6173,6174,1,2.3224,2.274642150217469,-0.02136400696802051,sl,1,-0.02056400696802051,0.020564006968020552,False,SOL,2020-11-17 22:15:00+08:00,0.0,0.0,0.01872607982504107,2020 +6627,6630,1,2.2048,2.1435057777776882,-0.028600354781527504,sl,3,-0.027800354781527505,0.0278003547815276,False,SOL,2020-11-22 15:45:00+08:00,0.0,0.0,0.021920766053323305,2020 +7762,7768,-1,2.0321,2.0530529673278597,-0.011110992238501993,sl,6,-0.010310992238501992,0.010310992238502006,False,SOL,2020-12-04 11:30:00+08:00,1.0,1.0,0.010625452789181259,2020 +8814,8816,1,1.6566,1.7016383495706418,0.026387220554534394,tp,2,0.027187220554534392,0.013593610277267201,False,SOL,2020-12-15 10:30:00+08:00,0.0,1.0,0.012734501180270957,2020 +8995,8998,1,1.7869,1.7558390946557862,-0.018182564969619834,sl,3,-0.017382564969619835,0.01738256496961984,False,SOL,2020-12-17 07:45:00+08:00,1.0,1.0,-0.0006826715212197576,2020 +9563,9569,-1,1.4804,1.5003033696431902,-0.014244589059166634,sl,6,-0.013444589059166633,0.01344458905916658,False,SOL,2020-12-23 05:45:00+08:00,0.0,0.0,0.0015199577055248418,2020 +9949,9992,-1,1.3183,1.2837402556532824,0.025415386745594785,tp,43,0.026215386745594784,0.013107693372797385,False,SOL,2020-12-27 06:15:00+08:00,1.0,0.0,0.009094297428251949,2020 +9965,9972,1,1.3286,1.3088204592467088,-0.01568750621202111,sl,7,-0.01488750621202111,0.014887506212021163,False,SOL,2020-12-27 10:15:00+08:00,0.0,0.0,0.00918625124397153,2020 +10024,10038,-1,1.3659,1.3033440248646884,0.04499835649411489,tp,14,0.04579835649411489,0.022899178247057467,False,SOL,2020-12-28 01:00:00+08:00,0.0,1.0,0.007879091755604828,2020 +11139,11140,1,2.4178,2.348334641053105,-0.029530812700345344,sl,1,-0.028730812700345346,0.028730812700345425,False,SOL,2021-01-08 15:45:00+08:00,0.0,0.0,-0.010259019034295646,2021 +11349,11360,1,3.348,3.2262967607805755,-0.03715102724594516,sl,11,-0.03635102724594516,0.036351027245945106,False,SOL,2021-01-10 20:15:00+08:00,0.0,1.0,0.007752411183005697,2021 +11410,11416,-1,3.0791,3.198444156898837,-0.03955942869631936,sl,6,-0.038759428696319355,0.03875942869631934,False,SOL,2021-01-11 11:30:00+08:00,1.0,1.0,0.009074023324502856,2021 +12357,12366,-1,3.6598,3.546532426429198,0.030149115681403896,tp,9,0.030949115681403894,0.01547455784070197,False,SOL,2021-01-21 08:15:00+08:00,0.0,0.0,-0.003730742390895921,2021 +12799,12800,-1,3.466,3.524451247855802,-0.017664179993018437,sl,1,-0.01686417999301844,0.016864179993018494,False,SOL,2021-01-25 22:45:00+08:00,1.0,1.0,0.005498843832835105,2021 +13505,13513,1,4.5245,4.466655126152435,-0.01358481022158566,sl,8,-0.01278481022158566,0.012784810221585665,False,SOL,2021-02-02 07:15:00+08:00,0.0,1.0,0.005485786825044102,2021 +13782,13788,1,6.0862,6.2633487993397905,0.028306634573262573,tp,6,0.029106634573262572,0.014553317286631317,False,SOL,2021-02-05 04:30:00+08:00,1.0,1.0,-0.00011732761221550484,2021 +14336,14350,-1,7.8318,8.095087699636125,-0.034417776199101635,sl,14,-0.03361777619910163,0.03361777619910161,False,SOL,2021-02-10 23:00:00+08:00,0.0,0.0,-0.001089837267480622,2021 +14674,14683,-1,9.0462,8.740036977415771,0.03304437914088007,tp,9,0.03384437914088007,0.016922189570440012,False,SOL,2021-02-14 11:30:00+08:00,0.0,0.0,0.0011608227738239816,2021 +15448,15451,1,10.7247,10.503643948801567,-0.021411863380647753,sl,3,-0.020611863380647754,0.020611863380647816,False,SOL,2021-02-22 13:00:00+08:00,0.0,0.0,0.003939266455042634,2021 +16722,16727,1,13.5701,13.88881132967832,0.022686291897504117,tp,5,0.023486291897504116,0.011743145948752046,False,SOL,2021-03-07 19:30:00+08:00,1.0,0.0,-0.0006262732966121026,2021 +17075,17082,1,14.1151,13.957204468883514,-0.011986284979666159,sl,7,-0.011186284979666158,0.011186284979666124,False,SOL,2021-03-11 11:45:00+08:00,1.0,0.0,-0.00018634119072015635,2021 +17428,17443,-1,14.8231,14.496796764936693,0.02121315750843662,tp,15,0.022013157508436618,0.01100657875421831,False,SOL,2021-03-15 04:00:00+08:00,0.0,1.0,0.003916561936869629,2021 +17544,17578,-1,13.5813,13.786502655438884,-0.015909205704820854,sl,34,-0.015109205704820855,0.015109205704820872,False,SOL,2021-03-16 09:00:00+08:00,1.0,0.0,0.004663104969925892,2021 +18689,18690,1,16.8151,16.555298947184664,-0.016250461360047656,sl,1,-0.015450461360047657,0.015450461360047671,False,SOL,2021-03-28 07:15:00+08:00,1.0,1.0,0.001386415591937892,2021 +20103,20106,-1,27.4501,27.860919078508875,-0.015766032127710862,sl,3,-0.014966032127710862,0.014966032127710827,False,SOL,2021-04-12 00:45:00+08:00,0.0,0.0,0.0032059710309898033,2021 +20254,20270,-1,26.9306,27.29280095712366,-0.014249420255161852,sl,16,-0.013449420255161852,0.01344942025516186,False,SOL,2021-04-13 14:30:00+08:00,1.0,0.0,0.003462351483344226,2021 +20394,20419,-1,25.8948,26.533873313402378,-0.025479600282774052,sl,25,-0.024679600282774054,0.024679600282774054,False,SOL,2021-04-15 01:30:00+08:00,0.0,1.0,0.005380160657575263,2021 +20557,20558,1,26.6312,26.190462862530445,-0.017349653694522002,sl,1,-0.016549653694522003,0.016549653694521955,False,SOL,2021-04-16 18:15:00+08:00,0.0,0.0,-0.00024307520518962886,2021 +21353,21360,1,39.4332,42.258240210351246,0.07084116050311026,tp,7,0.07164116050311026,0.035820580251555136,False,SOL,2021-04-25 01:15:00+08:00,1.0,0.0,0.008559460456293785,2021 +23110,23147,1,44.471,41.37789216374341,-0.07035336817828665,sl,37,-0.06955336817828665,0.06955336817828668,False,SOL,2021-05-13 08:30:00+08:00,0.0,0.0,0.04102818766553175,2021 +23708,23712,1,51.812,48.99908054917252,-0.0550908872621686,sl,4,-0.054290887262168595,0.05429088726216866,False,SOL,2021-05-19 14:00:00+08:00,0.0,0.0,0.0018975727750436644,2021 +24312,24318,1,27.249,29.37345003731039,0.07716433033543957,tp,6,0.07796433033543956,0.0389821651677198,False,SOL,2021-05-25 21:00:00+08:00,0.0,0.0,-0.00041553339377465947,2021 +25079,25093,1,33.382,34.48835422277166,0.0323422390141892,tp,14,0.0331422390141892,0.01657111950709462,False,SOL,2021-06-02 20:45:00+08:00,0.0,1.0,-0.0019130488444567132,2021 +25695,25725,-1,41.467,42.9024524521966,-0.035416742281732465,sl,30,-0.03461674228173246,0.03461674228173249,False,SOL,2021-06-09 06:45:00+08:00,0.0,0.0,0.00630331753554515,2021 +27118,27123,1,29.544,28.488190320919614,-0.03653685618333288,sl,5,-0.03573685618333288,0.035736856183332846,False,SOL,2021-06-24 02:30:00+08:00,0.0,1.0,0.01602307879461953,2021 +27798,27799,1,35.121,34.351799721819695,-0.022701434417593657,sl,1,-0.02190143441759366,0.021901434417593565,False,SOL,2021-07-01 04:30:00+08:00,1.0,1.0,-0.0032473336113925328,2021 +28241,28257,-1,33.57,32.83525320069573,0.021087006234860546,tp,16,0.021887006234860545,0.010943503117430276,False,SOL,2021-07-05 19:15:00+08:00,0.0,1.0,0.003408395723482895,2021 +28686,28721,-1,33.34,32.45453609729044,0.025758605360214758,tp,35,0.026558605360214756,0.013279302680107328,False,SOL,2021-07-10 10:30:00+08:00,0.0,1.0,-0.0022807381297946794,2021 +29890,29932,1,27.637,28.50858848057588,0.030737014892205396,tp,42,0.031537014892205395,0.015768507446102694,False,SOL,2021-07-22 23:30:00+08:00,1.0,1.0,0.0006264509709989852,2021 +30107,30118,1,28.462,28.092630093701885,-0.013777651124239851,sl,11,-0.01297765112423985,0.012977651124239912,False,SOL,2021-07-25 05:45:00+08:00,0.0,1.0,-0.003940082351270789,2021 +30218,30219,1,31.074,30.452571069078264,-0.020798356533492234,sl,1,-0.019998356533492235,0.019998356533492263,False,SOL,2021-07-26 09:30:00+08:00,1.0,1.0,-0.009299612230191046,2021 +31039,31048,-1,34.61,35.20850602626208,-0.018092864093096767,sl,9,-0.017292864093096768,0.017292864093096758,False,SOL,2021-08-03 22:45:00+08:00,0.0,0.0,-0.0018691059443233695,2021 +31081,31089,1,34.249,33.74982146221294,-0.015374981394699403,sl,8,-0.014574981394699402,0.014574981394699312,False,SOL,2021-08-04 09:15:00+08:00,0.0,0.0,0.00041508538899418266,2021 +31325,31328,1,38.221,39.08676109835935,0.021851450730209835,tp,3,0.022651450730209834,0.011325725365104938,False,SOL,2021-08-06 22:15:00+08:00,1.0,0.0,0.006213830439768434,2021 +31872,31892,1,41.411,40.65247213139346,-0.01911706234108189,sl,20,-0.01831706234108189,0.01831706234108188,False,SOL,2021-08-12 15:00:00+08:00,0.0,0.0,-0.0032912511666748625,2021 +32436,32439,1,67.103,64.09950777426282,-0.045559432897741926,sl,3,-0.044759432897741924,0.044759432897741966,False,SOL,2021-08-18 12:00:00+08:00,0.0,0.0,0.01482384154994753,2021 +33578,33588,1,98.834,97.03774753503944,-0.01897443860372503,sl,10,-0.018174438603725033,0.018174438603725005,False,SOL,2021-08-30 09:30:00+08:00,0.0,1.0,-0.004638743455497359,2021 +34043,34047,1,147.584,144.67832754400462,-0.020488261979587124,sl,4,-0.019688261979587125,0.019688261979587198,False,SOL,2021-09-04 05:45:00+08:00,1.0,1.0,0.007453079005421039,2021 +34513,34534,1,189.599,203.62671921284226,0.07318625105007028,tp,21,0.07398625105007027,0.03699312552503516,False,SOL,2021-09-09 03:15:00+08:00,1.0,1.0,-0.0066849806706026655,2021 +35997,36008,1,144.237,142.11121131170248,-0.015538164883473163,sl,11,-0.014738164883473162,0.014738164883473173,False,SOL,2021-09-24 14:15:00+08:00,0.0,0.0,-0.0009334643458729742,2021 +37847,37851,1,146.959,145.34089919085727,-0.011810559469938768,sl,4,-0.011010559469938768,0.011010559469938827,False,SOL,2021-10-13 20:45:00+08:00,1.0,0.0,-0.0013264695977290816,2021 +38005,38009,1,154.825,152.81972579415736,-0.013751876026756822,sl,4,-0.012951876026756822,0.012951876026756858,False,SOL,2021-10-15 12:15:00+08:00,1.0,0.0,0.01077176781002645,2021 +38529,38534,1,167.896,171.99135264553465,0.02359219901328597,tp,5,0.02439219901328597,0.01219609950664299,False,SOL,2021-10-20 23:15:00+08:00,1.0,1.0,0.010198062550549385,2021 +38940,38949,1,201.841,198.49162104517643,-0.017394145663287328,sl,9,-0.01659414566328733,0.016594145663287308,False,SOL,2021-10-25 06:00:00+08:00,1.0,0.0,-0.003861811429329387,2021 +39787,39811,1,213.989,219.66799036673808,0.0257387023012308,tp,24,0.026538702301230798,0.013269351150615413,False,SOL,2021-11-03 01:45:00+08:00,1.0,1.0,0.002279617176606147,2021 +40070,40086,1,234.941,231.96912910282308,-0.013449434952506917,sl,16,-0.012649434952506916,0.012649434952506923,False,SOL,2021-11-06 00:30:00+08:00,0.0,0.0,-0.00018097441797335193,2021 +40304,40329,1,246.165,243.36660131750503,-0.012167979536063057,sl,25,-0.011367979536063057,0.011367979536063031,False,SOL,2021-11-08 11:00:00+08:00,0.0,0.0,0.0023808837280190594,2021 +40359,40388,-1,248.424,251.436906800288,-0.012928082634077196,sl,29,-0.012128082634077195,0.012128082634077164,False,SOL,2021-11-09 00:45:00+08:00,0.0,0.0,-0.002288784953726807,2021 +40552,40563,-1,243.025,237.3830617948727,0.022415464273746747,tp,11,0.023215464273746746,0.011607732136873368,False,SOL,2021-11-11 01:00:00+08:00,0.0,0.0,-0.002158975401504395,2021 +40946,40957,1,234.044,238.87859833643955,0.019856792468251873,tp,11,0.02065679246825187,0.010328396234125951,False,SOL,2021-11-15 03:30:00+08:00,0.0,1.0,-0.0047904501728446795,2021 +40972,41013,1,241.098,245.90243808880896,0.019127324526992968,tp,41,0.019927324526992966,0.009963662263496457,False,SOL,2021-11-15 10:00:00+08:00,1.0,1.0,-0.0004053404650968781,2021 +42053,42068,-1,190.368,183.38229513689794,0.03589579374213133,tp,15,0.03669579374213133,0.01834789687106569,False,SOL,2021-11-26 16:15:00+08:00,1.0,1.0,0.0011038948181296814,2021 +43662,43680,-1,167.695,163.87064625377818,0.02200541307863572,tp,18,0.02280541307863572,0.011402706539317886,False,SOL,2021-12-13 10:30:00+08:00,1.0,0.0,0.0006487149546490077,2021 +44685,44686,1,191.56,189.1400972176675,-0.013432610056026905,sl,1,-0.012632610056026904,0.012632610056026951,False,SOL,2021-12-24 02:15:00+08:00,1.0,1.0,0.001017239533140581,2021 +45155,45157,-1,185.62,180.8231500894463,0.02504231176895649,tp,2,0.02584231176895649,0.012921155884478253,False,SOL,2021-12-28 23:45:00+08:00,1.0,1.0,-0.0035018835889000723,2021 +45936,45939,-1,162.15,158.3299255404255,0.02275889275099907,tp,3,0.02355889275099907,0.011779446375499549,False,SOL,2022-01-06 03:00:00+08:00,1.0,1.0,0.0075603024120964295,2022 +46754,46767,-1,147.07,143.7046957011861,0.022082330174841208,tp,13,0.022882330174841207,0.011441165087420643,False,SOL,2022-01-14 15:30:00+08:00,0.0,1.0,0.002263497769788985,2022 +47025,47061,-1,143.71,141.1166866247979,0.017245462216979437,tp,36,0.018045462216979436,0.00902273110848972,False,SOL,2022-01-17 11:15:00+08:00,1.0,1.0,6.870963309049681e-05,2022 +47387,47395,-1,132.11,128.46445434589546,0.02679477446146811,tp,8,0.02759477446146811,0.013797387230734023,False,SOL,2022-01-21 05:45:00+08:00,1.0,0.0,0.009204712812960234,2022 +53371,53389,1,96.97,99.07456954543346,0.02090330561445255,tp,18,0.021703305614452547,0.010851652807226237,False,SOL,2022-03-24 13:45:00+08:00,1.0,1.0,0.0046899426784784036,2022 +53689,53697,1,99.8,101.25027681570866,0.013731831820728077,tp,8,0.014531831820728078,0.007265915910364014,False,SOL,2022-03-27 21:15:00+08:00,0.0,0.0,0.0030238887208951857,2022 +54556,54564,-1,130.84,132.87100709393138,-0.016322830127876633,sl,8,-0.015522830127876634,0.015522830127876553,False,SOL,2022-04-05 22:00:00+08:00,1.0,0.0,0.003131524008350849,2022 +54869,54880,-1,113.11,109.38701212685032,0.0321147544262194,tp,11,0.032914754426219404,0.016457377213109733,False,SOL,2022-04-09 04:15:00+08:00,0.0,1.0,-0.0006993618323279857,2022 +55894,55899,1,103.59,105.45038843395474,0.017159150824932322,tp,5,0.01795915082493232,0.008979575412466185,False,SOL,2022-04-19 20:30:00+08:00,1.0,1.0,0.0027303754266211717,2022 +58609,58657,1,55.77,55.03,-0.014068782499551766,time,48,-0.013268782499551766,0.024173341915841338,False,SOL,2022-05-18 03:15:00+08:00,0.0,1.0,-0.0027609055770292396,2022 +59200,59205,-1,48.86,49.700073675141965,-0.01799348495992562,sl,5,-0.01719348495992562,0.01719348495992563,False,SOL,2022-05-24 07:00:00+08:00,1.0,1.0,0.0038283296393311467,2022 +59861,59865,1,46.8,48.06976024970999,0.026331629267307467,tp,4,0.027131629267307465,0.013565814633653748,False,SOL,2022-05-31 04:15:00+08:00,0.0,0.0,0.006789312308366235,2022 +60202,60215,-1,38.96,37.849316255164844,0.027708309672360293,tp,13,0.02850830967236029,0.014254154836180163,False,SOL,2022-06-03 17:30:00+08:00,1.0,1.0,0.0015041363750313932,2022 +61706,61741,-1,30.32,31.310067663097087,-0.0334539466720675,sl,35,-0.032653946672067495,0.03265394667206753,False,SOL,2022-06-19 09:30:00+08:00,0.0,0.0,0.003583061889250796,2022 +62864,62869,-1,34.57,33.160559582559365,0.03997062243102791,tp,5,0.040770622431027914,0.020385311215513957,False,SOL,2022-07-01 11:00:00+08:00,0.0,0.0,0.00028563267637812085,2022 +63900,63904,-1,34.22,33.43928920064453,0.022014459361644305,tp,4,0.022814459361644304,0.011407229680822174,False,SOL,2022-07-12 06:00:00+08:00,1.0,1.0,0.00459770114942519,2022 +64358,64373,1,39.53,38.981036960803884,-0.014687251181283003,sl,15,-0.013887251181283002,0.013887251181283089,False,SOL,2022-07-17 00:30:00+08:00,1.0,1.0,-0.0005279831045407372,2022 +65251,65299,-1,36.64,35.40555958112426,0.0328910594671327,tp,48,0.0336910594671327,0.01684552973356632,False,SOL,2022-07-26 07:45:00+08:00,1.0,1.0,-0.004773269689737463,2022 +65897,65924,-1,41.42,42.02627126812903,-0.015437162436722064,sl,27,-0.014637162436722063,0.014637162436722138,False,SOL,2022-08-02 01:15:00+08:00,1.0,1.0,0.0016568047337278174,2022 +66083,66110,-1,40.13,38.898210160677905,0.029894987274410593,tp,27,0.03069498727441059,0.015347493637205303,False,SOL,2022-08-03 23:45:00+08:00,0.0,0.0,0.0034550839091806655,2022 +66649,66651,1,41.38,40.98437080099786,-0.01036087962789135,sl,2,-0.00956087962789135,0.009560879627891278,False,SOL,2022-08-09 21:15:00+08:00,0.0,0.0,0.0009784735812132864,2022 +66981,66983,1,46.09,47.18866307641615,0.023037341644958662,tp,2,0.02383734164495866,0.011918670822479327,False,SOL,2022-08-13 08:15:00+08:00,1.0,1.0,0.0031049013084939775,2022 +67197,67205,-1,44.65,43.35629730285018,0.028174304527431547,tp,8,0.028974304527431546,0.014487152263715735,False,SOL,2022-08-15 14:15:00+08:00,1.0,1.0,0.0006518904823989817,2022 +68688,68699,1,31.73,31.319630460633945,-0.013733171741760326,sl,11,-0.012933171741760325,0.01293317174176038,False,SOL,2022-08-31 03:00:00+08:00,1.0,0.0,-0.00032310177705970956,2022 +70516,70520,-1,32.3,31.712931886336822,0.017375483395144747,tp,4,0.018175483395144746,0.009087741697572366,False,SOL,2022-09-19 04:00:00+08:00,1.0,1.0,0.0030515715593531097,2022 +70705,70714,1,31.97,31.600539359061397,-0.012356479228608129,sl,9,-0.011556479228608129,0.011556479228608136,False,SOL,2022-09-21 03:15:00+08:00,0.0,0.0,-0.004742333227948105,2022 +71562,71610,-1,34.04,34.09,-0.0022688601645124637,time,48,-0.0014688601645124638,0.013302617292917214,False,SOL,2022-09-30 01:30:00+08:00,0.0,0.0,0.0008741258741259072,2022 +71951,71959,-1,32.86,33.11180525904992,-0.008462971973521723,sl,8,-0.007662971973521723,0.007662971973521668,False,SOL,2022-10-04 02:45:00+08:00,1.0,0.0,-0.0012080942313500195,2022 +72454,72476,-1,32.5,32.64313435286919,-0.005204133934436608,sl,22,-0.004404133934436607,0.00440413393443664,False,SOL,2022-10-09 08:30:00+08:00,0.0,1.0,0.0006114338122899152,2022 +73397,73415,1,30.27,29.994722722137876,-0.00989406269779067,sl,18,-0.009094062697790669,0.009094062697790674,False,SOL,2022-10-19 04:15:00+08:00,0.0,0.0,0.0033244680851064303,2022 +74833,74868,-1,31.19,31.87860137655501,-0.022877633105322526,sl,35,-0.022077633105322528,0.02207763310532249,False,SOL,2022-11-03 03:15:00+08:00,0.0,1.0,0.010088657902781972,2022 +75170,75196,1,35.9,35.52273381734919,-0.01130880731617847,sl,26,-0.010508807316178469,0.010508807316178441,False,SOL,2022-11-06 15:30:00+08:00,0.0,0.0,0.0008434073657576929,2022 +75399,75401,-1,29.11,26.13821034648507,0.10128827390982235,tp,2,0.10208827390982235,0.05104413695491119,False,SOL,2022-11-09 00:45:00+08:00,1.0,0.0,-0.02010376134889757,2022 +75690,75702,1,16.273,15.452959813631661,-0.05119268643571181,sl,12,-0.050392686435711806,0.05039268643571186,False,SOL,2022-11-12 01:30:00+08:00,0.0,1.0,0.005736137667304007,2022 +76851,76876,1,14.01,14.801652960684725,0.05570627842146506,tp,25,0.056506278421465064,0.028253139210732553,False,SOL,2022-11-24 03:45:00+08:00,1.0,0.0,0.006554934823091187,2022 +79772,79778,-1,11.193,11.327254721333517,-0.012794525268785642,sl,6,-0.011994525268785642,0.011994525268785637,False,SOL,2022-12-24 14:00:00+08:00,0.0,0.0,0.02055322428706005,2022 +80332,80334,-1,9.574,10.03610524828191,-0.04906668563629726,sl,2,-0.048266685636297255,0.048266685636297185,False,SOL,2022-12-30 10:00:00+08:00,0.0,1.0,-0.005702647657841055,2022 +80644,80652,1,11.223,10.8448134449832,-0.03449745656391339,sl,8,-0.03369745656391339,0.03369745656391333,False,SOL,2023-01-02 16:00:00+08:00,1.0,0.0,0.06949236076885167,2023 +81287,81290,1,14.957,15.744181537217612,0.05182964078475705,tp,3,0.05262964078475705,0.026314820392378525,False,SOL,2023-01-09 08:45:00+08:00,0.0,1.0,-0.0038907702284026423,2023 +82422,82428,1,23.996,24.918233139195475,0.037632786264188894,tp,6,0.038432786264188896,0.01921639313209443,False,SOL,2023-01-21 04:30:00+08:00,1.0,1.0,0.005335040546308152,2023 +83574,83622,1,24.697,24.96,0.0098490666882618,time,48,0.0106490666882618,0.023493732631505285,False,SOL,2023-02-02 04:30:00+08:00,1.0,0.0,-0.007740447957839214,2023 +83938,83960,-1,23.631,23.16504632806508,0.018917899028179898,tp,22,0.019717899028179896,0.009858949514089978,False,SOL,2023-02-05 23:30:00+08:00,0.0,1.0,-0.00012458471760797815,2023 +85134,85167,-1,23.387,22.94299906679668,0.018184946047091116,tp,33,0.018984946047091115,0.009492473023545556,False,SOL,2023-02-18 10:30:00+08:00,0.0,0.0,0.0017409766454352597,2023 +85657,85659,1,24.283,24.00261473704066,-0.01234656603217651,sl,2,-0.01154656603217651,0.01154656603217649,False,SOL,2023-02-23 21:15:00+08:00,0.0,1.0,0.006615903133191816,2023 +85756,85758,-1,23.503,23.718726722324327,-0.009978688776935994,sl,2,-0.009178688776935994,0.009178688776936006,False,SOL,2023-02-24 22:00:00+08:00,1.0,1.0,-0.0012252313152224393,2023 +87152,87169,-1,18.33,17.656257978556678,0.03595624776013752,tp,17,0.03675624776013752,0.018378123880068792,False,SOL,2023-03-11 11:00:00+08:00,0.0,0.0,0.0023099650819231408,2023 +87594,87612,-1,18.912,19.397947922830898,-0.026495215885728594,sl,18,-0.025695215885728595,0.025695215885728543,False,SOL,2023-03-16 01:30:00+08:00,1.0,1.0,-0.008791321782941718,2023 +87778,87792,-1,19.915,20.223054458785054,-0.016268463910873946,sl,14,-0.015468463910873947,0.015468463910873982,False,SOL,2023-03-17 23:30:00+08:00,1.0,0.0,-0.001432452457396884,2023 +88423,88425,-1,21.589,21.756245578947084,-0.008546796004774898,sl,2,-0.007746796004774898,0.0077467960047748665,False,SOL,2023-03-24 16:45:00+08:00,0.0,1.0,0.002201632877717561,2023 +88894,88917,1,21.2,21.00808082432199,-0.009852791305566483,sl,23,-0.009052791305566483,0.009052791305566433,False,SOL,2023-03-29 14:30:00+08:00,1.0,1.0,0.0011987532965714975,2023 +89131,89138,-1,20.744,20.913387857532552,-0.008965631388958352,sl,7,-0.008165631388958351,0.008165631388958417,False,SOL,2023-04-01 01:45:00+08:00,0.0,0.0,0.0004775777257749445,2023 +89432,89437,-1,20.204,20.523567107946604,-0.016617021775222916,sl,5,-0.015817021775222918,0.015817021775222942,False,SOL,2023-04-04 05:00:00+08:00,0.0,1.0,-0.0039221313435691746,2023 +89561,89572,1,21.215,21.089651564154035,-0.0067084815388152,sl,11,-0.005908481538815199,0.0059084815388152565,False,SOL,2023-04-05 13:15:00+08:00,0.0,1.0,0.00028457598178714796,2023 +90476,90505,1,24.483,24.161964898618997,-0.013912572045133494,sl,29,-0.013112572045133494,0.013112572045133507,False,SOL,2023-04-15 02:00:00+08:00,1.0,0.0,-0.0008298755186723288,2023 +91818,91866,1,23.297,23.242,-0.00316081898956946,time,48,-0.00236081898956946,0.013602197488818376,False,SOL,2023-04-29 01:30:00+08:00,1.0,0.0,0.003398058252427104,2023 +94113,94125,-1,19.615,19.75600798238127,-0.007988783195578462,sl,12,-0.007188783195578463,0.007188783195578469,False,SOL,2023-05-22 23:15:00+08:00,1.0,0.0,-5.0505050504932795e-05,2023 +94595,94598,1,19.604,19.53414096708093,-0.0043635091266613635,sl,3,-0.003563509126661363,0.0035635091266612833,False,SOL,2023-05-27 23:45:00+08:00,0.0,1.0,-0.0001539329878392998,2023 +95078,95079,-1,20.589,20.689868655104647,-0.005699152707982324,sl,1,-0.004899152707982323,0.004899152707982265,False,SOL,2023-06-02 00:30:00+08:00,0.0,0.0,-0.001734605377276564,2023 +95310,95327,1,21.255,21.413218940163304,0.006643845691051761,tp,17,0.007443845691051761,0.0037219228455258892,False,SOL,2023-06-04 10:30:00+08:00,1.0,0.0,0.0009462080711548267,2023 +95838,95843,-1,18.863,18.520083010670707,0.017379345243561096,tp,5,0.018179345243561094,0.009089672621780575,False,SOL,2023-06-09 22:30:00+08:00,1.0,0.0,-0.003243695720414231,2023 +96820,96837,1,15.889,16.219113616658987,0.01997623617968329,tp,17,0.02077623617968329,0.010388118089841655,False,SOL,2023-06-20 04:00:00+08:00,0.0,1.0,-0.0008283420415446461,2023 +96907,96933,1,16.315,16.68943692029167,0.0221504701373992,tp,26,0.0229504701373992,0.011475235068699593,False,SOL,2023-06-21 01:45:00+08:00,1.0,0.0,-0.0022995649471720964,2023 +97476,97479,-1,16.752,16.461081800402507,0.016566177148847415,tp,3,0.017366177148847414,0.008683088574423728,False,SOL,2023-06-27 00:00:00+08:00,1.0,0.0,0.00011761246692142851,2023 +98146,98148,1,19.315,19.11665274654393,-0.011069078615380295,sl,2,-0.010269078615380295,0.01026907861538024,False,SOL,2023-07-03 23:30:00+08:00,0.0,0.0,0.0027341079972660583,2023 +98518,98528,1,20.796,21.562287003403284,0.036047807434279905,tp,10,0.03684780743427991,0.018423903717139953,False,SOL,2023-07-07 20:30:00+08:00,1.0,0.0,0.004243770046878782,2023 +99086,99092,1,22.195,22.52939042511832,0.014266025010962751,tp,6,0.015066025010962752,0.00753301250548136,False,SOL,2023-07-13 18:30:00+08:00,1.0,0.0,9.091322332844421e-05,2023 +100004,100013,-1,24.366,24.656009789697574,-0.012702232196403776,sl,9,-0.011902232196403776,0.011902232196403831,False,SOL,2023-07-23 08:00:00+08:00,1.0,1.0,0.020666267703969704,2023 +101252,101296,-1,22.726,22.907285387552335,-0.008777003764513593,sl,44,-0.007977003764513593,0.007977003764513593,False,SOL,2023-08-05 08:00:00+08:00,1.0,1.0,-0.0016137473831123095,2023 +104724,104725,-1,18.837,18.5490608854829,0.01448582653910396,tp,1,0.01528582653910396,0.00764291326955202,False,SOL,2023-09-10 12:00:00+08:00,1.0,1.0,0.0006213753106876789,2023 +105266,105278,1,18.716,18.969340517183262,0.012736039601584804,tp,12,0.013536039601584804,0.006768019800792361,False,SOL,2023-09-16 03:30:00+08:00,0.0,0.0,0.0024194849185439084,2023 +106314,106324,-1,19.17,19.257065307743567,-0.005341747926111883,sl,10,-0.004541747926111883,0.004541747926111805,False,SOL,2023-09-27 01:30:00+08:00,0.0,1.0,-0.0020235562704302122,2023 +107525,107531,-1,22.903,22.646569187462152,0.010396385300521623,tp,6,0.011196385300521623,0.005598192650260847,False,SOL,2023-10-09 16:15:00+08:00,1.0,1.0,0.0006050914120240025,2023 +109084,109114,1,32.833,32.188497589601525,-0.020429714323956797,sl,30,-0.0196297143239568,0.01962971432395688,False,SOL,2023-10-25 22:00:00+08:00,1.0,1.0,0.0067016676961086695,2023 +109227,109229,-1,31.927,32.38894926202852,-0.015268921665941636,sl,2,-0.014468921665941636,0.014468921665941544,False,SOL,2023-10-27 09:45:00+08:00,1.0,1.0,0.0006442310642083871,2023 +109687,109698,1,37.152,38.05803194061597,0.023587164637596032,tp,11,0.02438716463759603,0.012193582318797982,False,SOL,2023-11-01 04:45:00+08:00,1.0,1.0,0.004531309712289044,2023 +110008,110012,-1,40.533,41.17148695036016,-0.016552274698644575,sl,4,-0.015752274698644576,0.015752274698644528,False,SOL,2023-11-04 13:00:00+08:00,0.0,0.0,0.00763653939101021,2023 +110216,110245,1,40.381,39.898050487544836,-0.012759820520917366,sl,29,-0.011959820520917366,0.01195982052091731,False,SOL,2023-11-06 17:00:00+08:00,0.0,1.0,0.0012069399044504579,2023 +110287,110293,-1,40.336,41.006215122315055,-0.017415805293411753,sl,6,-0.016615805293411754,0.016615805293411782,False,SOL,2023-11-07 10:45:00+08:00,1.0,0.0,0.00492754326771374,2023 +111237,111268,1,59.156,57.524506014126544,-0.02837951832229114,sl,31,-0.027579518322291142,0.027579518322291118,False,SOL,2023-11-17 08:15:00+08:00,0.0,0.0,-0.0035978067216716914,2023 +111674,111680,-1,55.758,54.49283100590446,0.02189035822833565,tp,6,0.02269035822833565,0.011345179114167837,False,SOL,2023-11-21 21:30:00+08:00,1.0,0.0,-0.00024800708591666594,2023 +112415,112423,1,59.473,60.53641514080254,0.017080637277462722,tp,8,0.01788063727746272,0.008940318638731369,False,SOL,2023-11-29 14:45:00+08:00,0.0,1.0,0.004616194015919055,2023 +115930,115947,-1,105.268,101.49314344362456,0.035059487749130216,tp,17,0.03585948774913022,0.017929743874565134,False,SOL,2024-01-05 05:30:00+08:00,0.0,0.0,0.0011554338001659485,2024 +116057,116059,-1,95.918,93.5325673406898,0.024069499565360114,tp,2,0.024869499565360113,0.01243474978268005,False,SOL,2024-01-06 13:15:00+08:00,1.0,0.0,0.0019434556687533012,2024 +118116,118119,1,93.129,92.52395334825256,-0.007296866193639396,sl,3,-0.006496866193639396,0.006496866193639323,False,SOL,2024-01-28 00:00:00+08:00,1.0,1.0,-0.0017097531679129243,2024 +118528,118550,-1,96.553,93.24481284736962,0.03346291417802017,tp,22,0.034262914178020173,0.01713145708901012,False,SOL,2024-02-01 07:00:00+08:00,1.0,0.0,-0.002030456852791907,2024 +118865,118892,1,97.593,96.90822159260458,-0.007816675452085982,sl,27,-0.007016675452085982,0.007016675452085939,False,SOL,2024-02-04 19:15:00+08:00,1.0,0.0,0.0013752740207634898,2024 +118975,118978,-1,97.704,96.2685828990876,0.013891487563583773,tp,3,0.014691487563583773,0.007345743781791903,False,SOL,2024-02-05 22:45:00+08:00,1.0,0.0,-0.0022672509328263263,2024 +119301,119311,1,103.414,104.94894008158148,0.014042671993941649,tp,10,0.01484267199394165,0.007421335996970839,False,SOL,2024-02-09 08:15:00+08:00,1.0,1.0,0.00038004287663224984,2024 +121210,121223,1,115.811,121.50548840505907,0.04837053134036543,tp,13,0.049170531340365434,0.02458526567018271,False,SOL,2024-02-29 05:30:00+08:00,0.0,1.0,-0.006536122316316341,2024 +121899,121937,1,137.514,142.5933033047928,0.0361366268510319,tp,38,0.036936626851031905,0.018468313425515952,False,SOL,2024-03-07 09:45:00+08:00,1.0,1.0,-0.0052323791935980505,2024 +122443,122491,1,147.687,151.84,0.027320281405946303,time,48,0.0281202814059463,0.021765162139964316,False,SOL,2024-03-13 01:45:00+08:00,0.0,0.0,0.01016281240277921,2024 +123125,123133,-1,177.186,168.87739838444307,0.04609197575179155,tp,8,0.046891975751791555,0.02344598787589575,False,SOL,2024-03-20 04:15:00+08:00,1.0,0.0,0.005475565014021434,2024 +123345,123372,1,178.365,175.65156282440145,-0.016012834219709903,sl,27,-0.015212834219709903,0.015212834219709977,False,SOL,2024-03-22 11:15:00+08:00,0.0,0.0,-0.0005023232450081277,2024 +123518,123523,1,174.999,173.53145299869115,-0.00918603078479788,sl,5,-0.00838603078479788,0.008386030784797813,False,SOL,2024-03-24 06:30:00+08:00,0.0,0.0,0.00014386336433096206,2024 +123607,123609,1,179.074,182.4432303798224,0.018014737928579234,tp,2,0.018814737928579232,0.009407368964289614,False,SOL,2024-03-25 04:45:00+08:00,1.0,0.0,0.0015043717268603373,2024 +123969,123990,-1,186.126,188.26701220132617,-0.012303025914306237,sl,21,-0.011503025914306237,0.011503025914306214,False,SOL,2024-03-28 23:15:00+08:00,1.0,1.0,0.0031348961764893594,2024 +124037,124060,1,185.26,188.58659304341072,0.017156348069797718,tp,23,0.017956348069797717,0.008978174034898891,False,SOL,2024-03-29 16:15:00+08:00,0.0,1.0,0.003418636452432091,2024 +124102,124118,1,192.414,196.02091298534657,0.01794558496443389,tp,16,0.01874558496443389,0.00937279248221695,False,SOL,2024-03-30 08:30:00+08:00,1.0,1.0,0.0003532097275013695,2024 +125411,125417,-1,167.46,164.03167590072204,0.019672495517006883,tp,6,0.020472495517006882,0.010236247758503467,False,SOL,2024-04-12 23:45:00+08:00,1.0,1.0,6.496919869350296e-05,2024 +126184,126224,1,148.889,152.427301957561,0.02296469690548666,tp,40,0.02376469690548666,0.011882348452743371,False,SOL,2024-04-21 01:00:00+08:00,1.0,1.0,0.008658157985512411,2024 +126517,126557,1,157.322,155.8751217674986,-0.00999692244251538,sl,40,-0.00919692244251538,0.00919692244251543,False,SOL,2024-04-24 12:15:00+08:00,0.0,0.0,-0.001217012554445284,2024 +126752,126782,-1,142.561,138.66895167464315,0.026500933111838817,tp,30,0.027300933111838815,0.013650466555919444,False,SOL,2024-04-26 23:00:00+08:00,0.0,1.0,0.0015393073117098539,2024 +126782,126793,-1,138.938,135.8349781469296,0.021533860089179364,tp,11,0.022333860089179362,0.01116693004458964,False,SOL,2024-04-27 06:30:00+08:00,1.0,1.0,0.006500993895149446,2024 +126995,126997,-1,134.908,136.38528374103927,-0.011750304956261207,sl,2,-0.010950304956261207,0.010950304956261215,False,SOL,2024-04-29 11:45:00+08:00,1.0,1.0,0.0026527905315784418,2024 +128025,128028,-1,149.85,151.4901592653558,-0.011745340442814852,sl,3,-0.010945340442814852,0.010945340442814944,False,SOL,2024-05-10 05:15:00+08:00,0.0,0.0,0.0006832957410110697,2024 +128811,128842,1,171.782,174.5418882271612,0.015266224791661431,tp,31,0.01606622479166143,0.008033112395830691,False,SOL,2024-05-18 09:45:00+08:00,1.0,1.0,-0.0019470588235293463,2024 +129015,129028,1,175.518,179.07353353428493,0.019457372658558857,tp,13,0.020257372658558856,0.010128686329279452,False,SOL,2024-05-20 12:45:00+08:00,1.0,1.0,0.00350272786454585,2024 +130784,130791,-1,171.018,168.97608922201448,0.011139741886734267,tp,7,0.011939741886734268,0.005969870943367102,False,SOL,2024-06-07 23:00:00+08:00,1.0,1.0,0.00406720741599072,2024 +130870,130878,-1,159.924,160.8671643565261,-0.00669757857811271,sl,8,-0.005897578578112709,0.005897578578112765,False,SOL,2024-06-08 20:30:00+08:00,1.0,1.0,0.00200105318588718,2024 +132197,132245,-1,134.076,134.17,-0.0015010949013991625,time,48,-0.0007010949013991623,0.007019796829388842,False,SOL,2024-06-22 16:15:00+08:00,1.0,0.0,-0.0003322970588019282,2024 +133275,133278,1,144.083,142.30285041823385,-0.013155028572185153,sl,3,-0.012355028572185152,0.012355028572185121,False,SOL,2024-07-03 21:45:00+08:00,0.0,0.0,2.1053665794209712e-05,2024 +133676,133680,1,138.886,137.43379607944877,-0.011256085714551698,sl,4,-0.010456085714551698,0.01045608571455171,False,SOL,2024-07-08 02:00:00+08:00,1.0,0.0,-0.004695721595238896,2024 +134161,134209,-1,138.939,139.274,-0.003211130064272868,time,48,-0.002411130064272868,0.0089148786813663,False,SOL,2024-07-13 03:15:00+08:00,0.0,0.0,-0.0010722864005490512,2024 +134719,134724,-1,157.897,155.10568240914725,0.016878091356091265,tp,5,0.017678091356091264,0.008839045678045644,False,SOL,2024-07-18 22:45:00+08:00,0.0,0.0,0.0005369798008180371,2024 +135949,135965,-1,182.995,180.4101795505274,0.013325087841048126,tp,16,0.014125087841048127,0.007062543920524051,False,SOL,2024-07-31 18:15:00+08:00,0.0,0.0,0.0022336956521739203,2024 +136158,136161,-1,159.666,154.08442052646356,0.03415784621357356,tp,3,0.03495784621357356,0.017478923106786802,False,SOL,2024-08-02 22:30:00+08:00,0.0,1.0,0.012038102582950351,2024 +137373,137384,-1,141.83,143.24200177698177,-0.010755593153646997,sl,11,-0.009955593153646997,0.009955593153646919,False,SOL,2024-08-15 14:15:00+08:00,1.0,0.0,0.002536178870285629,2024 +137841,137849,1,145.576,148.05111815254776,0.016202240428008496,tp,8,0.017002240428008495,0.008501120214004204,False,SOL,2024-08-20 11:15:00+08:00,1.0,1.0,0.001963812731936109,2024 +138172,138173,1,146.421,145.600457988337,-0.006403991310419814,sl,1,-0.005603991310419814,0.005603991310419746,False,SOL,2024-08-23 22:00:00+08:00,1.0,1.0,-0.0013847331431355665,2024 +138766,138809,-1,140.673,137.8550415806945,0.019231977844401643,tp,43,0.020031977844401642,0.01001598892220083,False,SOL,2024-08-30 02:30:00+08:00,1.0,0.0,0.002688680236099636,2024 +139064,139069,-1,134.114,131.21289330780198,0.020831646898892192,tp,5,0.02163164689889219,0.010815823449446106,False,SOL,2024-09-02 05:00:00+08:00,0.0,1.0,0.00376222723852514,2024 +139530,139543,-1,126.608,122.49642910930767,0.031674811154842775,tp,13,0.03247481115484278,0.01623740557742138,False,SOL,2024-09-07 01:30:00+08:00,1.0,1.0,-0.0018234893603699405,2024 +140368,140376,-1,135.656,136.11360453325494,-0.004173271608000656,sl,8,-0.003373271608000656,0.003373271608000564,False,SOL,2024-09-15 19:00:00+08:00,1.0,1.0,-0.00047641734159121726,2024 +142260,142262,-1,141.559,142.4593369014423,-0.007160153020594251,sl,2,-0.006360153020594251,0.006360153020594334,False,SOL,2024-10-05 12:00:00+08:00,1.0,0.0,0.0007722549845547965,2024 +142589,142591,-1,142.657,143.92743963129845,-0.009705554100383748,sl,2,-0.008905554100383748,0.008905554100383788,False,SOL,2024-10-08 22:15:00+08:00,0.0,1.0,0.006491712707182304,2024 +143577,143600,-1,154.32,155.20845343134295,-0.006557215081278854,sl,23,-0.005757215081278854,0.005757215081278828,False,SOL,2024-10-19 05:15:00+08:00,1.0,0.0,0.002704268881591758,2024 +143771,143775,1,163.75,166.26047107235098,0.014531121052525076,tp,4,0.015331121052525076,0.007665560526262581,False,SOL,2024-10-21 05:45:00+08:00,1.0,1.0,0.0005605381165919495,2024 +144128,144132,1,176.82,175.0326755616519,-0.01090815766512891,sl,4,-0.01010815766512891,0.010108157665128856,False,SOL,2024-10-24 23:00:00+08:00,1.0,0.0,-0.0017209729233592414,2024 +144227,144235,-1,172.35,168.3431325461778,0.022448433152435138,tp,8,0.023248433152435136,0.01162421657621753,False,SOL,2024-10-25 23:45:00+08:00,0.0,1.0,0.007537688442211016,2024 +144233,144236,-1,169.91,165.79820088543093,0.023399865308510782,tp,3,0.02419986530851078,0.012099932654255406,False,SOL,2024-10-26 01:15:00+08:00,1.0,0.0,0.00023215322112606188,2024 +145126,145128,-1,160.63,162.0503328171418,-0.009642263693841736,sl,2,-0.008842263693841735,0.008842263693841694,False,SOL,2024-11-04 08:30:00+08:00,1.0,1.0,-0.0010435209624947268,2024 +145615,145647,1,199.6,202.94505710618913,0.015958803137220097,tp,32,0.016758803137220096,0.008379401568610024,False,SOL,2024-11-09 10:45:00+08:00,1.0,0.0,-0.0002526017985248629,2024 +145836,145838,1,212.07,216.76516854127271,0.021339711139117847,tp,2,0.022139711139117845,0.011069855569558909,False,SOL,2024-11-11 18:00:00+08:00,1.0,0.0,0.0017661097852028856,2024 +147200,147202,-1,239.46,242.9283887718594,-0.015284209353793515,sl,2,-0.014484209353793515,0.014484209353793522,False,SOL,2024-11-25 23:00:00+08:00,1.0,0.0,0.012489321020300204,2024 +148074,148084,1,227.72,234.01196987109552,0.026830291020092736,tp,10,0.027630291020092734,0.013815145510046341,False,SOL,2024-12-05 01:30:00+08:00,0.0,0.0,0.004437344692935747,2024 +150158,150162,-1,188.57,190.31505562094668,-0.010054152945572927,sl,4,-0.009254152945572927,0.00925415294557288,False,SOL,2024-12-26 18:30:00+08:00,1.0,1.0,0.0006827013969120652,2024 +150792,150806,1,197.75,201.31285989351966,0.0172169906119831,tp,14,0.0180169906119831,0.009008495305991533,False,SOL,2025-01-02 09:00:00+08:00,1.0,1.0,0.0023053278688525466,2025 +151490,151494,-1,190.31,191.96890236305853,-0.00951684285144517,sl,4,-0.00871684285144517,0.008716842851445113,False,SOL,2025-01-09 15:30:00+08:00,1.0,0.0,0.0021239121425611096,2025 +152342,152351,1,228.92,237.88575818317506,0.03836546471769644,tp,9,0.03916546471769644,0.019582732358848196,False,SOL,2025-01-18 12:30:00+08:00,1.0,1.0,0.011801944381641352,2025 +152704,152711,-1,248.98,252.97165089005398,-0.016832014178062453,sl,7,-0.016032014178062454,0.016032014178062416,False,SOL,2025-01-22 07:00:00+08:00,1.0,0.0,0.005554673861291881,2025 +152876,152885,-1,251.18,255.44842866568328,-0.01779350531763386,sl,9,-0.016993505317633863,0.01699350531763387,False,SOL,2025-01-24 02:00:00+08:00,0.0,1.0,7.872466049994186e-05,2025 +153186,153192,-1,241.37,235.98844385053349,0.021495878317382106,tp,6,0.022295878317382105,0.011147939158691025,False,SOL,2025-01-27 07:30:00+08:00,1.0,0.0,0.006284688214169083,2025 +153746,153749,-1,222.0,218.20069903295033,0.01631396832004358,tp,3,0.01711396832004358,0.008556984160021812,False,SOL,2025-02-02 03:30:00+08:00,1.0,1.0,-0.003127792672028546,2025 +154182,154184,-1,201.16,202.74655018125773,-0.008687006269923121,sl,2,-0.00788700626992312,0.007887006269923152,False,SOL,2025-02-06 16:30:00+08:00,0.0,0.0,-0.0012033338265029332,2025 +154210,154242,-1,192.34,187.54773436802287,0.024115595466242753,tp,32,0.02491559546624275,0.012457797733121412,False,SOL,2025-02-06 23:30:00+08:00,1.0,1.0,-0.0036684159576094097,2025 +154530,154533,1,199.45,204.89744873366493,0.02651235263807943,tp,3,0.027312352638079428,0.013656176319039679,False,SOL,2025-02-10 07:30:00+08:00,0.0,0.0,-0.004749744637385121,2025 +155690,155694,1,172.17,170.34426575949524,-0.011404253008681791,sl,4,-0.01060425300868179,0.010604253008681779,False,SOL,2025-02-22 09:30:00+08:00,1.0,0.0,0.001756851721714754,2025 +155841,155869,-1,168.46,166.44161785767074,0.011181373277509631,tp,28,0.011981373277509632,0.005990686638754823,False,SOL,2025-02-23 23:15:00+08:00,0.0,1.0,-0.0006480881399871187,2025 +156321,156369,1,146.81,146.88,-0.00032319324296714683,time,48,0.0004768067570328532,0.023632070121135468,False,SOL,2025-02-28 23:15:00+08:00,1.0,1.0,0.005366852623402237,2025 +156450,156456,1,142.89,145.55325594896982,0.0178385047866879,tp,6,0.0186385047866879,0.009319252393343936,False,SOL,2025-03-02 07:30:00+08:00,1.0,0.0,0.0,2025 +156949,156986,1,141.89,146.2314204047141,0.029797085099119845,tp,37,0.030597085099119844,0.015298542549559884,False,SOL,2025-03-07 12:15:00+08:00,1.0,0.0,-0.005633802816901417,2025 +157364,157369,-1,124.07,125.51782927867697,-0.012469454974425543,sl,5,-0.011669454974425543,0.011669454974425546,False,SOL,2025-03-11 20:00:00+08:00,0.0,0.0,0.00723888314374351,2025 +157991,158000,-1,126.49,124.35466420118483,0.016081459394538408,tp,9,0.016881459394538407,0.00844072969726923,False,SOL,2025-03-18 08:45:00+08:00,1.0,1.0,-0.0010989873616453455,2025 +158325,158326,1,126.76,125.84043972063412,-0.008054341112069123,sl,1,-0.007254341112069123,0.007254341112069109,False,SOL,2025-03-21 20:15:00+08:00,0.0,1.0,0.0011916110581506648,2025 +158477,158483,1,129.42,130.70777834020325,0.009150381240946226,tp,6,0.009950381240946226,0.004975190620473086,False,SOL,2025-03-23 10:15:00+08:00,1.0,0.0,-0.0023360847220057854,2025 +158971,158984,-1,133.28,130.69183958422352,0.018618970706606286,tp,13,0.019418970706606285,0.009709485353303142,False,SOL,2025-03-28 13:45:00+08:00,1.0,1.0,0.011680011753470972,2025 +159517,159565,-1,121.2,116.72,0.036163696369637,time,48,0.036963696369637,0.023390244879175355,False,SOL,2025-04-03 06:15:00+08:00,1.0,0.0,0.015373470701867327,2025 +159785,159811,1,118.17,119.80318253048183,0.013020618858270562,tp,26,0.013820618858270562,0.006910309429135305,False,SOL,2025-04-06 01:15:00+08:00,1.0,0.0,0.0005964045326743902,2025 +162512,162560,-1,145.69,146.6068360922417,-0.007093061241277434,sl,48,-0.006293061241277434,0.006293061241277468,False,SOL,2025-05-04 11:00:00+08:00,0.0,1.0,0.0004076086956521894,2025 +164125,164129,-1,166.89,168.62668238709438,-0.011206150081457191,sl,4,-0.010406150081457191,0.010406150081457191,False,SOL,2025-05-21 06:15:00+08:00,0.0,0.0,-0.0014860607501634667,2025 +167754,167767,-1,141.48,142.75841361332775,-0.0098360023560062,sl,13,-0.0090360023560062,0.009036002356006186,False,SOL,2025-06-28 01:30:00+08:00,0.0,0.0,-0.00041978590918633087,2025 +168804,168805,-1,149.48,150.41210697214015,-0.007035663447552592,sl,1,-0.006235663447552592,0.006235663447552521,False,SOL,2025-07-09 00:00:00+08:00,1.0,0.0,0.0015270216438721164,2025 +169282,169293,-1,162.09,163.14856915823427,-0.007330749325894647,sl,11,-0.006530749325894647,0.006530749325894707,False,SOL,2025-07-13 23:30:00+08:00,0.0,0.0,0.0006115833893951093,2025 +169471,169474,-1,157.68,159.41549169734338,-0.011806416142461805,sl,3,-0.011006416142461804,0.01100641614246174,False,SOL,2025-07-15 22:45:00+08:00,0.0,1.0,0.001300309597523269,2025 +170870,170879,-1,180.64,181.96318801464216,-0.008125000081057187,sl,9,-0.007325000081057187,0.007325000081057151,False,SOL,2025-07-30 12:30:00+08:00,0.0,0.0,-0.0005489679402722569,2025 +172685,172698,-1,184.7,181.286595020434,0.017680806602956126,tp,13,0.018480806602956125,0.009240403301478073,False,SOL,2025-08-18 10:15:00+08:00,1.0,1.0,0.003378559553815603,2025 +173116,173117,1,190.42,187.76170833361073,-0.014760149492643948,sl,1,-0.013960149492643948,0.01396014949264388,False,SOL,2025-08-22 22:00:00+08:00,1.0,1.0,5.572893446272239e-05,2025 +173334,173341,1,205.46,202.05649612136534,-0.01736528705653006,sl,7,-0.01656528705653006,0.016565287056530084,False,SOL,2025-08-25 04:30:00+08:00,0.0,1.0,0.0049382716049382715,2025 +174462,174481,-1,202.94,205.19360185239097,-0.011904769155370906,sl,19,-0.011104769155370906,0.01110476915537085,False,SOL,2025-09-05 22:30:00+08:00,0.0,1.0,0.0020645285193009737,2025 +174729,174732,1,209.26,211.7759393779548,0.011223030574189155,tp,3,0.012023030574189155,0.00601151528709461,False,SOL,2025-09-08 17:15:00+08:00,1.0,1.0,0.003126052036743162,2025 +175813,175818,1,238.58,236.80227695199528,-0.008251266023995014,sl,5,-0.007451266023995015,0.007451266023995039,False,SOL,2025-09-20 00:15:00+08:00,1.0,0.0,-0.0013928164436753999,2025 +176037,176039,-1,234.65,231.7299128671265,0.011644436960892839,tp,2,0.012444436960892839,0.006222218480446393,False,SOL,2025-09-22 08:15:00+08:00,0.0,1.0,0.0015175146482316116,2025 +176934,176949,1,215.15,218.88821752929329,0.016574936227252056,tp,15,0.017374936227252055,0.008687468113626003,False,SOL,2025-10-01 16:30:00+08:00,1.0,0.0,0.00042938931297711554,2025 +177002,177017,1,222.22,225.2687938923561,0.01291970971269952,tp,15,0.013719709712699521,0.006859854856349749,False,SOL,2025-10-02 09:30:00+08:00,1.0,1.0,-0.00104365187403571,2025 +177315,177321,1,236.48,234.78106179226063,-0.007984278618654262,sl,6,-0.007184278618654263,0.00718427861865425,False,SOL,2025-10-05 15:45:00+08:00,1.0,1.0,-0.0002981641606679797,2025 +177538,177543,-1,222.2,224.83033968117994,-0.012637712336543419,sl,5,-0.011837712336543418,0.011837712336543425,False,SOL,2025-10-07 23:30:00+08:00,1.0,1.0,-0.0009714739909917816,2025 +177940,177972,-1,175.98,178.51530496711803,-0.015206778992601644,sl,32,-0.014406778992601644,0.014406778992601699,False,SOL,2025-10-12 04:00:00+08:00,1.0,1.0,0.001562412811785063,2025 +178412,178460,-1,187.52,185.59,0.009492235494880581,time,48,0.010292235494880581,0.018714791675945128,False,SOL,2025-10-17 02:00:00+08:00,0.0,0.0,0.0020843103538117124,2025 +179184,179232,1,192.47,194.08,0.007564939990647964,time,48,0.008364939990647965,0.007128323800709541,False,SOL,2025-10-25 03:00:00+08:00,1.0,1.0,-0.0003663578793112115,2025 +179700,179714,-1,194.04,196.0325982239398,-0.011069007544525914,sl,14,-0.010269007544525914,0.010269007544525869,False,SOL,2025-10-30 12:00:00+08:00,0.0,0.0,0.0015150749962122264,2025 +181301,181306,-1,140.94,138.82312581698068,0.014219683432803462,tp,5,0.015019683432803462,0.007509841716401723,False,SOL,2025-11-16 04:15:00+08:00,1.0,0.0,0.0009816295049783674,2025 +182256,182260,-1,135.33,136.79082622012015,-0.011594548290254487,sl,4,-0.010794548290254486,0.01079454829025451,False,SOL,2025-11-26 03:00:00+08:00,0.0,1.0,-0.003280600714442058,2025 +182348,182396,1,142.48,143.46,0.00607815833801248,time,48,0.0068781583380124805,0.01181269464395312,False,SOL,2025-11-27 02:00:00+08:00,1.0,0.0,0.005075053609721286,2025 +182513,182516,-1,140.38,141.41199949464016,-0.00815147096908506,sl,3,-0.00735147096908506,0.007351470969084973,False,SOL,2025-11-28 19:15:00+08:00,0.0,1.0,-0.001971830985915501,2025 +183727,183775,-1,130.74,130.57,0.0005002906532049555,time,48,0.0013002906532049556,0.012339264382811589,False,SOL,2025-12-11 10:45:00+08:00,1.0,0.0,-0.001062296077092456,2025 +184354,184358,-1,129.01,125.01411336751298,0.03017346432437032,tp,4,0.030973464324370318,0.015486732162185159,False,SOL,2025-12-17 23:30:00+08:00,0.0,1.0,0.005809566923192861,2025 +184464,184471,-1,120.96,117.05782548189684,0.03146004065892156,tp,7,0.03226004065892156,0.016130020329460766,False,SOL,2025-12-19 03:00:00+08:00,1.0,0.0,0.0047490379104233055,2025 +184952,184974,-1,124.21,121.93740866872876,0.017496363668555105,tp,22,0.018296363668555103,0.009148181834277572,False,SOL,2025-12-24 05:00:00+08:00,1.0,1.0,0.003913738019169401,2025 +184972,184988,-1,122.56,120.99931559207093,0.011934043798376906,tp,16,0.012734043798376907,0.00636702189918843,False,SOL,2025-12-24 10:00:00+08:00,1.0,0.0,-0.0012947078815342013,2025 +185647,185650,1,125.95,125.26792566010916,-0.006215437394925337,sl,3,-0.005415437394925337,0.005415437394925344,False,SOL,2025-12-31 10:45:00+08:00,1.0,0.0,0.0018402944471114558,2025 +185826,185828,1,127.06,126.52576747118292,-0.005004568934496187,sl,2,-0.004204568934496187,0.004204568934496239,False,SOL,2026-01-02 07:30:00+08:00,1.0,1.0,0.0007139457401237776,2026 +188297,188303,-1,124.42,125.5769899515917,-0.01009906728493568,sl,6,-0.00929906728493568,0.009299067284935727,False,SOL,2026-01-28 01:15:00+08:00,0.0,1.0,0.0022123893805309825,2026 +188915,188924,1,104.1,103.09648270332127,-0.01043993560690416,sl,9,-0.00963993560690416,0.009639935606904187,False,SOL,2026-02-03 11:45:00+08:00,0.0,0.0,-0.005454368364663507,2026 +189145,189148,-1,88.4,90.026559126961,-0.019199990123993194,sl,3,-0.018399990123993196,0.018399990123993234,False,SOL,2026-02-05 21:15:00+08:00,1.0,1.0,-0.0015569395017793657,2026 +189819,189821,1,81.9,81.18708572873759,-0.009504691956806106,sl,2,-0.008704691956806105,0.00870469195680605,False,SOL,2026-02-12 21:45:00+08:00,1.0,1.0,0.003206709422792367,2026 +191249,191254,-1,84.42,82.87722151413323,0.017475035369187118,tp,5,0.018275035369187117,0.00913751768459355,False,SOL,2026-02-27 19:15:00+08:00,1.0,0.0,0.002818886539816712,2026 +191484,191486,1,83.38,82.44866553165969,-0.01196975855529276,sl,2,-0.01116975855529276,0.011169758555292768,False,SOL,2026-03-02 06:00:00+08:00,0.0,0.0,0.0019459985405010532,2026 +191554,191562,1,88.73,87.40467884224768,-0.0157365621295202,sl,8,-0.0149365621295202,0.01493656212952023,False,SOL,2026-03-02 23:30:00+08:00,0.0,0.0,0.01798435127875752,2026 +193568,193570,1,91.68,90.47419416913385,-0.013952332361105522,sl,2,-0.013152332361105521,0.013152332361105534,False,SOL,2026-03-23 23:00:00+08:00,1.0,1.0,0.0021003758567323893,2026 +195038,195040,1,84.0,85.93148380955554,0.022193854875661244,tp,2,0.022993854875661243,0.011496927437830623,False,SOL,2026-04-08 06:30:00+08:00,1.0,1.0,0.003013863773357444,2026 +195869,195871,-1,84.35,85.04561967180088,-0.009046824799062053,sl,2,-0.008246824799062052,0.008246824799062082,False,SOL,2026-04-16 22:15:00+08:00,0.0,0.0,0.007597895967270503,2026 +196373,196397,1,85.43,87.02247028439646,0.017840644789844963,tp,24,0.01864064478984496,0.00932032239492246,False,SOL,2026-04-22 04:15:00+08:00,0.0,1.0,0.007921494443130785,2026 +199474,199476,-1,85.63,86.04649015764232,-0.005663834609860202,sl,2,-0.0048638346098602014,0.004863834609860145,False,SOL,2026-05-24 11:30:00+08:00,0.0,0.0,-0.0005804504295332848,2026 +200544,200553,-1,69.96,67.96752294060155,0.027680232409926234,tp,9,0.028480232409926233,0.014240116204963071,False,SOL,2026-06-04 15:00:00+08:00,0.0,1.0,0.0067758328627894404,2026 +200939,200960,1,66.32,67.48707056039154,0.016797565747761624,tp,21,0.017597565747761622,0.00879878287388084,False,SOL,2026-06-08 17:45:00+08:00,1.0,0.0,0.0022872827081428133,2026 +201541,201547,1,67.65,67.30664639801576,-0.005875441271016228,sl,6,-0.005075441271016228,0.00507544127101615,False,SOL,2026-06-15 00:15:00+08:00,0.0,0.0,0.00014878738283001215,2026 +202140,202154,1,73.35,72.84968542400783,-0.007620921281420092,sl,14,-0.006820921281420092,0.006820921281420031,False,SOL,2026-06-21 06:00:00+08:00,1.0,0.0,0.0,2026 +204165,204170,-1,76.31,76.73188107400745,-0.006328516236501698,sl,5,-0.005528516236501697,0.00552851623650171,False,SOL,2026-07-12 08:15:00+08:00,1.0,1.0,0.0006503642039541774,2026 +204267,204315,-1,76.28,75.37,0.011129732564236976,time,48,0.011929732564236977,0.008472508147320335,False,SOL,2026-07-13 09:45:00+08:00,0.0,0.0,-0.0005148005148004124,2026 +205367,205371,-1,74.81,74.13773389574973,0.008186313383909495,tp,4,0.008986313383909495,0.0044931566919547816,False,SOL,2026-07-24 20:45:00+08:00,1.0,1.0,-0.0013267878466232494,2026 +205670,205693,1,75.79,75.2052615487194,-0.008515245431859086,sl,23,-0.007715245431859087,0.0077152454318591334,False,SOL,2026-07-28 00:30:00+08:00,0.0,1.0,-0.002260638297872363,2026 +205716,205760,-1,73.14,73.57900772858036,-0.006802293253764892,sl,44,-0.006002293253764892,0.006002293253764905,False,SOL,2026-07-28 12:00:00+08:00,1.0,1.0,0.0006802721088434988,2026 +206771,206776,1,74.81,74.54287010869565,-0.004370777854623046,sl,5,-0.0035707778546230457,0.003570777854622987,False,SOL,2026-08-08 11:45:00+08:00,0.0,0.0,0.0009451795841208909,2026 +207165,207172,-1,76.15,76.37601560044723,-0.003768031522616237,sl,7,-0.002968031522616237,0.0029680315226162293,False,SOL,2026-08-12 14:15:00+08:00,1.0,0.0,-0.0007842112142202073,2026 +207529,207533,-1,75.32,75.46147566195486,-0.0026783279601018477,sl,4,-0.0018783279601018478,0.0018783279601018502,False,SOL,2026-08-16 09:15:00+08:00,1.0,0.0,0.00013217023526289858,2026 diff --git a/research/step40_filter_ablation.py b/research/step40_filter_ablation.py new file mode 100644 index 0000000..357ed34 --- /dev/null +++ b/research/step40_filter_ablation.py @@ -0,0 +1,97 @@ +"""一次性诊断:未过滤的原始第四类信号本身能不能当开单信号。 + +口径严格按 HANDOFF §1.3:SL/TP/超时 = 1.5/3.0/48 ATR,次根开盘入场,5bp 成本。 +不调任何参数,只是把同一批信号按两个过滤标志切开对比。 +""" +from __future__ import annotations + +import sys +import warnings +from pathlib import Path + +warnings.filterwarnings("ignore") +HERE = Path(__file__).resolve().parent +sys.path.insert(0, str(HERE)) +sys.path.insert(0, str(HERE.parent)) + +import numpy as np # noqa: E402 +import pandas as pd # noqa: E402 + +from chanlun import TF_DF # noqa: E402 +from chanlun.analysis.fast_bsp import ( # noqa: E402 + add_zone_ladder, + attach_htf_agree, + attach_zone_ladder, + find_fast_bsp3, + htf_fx_timeline, + zones_from_zs_list, +) +from lib.breakout import run_trades, summarize_trades # noqa: E402 +from lib.data import fetch_ohlcv # noqa: E402 + +SL, TP, MAXB, FEE = 1.5, 3.0, 48, 0.0005 +BEST = {"15m": "1h", "30m": "2h"} +SYMBOLS = ["BTC", "ETH", "SOL"] + + +def collect(sym: str, ltf: str): + df = fetch_ohlcv(f"{sym}/USDT:USDT", ltf, 10**9) + chan = TF_DF(df, 1, ltf) + cdf = chan.dataframe + zones = add_zone_ladder(zones_from_zs_list(chan.bi_zs_list, cdf)) + if zones.empty: + return None + sig = find_fast_bsp3(cdf, zones) + if sig.empty: + return None + sig = attach_zone_ladder(sig, zones) + + df_h = fetch_ohlcv(f"{sym}/USDT:USDT", BEST[ltf], 10**9) + chan_h = TF_DF(df_h, 1, BEST[ltf]) + sig = attach_htf_agree(sig, cdf, htf_fx_timeline(chan_h)) + return cdf, sig + + +def trades(cdf, sig, label, sym, ltf): + if sig.empty: + return pd.DataFrame() + entries = list(zip(sig["entry_idx"].astype(int), sig["direction"].astype(int))) + tr = run_trades(cdf, entries, SL, TP, MAXB, fee=FEE, entry_delay=1) + if not tr.empty: + tr["组"] = label + tr["symbol"], tr["ltf"] = sym, ltf + return tr + + +def main(): + for ltf in ("30m", "15m"): + buckets: dict[str, list] = {} + for sym in SYMBOLS: + got = collect(sym, ltf) + if got is None: + continue + cdf, sig = got + agree = sig["htf_agree"] == 1 + ladder = sig["ladder_ok"].fillna(False).astype(bool) + groups = { + "全部(图上所有 B4/S4)": sig, + "仅大级别同向": sig[agree], + "仅中枢阶梯": sig[ladder], + "同向+阶梯(实盘口径)": sig[agree & ladder], + "两个都不满足(对照)": sig[~agree & ~ladder], + "大级别反向(对照)": sig[sig["htf_agree"] == 0], + } + for k, s in groups.items(): + tr = trades(cdf, s, k, sym, ltf) + if not tr.empty: + buckets.setdefault(k, []).append(tr) + + rows = [summarize_trades(pd.concat(v, ignore_index=True), k) + for k, v in buckets.items()] + print(f"\n########## {ltf} / 大级别 {BEST[ltf]} BTC+ETH+SOL 全量,已扣 5bp ##########") + print(pd.DataFrame(rows).to_string(index=False)) + return 0 + + +if __name__ == "__main__": + raise SystemExit(main()) diff --git a/research/step41_exit_tp.py b/research/step41_exit_tp.py new file mode 100644 index 0000000..b9a865b --- /dev/null +++ b/research/step41_exit_tp.py @@ -0,0 +1,234 @@ +"""Step 41:出场口径全扫(5m/15m/30m)——SL × TP × MAX_BARS × 分批 + 真实费率模型。 + +起因有三,都来自用户: + 1. 「止盈没做好」→ 量 MFE,确认 TP=3.0 截在中位数以下 + 2. 「可以测 1pt/1.5pt/2pt 损啊」→ SL 一起扫,不再钉死 1.5 + 3. 「只有开仓才是 taker,止盈止损都是 maker 才对」→ 费率按出场原因分别计 + +第 3 条只对了一半:止盈挂限价确实是 maker,但止损是 stop-market, +成交时仍是 taker(做成 stop-limit 会有急跌不成交的风险,损失远大于省下的费)。 +所以模型是「入场 taker + 止盈 maker + 止损/超时 taker」,见 lib/exit_model.py。 + +信号口径与 step37 完全一致(pure 笔中枢 + 大级别分型同向 + 中枢阶梯),只换出场。 +样本内 BTC/ETH/SOL,样本外是 step37 那 8 个没参与过调参的币。 +1m 另见 step42——它的右尾量纲和这三个级别不同,不能混用参数。 +""" +from __future__ import annotations + +import argparse +import os +import sys +import warnings +from concurrent.futures import ProcessPoolExecutor, as_completed +from pathlib import Path + +import numpy as np +import pandas as pd + +warnings.filterwarnings("ignore") +for v in ("OMP_NUM_THREADS", "OPENBLAS_NUM_THREADS", "MKL_NUM_THREADS"): + os.environ.setdefault(v, "1") + +HERE = Path(__file__).resolve().parent +sys.path.insert(0, str(HERE)) +sys.path.insert(0, str(HERE.parent)) +pd.set_option("display.width", 400) + +SLS = [1.0, 1.5, 2.0] +TPS = [2.0, 3.0, 4.0, 5.0, 6.0, 8.0] +MAXBS = [48, 96] +RUNNERS = [5.0, 6.0, 8.0, None] +SCALE_AT = 3.0 +# 减仓后剩余半仓的止损位(开仓价下方几个 ATR)。0 = 保本损,1.5 = 与原止损同位 +RUNNER_STOPS = [0.0, 0.5, 1.0, 1.5, 2.0] +PAIRS = [("5m", "30m"), ("15m", "1h"), ("30m", "2h")] +IS_SYMS = ["BTC", "ETH", "SOL"] +OOS_SYMS = ["BNB", "XRP", "DOGE", "ADA", "AVAX", "LINK", "LTC", "TRX"] + + +def cfgs() -> list[tuple[str, str, float]]: + """所有配置的 (列名, 可读标签, 初始 SL)。""" + from lib.exit_model import cfg_name + out = [] + for sl in SLS: + for b in MAXBS: + for t in TPS: + out.append((cfg_name(sl, t, b), f"SL{sl:g} 整仓TP{t:g} {b}根", sl)) + for rn in RUNNERS: + tgt = f"{rn:g}ATR" if rn else "不设目标" + for k in RUNNER_STOPS: + kk = "保本" if k == 0 else f"留损{k:g}" + out.append((cfg_name(sl, rn, b, k), + f"SL{sl:g} 分批→{tgt} {kk} {b}根", sl)) + return out + + +def run_one(task: tuple) -> dict | None: + import warnings as _w + _w.filterwarnings("ignore") + sys.path.insert(0, str(HERE)) + sys.path.insert(0, str(HERE.parent)) + + from chanlun import TF_DF + from lib.data import fetch_ohlcv + from lib.exit_model import walk_exits + from lib.fast_bsp3 import find_fast_bsp3 + from lib.fx_signal import extract_fx_signals, signals_to_frame + from lib.nested_bsp import attach_htf_context, htf_fx_timeline + from lib.nested_level import build_htf_zones + + sym, ltf, htf, group = task + pair = f"{sym}/USDT:USDT" + try: + df_l = fetch_ohlcv(pair, ltf, 10 ** 9) + if df_l is None or len(df_l) < 3000: + return {"task": f"{sym} {ltf}", "error": "小级别数据不足"} + chan_l = TF_DF(df_l, 1, ltf) + cdf = chan_l.dataframe + zones = build_htf_zones(cdf, ltf, chan=chan_l).reset_index(drop=True) + if zones.empty: + return {"task": f"{sym} {ltf}", "error": "无中枢"} + z = zones.copy() + pg, pdn = z["zg"].shift(), z["zd"].shift() + z["z_above"], z["z_below"] = z["zd"] > pg, z["zg"] < pdn + z["zone_i"] = np.arange(len(z)) + + df_h = fetch_ohlcv(pair, htf, 10 ** 9) + if df_h is None or len(df_h) < 300: + return {"task": f"{sym} {ltf}", "error": "大级别数据不足"} + chan_h = TF_DF(df_h, 1, htf) + tl = htf_fx_timeline( + signals_to_frame(extract_fx_signals(chan_h, chan_h.dataframe)), chan_h.dataframe) + + sig = find_fast_bsp3(cdf, zones) + if sig.empty: + return {"task": f"{sym} {ltf}", "error": "无信号"} + sig = sig.merge(z[["zone_i", "z_above", "z_below"]], on="zone_i", how="left") + sig = attach_htf_context(sig, cdf, tl, "h1") + push = np.where(sig["direction"] == 1, sig["z_above"], sig["z_below"]) + keep = (sig["h1_agree"] == 1) & pd.Series(push, index=sig.index).fillna(False).astype(bool) + sig = sig[keep] + if len(sig) < 25: + return {"task": f"{sym} {ltf}", "error": f"过滤后仅 {len(sig)} 笔"} + + r = walk_exits(cdf, sig, SLS, TPS, MAXBS, SCALE_AT, RUNNERS, RUNNER_STOPS) + if r.empty: + return {"task": f"{sym} {ltf}", "error": "无成交"} + r["symbol"], r["ltf"], r["group"] = sym, ltf, group + r["date"] = cdf["date"].to_numpy()[r["sig_idx"].to_numpy()] + return {"task": f"{sym} {ltf}", "rows": r} + except Exception as e: + return {"task": f"{sym} {ltf}", "error": repr(e)[:200]} + + +def main() -> None: + ap = argparse.ArgumentParser() + ap.add_argument("--workers", type=int, default=6) + ap.add_argument("--reuse", action="store_true") + args = ap.parse_args() + + from lib.exit_model import all_taker_cost, cfg_name, cost_of, flat_cost, rstat, stat + + cache = HERE / "out" / "step41_exit_tp.feather" + if args.reuse and cache.exists(): + allr = pd.read_feather(cache) + print(f"[复用] {len(allr)} 笔\n") + else: + tasks = ([(s, l, h, "样本内") for s in IS_SYMS for l, h in PAIRS] + + [(s, l, h, "样本外") for s in OOS_SYMS for l, h in PAIRS]) + print(f"[出场口径全扫] {len(tasks)} 个任务,{len(cfgs())} 个配置\n", flush=True) + res = [] + with ProcessPoolExecutor(max_workers=args.workers) as ex: + futs = {ex.submit(run_one, t): t for t in tasks} + for i, f in enumerate(as_completed(futs), 1): + r = f.result() + if not r or "error" in r: + print(f" [{i}/{len(tasks)}] 跳过 {(r or {}).get('task', '')} " + f"{(r or {}).get('error', '')}", flush=True) + continue + res.append(r["rows"]) + print(f" [{i}/{len(tasks)}] {r['task']} n={len(r['rows'])}", flush=True) + if not res: + return + allr = pd.concat(res, ignore_index=True) + allr.to_feather(cache) + + oos = allr[allr["group"] == "样本外"] + ins = allr[allr["group"] == "样本内"] + base = f"s1.5_tp{SCALE_AT:g}_m48" + + print("=" * 165) + print("########## 1. 费率模型的影响(样本外,同一配置 SL1.5/TP3/48根)##########") + print(" 旧:进出都当 taker,双边 6bp + 双边滑点") + print(" 新:入场 taker + 止盈 maker + 止损/超时 taker,滑点只加在 taker 腿上") + rows = [stat(oos, base, "旧 全taker", all_taker_cost), + stat(oos, base, "新 混合费率", cost_of), + stat(oos, base, "研究口径 固定5bp", flat_cost)] + print(pd.DataFrame([r for r in rows if r]).to_string(index=False)) + + print("\n########## 2. 减仓后剩余半仓的止损位(样本外,48根)##########") + print(" 0 = 保本损;1.5 = 与原止损同位(不动);更大 = 减仓后主动放宽") + for sl in SLS: + rows = [] + for rn in (6.0, 8.0): + for k in RUNNER_STOPS: + kk = "保本" if k == 0 else f"留损{k:g}ATR" + rows.append(stat(oos, cfg_name(sl, rn, 48, k), + f"SL{sl:g} 分批→{rn:g}ATR {kk}")) + rows = [r for r in rows if r] + if rows: + print(pd.DataFrame(rows).to_string(index=False)) + print() + + print("########## 3. 初始 SL 扫描:R 倍数口径(唯一可比)##########") + print(" SL 越宽每笔风险越大、固定风险下仓位越小,直接比百分比会把仓位差异算成策略优势") + for name, frame in (("样本外", oos), ("样本内", ins)): + rows = [] + for sl in SLS: + rows.append(rstat(frame, cfg_name(sl, 3.0, 48), f"SL{sl:g} 整仓TP3/48", sl)) + rows.append(rstat(frame, cfg_name(sl, 8.0, 48, sl), + f"SL{sl:g} 分批→8ATR 留损{sl:g} /48", sl)) + print(f" 【{name}】") + print(pd.DataFrame(rows).to_string(index=False)) + print() + + print("########## 4. 全网格排名(样本外,按剔10%PF)##########") + rank = [r for r in (stat(oos, c, lab) for c, lab, _ in cfgs()) if r] + rk = pd.DataFrame(rank) + rk["_k"] = rk["剔10%PF"].astype(float) + print(rk.sort_values("_k", ascending=False).drop(columns="_k").head(15).to_string(index=False)) + + print("\n########## 5. 现用 vs 最优:样本内外对照 ##########") + best = rk.sort_values("_k", ascending=False).iloc[0]["口径"] + lut = {lab: (c, sl) for c, lab, sl in cfgs()} + best_cfg, best_sl = lut[best] + rows = [] + for name, frame in (("样本内", ins), ("样本外", oos)): + rows.append(stat(frame, base, f"{name} 现用 SL1.5/TP3/48根")) + rows.append(stat(frame, best_cfg, f"{name} 最优 {best}")) + print(pd.DataFrame([r for r in rows if r]).to_string(index=False)) + print("\n 同一对比的 R 倍数口径:") + rows = [] + for name, frame in (("样本内", ins), ("样本外", oos)): + rows.append(rstat(frame, base, f"{name} 现用 SL1.5/TP3/48根", 1.5)) + rows.append(rstat(frame, best_cfg, f"{name} 最优 {best}", best_sl)) + print(pd.DataFrame(rows).to_string(index=False)) + + print(f"\n########## 6. {best} 的逐币与分年稳定性(样本外)##########") + f = oos.assign(year=pd.to_datetime(oos["date"]).dt.year) + for key, name in (("symbol", "币"), ("year", "年")): + rows = [] + for k, g in f.groupby(key): + a, bst = stat(g, base, str(k)), stat(g, best_cfg, str(k)) + if a and bst: + rows.append({name: k, "笔数": a["笔数"], + "现用 净收益": a["净均收益"], "最优 净收益": bst["净均收益"], + "现用 PF": a["PF"], "最优 PF": bst["PF"], + "现用 剔10%": a["剔10%PF"], "最优 剔10%": bst["剔10%PF"], + "现用 余量bp": a["滑点余量bp"], "最优 余量bp": bst["滑点余量bp"]}) + print(pd.DataFrame(rows).to_string(index=False)) + print() + + +if __name__ == "__main__": + main() diff --git a/research/step42_exit_tp_1m.py b/research/step42_exit_tp_1m.py new file mode 100644 index 0000000..4ec4394 --- /dev/null +++ b/research/step42_exit_tp_1m.py @@ -0,0 +1,240 @@ +"""Step 42:1m 单独定出场(SL × TP × MAX_BARS × 分批 + 真实费率模型)。 + +用户指出的问题:`SL1.5/TP3.0/MAXB48` 是在 5m/15m/30m 上定的,1m 不该混用。 +查证成立,而且原因比成本更根本——**1m 以 ATR 计的右尾是其他级别的两倍** +(MFE 中位 5.39 ATR vs 3.94~4.29),因为 1m 的 ATR 量的是分钟级噪声, +信号一旦成立抓到的却是几小时级别的趋势。所以「TP=3 ATR」在两个级别上 +根本不是一回事,这是量纲问题不是调参问题。 + +费率按出场原因分别计(入场 taker / 止盈 maker / 止损超时 taker), +实现在 lib/exit_model.py,与 step41 共用。 + +配对按 §1.5:1m 的大级别是 5m。 +⚠️ 1m 全量 366 万根,单币 TF_DF 约 370s / 峰值 24.5GB,最多开 3 并行。 +""" +from __future__ import annotations + +import argparse +import os +import sys +import warnings +from concurrent.futures import ProcessPoolExecutor, as_completed +from pathlib import Path + +import numpy as np +import pandas as pd + +warnings.filterwarnings("ignore") +for v in ("OMP_NUM_THREADS", "OPENBLAS_NUM_THREADS", "MKL_NUM_THREADS"): + os.environ.setdefault(v, "1") + +HERE = Path(__file__).resolve().parent +sys.path.insert(0, str(HERE)) +sys.path.insert(0, str(HERE.parent)) +pd.set_option("display.width", 400) + +LTF, HTF = "1m", "5m" +SLS = [1.0, 1.5, 2.0] +TPS = [2.0, 3.0, 4.0, 5.0, 6.0, 8.0, 10.0, 12.0] +MAXBS = [48, 96] +RUNNERS = [5.0, 6.0, 8.0, None] +SCALE_AT = 3.0 +# 减仓后剩余半仓的止损位(开仓价下方几个 ATR)。0 = 保本损,等于初始 SL 即不动 +RUNNER_STOPS = [0.0, 0.5, 1.0, 1.5, 2.0] +IS_SYMS = ["BTC", "ETH", "SOL"] +OOS_SYMS = ["BNB", "XRP", "DOGE", "ADA", "AVAX", "LINK", "LTC", "TRX"] + + +def cfgs() -> list[tuple[str, str, float]]: + """所有配置的 (列名, 可读标签, 初始 SL)。""" + from lib.exit_model import cfg_name + out = [] + for sl in SLS: + for b in MAXBS: + for t in TPS: + out.append((cfg_name(sl, t, b), f"SL{sl:g} 整仓TP{t:g} {b}根", sl)) + for rn in RUNNERS: + tgt = f"{rn:g}ATR" if rn else "不设目标" + for k in RUNNER_STOPS: + kk = "保本" if k == 0 else f"留损{k:g}" + out.append((cfg_name(sl, rn, b, k), + f"SL{sl:g} 分批→{tgt} {kk} {b}根", sl)) + return out + + +def run_one(task: tuple) -> dict | None: + import warnings as _w + _w.filterwarnings("ignore") + sys.path.insert(0, str(HERE)) + sys.path.insert(0, str(HERE.parent)) + + from chanlun import TF_DF + from lib.data import fetch_ohlcv + from lib.exit_model import walk_exits + from lib.fast_bsp3 import find_fast_bsp3 + from lib.fx_signal import extract_fx_signals, signals_to_frame + from lib.nested_bsp import attach_htf_context, htf_fx_timeline + from lib.nested_level import build_htf_zones + + sym, group = task + pair = f"{sym}/USDT:USDT" + try: + df_l = fetch_ohlcv(pair, LTF, 10 ** 9) + if df_l is None or len(df_l) < 3000: + return {"task": sym, "error": "1m 数据不足"} + chan_l = TF_DF(df_l, 1, LTF) + cdf = chan_l.dataframe + del df_l + zones = build_htf_zones(cdf, LTF, chan=chan_l).reset_index(drop=True) + if zones.empty: + return {"task": sym, "error": "无中枢"} + z = zones.copy() + pg, pdn = z["zg"].shift(), z["zd"].shift() + z["z_above"], z["z_below"] = z["zd"] > pg, z["zg"] < pdn + z["zone_i"] = np.arange(len(z)) + + df_h = fetch_ohlcv(pair, HTF, 10 ** 9) + chan_h = TF_DF(df_h, 1, HTF) + tl = htf_fx_timeline( + signals_to_frame(extract_fx_signals(chan_h, chan_h.dataframe)), chan_h.dataframe) + del df_h, chan_h + + sig = find_fast_bsp3(cdf, zones) + if sig.empty: + return {"task": sym, "error": "无信号"} + sig = sig.merge(z[["zone_i", "z_above", "z_below"]], on="zone_i", how="left") + sig = attach_htf_context(sig, cdf, tl, "h1") + push = np.where(sig["direction"] == 1, sig["z_above"], sig["z_below"]) + keep = (sig["h1_agree"] == 1) & pd.Series(push, index=sig.index).fillna(False).astype(bool) + sig = sig[keep] + if len(sig) < 25: + return {"task": sym, "error": f"过滤后仅 {len(sig)} 笔"} + + r = walk_exits(cdf, sig, SLS, TPS, MAXBS, SCALE_AT, RUNNERS, RUNNER_STOPS) + r["symbol"], r["group"] = sym, group + r["date"] = cdf["date"].to_numpy()[r["sig_idx"].to_numpy()] + return {"task": sym, "rows": r} + except Exception as e: + return {"task": sym, "error": repr(e)[:200]} + + +def main() -> None: + ap = argparse.ArgumentParser() + ap.add_argument("--symbols", default="all") + ap.add_argument("--workers", type=int, default=3) + ap.add_argument("--reuse", action="store_true") + args = ap.parse_args() + + from lib.exit_model import (all_taker_cost, cfg_name, cost_of, flat_cost, + rstat, stat) + + cache = HERE / "out" / "step42_exit_tp_1m.feather" + if args.reuse and cache.exists(): + allr = pd.read_feather(cache) + print(f"[复用] {len(allr)} 笔\n") + else: + if args.symbols == "all": + tasks = [(s, "样本内") for s in IS_SYMS] + [(s, "样本外") for s in OOS_SYMS] + elif args.symbols == "is": + tasks = [(s, "样本内") for s in IS_SYMS] + else: + picked = [s.strip() for s in args.symbols.split(",")] + tasks = [(s, "样本内" if s in IS_SYMS else "样本外") for s in picked] + print(f"[1m 出场全扫] {len(tasks)} 个币 × {len(cfgs())} 个配置," + f"{args.workers} 并行(单币约 6.5 分钟 / 24GB)\n", flush=True) + res = [] + with ProcessPoolExecutor(max_workers=args.workers) as ex: + futs = {ex.submit(run_one, t): t for t in tasks} + for i, f in enumerate(as_completed(futs), 1): + r = f.result() + if not r or "error" in r: + print(f" [{i}/{len(tasks)}] 跳过 {(r or {}).get('task', '')} " + f"{(r or {}).get('error', '')}", flush=True) + continue + res.append(r["rows"]) + print(f" [{i}/{len(tasks)}] {r['task']} n={len(r['rows'])}", flush=True) + if not res: + return + allr = pd.concat(res, ignore_index=True) + allr.to_feather(cache) + + oos = allr[allr["group"] == "样本外"] + ins = allr[allr["group"] == "样本内"] + base = "s1.5_tp3_m48" + + print("=" * 170) + print(f"1m 出场全扫 样本内 {len(ins)} 笔 / 样本外 {len(oos)} 笔") + + print("\n########## 1. 费率模型的影响(样本外,SL1.5/TP3/48根)##########") + gr = oos[f"{base}_g"].to_numpy() + rs, sc = oos[f"{base}_r"].to_numpy(), oos[f"{base}_c"].to_numpy() + for fn, name in ((all_taker_cost, "旧 全taker双边"), + (cost_of, "新 入场taker+止盈maker"), + (flat_cost, "研究口径 固定5bp")): + print(f" {name:26s} 平均成本 {fn(rs, sc).mean() * 10000:5.2f}bp " + f"净均收益 {(gr - fn(rs, sc)).mean() * 100:+.3f}%") + print(f" 止盈成交占比 {(rs == 0).mean() * 100:.0f}%(只有这部分是 maker)") + + print("\n########## 2. 全网格排名(样本外,按剔10%PF)##########") + rank = [r for r in (stat(oos, c, lab) for c, lab, _ in cfgs()) if r] + rk = pd.DataFrame(rank) + rk["_k"] = rk["剔10%PF"].astype(float) + print(rk.sort_values("_k", ascending=False).drop(columns="_k").head(15).to_string(index=False)) + + print("\n########## 3. 减仓后剩余半仓的止损位(样本外,分批→8ATR,48根)##########") + print(" 0 = 保本损;等于初始 SL 即不动;更大 = 减仓后主动放宽") + for sl in SLS: + rows = [] + for k in RUNNER_STOPS: + kk = "保本损" if k == 0 else f"留损{k:g}ATR" + rows.append(stat(oos, cfg_name(sl, 8.0, 48, k), f"初始SL{sl:g} → {kk}")) + rows = [r for r in rows if r] + if rows: + print(pd.DataFrame(rows).to_string(index=False)) + print() + + print("########## 4. 初始 SL:R 倍数口径(唯一可比)##########") + for name, frame in (("样本外", oos), ("样本内", ins)): + rows = [] + for sl in SLS: + rows.append(rstat(frame, cfg_name(sl, 3.0, 48), f"SL{sl:g} 整仓TP3/48", sl)) + rows.append(rstat(frame, cfg_name(sl, 8.0, 48, sl), + f"SL{sl:g} 分批→8ATR 留损{sl:g}/48", sl)) + print(f" 【{name}】") + print(pd.DataFrame(rows).to_string(index=False)) + print() + + print("########## 5. 现用 vs 最优:样本内外对照 ##########") + best_lab = rk.sort_values("_k", ascending=False).iloc[0]["口径"] + lut = {lab: (c, sl) for c, lab, sl in cfgs()} + best_cfg, best_sl = lut[best_lab] + rows = [] + for name, frame in (("样本内", ins), ("样本外", oos)): + rows += [stat(frame, base, f"{name} 现用 SL1.5/TP3/48根"), + stat(frame, best_cfg, f"{name} 最优 {best_lab}")] + print(pd.DataFrame([r for r in rows if r]).to_string(index=False)) + print("\n 同一对比的 R 倍数口径:") + rows = [] + for name, frame in (("样本内", ins), ("样本外", oos)): + rows += [rstat(frame, base, f"{name} 现用 SL1.5/TP3/48根", 1.5), + rstat(frame, best_cfg, f"{name} 最优 {best_lab}", best_sl)] + print(pd.DataFrame(rows).to_string(index=False)) + + print(f"\n########## 6. {best_lab} 的逐币与分年稳定性(样本外)##########") + f = oos.assign(year=pd.to_datetime(oos["date"]).dt.year) + for key, name in (("symbol", "币"), ("year", "年")): + rows = [] + for k, g in f.groupby(key): + a, b = stat(g, base, str(k)), stat(g, best_cfg, str(k)) + if a and b: + rows.append({name: k, "笔数": a["笔数"], + "现用 净收益": a["净均收益"], "最优 净收益": b["净均收益"], + "现用 PF": a["PF"], "最优 PF": b["PF"], + "现用 剔10%": a["剔10%PF"], "最优 剔10%": b["剔10%PF"], + "现用 余量bp": a["滑点余量bp"], "最优 余量bp": b["滑点余量bp"]}) + print(pd.DataFrame(rows).to_string(index=False)) + print() + + +if __name__ == "__main__": + main()