缠论再研究1-顶底分型

由于现在不是全职写程序了,看起来不是那么辛苦,终于有点精力重新研究缠论了。

之前做过几个月期货,发现真是太难了,布鲁克斯的书写的好是好,终归还是太过复杂,一时半会吸收不了,加之我们程序员出身,没有办法将之程序化,最终又兜回来研究缠论,应该算是重新写。目的是未来应用到量化交易中。

当前刚刚写到顶分型,底分型,看起来也不是很难,只不过一直想做一个学习缠论可视化的东西,之前做了一个kline-chart的软件,形像是形象,可惜的是每次用不同数据或是不同算法时就需要修改程序,然后前面做的就又丢掉了,这一次做了一个多模块版本的集合类,然后将之前做的kline-chart集成了进来放在common中,然后每个工程引用common中的图形显示,通过各工程的配置实现显示不同图形的目的。

整体目录如下所示:
这样只需很少的代价便可搭建一新工程,保留原先特别的配置和算法调用,对于可视化研究帮助很大。

当前写到底分型和顶分型,

如图所示:

1处应该是一个底分型,目前不知道哪里出了问题,根据逻辑,应该是先找出独立K线,即将能合并的K线合并成一个K线,然后再依据独立K线进行底分型和顶分型的判断。

考虑做一个K线合并的图形化显示,将合并在一个K线中的用半透明阴影框表达出来。

其实半透明的显示很容易,如下代码即可显示半透明的矩形框:

        if bar:
            count = bar[4] - bar[3] + 1
            for i in range(count):
                if i == 0:
                    shadow_rect = QtCore.QRectF(
                        ix + i - (BAR_WIDTH + 0.1),
                        bar[1],  # Lowest price
                        (BAR_WIDTH + 0.1) * 2,
                        bar[2] - bar[1]
                    )
                else:
                    shadow_rect = QtCore.QRectF(
                        ix + i - (BAR_WIDTH + 0.1 + 0.1 + 0.1),
                        bar[1],  # Lowest price
                        (BAR_WIDTH + 0.2) * 2,
                        bar[2] - bar[1]
                    )
                painter.fillRect(shadow_rect, self._shadow_brush)

大致解释一下,循环中如只有1个K线,代码没有合并K线,则在当前K线外框向左0.1的位置画透明阴影,若count超过1个,说明有合并K线,BAR_WIDTH定义为0.3,达到0.5时表示预留空间画满,想要第二个开始的和第一根合并K线看起来在一起,就要把空余的空间填满,else中的代码就是填满的逻辑。

最后贴上K线合并后的视觉效果图:

从图上看1,2是两根K线的合并,3是3根K线的合并,4,5都是独立K线,没有合并,当然,图形化后一眼就看出来1的合并有问题,应该是向下合并,而图形上表达出向上合并了

最后附上github上的地址:GitHub - luhouxiang/algo-multiple-pro-ui: 带界面的量化工程,可以同时运行多个设置的应用,诚邀志同道合之人一起研究。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Flutter 实现软鼠标

文章目录 前言一、如何实现?1、记录鼠标偏移2、MouseRegion获取偏移3、Transform移动图标 二、完整代码三、使用示例总结 前言 flutter在嵌入式系统中运行时,有可能遇到drm鼠标无法使用的情况,但鼠标事件却可以正常接收,此时如果…

全局弹窗组件实现

全局弹窗组件实现 使用函数式组件实现。框架采用Vue、bootstrap。 当我们写好一个组件时,这个组件功能大体上可能都是差不多的,但是要在很多地方调用,通常的组件要在template中引入才行。 在饿了么UI组件中,有的对话框组件只是…

三.苹果支付 - 漏单补单处理

介绍 苹果的支付流程并不复杂,我们可以在很短的时间内实现正常的支付流程。 但是苹果支付有一个很大特点就是慢,包括唤起支付弹窗,点击完成到服务端验单完成,整个流程很长,任何一个环节都有可能因为断网,…

kubesphere踩过的坑,持续更新....

踩过的坑 The connection to the server lb.kubesphere.local:6443 was refused - did you specify the right host… 另一篇文档中 dashboard 安装 需要在浏览器中输入thisisunsafe,即可进入登录页面 ingress 安装的问题 问题描述: 安装后通过命令 kubectl g…

Oracle 是否扼杀了开源 MySQL

Oracle 是否无意中扼杀了开源 MySQL Peter Zaitsev是一位俄罗斯软件工程师和企业家,曾在MySQL公司担任性能工程师。大约15年前,当甲骨文收购Sun公司并随后收购MySQL时,有很多关于甲骨文何时“杀死MySQL”的讨论。他曾为甲骨文进行辩护&#…

【系统架构设计师】一、计算机系统基础知识(指令系统|存储系统|输入输出技术|总线结构)

目录 一、指令系统 1.1 计算机指令 1.2 指令寻址方式 1.3 CISC 与 RISC 1.4 指令流水线 二、存储系统 2.1 分级存储体系 2.2 地址映射 2.3 替换算法 2.4 磁盘 2.4.1 磁盘结构和参数 2.4.2 磁盘调度算法 三、输入输出技术 四、总线结构 五、考试真题练习 一、指令…

【PL理论】(29) OOP:面向对象编程 | 案例研究:C++ 中的类 | 继承 | 继承和指针 | Object-oriented Programming

💭 写在前面:本章我们将进入 Object-oriented Programming,面向对象编程的讲解,探讨 C 中的类,继承等。 目录 0x00 面向对象编程 0x01 C语言中的结构体 0x02 案例研究:C 中的类 0x03 术语 0x04 继承&…

12.3 Go 测试覆盖率

💝💝💝欢迎莅临我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:「stormsha的主页」…

关于 python request 的 response 返回 b‘\xa3\xff\xff\x11E .....‘ 类型的数据的解决方案

最近写开发一个爬虫, 程序在本地好好的,返回的是正常的 html, 但是到了生产环境,不知道为什么返回的是一堆乱码 长这样: 查了好几天都没有进展, 对其进行各种转码均无效 今天终于找到解决办法了&#xff…

LabVIEW回热系统热经济性分析及故障诊断

开发了一种利用LabVIEW软件的电厂回热系统热经济性分析和故障诊断系统。该系统针对火电厂回热加热器进行优化,通过实时数据监控与分析,有效提高机组的经济性和安全性,同时降低能耗和维护成本。系统的实施大幅提升了火电厂运行的效率和可靠性&…

永久删除的文件如何恢复?记好这4个方法,轻松恢复文件!

“在清理电脑时,我一不小心把一些还需要的文件永久删除了,不知道大家有没有方法可以恢复这些文件呢?” 在数字时代,我们的生活和工作几乎都离不开电脑和各类存储设备。然而,随着数据的不断增长,误删文件、格…

DNS响应时间分析

目录 什么是DNS响应时间? 为什么DNS响应时间很重要? AnaTraf流量分析仪DNS分析 在当今数字化时代,网络的稳定性和性能对企业的运营至关重要。作为IT运维人员,我们的职责是确保网络顺畅运行,而DNS(域名系…

想做副业,如何发现用户需求呢?

点击下方“JavaEdge”,选择“设为星标” 第一时间关注技术干货! 免责声明~ 任何文章不要过度深思! 万事万物都经不起审视,因为世上没有同样的成长环境,也没有同样的认知水平,更「没有适用于所有人的解决方案…

关于电脑文件的规划思考

概述 设置C、D、E、F 四个盘 C盘:系统数据使用,操作系统、其他软件需要用到的系统性资源 D盘:应用软件区 的使用,数据库、navacat、idea、visual studio、浏览器、向日葵、虚拟机…… E盘:工作区:公司资料…

【云】各家云服务器介绍

文章目录 各主流云服务厂商个人开发者购买什么够用优惠信息 各主流云服务厂商 腾讯云: 优点:腾讯云在程序员圈子中享有“良心云”的美誉,主要是因为其价格性价比高,续费价格也不贵。腾讯云提供了多款云服务器配置,如2核…

物流货运单怎么打印,佳易王货物运单打印查询统计管理系统操作教程

物流货运单怎么打印,佳易王货物运单打印查询统计管理系统操作教程 一、前言 以下软件操作教程以,佳易王物流货运单管理软件为例说明 软件文件下载可以点击最下方官网卡片——软件下载——试用版软件下载 软件操作教程 1、物流开单点击导航栏 物流开单…

碉堡了!云原生大佬撰写的K8s学习指南,有点炸裂,建议运维都收藏!

在这个数字化转型的时代,容器化和云原生技术已成为软件开发的重要趋势。【Kubernetes】作为云原生领域的旗舰项目,不仅是一种容器编排工具,更是构建现代、弹性和可扩展应用程序的基础平台。 因此,对于运维人员来说,学…

【第四篇】SpringSecurity的HttpSecurity详解

SpringSecurity的XML文件配置 在配置文件中通过 security:http 等标签来定义了认证需要的相关信息 SpringSecurity的HttpSecurity配置 在SpringBoot项目中,脱离了xml配置文件的方式,在SpringSecurity中提供了HttpSecurity等工具类,这里HttpSecurity就等同于在配置文件中定…

【算法】Graham 凸包扫描算法 ( 凸包概念 | 常用的凸包算法 | 角排序 | 叉积 | Python 代码示例 )

文章目录 一、Graham 凸包扫描算法1、凸包概念2、常用的凸包算法3、Graham 凸包扫描算法 二、Graham 算法前置知识点1、角排序2、叉积3、算法过程分析 三、代码示例1、完整代码示例2、执行结果 使用 Graham 算法绘制的凸包效果 : 博客代码下载 : https://download.csdn.net/d…

【编程语言】Python平台化为何比Java差?

人不走空 🌈个人主页:人不走空 💖系列专栏:算法专题 ⏰诗词歌赋:斯是陋室,惟吾德馨 目录 🌈个人主页:人不走空 💖系列专栏:算法专题 ⏰诗词歌…