多彩编程 多彩编程MZPH · CODE BLOG
ARTICLE DETAIL

文章详情

深耕前端与后端开发技术的一线实战笔记与踩坑复盘。

czsc 盈亏比判断信号 pos_profit_loss_V230624 全解:基于开仓前分型止损位动态评估盈亏比达标与止损

czsc 盈亏比判断信号 pos_profit_loss_V230624 全解:基于开仓前分型止损位动态评估盈亏比达标与止损 金融科技【免费下载链接】czsc缠中说禅技术分析工具缠论股票期货Quant量化交易项目地址https://gitcode.com/gh_mirrors/cz/czsc点击查看免费下载本文围绕 czsc缠中说禅技术分析工具Rust 核心 PyO3 Python 绑定交易级信号pos_profit_loss_V230624展开完整讲解其参数模板、信号逻辑、源码实现与实战配置方式。读完本文你将掌握如何用该信号在CzscSignals/CzscTrader中实现「以开仓前最近 N 个分型确定止损价、动态计算盈亏比、达标持仓 / 击穿止损」的持仓管理闭环并理解其底层实现细节。一、信号概览模块、类别与定位pos_profit_loss_V230624属于pos 持仓管理模块信号类别为trader交易级信号即它不是基于单根 K 线形态计算而是基于**持仓状态 缠论结构分型序列**计算。在 rs_czsc 的信号体系中详见 .claude/skills/signal-functions/SKILL.mdK线级信号kline208 个基于 CZSC 分析结果 K 线数据计算交易级信号trader24 个基于持仓/策略状态计算其中pos 模块共 16 个持仓管理信号止损/止盈/保本/状态/盈亏比判断本信号即其中之一。从源码注释与注册表测试可以看出pos 系列信号在 Rust 端全部实现于 crates/czsc-signals/src/pos.rs并在 crates/czsc-signals/src/registry.rs 的注册表测试中被逐一断言注册TRADER_SIGNAL_REGISTRY.contains_key(pos_profit_loss_V230624)属于被官方测试锁定的一等公民信号。二、参数模板与信号字符串格式2.1 参数模板{pos_name}_{freq1}YKB{ykb}N{n}_盈亏比判断V230624该模板由#[signal(...)]宏声明见 crates/czsc-signals/src/pos.rs并在pos_profit_loss_v230624函数体内通过三段式 key 拼装k1 pos_name仓位名称k2 {freq1}YKB{ykb}N{n}周期 盈亏比阈值 分型窗口k3 盈亏比判断V230624版本标签2.2 7 段信号字符串rs_czsc 信号统一采用 7 段式格式k1_k2_k3_v1_v2_v3_score。以本文信号为例日线通道突破_60分钟YKB20N3_盈亏比判断V230624_多头达标_任意_任意_0 ├─k1─────────┤ ├─k2──────────┤ ├k3──────────────┤ ├v1──────┤ ├v2┤ ├v3┤ ├s┤k1/k2/k3键字段仓位名 / 参数描述 / 版本标签v1/v2/v3值字段信号状态本信号只设置v1v2/v3固定为任意score整数 0-100本信号固定为0。信号统一由 crates/czsc-signals/src/utils/sig.rs 的make_signal_v1构造其内部调用make_signal7对格式做严格校验非法字符串会直接 panic保证产出的信号永远可被Signal::from_str反解析。三、信号逻辑详解从分型止损位到盈亏比达标3.1 官方文档定义的核心逻辑基于开仓前n个分型确定止损价计算ykb (现价 - 开仓价) / (开仓价 - 止损价) * 10ykb 阈值记多头达标 / 空头达标未达标时若击穿止损价记多头止损 / 空头止损。3.2 多头分支的源码级拆解对应 crates/czsc-signals/src/pos.rs定位最近开仓操作通过last_open_operate(cat, pos_name)见 utils/sig.rs取出指定仓位最后一条非平仓操作记录opLO开多 /SO开空若该仓位不存在或最后操作是平仓SE/LE直接输出其他筛选开仓前底分型遍历c.get_fx_list()当前周期 CZSC 的全部分型序列过滤出mark Mark::D底分型且dt op.dt发生在开仓之前的分型取最近 n 个分型的最低点作为止损价stop_price min(low of last n 底分型)计算盈亏比y (last_close - op.price) / (op.price - stop_price) * 10.0判定y ykb输出多头达标否则若last_close stop_price已击穿止损价输出多头止损。3.3 空头分支镜像规则对应 crates/czsc-signals/src/pos.rs取开仓前最近n个顶分型Mark::G止损价 这 n 个顶分型最高点的最大值stop_price max(high of last n 顶分型)y (last_close - op.price) / (op.price - stop_price) * 10.0y ykb输出空头达标否则若last_close stop_price向上击穿止损输出空头止损。其中Mark枚举定义于 crates/czsc-core/src/objects/mark.rsMark::D底分型、Mark::G顶分型分别对应缠论中的底/顶分型结构标记。3.4 关键边界保护源码对两类异常情况做了显式防护无分型可用all.is_empty()时直接跳过判定输出其他避免对空序列取极值分母为零denom op.price - stop_price当denom ! 0.0时才计算盈亏比开仓价恰等于止损价时无意义不做除法。3.5 现价的取值口径信号中现价取自c.bars_raw.last().close当前freq1周期最后一根原始 K 线的收盘价若 K 线为空则回退到op.price开仓价。这与 pos 系列其他信号使用latest_price(cat, freq1)优先取 trader 实时价的口径略有不同属于该信号的既定实现见 crates/czsc-signals/src/pos.rs。四、参数说明与默认值参数含义默认值备注pos_name仓位名称无必填对应TraderState中注册的仓位键如日线通道突破、日线三买多头N1freq1K 线周期无必填如60分钟、日线决定取哪一级别的分型序列与 K 线ykb盈亏比阈值×1020即盈亏比 2.020/10。取值越大达标条件越苛刻n止损分型窗口开仓前取最近 n 个分型3窗口越大止损位越接近开仓前更早的结构低点/高点参数解析使用 crates/czsc-signals/src/params.rs 的ParamView只读视图与get_usize_param/get_str_param帮助函数utils/sig.rs支持 JSON 数字与字符串两种类型缺省时自动回落默认值。盈亏比阈值换算说明信号名与模板中的YKB{ykb}是 ×10 后的整数。默认20表示盈亏比阈值为20 / 10 2.0即浮盈需达到「开仓价到止损价距离」的 2 倍才记达标。五、信号列表示例解读官方文档给出两条典型输出Signal(日线通道突破_60分钟YKB20N3_盈亏比判断V230624_多头达标_任意_任意_0) Signal(日线通道突破_60分钟YKB20N3_盈亏比判断V230624_空头止损_任意_任意_0)拆解仓位日线通道突破在60分钟周期上计算盈亏比阈值YKB20即 2.0 倍分型窗口N3开仓前最近 3 个分型第一条多头持仓浮盈达到 2 倍止损距离 →多头达标可继续持有或作为加仓/移动止盈的触发条件第二条空头持仓未达标且向上击穿顶分型高点止损位 →空头止损触发离场。六、实战配置接入 CzscSignals / CzscTrader6.1 signals_config 配置pos_profit_loss_V230624是 trader 级信号需要配合开仓信号与仓位状态使用。在CzscSignals/CzscTrader的signals_config中按以下方式声明配置语法与tas_ma_base_V221101、pos_stop_V240428一致参考 .claude/skills/signal-functions/SKILL.md 与 docs/examples/05_signals.pysignals_config [ # 开仓信号示例 {name: cxt_bi_end_V230224, freq: 30分钟, di: 1}, # 盈亏比判断60分钟周期盈亏比阈值 2.0YKB20开仓前 3 个分型定止损 {name: pos_profit_loss_V230624, freq1: 60分钟, pos_name: 日线通道突破, ykb: 20, n: 3}, ]6.2 从信号字符串反推配置若你手上只有信号字符串可用derive_signals_config反推见 SKILL.md 的 Python API 示例from rs_czsc import derive_signals_config signal_str 日线通道突破_60分钟YKB20N3_盈亏比判断V230624_多头达标_任意_任意_0 config derive_signals_config([signal_str]) # 返回: [{name: pos_profit_loss_V230624, freq1: 60分钟, pos_name: 日线通道突破, ykb: 20, n: 3}]6.3 在事件/策略中的典型用法该信号输出多头达标/空头达标/多头止损/空头止损/其他五态通常作为事件驱动持仓管理的一环达标态作为止盈上移、持仓确认或盈利目标达到的事件源止损态作为硬止损离场的事件源与pos_fx_stop_V230414分型止损、pos_fix_exit_V230624固定 BP 止盈止损等互为补充其他态开仓后浮盈尚未达到盈亏比阈值且未击穿止损继续持有观察。七、与 pos 系列相邻信号的协作关系为便于在策略中组合使用列出与本信号密切相关的 pos 模块信号均位于 crates/czsc-signals/src/pos.rs信号定位与本文信号的差异pos_fx_stop_V230414开仓前最近 n 个分型极值止损只输出止损态不计算盈亏比达标pos_bar_stop_V230524开仓前最近 n 根 K 线极值止损用 K 线极值而非分型极值定止损位pos_holds_V230414开仓后 N 根收益阈值分层存疑/良好以 BP 收益绝对阈值分层不引入止损距离pos_fix_exit_V230624固定 BP 止盈止损阈值直接作用于价格百分比不依赖分型结构pos_status_V230808持仓状态持多/持空/持币输出当前持仓方向常与上述信号联合使用从源码结构看这些信号共用同一套last_open_operateget_czsc(freq1) 分型/K 线窗口取值的骨架差异集中在止损价如何定义与达标/止损如何判定两个环节可以推断本信号是「结构止损 盈亏比动态评估」这一类思路的代表实现。八、使用注意事项依赖缠论分型序列本信号依赖get_fx_list()输出因此计算周期上必须有足够的历史 K 线以形成分型数据量过少或分型不足时信号回退为其他。止损价随参数变化n越大止损位越远离开仓价盈亏比公式的分母越大达标越难ykb与n需结合策略风险偏好联合调参。现价口径本信号使用freq1周期最后一根收盘价作为现价而非 trader 层实时价回测与实盘的取值可能因此产生差异配置时需留意。信号幂等性信号只反映当前快照状态达标/止损/其他同一持仓在浮盈波动时会反复在达标与非达标间切换事件层应结合pos_status_V230808或开仓记录做去重与状态机编排。九、小结pos_profit_loss_V230624是 czsc 交易级信号体系中以缠论分型结构定义止损、以盈亏比动态评估持仓的代表性信号止损价来自开仓前最近n个底/顶分型的极值盈亏比按(现价 - 开仓价) / (开仓价 - 止损价) × 10计算并与ykb阈值比较输出多头达标 / 空头达标 / 多头止损 / 空头止损四类可执行状态。配合signals_config一行配置即可接入CzscSignals/CzscTrader并可借助derive_signals_config从信号字符串反向还原配置是构建缠论量化策略持仓管理环节的实用工具。赞分享金融科技【免费下载链接】czsc缠中说禅技术分析工具缠论股票期货Quant量化交易项目地址https://gitcode.com/gh_mirrors/cz/czsc点击查看免费下载相关推荐czsc 止损信号 pos_fx_stop_V230414基于开仓点附近分型极值的止损判定实现czsc 止损信号 pos_fx_stop_V230414基于开仓点附近分型极值的止损判定实现 导读 pos_fx_stop_V230414 是 czsc缠金融科技czsc 缠论量化中的固定 BP 止盈止损出场信号 pos_fix_exit_V230624 完全解析czsc 缠论量化中的固定 BP 止盈止损出场信号 pos_fix_exit_V230624 完全解析 czsc缠中说禅技术分析工具的持仓管理体系中 po金融科技czsc zdy_trader 模块深度解析基于缠论笔与中枢的止损、止盈、震荡短差信号体系czsc zdy_trader 模块深度解析基于缠论笔与中枢的止损、止盈、震荡短差信号体系 本文基于仓库 .claude/skills/signal func金融科技上一篇终极Bootstrap-Slider多框架集成指南React、Angular、Vue.js完整示例下一篇高效特征提取新选择efficientnet_el_pruned.in1k模型实战教程创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表