最高最低都一样,价格就同样集中吗

最高最低都一样,价格就同样集中吗

两个窗口最低都是100、最高都是120,极差都为20,中间价格却未必分布得一样。只保留最高最低,会把中间位置的信息压掉。如果要比较这部分跨度,还需要先说清楚分位位置怎样取。

本文选定一种明确的作者口径:完整样本排序后,对上下两个半组分别取中位数,再求差。推荐借助天勤TqSdk的median实现这两个基础步骤,并同时保存排序副本和原样本身份;不是在接口中寻找一个并未被本文资料支持的原生IQR函数。

两个范围相同的假设窗口

给定两组纯假设:

text 复制代码
A = [100,104,105,106,107,108,109,120]
B = [100,100,100,110,110,120,120,120]

本文限定样本数是4的正整数倍。各组排序后,下半组中位数记为Q1,上半组中位数记为Q3,定义IQR=Q3−Q1。

A的下半组为100、104、105、106,中位数104.5;上半组为107、108、109、120,中位数108.5,所以IQR为4。B按同一方法得到Q1=100、Q3=120,IQR为20。极差相同,中间位置跨度不同。以上只是作者算术,不是行情或SDK输出。

用排序副本分别求半组中位数

TqSdk的median(series,n)对n项取中位数,偶数项取中间两项平均。这里把半组当成一次完整输入,并取该半组长度窗口的末项结果,不是对原时序逐项滚动后随便挑两个值。

原数据保持不变。先确认完整窗口、单位、有效性和原身份,再对独立副本排序;同时保存排序位置到原身份的映射。排序只服务这次位置统计,不意味着可以把排序后的价格当原市场路径。

下面的未执行示例,只接收长度为4的正整数倍的完整研究窗口,没有连接行情或回写原序列。

python 复制代码
from math import isfinite
from tqsdk.tafunc import median


def half_median_iqr(prices, original_ids):
    n = len(prices)
    if n < 4 or n % 4 or len(original_ids) != n:
        raise ValueError("this definition requires n = 4m, m >= 1")
    original = prices.copy().reset_index(drop=True)
    if not all(isfinite(float(x)) for x in original):
        raise ValueError("no missing-input deletion or zero fill")
    order = sorted(range(n), key=lambda i: float(original.iloc[i]))
    sorted_copy = original.iloc[order].copy().reset_index(drop=True)
    half = n // 2
    lower = sorted_copy.iloc[:half].copy().reset_index(drop=True)
    upper = sorted_copy.iloc[half:].copy().reset_index(drop=True)
    outputs = [median(part, half) for part in (lower, upper)]
    if any(len(s) != half or list(s.index) != list(range(half)) for s in outputs):
        raise ValueError("half-window position mismatch")
    q1, q3 = [float(s.iloc[-1]) for s in outputs]
    iqr = q3 - q1
    span = float(sorted_copy.iloc[-1]) - float(sorted_copy.iloc[0])
    if not all(isfinite(x) for x in (q1, q3, iqr, span)) or iqr < 0:
        raise ValueError("unusable position summary")
    return {"definition": "median_of_lower_and_upper_halves_n_multiple_of_4",
            "original_ids": list(original_ids), "original_values": original.tolist(),
            "sorted_ids": [original_ids[i] for i in order],
            "sorted_values": sorted_copy.tolist(),
            "q1": q1, "q3": q3, "author_iqr": iqr, "range": span}

保留方法,别把位置比例说成概率

分位数有不同的位置与插值约定,不能把本例半组法当成所有平台唯一默认。比较两份结果时,原样本相同还不够,方法也必须一致;否则差别可能来自计算约定。

Q1、Q3描述本方法下的排序位置,不保证恰好50%的不同取值落在区间内。重复值会改变这种直观数数,B的例子尤其说明:Q1到Q3覆盖整个100到120区间,不代表模型证明了真实价格的某种概率。

实际记录应包含方法、样本数、原窗口与身份、排序副本、两半组以及Q1/Q3/IQR和极差。本机SDK行为未在这里实测;缺失不靠补零凑够4m项,也不根据这个跨度自动删除所谓异常点。

天勤TqSdk的中位数函数,让这份作者定义能落到可回查的半组计算。读者由此能区分"最高最低范围一样"和"中间位置一样",而不是从一段样本跨度推断价格分布、未来区间或收益。

相关推荐
天远API32 分钟前
零信任架构实战:基于天远运营商三要素详版V即时版构建自动化消费电子大促电商平台高价值权益秒杀与优惠券防羊毛高并发实名核验网关
运维·人工智能·架构·自动化
朱涛的自习室38 分钟前
212 个需求、22 万行代码:Agent 接管开源项目的 19 天
android·前端·人工智能
美林数据Tempodata39 分钟前
高职大数据技术专业升级的六个落地样本:从产业链需求库到实训室数据链路
大数据·人工智能·数字化转型·产教融合·ai教育
美好世界1 小时前
OpenAI Codex 源码深度剖析(三):执行引擎与内核沙箱深度剖析
人工智能
敖老师1 小时前
Dify 接入高德地图 MCP:Agent 策略、新旧节点与配置全流程避坑指南
人工智能
Front_Yue1 小时前
在 Rokid AIUI 上做「拍照识花」:图像链路与踩坑记录
人工智能
武子康1 小时前
Agent 说“3 passed”就算修好了?先检查是谁判的通过
人工智能·agent
老金带你玩AI1 小时前
ChatGPT上新功能!我做了一个批量生成动态表情包的Skill!
人工智能
stormzhangV1 小时前
AI 的下半场,是全模态与生态的竞争
人工智能·aigc·openai
IT_陈寒2 小时前
React的setState真是个演员,你以为它同步其实在装睡
前端·人工智能·后端