Python 算法交易实验88 QTV200日常推进-关于继续前进的思考

news2024/11/22 4:33:14

说明

念念不忘,必有回响

最初的时候,完全不了解架构方面的东西。后来决定要搞好这一块的时候,也就是不断的琢磨,到现在4年的时间,改变已经非常大了。现在习以为常的,都是当初梦寐以求的,而且在可见的未来 ,架构方面会达到一个足够完善的程度(数据库、中间件、调度、监控、自动化部署、微服务、分布式计算、分布式IO、并发…),现在大概是在偏运维领域进行补全。

总之,应该算达到当初期望的,架构足以支撑一个巨大的算法体系。

量化则是一个更早、更大的目标。某种程度上说,搞架构和算法,一个里程碑式的成果是一个强大的量化体系,一套完全自主控制的体系。在我设想中的量化系统,是一个精简,但是内容很多的系统。首先是长期、大量的存储与计算基础,这部分我举得可以视为达到了;其次是算法体系。强化框架、优化算法、判别模型 、近似计算、模式识别、规则引擎、推荐算法、推理模型、特征提取算法、图算法… ,这部分的进度现在反而比架构要慢一些,但是结构和领域划分是清晰的。所以未来几年,我会在算法领域聚焦,达到预设的目标。

有了基础的架构和算法之后,就需要结合具体的业务进行实现。首先我一定是技术派,然后可以分为宏观层面和微观层面来讨论实现。去年我速速做了一版微观层面的尝试(qtv100), 结果其实还行,但是这一年来行情不行。当然,qtv100还有一些本身的问题,这也是停下来反思和调整的原因。宏观层面是最近才开始触碰的,整体感觉就量化整体来说,有很多常识性的东西我还是欠缺的。

这里,做一些总结,明确后续的路径。

内容

从务实的角度出发

不要只停留在很抽象的层面思考量化,这和做白日梦差不多。一种务实的方式是从一些最基础的事开始做起,比如说先收集数据,然后分析数据。而且我觉得可以先粗后细,粗的到天,细的到分钟,应该就够了。

1 数据维度

从市场数据看,有哪些数据是最相关的?

A股的指数,首先是交易所级别的:沪市、深市;然后是板块级别的:房地产、半导体;之后就是各个ETF的值。

除了A股,还有全球市场交易所级别的数据。

这些数据按天获取应该没有难度,但其实并不简单,后面还有很复杂的处理。(所以,先按天这个频率是对的,有助于快速的原型构建、验证)

紧密相关的金融数据

融资融券数据,银行间拆借利率,债权类数据,金融类舆情数据

公共数据

用电量数据,进出口数据,就业数据,主导性媒体舆情

当这些基础数据都完成时,整体的常识会上一台阶。所以在收集数据的过程中,我还需要了解每一部分数据的含义,关联。

2 数据处理

数据会撒谎

真正有难度的地方在于数据处理。首先,我们只考虑一个数据源的情况。例如市场指数,我们只从东财的接口获取。我们获得的数据,其实又可以称为观察(Observations), 并不是直接的真相。但是通过这些观察,我们可以推断出真相,这才是这部分工作的难度。

这个是之前我设计的一个处理框架:
在这里插入图片描述
大体上,获得数据后,首先会存库,这是第一层。这一层讲究尽可能全、即时的获取逻辑上应当获得的所有数据。确保我们存储的数据与数据源在那一刻一致即可。忠实的记录下数据即可。

接下来,数据会进行清洗,存储到数据库中。清洗是将原始材料规整化的过程。一种情况是数据大体上是好的,通过清洗使得数据从基本可用到完全可用;一种情况则是数据大体上是坏的,清洗是提取出其中一部分好的部分。本质上,这里是用强规则处理数据。

对很多公司而言ETL之后就开始使用了,如果数据之后出了问题,大抵是责备供应商,然后换一个;又或者是反思ETL哪里还没做好。我觉得这两种方法是对的,但是很快就会无可改进。数据源就那些,ETL则会跟着不同的数据源变化,还会和各种例外情况打交道,永无停止之日。

所以需要第三层,这层的空间大小甚至可能是前两层的数千倍。

第三层主要通过假设+推断的方式,会生成大量的假设空间。当各个不同为的数据在Tier2(Clean Data)汇集完成后,首先要进行主数据合并。这里已经不是之前的简单的规则可以搞定的了,例如,某条数据是 {name:leo, age:13, gender:male} ,后来又有一条数据 {name:leo, age14, skill:python} ,那么这两条需要合并为一条吗?age需要更新吗? 我们希望的是,如果两条数据真的都是某个leo的,那么应该会有一个唯一的entid来指代,且gendor来自第一条,skill来自第二条,而age通过两条数据,甚至可以推断出一个birth_date,然后抛弃掉age这个值。这就是主数据。

如果现实的数据非常复杂,我们甚至不知道那个是对的,此时就会产生多个假设空间。 每个假设空间后面又会有更多的假设空间,例如当有了主数据之后,我们需要提取特征,所以在主数据空间之后,会连接特征空间。然后特征空间本身又会有多种假设(算法)进而产生更多的假设空间:为了更好的表达状态、行为、属性等的模式或者可辨别属性。

决策是基于这些像树状展开的空间进行,可以使用git的分支数据结构来理解和描述这大量的空间。

我们永远也不可能获得真理,但可以无限逼近

通过大量的推断、模型,我们最后可以获得一个可靠的决策,从而实现我们的目标。整体上,很像我们的显示器从黑白、彩色、CRT、LCD、LED这么一路发展而来,分辨率从1080p到2k,4k,视网膜… 不断提升。到多少才够呢?不同的人、不同的场景有不同的需求,够用就好。

所以,假设原始数据是1,那么要达到目标所维持的假设空间大小可能是10000

除了空间大(这个好解决,花钱就行),为了达到逻辑上的可靠,所牵涉的算法复杂才是最难的。例如:

  • 1 这条数据有问题吗? (逻辑上,怎么判定问题,有可能是通过假设-验证来判定)
  • 2 这个推断可靠吗? (概率分布)
  • 3 这种提取、变换是合适的吗?(特征计算方法)
  • 4 这个假设空间可以用于这个决策吗?(强化框架)
  • 5 如何更准确的判别?(判别模型)
  • 6 可以进行模拟来帮助作出决策(以及验证)吗?(生成模型)
  • 7 如何找到更好的特征生成方法?(优化算法,如遗传算法)

所以,保持一个相对简单的数据,有助于搭建并验证真正的数据处理框架(这也是抽象上,一个理性人所作出的动作)。

我好像明白未来一段时间要做的事了。

3 数据指标

数据指标(Data Metrics)是用于衡量、评估和监控特定业务、流程或系统性能的量化标准。它们通过收集和分析数据,帮助组织了解当前状态、识别趋势、发现问题并做出基于数据的决策。数据指标通常是具体的、可量化的,并且与组织的战略目标或业务需求紧密相关。

常见的数据指标类型

  1. 业务指标

    • 收入:总收入、月度收入、季度收入等。
    • 利润:毛利润、净利润、利润率等。
    • 客户获取成本(CAC):获取一个新客户的平均成本。
    • 客户终身价值(CLV):一个客户在整个生命周期中为企业带来的总价值。
  2. 运营指标

    • 生产效率:单位时间内的生产量、生产周期时间等。
    • 库存周转率:库存周转的速度,衡量库存管理的效率。
    • 订单履行率:按时完成订单的比例。
  3. 市场营销指标

    • 点击率(CTR):广告点击次数与展示次数的比率。
    • 转化率:访问者转化为客户的比率。
    • 客户满意度(CSAT):客户对产品或服务的满意程度。
  4. 产品指标

    • 活跃用户数:在特定时间段内使用产品的用户数量。
    • 用户留存率:在特定时间段内继续使用产品的用户比例。
    • 功能使用率:特定功能被使用的频率。
  5. 财务指标

    • 资产回报率(ROA):衡量公司利用其资产创造利润的效率。
    • 股东权益回报率(ROE):衡量公司利用股东投资创造利润的效率。
    • 流动比率:衡量公司短期偿债能力的指标。

数据指标的重要性

  • 决策支持:数据指标为决策提供了客观依据,减少了主观判断的风险。
  • 绩效评估:通过数据指标,组织可以评估其业务流程和战略的有效性。
  • 趋势分析:数据指标帮助识别业务趋势,预测未来发展方向。
  • 问题识别:通过监控数据指标,组织可以及时发现问题并采取纠正措施。

选择数据指标的注意事项

  • 相关性:选择的指标应与组织的战略目标和业务需求紧密相关。
  • 可操作性:指标应易于收集和分析,以便及时采取行动。
  • 可理解性:指标应简单明了,便于所有相关人员理解。
  • 可比性:指标应能够在不同时间段或不同部门之间进行比较。

通过合理选择和使用数据指标,组织可以更好地理解其业务状况,优化运营,并实现其战略目标。

上面是来自deepseek的回答,主要是帮我们预先reload一些mindset。

假设是一个量化系统,我想指标应该可以围绕几个部分:

  • 1 基本数据信息。例如数据的条数,价格曲线这些,背后的逻辑是帮助我们确定系统是在正常运转的。
  • 2 机会数据。例如通过CV,判断沪深300是否可能处在行情期,或者是失去焦点的状态。这是偏宏观的。
  • 3 风险数据。例如通过银行间拆借利率,发现流动性大幅收紧。
  • 4 持仓情况。确保持仓的时间、空间分布是合理的。
  • 5 交易数据。近期发起的交易数据的频率、交易额是否符合预期。
  • 6 策略表现。当前活动策略的分类、排名。
  • 7 研究数据。如当前执行中的算法计算进度。
  • 8 回测数据。大量假设策略无差别运行所产生的数据,辅助判断当前策略选择的合理性。

4 总结

自顶向下,自底向上

过去的很多行为是自底向上的,现在则是自顶向下。过去的经验告诉我,final solution 会在这个过程中产生。两种方向的探索,会在中间的某一个部分融合,达到一个兼顾、平衡的体系。

Go ! Go ! Go!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2114661.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

论文精读-Supervised Raw Video Denoising with a Benchmark Dataset on Dynamic Scenes

论文精读-Supervised Raw Video Denoising with a Benchmark Dataset on Dynamic Scenes 优势 1、构建了一个用于监督原始视频去噪的基准数据集。为了多次捕捉瞬间,我们手动为对象s创建运动。在高ISO模式下捕获每一时刻的噪声帧,并通过对多个噪声帧进行…

龙芯+FreeRTOS+LVGL实战笔记(新)——05部署主按钮

本专栏是笔者另一个专栏《龙芯+RT-Thread+LVGL实战笔记》的姊妹篇,主要的区别在于实时操作系统的不同,章节的安排和任务的推进保持一致,并对源码做了改进和优化,各位可以先到本人主页下去浏览另一专栏的博客列表(目前已撰写36篇,图1所示),再决定是否订阅。此外,也可以…

行空板上YOLO和Mediapipe图片物体检测的测试

Introduction 经过前面三篇教程帖子(yolov8n在行空板上的运行(中文),yolov10n在行空板上的运行(中文),Mediapipe在行空板上的运行(中文))的介绍,…

Node.js学习记录(一)

目录 一、文件读取 readFile 二、写入文件 writeFile 三、动态路径 __dirname:表示当前文件所处的目录、path.join 四、获取路径文件名 path.basename 五、提取某文件中的css、JS、html 六、http 七、启动创建web服务器 服务器响应 八、将资源请求的 url 地址映射为文…

idea插件开发的第二天-写一个时间查看器

介绍 Demo说明 本文基于maven项目开发,idea版本为2022.3以上,jdk为1.8本文在Tools插件之上进行开发 Tools插件说明 Tools插件是一个Idea插件,此插件提供统一Spi规范,极大的降低了idea插件的开发难度,并提供开发者模块,可以极大的为开发者开发此插件提供便利Tools插件安装需…

Spark的Web界面

http://localhost:4040/jobs/ 在顶部导航栏上,可以点击以下选项来查看不同类型的Spark应用信息: Jobs - 此视图将列出所有已提交的作业,并提供每个作业的详细信息,如作业ID、名称、开始时间、结束时间等。Stages - 此视图可以查…

新160个crackme - 050-daxxor

运行分析 需要破解Name和Serial PE分析 C程序,32位,无壳 静态分析&动态调试 ida找到关键字符串,双击进入函数 通过静态分析发现:1、Name通过计算得到Name12、对Name1第3、5、6分别插入byte_401290、byte_401290、word_401292&…

Weibull概率分布纸(EXCEL VBA实现)

在学习Weibull分布理论的时候,希望有一张Weibull概率纸,用来学习图解法。但是在度娘上没有找到的Weibull概率纸的电子版。在书上看到的Weibull概率纸,只能复印下来使用。于是萌生了自己制作Weibull概率纸的想法,帮助自己更好地学习…

综合案例-数据可视化-折线图

一、json数据格式 1.1 json数据格式的定义与功能 json是一种轻量级的数据交互格式,可以按照json指定的格式去组织和封装数据,json数据格式本质上是一个带有特定格式的字符串。 功能:json就是一种在各个编程语言中流通的数据格式&#xff0…

全倒装COB超微小间距LED显示屏的工艺技术,相比SMD小间距有何优势

全倒装COB(Chip On Board)超微小间距LED显示屏,在工艺技术上的革新,相较于传统的SMD(Surface Mount Device)小间距LED显示屏,展现出了多方面的显著优势。 首先,全倒装技术极大地提升…

JAVAEE初阶第七节(下)——物理原理与TCP_IP

系列文章目录 JAVAEE初阶第七节(下)——物理原理与TCP_IP 文章目录 系列文章目录JAVAEE初阶第七节(下)——物理原理与TCP_IP 一.网络层重点协议 1. IP协议如何管理地址 1.1 解决IP地址不够用的问题 1.2 网段划分 1.3 特殊的IP…

深度剖析AI情感陪伴类产品及典型应用 Character.ai

前段时间AI圈内C.AI的受够风波可谓是让大家都丈二摸不着头脑,连C.AI这种行业top应用都要找谋生方法了!投资人摸不着头脑,用户们更摸不着头脑。在这之前断断续续玩了一下这款产品,这次也是乘着这个风波,除了了解一下为什…

【数据库】MySQL表的Updata(更新)和Delete(删除)操作

目录 1.Update 案例1:将孙悟空同学的数学成绩变更为 80 分 案例2:将曹孟德同学的数学成绩变更为 60 分,语文成绩变更为 70 分 案例3:将总成绩倒数前三的 3 位同学的数学成绩加上 30 分 案例4:将所有同学的语文成绩…

计算机网络与Internet应用

一、计算机网络 1.计算机网络的定义 网络定义:计算机网络是指将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接起来,在网络操作系统,网络管理软件及网络通信协议的管理和协调下,实现资源共享…

『功能项目』武器的切换实例【34】

本章项目成果展示 我们打开上一篇33战士的A键连击的项目, 本章要做的事情是按键盘E键切换职业时切换手中的武器 首先在资源商店下载免费的武器模型 创建一个空物体 命名为WeaponPos 将武器预制体拖拽至WeaponPos (注意调整空物体位置就可以后续文章会更…

CSP-J 之C++常用英文缩写

文章目录 C常用英文缩写前言常用缩写解析C 基础缩写输入输出相关控制台 命名与类型常用函数在线测评相关 总结 C常用英文缩写 前言 在编程比赛和日常开发中,C是一门广泛使用的编程语言,许多英文缩写贯穿其中。了解这些缩写不仅有助于提高编程效率&…

XGBoost算法-上

简单解释一下xgboost这个模型 xg是一个非常强大,非常受欢迎的机器学习模型,其中最大的特色就是boosting(改进、推进),怎么改进呢?就是xgboost这个算法,它会先建立一颗简单的决策树,…

【Python知识宝库】文件操作:读写文件的最佳实践

🎬 鸽芷咕:个人主页 🔥 个人专栏: 《C干货基地》《粉丝福利》 ⛺️生活的理想,就是为了理想的生活! 文章目录 前言一、文件读取1. 使用open函数2. 逐行读取3. 使用readlines和readline 二、文件写入1. 写入文本2. 追加内容3. 写入…

DAY99 APP 攻防-小程序篇反编译外在抓包主包分包配置泄漏算法逆向未授权

APP攻防-小程序篇&内在反编译&外在抓包&主包分包&配置泄漏&算法逆向&未授权_unpackminiapp-CSDN博客https://blog.csdn.net/m0_60571842/article/details/136244878 知识点 1、小程序抓包-全局代理&进程转发 2、小程序逆向-反编译&主包&分…

ChatGPT在医疗行业的应用前景与挑战探析

人工智能ChatGPT自2022年11月面世以来,在医疗领域引起了广泛关注,很多专家也在积极探讨其在此领域的应用。众多报道集中于其在临床应用、患者交流和医学教育等方面的潜力。本文将从学术研究的角度探讨ChatGPT在医疗领域的实际应用,包括其在科…