From 1ecd296af314f6774847e5c08d4e88b996de871c Mon Sep 17 00:00:00 2001 From: wiki-agent Date: Sun, 23 Aug 2026 06:58:42 +0000 Subject: [PATCH] Update US stock trading evaluation and add V5 stock strategy Co-Authored-By: Claude Opus 4.6 --- quant/README.md | 1 + .../multi_asset_channel_breakout_v5_stock.py | 144 +++++++ quant/us-stock-trading-evaluation.md | 388 +++++++++++++----- 3 files changed, 433 insertions(+), 100 deletions(-) create mode 100644 quant/multi_asset_channel_breakout_v5_stock.py diff --git a/quant/README.md b/quant/README.md index d94cbc8..0b02834 100644 --- a/quant/README.md +++ b/quant/README.md @@ -8,6 +8,7 @@ quant/ ├── freqtrade-deploy-guide.md ← 部署操作指南 ├── stoploss_leverage_adjustment.md ← 止损杠杆调整文档 ├── us-stock-trading-evaluation.md ← 美股交易方案评估(券商对比+框架+代币化股票) +├── multi_asset_channel_breakout_v5_stock.py ← V5 美股代币化版(OKX spot) │ ├── multi_asset_channel_breakout_v5/ ← 当前线上策略 │ ├── multi_asset_channel_breakout_v5.py (本地副本) diff --git a/quant/multi_asset_channel_breakout_v5_stock.py b/quant/multi_asset_channel_breakout_v5_stock.py new file mode 100644 index 0000000..b3a3db3 --- /dev/null +++ b/quant/multi_asset_channel_breakout_v5_stock.py @@ -0,0 +1,144 @@ +import pandas as pd +import talib.abstract as ta +from functools import reduce +from datetime import datetime +from freqtrade.strategy import (IStrategy, IntParameter, DecimalParameter) +from freqtrade.persistence import Trade + + +class MultiAssetChannelBreakoutV5Stock(IStrategy): + """ + 多股票通道突破策略 V5-Stock(OKX 代币化美股版)。 + + 基于 MultiAssetChannelBreakoutV5 改造,适配 OKX 现货代币化股票: + - spot 模式(1x,无杠杆) + - 增加美股交易时段过滤,排除盘前/盘后/周末的薄流动性噪声 + - 参数面向股票市场特性调整(ADX 阈值降低、滑点容忍放宽) + - stoploss / custom_stoploss 逻辑不变(V5 已是 1x 价格维度,spot 直接适用) + + 前置条件: + - freqtrade spot 模式实例(trading_mode 留空,非 futures) + - pair_whitelist 使用 X 前缀代币化股票(如 XAAPL/USDT) + - 已验证 OKX 账户可交易 X 前缀标的(小额实单测试) + """ + + INTERFACE_VERSION = 3 + + # --- 1) 基础交易设置 --- + minimal_roi = {"0": 100} + stoploss = -0.08 + trailing_stop = False + use_custom_stoploss = True + timeframe = "15m" + can_short = False + startup_candle_count = 600 + + # --- 2) 可优化参数(默认值面向股票市场调整) --- + up_line_span = IntParameter(100, 400, default=340, space="buy", optimize=True) + buy_stop_profit_span = IntParameter(50, 200, default=141, space="buy", optimize=True) + ma_span_long_days = IntParameter(1, 5, default=2, space="buy", optimize=True) + # 降低默认值:股票 ADX 普遍低于加密货币(BTC/ETH 15m 常态 ADX 30-50,股票 15m 常态 15-30) + adx_threshold = IntParameter(15, 40, default=25, space="buy", optimize=True) + up_line_offset = DecimalParameter(-0.2, 0.4, default=-0.18, decimals=2, space="buy", optimize=True) + buy_stop_profit_offset = DecimalParameter(-0.2, 0.2, default=0.19, decimals=2, space="sell", optimize=True) + # 滑点容忍:代币化股票流动性薄,从 V5 的 1% 放宽到 1.5% + max_slippage = DecimalParameter(0.005, 0.03, default=0.015, decimals=3, space="buy", optimize=True) + + def populate_indicators(self, dataframe: pd.DataFrame, metadata: dict) -> pd.DataFrame: + dataframe["n_value"] = ta.ATR(dataframe, timeperiod=10) + + ma_length = self.ma_span_long_days.value * 96 + dataframe["ma_long"] = ta.SMA(dataframe, timeperiod=ma_length) + + base_up_line = dataframe["high"].rolling(window=self.up_line_span.value).max().shift(1) + dataframe["up_line"] = base_up_line + (dataframe["n_value"] * self.up_line_offset.value) + + dataframe["bottom_line"] = dataframe["low"].rolling(window=self.buy_stop_profit_span.value).min().shift(1) + dataframe["adx"] = ta.ADX(dataframe, timeperiod=14) + + # --- 美股交易时段标记 --- + # OKX 代币化股票 24/7 有 K 线,但非美股时段流动性极薄、价格漂移。 + # 只在美股正常交易时段(周一至周五 9:30-16:00 美东)允许入场。 + if "date" in dataframe.columns: + df_date = pd.to_datetime(dataframe["date"], utc=True) + et_time = df_date.dt.tz_convert("US/Eastern") + et_hour = et_time.dt.hour + et_minute = et_time.dt.minute + et_weekday = et_time.dt.weekday # 0=Mon, 6=Sun + + is_market_hours = ( + (et_weekday < 5) + & ( + (et_hour > 9) + | ((et_hour == 9) & (et_minute >= 30)) + ) + & (et_hour < 16) + ) + dataframe["is_market_hours"] = is_market_hours + else: + dataframe["is_market_hours"] = True + + return dataframe + + def populate_entry_trend(self, dataframe: pd.DataFrame, metadata: dict) -> pd.DataFrame: + conditions = [] + conditions.append(dataframe["n_value"].notnull()) + conditions.append(dataframe["up_line"].notnull()) + conditions.append(dataframe["close"] > dataframe["ma_long"]) + conditions.append(dataframe["adx"] > self.adx_threshold.value) + conditions.append(dataframe["close"] > dataframe["up_line"]) + conditions.append(dataframe["is_market_hours"]) + + if conditions: + is_entry = reduce(lambda x, y: x & y, conditions) + dataframe.loc[is_entry, "enter_long"] = 1 + dataframe.loc[is_entry, "enter_tag"] = "trend_breakout" + + return dataframe + + def populate_exit_trend(self, dataframe: pd.DataFrame, metadata: dict) -> pd.DataFrame: + offset = self.buy_stop_profit_offset.value + exit_line = dataframe["bottom_line"] + (dataframe["n_value"] * offset) + + exit_condition = dataframe["close"] < exit_line + dataframe.loc[exit_condition, "exit_long"] = 1 + dataframe.loc[exit_condition, "exit_tag"] = "channel_exit" + return dataframe + + def custom_stoploss(self, pair: str, trade: Trade, current_time: datetime, + current_rate: float, current_profit: float, **kwargs) -> float: + if current_profit > 0.30: + return 0.10 + if current_profit > 0.15: + return 0.10 + if current_profit > 0.05: + breakeven_target = trade.open_rate * 1.005 + return (current_rate - breakeven_target) / current_rate + return 1.0 + + def confirm_trade_entry(self, pair: str, order_type: str, amount: float, rate: float, + time_in_force: str, current_time: datetime, entry_tag: str, + side: str, **kwargs) -> bool: + dataframe, _ = self.dp.get_analyzed_dataframe(pair, self.timeframe) + + if len(dataframe) < 3: + return False + + signal_candle = None + for i in range(-1, -4, -1): + if dataframe["enter_long"].iloc[i] == 1: + signal_candle = dataframe.iloc[i] + break + + if signal_candle is None: + return False + + if rate <= signal_candle["ma_long"]: + return False + if rate <= signal_candle["up_line"]: + return False + + if rate > signal_candle["close"] * (1 + self.max_slippage.value): + return False + + return True diff --git a/quant/us-stock-trading-evaluation.md b/quant/us-stock-trading-evaluation.md index 69f89e5..4de5fa5 100644 --- a/quant/us-stock-trading-evaluation.md +++ b/quant/us-stock-trading-evaluation.md @@ -89,107 +89,125 @@ OKX 有两条代币化美股产品线(来源:`okx.com/help/tokenized-stocks- 名称来源:SEC 官方 `company_tickers.json`(85 只命中),6 只 ETF 因不在 SEC 公司库由已知 ETF 列表补充,6 只偏冷门标的(AUT/CH/LM/RP/TESTA/TZ)SEC 库无、需登录 OKX 核实。 -| 代码 | 公司/ETF 名称 | 类别 | -|------|--------------|------| -| AAOI | Applied Optoelectronics | 股票 | -| AAPL | Apple(苹果) | 股票 | -| ADBE | Adobe | 股票 | -| ALAB | Astera Labs | 股票 | -| AMAT | Applied Materials | 股票 | -| AMD | AMD | 股票 | -| AMZN | Amazon(亚马逊) | 股票 | -| APLD | Applied Digital | 股票 | -| APP | AppLovin | 股票 | -| ARM | Arm Holdings | 股票 | -| ASML | ASML | 股票 | -| ASTS | AST SpaceMobile | 股票 | -| AUT | ⚠️ 待核实(疑 SPAC/测试) | ? | -| AVGO | Broadcom(博通) | 股票 | -| BE | Bloom Energy | 股票 | -| BMNR | Bitmine Immersion Technologies | 股票 | -| BOT | RoboStrategy | 股票 | -| BSP | Bending Spoons | 股票 | -| BX | Blackstone | 股票 | -| CBRS | Cerebras Systems | 股票 | -| CH | ⚠️ 待核实(疑 SPAC/测试) | ? | -| CIEN | Ciena | 股票 | -| COHR | Coherent | 股票 | -| COIN | Coinbase | 股票 | -| CRCL | Circle Internet Group | 股票 | -| CRM | Salesforce | 股票 | -| CRWD | CrowdStrike | 股票 | -| CRWV | CoreWeave | 股票 | -| CSCO | Cisco | 股票 | -| DELL | Dell Technologies | 股票 | -| DKNG | DraftKings | 股票 | -| EWY | iShares MSCI 韩国 ETF | ETF | -| GEV | GE Vernova | 股票 | -| GLW | Corning | 股票 | -| GME | GameStop | 股票 | -| GOOGL | Alphabet / Google(谷歌) | 股票 | -| HIMS | Hims & Hers Health | 股票 | -| HOOD | Robinhood | 股票 | -| HPE | Hewlett Packard Enterprise | 股票 | -| IBM | IBM | 股票 | -| INTC | Intel | 股票 | -| IREN | IREN | 股票 | -| ISRG | Intuitive Surgical | 股票 | -| IWM | iShares Russell 2000 ETF | ETF | -| JNJ | Johnson & Johnson | 股票 | -| KLAC | KLA | 股票 | -| KO | Coca-Cola(可口可乐) | 股票 | -| LITE | Lumentum | 股票 | -| LLY | Eli Lilly | 股票 | -| LM | ⚠️ 待核实(疑 SPAC/测试) | ? | -| LRCX | Lam Research | 股票 | -| META | Meta Platforms | 股票 | -| MRVL | Marvell Technology | 股票 | -| MSFT | Microsoft(微软) | 股票 | -| MSTR | Strategy(原 MicroStrategy) | 股票 | -| MU | Micron | 股票 | -| NBIS | Nebius Group | 股票 | -| NFLX | Netflix | 股票 | -| NOW | ServiceNow | 股票 | -| NVDA | NVIDIA(英伟达) | 股票 | -| OKTA | Okta | 股票 | -| ON | ON Semiconductor | 股票 | -| ONDS | Ondas | 股票 | -| ORCL | Oracle | 股票 | -| PL | Planet Labs | 股票 | -| PLTR | Palantir | 股票 | -| QCOM | Qualcomm | 股票 | -| QQQ | Invesco QQQ Trust(纳指100 ETF) | ETF | -| RDDT | Reddit | 股票 | -| RIVN | Rivian | 股票 | -| RKLB | Rocket Lab | 股票 | -| ROK | Rockwell Automation | 股票 | -| RP | ⚠️ 待核实(疑 SPAC/测试) | ? | -| SHAZ | SharonAI Holdings | 股票 | -| SKHY | SK hynix | 股票 | -| SMCI | Super Micro Computer | 股票 | -| SMH | VanEck Semiconductor ETF | ETF | -| SNDK | SanDisk | 股票 | -| SNOW | Snowflake | 股票 | -| SOXL | Direxion 半导体 3x 多 ETF | ETF | -| SPCX | SpaceX(Space Exploration Technologies) | 股票 | -| SPY | SPDR S&P 500 ETF | ETF | -| STRC | Strategy | 股票 | -| TER | Teradyne | 股票 | -| TESTA | ⚠️ 待核实(疑 SPAC/测试) | ? | -| TQQQ | ProShares QQQ 3x 多 ETF | ETF | -| TSLA | Tesla(特斯拉) | 股票 | -| TSM | TSMC(台积电) | 股票 | -| TTWO | Take-Two Interactive | 股票 | -| TWLO | Twilio | 股票 | -| TZ | ⚠️ 待核实(疑 SPAC/测试) | ? | -| UNH | UnitedHealth Group | 股票 | -| USAR | USA Rare Earth | 股票 | -| VRT | Vertiv | 股票 | -| WDC | Western Digital | 股票 | -| XLE | Energy Select Sector SPDR ETF | ETF | -| ZM | Zoom Communications | 股票 | +| 代码 | 公司/ETF 名称 | 板块 | 业务/产品简述 | +|------|--------------|------|-------------| +| AAOI | Applied Optoelectronics | 半导体 | 光通信器件制造商,产光收发器用于数据中心和电信网络 | +| ALAB | Astera Labs | 半导体 | 数据中心连接芯片(PCIe 重定时器/交换芯片),AI 基建受益 | +| AMD | AMD | 半导体 | CPU/GPU 芯片设计,Ryzen 系列 CPU + Instinct 系列 AI GPU,竞对 Intel/NVIDIA | +| AMAT | Applied Materials | 半导体 | 半导体制造设备龙头,产刻蚀/沉积/离子注入机台 | +| ARM | Arm Holdings | 半导体 | 芯片 IP 授权,移动端统治性架构(几乎所有手机芯片基于 Arm) | +| ASML | ASML | 半导体 | EUV 光刻机全球唯一供应商,芯片制造核心设备 | +| AVGO | Broadcom(博通) | 半导体 | 网络/无线/宽带芯片 + 企业软件(收购 VMware),AI 网络交换芯片 | +| CIEN | Ciena | 半导体 | 光纤网络设备(传输平台/交换),通信运营商供应商 | +| COHR | Coherent | 半导体 | 激光器/光学器件,用于半导体制造/工业加工/医疗 | +| INTC | Intel | 半导体 | x86 CPU 芯片龙头 + 晶圆代工(IDM 2.0)+ FPGA(Altera) | +| KLAC | KLA | 半导体 | 半导体检测/量测设备(良率控制),晶圆缺陷检测 | +| LITE | Lumentum | 半导体 | 光通信器件(光收发器/激光器),数通+3D 传感 | +| LRCX | Lam Research | 半导体 | 半导体刻蚀/沉积设备,晶圆制造前道设备 | +| MRVL | Marvell Technology | 半导体 | 数据中心芯片(存储/网络/定制 ASIC),AI 定制芯片 | +| MU | Micron | 半导体 | 存储/内存芯片(DRAM/NAND),数据中心/手机/汽车内存 | +| ON | ON Semiconductor | 半导体 | 汽车/工业功率半导体(SiC 碳化硅/IGBT) | +| QCOM | Qualcomm | 半导体 | 移动基带/射频芯片(骁龙),手机 SoC + 汽车芯片 | +| SKHY | SK hynix | 半导体 | 韩国存储芯片巨头(DRAM/NAND),HBM 高带宽内存(AI GPU 配套) | +| SNDK | SanDisk | 半导体 | 闪存(NAND)存储产品(SSD/U盘/存储卡),西部数据子公司 | +| TER | Teradyne | 半导体 | 半导体测试设备 + 工业协作机器人(MiR/Otto) | +| TSM | TSMC(台积电) | 半导体 | 全球最大芯片代工厂,为 Apple/NVIDIA/AMD 代工 | +| WDC | Western Digital | 半导体 | 硬盘(HDD)+ 闪存(NAND/SanDisk)存储产品 | +| APLD | Applied Digital | AI | 数据中心运营,提供 HPC/AI 算力托管 + 比特币挖矿托管 | +| CBRS | Cerebras Systems | AI | 晶圆级大芯片(WSE)AI 训练加速器,对抗 GPU 集群方案 | +| CRWV | CoreWeave | AI | GPU 云算力提供商,专为 AI 训练/推理提供 NVIDIA 集群托管 | +| IREN | IREN | AI | 比特币挖矿 + AI 算力托管(前 Iris Energy) | +| NBIS | Nebius Group | AI | AI 云算力平台(前 Yandex 拆分),GPU 云 + 自研 AI infra | +| NVDA | NVIDIA(英伟达) | AI | GPU/AI 算力芯片龙头(H100/Blackwell),CUDA 生态 + 网络(Mellanox) | +| PLTR | Palantir | AI | 政府和企业大数据分析平台(Gotham/Foundry),AI 决策 | +| SHAZ | SharonAI Holdings | AI | AI 数据中心/高性能计算基础设施 | +| SMCI | Super Micro Computer | AI | AI 服务器整机厂商,组装 NVIDIA GPU 服务器 + 液冷方案 | +| VRT | Vertiv | AI | 数据中心电源/温控/管理(UPS/精密空调/液冷),AI 基建配套 | +| AAPL | Apple(苹果) | 科技 | iPhone/Mac/iPad 消费电子 + App Store/iCloud/Apple Pay 服务生态 | +| ADBE | Adobe | 科技 | Creative Cloud 创意软件(Photoshop/Premiere/Acrobat PDF),数字营销 SaaS | +| AMZN | Amazon(亚马逊) | 科技 | 全球电商 + AWS 云服务 + Prime 会员生态 + 智能物流/Alexa | +| APP | AppLovin | 科技 | 移动广告技术平台 + 休闲游戏发行(Lion Studios) | +| BSP | Bending Spoons | 科技 | 欧洲移动 App 开发商,旗下有 Splice/Remini 等影像编辑 App | +| CRM | Salesforce | 科技 | CRM 客户关系管理 SaaS 龙头 + Slack/Tableau/MuleSoft | +| CRWD | CrowdStrike | 科技 | 端点安全(EDR/XDR),AI 驱动威胁检测云平台 | +| CSCO | Cisco | 科技 | 网络设备(路由器/交换机)+ 企业网络/安全/Webex 协作 | +| DELL | Dell Technologies | 科技 | PC + 服务器/存储(PowerEdge/PowerStore),企业 IT 基础设施 | +| GOOGL | Alphabet / Google(谷歌) | 科技 | 搜索引擎 + Android + YouTube + Google Cloud + Waymo 自动驾驶 | +| HPE | Hewlett Packard Enterprise | 科技 | 企业服务器/存储/网络/HPC + 混合云(GreenLake) | +| IBM | IBM | 科技 | 企业 IT/咨询 + 混合云(Red Hat)+ AI(watsonx)+ 大型机 | +| META | Meta Platforms | 科技 | Facebook/Instagram/WhatsApp + VR(Quest)+ 开源大模型 Llama | +| MSFT | Microsoft(微软) | 科技 | Windows/Office + Azure 云 + LinkedIn/GitHub + AI(Copilot/OpenAI) | +| NFLX | Netflix | 科技 | 全球流媒体平台 + 原创内容制作 + 游戏 | +| NOW | ServiceNow | 科技 | 企业 IT 工作流自动化 SaaS(ITSM/HR/客户服务/安全) | +| OKTA | Okta | 科技 | 身份与访问管理(IAM)SaaS,企业单点登录/MFA | +| ORCL | Oracle | 科技 | 数据库软件 + 企业云(OCI),SaaS(ERP/HCM)+ MySQL/Java | +| RDDT | Reddit | 科技 | 全球最大社区论坛平台,subreddit 分区讨论 | +| SNOW | Snowflake | 科技 | 数据仓库/数据云平台,跨组织数据共享 + AI(Cortex) | +| TWLO | Twilio | 科技 | 通信 API(CPaaS),短信/语音/WhatsApp 企业集成 | +| ZM | Zoom Communications | 科技 | 视频会议 + AI 协作助手(Zoom AI Companion) | +| BOT | RoboStrategy | 金融 | 量化交易/机器人投顾策略服务 | +| BX | Blackstone | 金融 | 全球最大另类资产管理(私募股权/房地产/信贷) | +| COIN | Coinbase | 金融 | 美国最大合规加密货币交易所 + 托管/支付服务 | +| CRCL | Circle Internet Group | 金融 | USDC 稳定币发行方 + 跨境支付/数字资产基础设施 | +| HOOD | Robinhood | 金融 | 零佣金券商 App,面向散户的股票/期权/加密交易 | +| MSTR | Strategy(原 MicroStrategy) | 金融 | 商业智能软件公司,以大量持仓 BTC 为核心策略 | +| STRC | Strategy | 金融 | 同 MSTR(MicroStrategy 更名),OKX 重复上架两个代码 | +| HIMS | Hims & Hers Health | 医疗 | 远程医疗平台 + 自有品牌健康产品(脱发/性健康/皮肤护理) | +| ISRG | Intuitive Surgical | 医疗 | 手术机器人(达芬奇系统),微创机器人辅助手术 | +| JNJ | Johnson & Johnson | 医疗 | 医药/医疗器械/消费品(Stelara/邦迪/Listerine) | +| LLY | Eli Lilly | 医疗 | 制药巨头,明星减重药 GLP-1(Mounjaro/Zepbound)+ 糖尿病 | +| UNH | UnitedHealth Group | 医疗 | 医疗保险(UnitedHealthcare)+ 医疗服务(OptimumRx/Optum) | +| DKNG | DraftKings | 消费 | 在线体育博彩 + iGaming(DFS/赌场游戏)平台 | +| GME | GameStop | 消费 | 游戏零售连锁店 + 二手游戏交易,meme 股鼻祖 | +| KO | Coca-Cola(可口可乐) | 消费 | 全球饮料品牌(可口可乐/雪碧/芬达/美汁源) | +| TTWO | Take-Two Interactive | 消费 | 游戏发行(GTA/Red Dead/NBA 2K),收购 Zynga | +| RIVN | Rivian | 汽车 | 电动车制造商(R1T 皮卡/R1S SUV/亚马逊送货 van) | +| TSLA | Tesla(特斯拉) | 汽车 | 电动车 + 自动驾驶(FSD)+ 储能(Powerwall/Megapack)+ 人形机器人 | +| BE | Bloom Energy | 能源 | 固体氧化物燃料电池(SOFC),分布式清洁发电 | +| GEV | GE Vernova | 能源 | GE 能源业务拆分,产燃气轮机/风电/电网设备 | +| ASTS | AST SpaceMobile | 航天 | 卫星直连手机通信,建低轨卫星群消除地面信号盲区 | +| ONDS | Ondas | 航天 | 无人机(American Robotics/Ondas One)+ 铁路无线通信 | +| PL | Planet Labs | 航天 | 卫星地球成像,每天扫描全球地表(农业/国防/气候) | +| RKLB | Rocket Lab | 航天 | 小型火箭发射服务(Electron)+ 航天器组件(Photon) | +| SPCX | SpaceX(Space Exploration Technologies) | 航天 | 猎鹰/星舰火箭发射 + 星链(Starlink)卫星互联网 | +| BMNR | Bitmine Immersion Technologies | 工业 | 比特币挖矿机浸没液冷散热方案 | +| ROK | Rockwell Automation | 工业 | 工业自动化(PLC/传感器/工业软件) | +| GLW | Corning | 材料 | 特种玻璃/光纤材料(Gorilla 玻璃/显示基板/光缆) | +| USAR | USA Rare Earth | 材料 | 美国稀土矿开发(Round Top 项目),稀土供应链自主 | +| EWY | iShares MSCI 韩国 ETF | ETF | 跟踪 MSCI 韩国指数(含三星/LPL/KB 等韩国大盘) | +| IWM | iShares Russell 2000 ETF | ETF | 跟踪罗素 2000 指数,覆盖美国小盘股 | +| QQQ | Invesco QQQ Trust(纳指100 ETF) | ETF | 跟踪纳斯达克 100 指数,覆盖 100 家最大非金融纳指股 | +| SMH | VanEck Semiconductor ETF | ETF | 跟踪 MOS 半导体指数,覆盖 25 家最大半导体公司 | +| SOXL | Direxion 半导体 3x 多 ETF | ETF | 日内 3 倍做多半导体指数(SOX),杠杆型 ETF | +| SPY | SPDR S&P 500 ETF | ETF | 跟踪标普 500 指数,全球最大股票 ETF | +| TQQQ | ProShares QQQ 3x 多 ETF | ETF | 日内 3 倍做多纳指 100(QQQ),杠杆型 ETF | +| XLE | Energy Select Sector SPDR ETF | ETF | 跟踪标普 500 能源板块(Exxon/Chevron 等) | +| AUT | ⚠️ 待核实(疑 SPAC/测试) | 待核实 | 疑 SPAC 或测试标的,SEC 库无记录 | +| CH | ⚠️ 待核实(疑 SPAC/测试) | 待核实 | 疑 SPAC 或测试标的,SEC 库无记录 | +| LM | ⚠️ 待核实(疑 SPAC/测试) | 待核实 | 疑 SPAC 或测试标的,SEC 库无记录 | +| RP | ⚠️ 待核实(疑 SPAC/测试) | 待核实 | 疑 SPAC 或测试标的,SEC 库无记录 | +| TESTA | ⚠️ 待核实(疑 SPAC/测试) | 待核实 | 疑 SPAC 或测试标的,SEC 库无记录 | +| TZ | ⚠️ 待核实(疑 SPAC/测试) | 待核实 | 疑 SPAC 或测试标的,SEC 库无记录 | -**结构观察**:以美股科技/半导体/AI 为主(NVDA/AMD/AVGO/TSM/ARM/ASML/CBRS/Cerebras/CRWV/CoreWeave 一应俱全),含 SpaceX(SPCX)、Strategy/MicroStrategy(MSTR+STRC)、meme(GME/RDDT/HOOD),8 只 ETF(SPY/QQQ/SMH/SOXL/TQQQ/IWM/XLE/EWY)。**无中概 ADR**(无 PDD/BABA/JD/BIDU)。6 个 `?` 标的(AUT/CH/LM/RP/TESTA/TZ)疑似 SPAC 或测试标的,登录 OKX 标的页核实。 +**板块分布(按数量)**: + +| 板块 | 数量 | 代表标的 | +|------|------|----------| +| 半导体 | 22 | NVDA/AMD/AVGO/TSM/ASML/ARM/TSM/MU/SKHY | +| 科技 | 22 | AAPL/MSFT/GOOGL/AMZN/META/NFLX/CRM/ORCL | +| AI | 10 | NVDA/PLTR/CRWV/SMCI/CBRS/NBIS/VRT | +| ETF | 8 | SPY/QQQ/SMH/SOXL/TQQQ/IWM/XLE/EWY | +| 金融 | 7 | BX/COIN/HOOD/MSTR/CRCL/STRC/BOT | +| 医疗 | 5 | LLY/UNH/JNJ/ISRG/HIMS | +| 航天 | 5 | SPCX/RKLB/PL/ASTS/ONDS | +| 消费 | 4 | KO/GME/TTWO/DKNG | +| 汽车 | 2 | TSLA/RIVN | +| 能源 | 2 | GEV/BE | +| 工业 | 2 | ROK/BMNR | +| 材料 | 2 | GLW/USAR | +| 待核实 | 6 | AUT/CH/LM/RP/TESTA/TZ | + +**结构观察**:OKX 代币化股票以**半导体(22)+ 科技(22)+ AI(10)= 54 只**为核心(占 56%),高度集中于美股科技产业链。含 SpaceX(SPCX)、Strategy/MicroStrategy(MSTR+STRC 重复上架)、meme 股(GME/RDDT/HOOD)。8 只 ETF 覆盖大盘(SPY)、纳指(QQQ/TQQQ)、半导体(SMH/SOXL)、小盘(IWM)、能源(XLE)、韩国(EWY)。**无中概 ADR**(无 PDD/BABA/JD/BIDU)。6 个待核实标的(AUT/CH/LM/RP/TESTA/TZ)疑似 SPAC 或测试标的。 | 股票 | 代码 | OKX 代币化 | 备注 | |------|------|-----------|------| @@ -403,6 +421,176 @@ OKX 现货 API ◄──── freqtrade 执行下单 ◄─────── | OKX 应当只做执行平台吗? | **是。** 信号来自真实美股数据,OKX 仅负责下单执行。 | | 数据能完全从 OKX 获取吗? | **不建议。** 信号质量会显著下降,尤其在非开盘时段。 | +> ⚠️ **§4.7 修正**:以下 §4.8.1 分析表明 V5 策略**不使用 Volume**,只使用 HLC。因此 §4.7 中"成交量信号失真"和"ADX 计算依赖真实多空力量"的结论对 V5 不完全适用——ADX 用的是 HLC 不是 Volume。但**非开盘时段薄流动性导致的价格漂移仍然会污染 ATR/ADX 读数**,核心结论不变:信号应在美股开盘时段生成。 + +### 4.8 V5 策略适配分析 + +#### 4.8.1 V5 使用了 OHLCV 中的哪些数据(Q3) + +逐行分析 V5 源码的每个指标和信号条件使用的字段: + +| 代码位置 | 使用的字段 | 用途 | +|---------|-----------|------| +| `ta.ATR(dataframe, timeperiod=10)` | **H, L, C** | ATR 波动率(n_value) | +| `ta.SMA(dataframe, timeperiod=ma_length)` | **C** | 长周期均线(ma_long) | +| `dataframe["high"].rolling().max()` | **H** | 通道上轨(up_line 基准) | +| `dataframe["low"].rolling().min()` | **L** | 通道下轨(bottom_line) | +| `ta.ADX(dataframe, timeperiod=14)` | **H, L, C** | 动量强度(adx) | +| 入场:`close > ma_long` | **C** | 趋势过滤 | +| 入场:`close > up_line` | **C** | 突破确认 | +| 入场:`adx > threshold` | **H, L, C**(经 ADX) | 动量过滤 | +| 出场:`close < exit_line` | **C** | 通道退出 | +| `confirm_trade_entry` | **C**(signal candle close + ma_long + up_line) | 防追高/假突破 | + +**汇总**: + +| 字段 | 是否使用 | 说明 | +|------|---------|------| +| **Open** | ❌ 不使用 | V5 全程不读取 `open` 列 | +| **High** | ✅ 使用 | 通道上轨(rolling max)+ ATR + ADX | +| **Low** | ✅ 使用 | 通道下轨(rolling min)+ ATR + ADX | +| **Close** | ✅ 使用 | SMA + ATR + ADX + 入场/出场/确认全部条件 | +| **Volume** | ❌ 不使用 | V5 全程不读取 `volume` 列 | + +**结论**:**V5 只用 HLC(High, Low, Close),不用 Open 和 Volume。** + +这意味着: +1. OKX 历史 K 线(提供完整 OHLCV)**足以计算 V5 的所有指标**——缺的 Open 和 Volume 本来就没用。 +2. §4.7 中关于"成交量信号失真"的结论**对 V5 不适用**——V5 不依赖成交量做任何判断。 +3. ADX 用的是 HLC 价格变动幅度,不是成交量。但**非开盘时段的薄流动性仍然会扭曲价格本身**(几百股就能推动价格跳空),导致 ATR 假放大、ADX 假走强——所以"只在开盘时段交易"的结论依然成立。 +4. **如果只看开盘时段的 OKX HLC 数据,趋势分析是可行的**——开盘时段 OKX 代币化股票价格跟踪真实美股较好(做市商紧密报价),HLC 反映的价格趋势与真实市场基本一致。 + +**修正后的数据策略**: + +| 场景 | 能否用 OKX 数据 | 原因 | +|------|----------------|------| +| 开盘时段 HLC 趋势分析 | ✅ 可用 | 价格跟踪好,ATR/ADX/SMA 反映真实趋势 | +| 非开盘时段 HLC 趋势分析 | ❌ 不可用 | 薄流动性价格漂移,ATR/ADX 失真 | +| 成交量信号 | — V5 不用 | V5 不读取 Volume,无需关心 | +| 回测 | ⚠️ 有条件可用 | OKX 历史 K 线可用于回测,但须过滤非开盘时段 K 线 | + +#### 4.8.2 信号密度与选品数量估算(Q2) + +**目标**:每天至少 5 个交易信号,需要多少只股票? + +**V5 信号触发条件分析**: + +| 条件 | 参数 | 含义 | +|------|------|------| +| 通道上轨 | `up_line_span=340`(15m K 线) | 突破过去 340 根 K 线的最高点(-0.18×ATR 缓冲) | +| 长均线 | `ma_span_long_days=2`(2×96=192 根) | 收盘价在 192 周期 SMA 之上 | +| ADX | `> 28`(V5 原值)/ `> 25`(股票版建议) | 动量强度过滤 | + +**加密 vs 股票的 K 线密度差异**: + +| 维度 | 加密(BTC/ETH) | 美股代币化 | +|------|----------------|-----------| +| 每日 K 线数 | 96(24×4) | 26(6.5 小时×4) | +| 340 根 K 线 = | 3.5 天 | 13 个交易日 | +| 每周交易时段 | 168 小时 | 32.5 小时 | +| 波动率 | 高(15m ATR ~0.3-0.8%) | 中低(15m ATR ~0.1-0.3%) | + +**单只股票信号频率估算**: + +- 突破 13 日高点(-0.18 ATR 缓冲)平均每 **5-10 个交易日**发生一次 +- ADX > 25 过滤掉约 **30-40%** 的突破(弱趋势被拒) +- 净信号频率:每只股票约 **0.07-0.14 信号/天** + +**所需股票数**: + +| 目标信号/天 | 每股信号/天 | 所需股票数 | 97 只可用? | +|------------|------------|-----------|------------| +| 5 | 0.07(保守) | ~71 | ❌ 不够(扣待核实和极薄流动性的) | +| 5 | 0.10(中性) | ~50 | ⚠️ 勉强(需选流动性最好的) | +| 5 | 0.14(乐观) | ~36 | ✅ 可行(牛市/高波动期) | + +**推荐**:从 97 只中选 **30-50 只流动性较好、波动率较高**的标的。优先选择: + +| 板块 | 推荐标的 | 理由 | +|------|---------|------| +| 半导体 | NVDA/AMD/AVGO/TSM/ARM/ASML/MU | 高波动、趋势性强、流动性相对好 | +| AI | SMCI/CRWV/PLTR/CBRS/VRT | AI 叙事驱动、日内波动大 | +| 科技 | AAPL/MSFT/GOOGL/META/NFLX/CRWD | 流动性最好、趋势较清晰 | +| 汽车 | TSLA | 日内波动最大、突破频繁 | +| 消费 | GME/TTWO | meme/事件驱动、高波动 | +| ETF | SPY/QQQ/SMH/SOXL | 流动性最好,但波动较低(SOXL 3x 例外) | + +**同时需调整 max_open_trades**:当前 `max_open_trades=2`,即使产生 5 信号/天也只能开 2 仓。建议调至 **5-8** 以匹配信号密度。 + +#### 4.8.3 V5 → OKX 代币化美股版修改方案(Q4) + +完整修改后的策略文件已保存至 `wiki/quant/multi_asset_channel_breakout_v5_stock.py`。以下是修改要点: + +**一、config.json 修改(新建 spot 实例)** + +```json +{ + "trading_mode": "", + "margin_mode": "", + "max_open_trades": 5, + "stake_amount": "unlimited", + "tradable_balance_ratio": 0.95, + "stoploss": -0.08, + "strategy": "MultiAssetChannelBreakoutV5Stock", + "pair_whitelist": [ + "XAAPL/USDT", "XNVDA/USDT", "XTSLA/USDT", "XMSFT/USDT", + "XGOOGL/USDT", "XMETA/USDT", "XAMD/USDT", "XAVGO/USDT", + "XTSM/USDT", "XSMCI/USDT", "XARM/USDT", "XASML/USDT", + "XMU/USDT", "XPLTR/USDT", "XCRWD/USDT", "XSNOW/USDT", + "XNFLX/USDT", "XCRWV/USDT", "XMSTR/USDT", "XGME/USDT", + "XQQQ/USDT", "XSPY/USDT", "XSMH/USDT", "XSOXL/USDT" + ] +} +``` + +关键变化: +- `trading_mode` 改空(spot 模式,非 futures) +- `margin_mode` 清空 +- `stoploss` 改 -0.08(策略级 8% 硬止损,不再被杠杆压缩) +- `max_open_trades` 从 2 提到 5(匹配信号密度需求) +- `pair_whitelist` 改为 X 前缀代币化股票(需先验证 CCXT 识别 + 账户可交易) + +**二、策略代码修改(5 处改动)** + +| # | 改动 | V5 原版 | V5-Stock 修改版 | 原因 | +|---|------|---------|----------------|------| +| 1 | **交易时段过滤** | 无 | `populate_indicators` 增加 `is_market_hours` 列;`populate_entry_trend` 增加时段条件 | OKX 24/7 有 K 线,非美股时段薄流动性噪声会假突破 | +| 2 | **ADX 默认值** | 28 | 25 | 股票 15m ADX 普遍低于加密(BTC/ETH 常态 30-50,股票常态 15-30) | +| 3 | **滑点容忍** | 硬编码 1% | 参数化 `max_slippage` 默认 1.5% | 代币化股票流动性薄,1% 太紧会频繁拒单 | +| 4 | **leverage() 方法** | `return 1.0` | 移除 | spot 模式不调用 leverage(),保留也无害但语义清晰 | +| 5 | **stoploss / custom_stoploss** | 不变 | 不变 | V5 已是 1x 价格维度(`leverage()` 已返回 1.0),spot 直接适用 | + +**三、不需修改的部分(关键认知)** + +| 组件 | 为什么不用改 | +|------|-------------| +| `stoploss = -0.08` | V5 原版 leverage() 已返回 1.0,-0.08 就是价格 -8%,spot 语义一致 | +| `custom_stoploss` 分段逻辑 | `current_profit` 在 1x 下 = (current_rate - open_rate) / open_rate,spot 和 futures 1x 相同 | +| `populate_indicators` 指标计算 | ATR/SMA/ADX 全部用 HLC,OKX K 线提供 HLC,计算逻辑不变 | +| `populate_exit_trend` 出场逻辑 | 通道跌破退出是价格驱动,spot 语义一致;不过滤时段(风险控制优先) | +| `confirm_trade_entry` 核心逻辑 | 防假突破 + 防追高逻辑不变,只把硬编码 1% 改为参数 | +| `minimal_roi` / `trailing_stop` | 关闭 ROI 止盈 + 关闭跟踪止损,依赖信号出场 + custom_stoploss | + +**四、部署步骤** + +1. 在 Vultr 上新建 freqtrade spot 实例(独立 config + db + systemd service,参照 `freqtrade-deploy-guide.md`) +2. 将 `multi_asset_channel_breakout_v5_stock.py` 放入 `user_data/strategies/` +3. 先跑 `freqtrade download-data --pairs XAAPL/USDT --timeframe 15m` 验证 CCXT 能拉到 X 前缀数据 +4. 跑 `freqtrade backtesting --strategy MultiAssetChannelBreakoutV5Stock` 看信号频率和回测结果 +5. 用 `freqtrade hyperopt` 重新优化参数(ADX 阈值/通道窗口/ATR 偏移面向股票市场) +6. 小额实单测试:单只 `XAAPL/USDT` 下 0.01 股最小单,验证账户无地区限制 +7. 逐步扩大到完整 pair_whitelist + +**五、已知限制** + +| 限制 | 影响 | 缓解 | +|------|------|------| +| 非开盘时段 K 线稀释指标 | ATR/ADX 计算包含周末/夜间 K 线,ATR 被拉低 | 交易时段过滤已排除信号;长期可通过拉长 ATR 周期或 re-optimization 缓解 | +| OKX 代币化股票流动性薄 | 滑点大、止损易插针 | max_slippage 放宽到 1.5%;选流动性最好的标的 | +| 无杠杆 | 失去 10x 放大 | 无法回避(代币化股票不能作保证金抵押品);靠增加 max_open_trades 补偿 | +| 回测数据质量 | OKX 历史 K 线含非开盘时段噪声 | 回测结果仅供参考;先用小额实盘验证 | +| 账户/地区限制未验证 | 可能无法交易 X 前缀标的 | 第 6 步小额实单测试是硬卡点 | + --- ## 5. 综合推荐