股票策略能不能实现:生成代码前检查数据与成交规则
生成股票策略代码前,先裁决所需数据和执行模型是否存在。每条要求对应输入与撮合行为,再明确支持、拒绝或缺扩展。把盘中空头请求简化成日线多头,不等于实现原策略;只有用户明确采用修订规格,才可按新名称继续,不能在成功输出后隐藏删改。
本指南用作者小型现金股票夹具裁决六条规则。CoTrading实现能力仍为规划或待核实,样例会真正检查字段并拒绝订单,不认证A股、港股、美股所有流程。参考代码不是产品功能已经可用的证据,本地支持也不代表具备真实交易所和券商完整服务。
原请求拆成独立规则
保留原话每个重要条件,分开指标频率、字段历史、可得、方向、进入、退出、数量与特殊成交假设。日均线和盘中排队在同一句话里,却需要不同证据。不能只抽最容易编码的部分,然后把其余词当背景描述,导致生成程序与用户假设实际不同。
每条记录字段、粒度、历史覆盖、可得时间、市场许可和消费代码。状态可为本夹具支持、需外部数据、需数据与模型扩展或拒绝,未知规则不自动当普通支持。证据列要具体,不重复“希望实现排队”作为“已经有排队能力”的证明,需求和能力应分别列。
有成交量不证明有盘口队列,有滑点参数不证明真实涨停板撮合。能力表指向实际资料与实现,不只把愿望改成技术名词。固定输入样例也有局限,应标明测了哪些路径,不能从一个按钮或类名推断市场约束、历史版本与资金行为全部完成。
先界定夹具真实边界
给定能力为日级OHLCV、现金多头、不允许同会话回卖、无卖空、无队列回放、无历史基本面。它们是本地例子声明的限制,不是所有市场调研,也不是现有CoTrading配置承诺。每次研究选择一个市场与资金单位,能力证据再逐项匹配。
首条支持规则为完整收盘与尾部均值比较,第二条为另给下一开盘的现金多头进入。样例实际算三收盘信号,再通过撮合夹具买正数量。因此结论比“所有策略能编译”窄,但比只勾检查表具体。它证明所保留子集在这些输入下运行,不把其他缺口抹掉。
从能力输入删开盘字段,下一开盘要求必须变成需外部数据,脚本断言。只有收盘不能因算法需要数字就造开盘;供应商名字也不能保证字段齐全。实际获取后还要核覆盖与单位,字段名存在只是必要条件,不证明每个证券每个时点都可用于执行。
盘中与空头要求明确拒绝
原请求同日盘中往返被拒,原因日线没有所需盘中先后,夹具也阻止同会话卖回。超出实际持有数量的卖出被拒,因为没有空头与借券模型。不能把它们替换成隔夜买入,然后仍沿用原要求名称,令用户误以为风险和机制不变。
上交所二〇二六年交易规则区分交收前转卖与规定回转例外。这要求核具体标的制度,不能假设所有证券共享不受限日级模型。本夹具主动使用有限现金股票规则,不模拟全部逐批次可卖状态,英文译文也以中文原规则为准。
官方发布通知列明修订生效日期,并提示部分条文暂缓。历史研究要匹配所处日期的版本和实施状态,当前概览不证明过去全部板块、特殊状态、品种已建模。本文不从代码前缀推导完整限制,也不把一项会计检查当制度核验。
缺数据与缺模型分别处理
限价排队成交同时需要相应盘口历史和队列模型,本例都没有,状态为需模型与数据,不是加大滑点后支持。日线碰到某价格,不说明前面还有多少订单,也不证明自己能成交。没有这些输入,应保留无法验证状态,不造一个成交率填进收益。
时点一致盈利条件需历史事实与可用时间,本例缺失,状态需外部数据。最近财务不能向过去复制来伪装满足。如果删除该条件,修订名称就不再暗示基本面过滤。原要求若依赖它成立,可能应该先补资料而不是继续生产一份看似完整却换了问题的策略。
两种扩展不同:更多日线不能实现队列,完整撮合不能创造历史财务。每个缺项有自己的证据与去向,不统一说需要更好数据,隐藏究竟缺源码、经济定义还是来源获取。后续有人补齐时,也可只重跑对应负例,而不是重新解释整个策略范围。
撮合反例实际运行
夹具初始一千,买四十股价十,虚构费一,现金五百九十九、持仓四十。先断言真实合成账户,再测不支持请求,避免拒绝只发生在没有状态的文字表。现金和数量都作为观察输出,而不是由一列支持布尔值推断账户正常。
同会话卖四十被拒;下一会话卖五十也拒,因为仅四十;队列回放模式拒,因为仅实现下一开盘约定。每次失败现金与数量不变,不能抛错前先扣款或改股数。这个原子性是实际可检查行为,不代表已经模拟真实券商拒单生命周期或订单队列。
方向非法、数量零或布尔、非有限或非正价格也被拒。这是输入门槛,不是市场模拟。单持仓简化路径不具备逐批交收、融资或部分成交完整系统。把限制写清,才能让用户知道补模型是什么,而不把额外需求误认为只缺一个代码开关。
修订规格不隐藏删除项
允许修订仅保留尾部收盘规则和下一开盘现金多头进入,命名daily_cash_long_next_open_only。原六条请求仍标未全支持。缩减版成功不覆盖原状态,也不能把未实现的条件留在标题中,让读者误认为还是同一个研究假设。原文与修订逐项对照保留。
给定十、十、十二,修订指标得到一,只验证保留计算,不验证未来经济价值。没有推断盈利、队列或卖空功能。如果这些条件是用户核心假设,正确下一步可以先停止等依赖,不必为了有输出而擅自取消。明确缺口比一份误标可用代码更容易继续合作。
每条保留、删除和延期都说明后果。删盘中止损、把空改多、把当日退出改明日开盘都会改变策略,代码更容易跑不是忽略语义变化理由。变更后的预期路径和命名一起更新,后续收益才能对应准确规格,而不是一份不断收缩却保留原承诺的描述。
运行实现条件裁决包
下载完整示例,保存R582.py,用Python 3.12及以上运行python R582.py。只用标准库与合成输入,源文件docs/growth/research/round-5/examples/R582.py不调用产品、模型、真实数据或券商,不替用户提交任何订单。
断言要求六项预期裁决、缺开盘降级、未知规则拒绝、实际撮合失败且状态不变、保留指标结果。输出明确产品验证假。它不把规则表本身当未运行系统支持证据,也不把字段元数据误称已经从市场抓取。每条成功都带本夹具范围,便于后续实际适配。
证据变化后重新裁决
归档原请求、能力快照、来源版本、裁决、显式修订与执行断言。供应商加字段或模型加能力后,重跑对应负例,不只改状态文字。覆盖与实现各有证据,一份资料更新不自动解决另一层。只有实际支持的路径才可从延期升级,不能因为团队计划开发就提前改成支持。
市场分别核验,港股统一一百股简化不证明逐股每手,A股前缀不证明全部特殊规则。完成条件是每条原要求都有诚实去向,修订子集在声明边界内可执行,不承诺所有策略都可实现。生成前完成这张表,可以减少后续为弥补缺依赖而无声改写交易假设的返工。
能力标记是待证陈述,不是实现本身。把表格假改真不会增加借券、盘中资料或队列。这里信号与撮合分别作为本地组件验收,不声称完整数据到订单联调。扩展支持时用真实执行新路径替换对应拒绝,同时保留未支持变体负例,让裁决始终跟随可观察行为,而不是越来越乐观的功能清单。
常见问题
日线滑点可以代替排队撮合吗?
不能,它没有提供盘口历史或队列位置行为。
简化修订还是原策略吗?
只有改变规则被明确采用才继续,原要求与修订应分开保留。